This is an automated email from the ASF dual-hosted git repository. pingsutw pushed a commit to branch master in repository https://gitbox.apache.org/repos/asf/submarine.git
The following commit(s) were added to refs/heads/master by this push: new 5e2e6a5 SUBMARINE-982. Install seldon-core 5e2e6a5 is described below commit 5e2e6a57ceafadb8bcea83d0046b2fd6892dab3e Author: jeff-901 <b07901...@ntu.edu.tw> AuthorDate: Sat Oct 23 14:32:26 2021 +0800 SUBMARINE-982. Install seldon-core ### What is this PR for? Install seldon-core and install istio for the seldon-core gateway. Update the document for the installation by script and how to uninstsall. ### What type of PR is it? Feature ### Todos ### What is the Jira issue? https://issues.apache.org/jira/browse/SUBMARINE-982 ### How should this be tested? ### Screenshots (if appropriate) ### Questions: * Do the license files need updating? No * Are there breaking changes for older versions? No * Does this need new documentation? No Author: jeff-901 <b07901...@ntu.edu.tw> Signed-off-by: Kevin <pings...@apache.org> Closes #715 from jeff-901/SUBMARINE-982 and squashes the following commits: 1596a391 [jeff-901] fix secret namespace 32370465 [jeff-901] seperate installation of submarine and submarine-serve 93e4a502 [jeff-901] remove duplicate code fc4389d6 [jeff-901] move serve to submarine-serve 708cd8d6 [jeff-901] add istioctl to .gitignore fcb5cdc2 [jeff-901] delete unused file 2f398bc2 [jeff-901] add license d7a67b5c [jeff-901] update doc and add istio 50d9eee4 [jeff-901] add the install script --- .gitignore | 3 ++ submarine-serve/README.md | 39 ++++++++++++++++++++ submarine-serve/installation/install.sh | 45 ++++++++++++++++++++++++ submarine-serve/installation/seldon-gateway.yaml | 31 ++++++++++++++++ submarine-serve/installation/seldon-secret.yaml | 29 +++++++++++++++ website/.gitignore | 2 +- 6 files changed, 148 insertions(+), 1 deletion(-) diff --git a/.gitignore b/.gitignore index 36f2b07..7e1f577 100644 --- a/.gitignore +++ b/.gitignore @@ -103,3 +103,6 @@ submarine-cloud-v2/helm-charts/submarine-operator/charts/* # redundant logging files *.log + +# installation binary +submarine-serve/installation/istioctl \ No newline at end of file diff --git a/submarine-serve/README.md b/submarine-serve/README.md new file mode 100644 index 0000000..521dc62 --- /dev/null +++ b/submarine-serve/README.md @@ -0,0 +1,39 @@ +<!--- + Licensed under the Apache License, Version 2.0 (the "License"); + you may not use this file except in compliance with the License. + You may obtain a copy of the License at + + http://www.apache.org/licenses/LICENSE-2.0 + + Unless required by applicable law or agreed to in writing, software + distributed under the License is distributed on an "AS IS" BASIS, + WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + See the License for the specific language governing permissions and + limitations under the License. See accompanying LICENSE file. +--> + +# Submarine Serve + +Submarine serve uses istio 1.6.8 and seldon-core 1.10.0 for serving. + +## Install + +- Install submarine first + +```bash +cd submarine +helm install submarine ./helm-charts/submarine +``` + +- Install submarine serve package istio and seldon-core + +```bash +./submarine-serve/installation/install.sh +``` + +### Uninstall Submarine Serve Package + +```bash +kubectl delete ns istio-system +kubectl delete ns seldon-system +``` diff --git a/submarine-serve/installation/install.sh b/submarine-serve/installation/install.sh new file mode 100755 index 0000000..6eab364 --- /dev/null +++ b/submarine-serve/installation/install.sh @@ -0,0 +1,45 @@ +#!/bin/bash +# Licensed to the Apache Software Foundation (ASF) under one or more +# contributor license agreements. See the NOTICE file distributed with +# this work for additional information regarding copyright ownership. +# The ASF licenses this file to You under the Apache License, Version 2.0 +# (the "License"); you may not use this file except in compliance with +# the License. You may obtain a copy of the License at +# +# http://www.apache.org/licenses/LICENSE-2.0 +# +# Unless required by applicable law or agreed to in writing, software +# distributed under the License is distributed on an "AS IS" BASIS, +# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +# See the License for the specific language governing permissions and +# limitations under the License. + +set -euxo pipefail + +if [ -L ${BASH_SOURCE-$0} ]; then + PWD=$(dirname $(readlink "${BASH_SOURCE-$0}")) +else + PWD=$(dirname ${BASH_SOURCE-$0}) +fi +export CURRENT_PATH=$(cd "${PWD}">/dev/null; pwd) +SUBMARINE_HOME=${CURRENT_PATH}/../.. + +if [[ ! -f ${CURRENT_PATH}/istioctl ]]; then + wget https://github.com/istio/istio/releases/download/1.6.8/istio-1.6.8-linux-amd64.tar.gz + tar zxvf istio-1.6.8-linux-amd64.tar.gz + rm -rf istio-1.6.8-linux-amd64.tar.gz + cp ./istio-1.6.8/bin/istioctl ${CURRENT_PATH}/istioctl + rm -rf istio-1.6.8 +fi + +${CURRENT_PATH}/istioctl install --skip-confirmation + +kubectl create ns seldon-system +kubectl apply -f ${CURRENT_PATH}/seldon-secret.yaml +helm install seldon-core seldon-core-operator \ + --repo https://storage.googleapis.com/seldon-charts \ + --namespace seldon-system \ + --version 1.10.0 \ + --set istio.enabled=true \ + --set executor.defaultEnvSecretRefName=seldon-core-init-container-secret 2> /dev/null +kubectl apply -f ${CURRENT_PATH}/seldon-gateway.yaml diff --git a/submarine-serve/installation/seldon-gateway.yaml b/submarine-serve/installation/seldon-gateway.yaml new file mode 100644 index 0000000..ff9c01b --- /dev/null +++ b/submarine-serve/installation/seldon-gateway.yaml @@ -0,0 +1,31 @@ +# +# Licensed to the Apache Software Foundation (ASF) under one or more +# contributor license agreements. See the NOTICE file distributed with +# this work for additional information regarding copyright ownership. +# The ASF licenses this file to You under the Apache License, Version 2.0 +# (the "License"); you may not use this file except in compliance with +# the License. You may obtain a copy of the License at +# +# http://www.apache.org/licenses/LICENSE-2.0 +# +# Unless required by applicable law or agreed to in writing, software +# distributed under the License is distributed on an "AS IS" BASIS, +# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +# See the License for the specific language governing permissions and +# limitations under the License. + +apiVersion: networking.istio.io/v1alpha3 +kind: Gateway +metadata: + name: seldon-gateway + namespace: istio-system +spec: + selector: + istio: ingressgateway # use istio default controller + servers: + - port: + number: 80 + name: http + protocol: HTTP + hosts: + - "*" diff --git a/submarine-serve/installation/seldon-secret.yaml b/submarine-serve/installation/seldon-secret.yaml new file mode 100644 index 0000000..4a7d0c3 --- /dev/null +++ b/submarine-serve/installation/seldon-secret.yaml @@ -0,0 +1,29 @@ +# +# Licensed to the Apache Software Foundation (ASF) under one or more +# contributor license agreements. See the NOTICE file distributed with +# this work for additional information regarding copyright ownership. +# The ASF licenses this file to You under the Apache License, Version 2.0 +# (the "License"); you may not use this file except in compliance with +# the License. You may obtain a copy of the License at +# +# http://www.apache.org/licenses/LICENSE-2.0 +# +# Unless required by applicable law or agreed to in writing, software +# distributed under the License is distributed on an "AS IS" BASIS, +# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +# See the License for the specific language governing permissions and +# limitations under the License. + +apiVersion: v1 +kind: Secret +metadata: + name: submarine-serve-secret + namespace: default +type: Opaque +stringData: + RCLONE_CONFIG_S3_TYPE: s3 + RCLONE_CONFIG_S3_PROVIDER: minio + RCLONE_CONFIG_S3_ENV_AUTH: "false" + RCLONE_CONFIG_S3_ACCESS_KEY_ID: submarine_minio + RCLONE_CONFIG_S3_SECRET_ACCESS_KEY: submarine_minio + RCLONE_CONFIG_S3_ENDPOINT: http://submarine-minio-service:9000 \ No newline at end of file diff --git a/website/.gitignore b/website/.gitignore index 7abf50a..7476a98 100644 --- a/website/.gitignore +++ b/website/.gitignore @@ -18,4 +18,4 @@ package-lock.json npm-debug.log* yarn-debug.log* -yarn-error.log* +yarn-error.log* \ No newline at end of file --------------------------------------------------------------------- To unsubscribe, e-mail: dev-unsubscr...@submarine.apache.org For additional commands, e-mail: dev-h...@submarine.apache.org