Skip to content
This repository has been archived by the owner on Jul 10, 2024. It is now read-only.

Commit

Permalink
SUBMARINE-1327. Upgrade K8s to support the latest 3 releases (1.22-1.24)
Browse files Browse the repository at this point in the history
### What is this PR for?
Update k8s to 1.22, 1.23, 1.24.
PodSecurityPolicy `policy/v1beta1` is deprecated in v1.21+, unavailable in v1.25+, so that we will deal with the 1.22-1.24 for the time being and then try to upgrade to 1.25 or 1.26 once all the related issues have been resolved.

### What type of PR is it?
Feature

### Todos
* [x] - Update Notebook-Controller-Operator to 1.7.0
* [x] - Update Training-Operator to 1.6.0
* [x] - Update Seldon-Core-Operator to 1.15.1
* [x] - Update Submarine CRD/Operator-API  to v1
* [x] - Git Action update
* [x] - Test NoteBook (Blocked issue solved by PR #1058 )
* [x] - Test Tf Experiment
* [x] - Test PyTorch Experiment
* [x] - Test Serving
* [x] - Update documents

Some issues were found during testing but remain unresolved and need to be looked at to see if they need to be resolved in 0.8.0:
* [ ] - Training-operator change the `job-name` of the pod label to`training.kubeflow.org/job-name` after the upgrade from 1.3.0 to 1.6.0.

### What is the Jira issue?
https://issues.apache.org/jira/browse/SUBMARINE-1327

### How should this be tested?
Github CI

### Screenshots (if appropriate)
No

### Questions:
* Do the license files need updating? Yes
* Are there breaking changes for older versions? Yes
* Does this need new documentation? Yes

Author: cdmikechen <[email protected]>

Signed-off-by: cdmikechen <[email protected]>

Closes #1060 from cdmikechen/SUBMARINE-1327 and squashes the following commits:

9b0f2f0 [cdmikechen] Update serving document
f6f25a3 [cdmikechen] Fix training-operator job name
4694597 [cdmikechen] Support for notebook-controller 1.6.0+
478c041 [cdmikechen] Replace v2 to v3
df1ee51 [cdmikechen] Fix version
962cf84 [cdmikechen] Down to 1.17.2
bdb3a90 [cdmikechen] Update Helm CR version to v1 Update istio to 1.17.1 Update Go to 1.19.7
  • Loading branch information
cdmikechen committed Apr 30, 2023
1 parent 22df22f commit b2e65c7
Show file tree
Hide file tree
Showing 60 changed files with 25,905 additions and 5,475 deletions.
2 changes: 1 addition & 1 deletion .github/scripts/start-submarine.sh
Original file line number Diff line number Diff line change
Expand Up @@ -32,7 +32,7 @@ kubectl label namespace submarine istio-injection=enabled
kubectl label namespace "$submarine_user_namespace" istio-injection=enabled
helm dependency update ./helm-charts/submarine
helm install --wait --set storageClass.provisioner=rancher.io/local-path --set storageClass.volumeBindingMode=WaitForFirstConsumer submarine ./helm-charts/submarine -n submarine
kubectl apply -f ./submarine-cloud-v3/config/samples/_v1alpha1_submarine.yaml -n "$submarine_user_namespace"
kubectl apply -f ./submarine-cloud-v3/config/samples/_v1_submarine.yaml -n "$submarine_user_namespace"

# Polling waiting for the submarine to be in the RUNNING state
for ((i=0;i<$wait_times;++i)); do
Expand Down
18 changes: 10 additions & 8 deletions .github/workflows/master.yml
Original file line number Diff line number Diff line change
Expand Up @@ -27,11 +27,13 @@ jobs:
runs-on: ubuntu-latest
outputs:
matrix: ${{ steps.set-matrix.outputs.matrix }}
# Version updates for k8s can be found at https://kubernetes.io/releases/patch-releases/
# Version updates for k8s can be found at https://kubernetes.io/releases/patch-releases/ or
# https://kubernetes.io/releases/
# We mainly support the last 3-4 releases of kubernetes
steps:
- id: set-matrix
run: |
echo "::set-output name=matrix::[\"v1.19.16\", \"v1.20.15\", \"v1.21.14\"]"
echo "::set-output name=matrix::[\"v1.22.17\", \"v1.23.17\", \"v1.24.12\"]"
submarine-operator-verify:
runs-on: ubuntu-latest
timeout-minutes: 10
Expand Down Expand Up @@ -97,10 +99,10 @@ jobs:
kind version
- name: Create kind cluster
run: kind create cluster --config ./.github/config/kind-config-kind.yaml --wait 3m --image kindest/node:${{ matrix.k8s-version }}
- name: Download Istio 1.13.0
- name: Download Istio 1.17.1
run: |
curl -L https://istio.io/downloadIstio | ISTIO_VERSION=1.13.0 sh -
cd istio-1.13.0
curl -L https://istio.io/downloadIstio | ISTIO_VERSION=1.17.1 sh -
cd istio-1.17.1
echo "$PWD/bin" >> $GITHUB_PATH
- name: Install Istio
run: istioctl install -y --set values.global.proxy.resources.requests.cpu=10m
Expand Down Expand Up @@ -239,10 +241,10 @@ jobs:
kind version
- name: Create kind cluster
run: kind create cluster --config ./.github/config/kind-config-kind.yaml --wait 3m --image kindest/node:${{ matrix.k8s-version }}
- name: Download Istio 1.13.0
- name: Download Istio 1.17.1
run: |
curl -L https://istio.io/downloadIstio | ISTIO_VERSION=1.13.0 sh -
cd istio-1.13.0
curl -L https://istio.io/downloadIstio | ISTIO_VERSION=1.17.1 sh -
cd istio-1.17.1
echo "$PWD/bin" >> $GITHUB_PATH
- name: Install Istio
run: istioctl install -y --set values.global.proxy.resources.requests.cpu=10m
Expand Down
6 changes: 3 additions & 3 deletions .github/workflows/python.yml
Original file line number Diff line number Diff line change
Expand Up @@ -123,10 +123,10 @@ jobs:
java -version
- name: Create kind cluster
run: kind create cluster --config ./.github/config/kind-config-kind.yaml --wait 3m --image kindest/node:${KUBERNETES_VERSION}
- name: Download Istio 1.13.0
- name: Download Istio 1.17.1
run: |
curl -L https://istio.io/downloadIstio | ISTIO_VERSION=1.13.0 sh -
cd istio-1.13.0
curl -L https://istio.io/downloadIstio | ISTIO_VERSION=1.17.1 sh -
cd istio-1.17.1
echo "$PWD/bin" >> $GITHUB_PATH
- name: Install Istio
run: istioctl install -y --set values.global.proxy.resources.requests.cpu=10m
Expand Down
5 changes: 5 additions & 0 deletions dev-support/examples/quickstart/serve_predictions.py
Original file line number Diff line number Diff line change
Expand Up @@ -17,6 +17,11 @@
https://docs.seldon.io/projects/seldon-core/en/latest/examples/tfserving_mnist.html
https://www.tensorflow.org/tfx/tutorials/serving/rest_simple
And the parameters of the predictions call have been modified.
In addition to the submarine-sdk lib,
the following dependencies need to be downloaded separately for this test code:
pip install tensorflow_datasets==4.7.0
pip install matplotlib==3.5.3
"""

import numpy as np
Expand Down
2 changes: 1 addition & 1 deletion helm-charts/submarine/Chart.yaml
Original file line number Diff line number Diff line change
Expand Up @@ -29,6 +29,6 @@ dependencies:
version: "0.8.0"
condition: notebook-controller.enabled
- name: seldon-core-operator
version: "1.10.0"
version: "1.15.1"
repository: https://storage.googleapis.com/seldon-charts
condition: seldon-core-operator.enabled
Original file line number Diff line number Diff line change
Expand Up @@ -34,4 +34,4 @@ version: 0.8.0

# This is the version number of the application being deployed. This version number should be
# incremented each time you make changes to the application.
appVersion: 1.4.0
appVersion: 1.7.0
Loading

0 comments on commit b2e65c7

Please sign in to comment.