Skip to content

Commit 39c0199

Browse files
authored
Finalize the v1.4-branch (#2056)
* Update README for 1.4 (#2047) * Update references for 1.4 Signed-off-by: Kimonas Sotirchos <kimwnasptd@arrikto.com> * Add a table for the common components Signed-off-by: Kimonas Sotirchos <kimwnasptd@arrikto.com> * Update K8s version Signed-off-by: Kimonas Sotirchos <kimwnasptd@arrikto.com> * Knative: Use istio's local gateway (#2048) By default Knative's local gateway will use the istio-ingressgateway Pod for configuring traffic and binding VirtualServices. This means that all in-cluster traffic will need to also pass via the ingress gateway. We've noticed 302s from Notebooks curl-ing InferenceServices. This was because the AuthService is authenticating all requests that go through the ingress gateway. But since we now send in-cluster requests via the ingress gateway this means that AuthService will also check them. To avoid the above we provide an overlay for making Knative's local gateway to use Istio's local gateway and not the ingress one. See: #1966 Signed-off-by: Kimonas Sotirchos <kimwnasptd@arrikto.com> * Update components of kubeflow/kubeflow for 1.4 (#2055) * Sync with the 1.4 kubeflow/kubeflow repo Signed-off-by: Kimonas Sotirchos <kimwnasptd@arrikto.com> * Update README for 1.4 Signed-off-by: Kimonas Sotirchos <kimwnasptd@arrikto.com>
1 parent bfe58c9 commit 39c0199

13 files changed

Lines changed: 70 additions & 33 deletions

File tree

README.md

Lines changed: 22 additions & 14 deletions
Original file line numberDiff line numberDiff line change
@@ -33,7 +33,7 @@ The `distributions` directory contains manifests for specific, opinionated distr
3333

3434
The `docs`, `hack`, and `tests` directories will also be gradually phased out.
3535

36-
Starting Kubeflow 1.3, all components should be deployable using `kustomize` only. Any automation tooling for deployment on top of the manifests should be maintained externally by distribution owners.
36+
Starting from Kubeflow 1.3, all components should be deployable using `kustomize` only. Any automation tooling for deployment on top of the manifests should be maintained externally by distribution owners.
3737

3838
## Kubeflow components versions
3939

@@ -43,22 +43,30 @@ This repo periodically syncs all official Kubeflow components from their respect
4343
| - | - | - |
4444
| Training Operator | apps/training-operator/upstream | [v1.3.0](https://github.com/kubeflow/tf-operator/tree/v1.3.0/manifests) |
4545
| MPI Operator | apps/mpi-job/upstream | [v0.3.0](https://github.com/kubeflow/mpi-operator/tree/v0.3.0/manifests) |
46-
| Notebook Controller | apps/jupyter/notebook-controller/upstream | [v1.4-rc.0](https://github.com/kubeflow/kubeflow/tree/v1.4-rc.0/components/notebook-controller/config) |
47-
| Tensorboard Controller | apps/tensorboard/tensorboard-controller/upstream | [v1.4-rc.0](https://github.com/kubeflow/kubeflow/tree/v1.4-rc.0/components/tensorboard-controller/config) |
48-
| Central Dashboard | apps/centraldashboard/upstream | [v1.4-rc.0](https://github.com/kubeflow/kubeflow/tree/v1.4-rc.0/components/centraldashboard/manifests) |
49-
| Profiles + KFAM | apps/profiles/upstream | [v1.4-rc.0](https://github.com/kubeflow/kubeflow/tree/v1.4-rc.0/components/profile-controller/config) |
50-
| PodDefaults Webhook | apps/admission-webhook/upstream | [v1.4-rc.0](https://github.com/kubeflow/kubeflow/tree/v1.4-rc.0/components/admission-webhook/manifests) |
51-
| Jupyter Web App | apps/jupyter/jupyter-web-app/upstream | [v1.4-rc.0](https://github.com/kubeflow/kubeflow/tree/v1.4-rc.0/components/crud-web-apps/jupyter/manifests) |
52-
| Tensorboards Web App | apps/tensorboard/tensorboards-web-app/upstream | [v1.4-rc.0](https://github.com/kubeflow/kubeflow/tree/v1.4-rc.0/components/crud-web-apps/tensorboards/manifests) |
53-
| Volumes Web App | apps/volumes-web-app/upstream | [v1.4-rc.0](https://github.com/kubeflow/kubeflow/tree/v1.4-rc.0/components/crud-web-apps/volumes/manifests) |
46+
| Notebook Controller | apps/jupyter/notebook-controller/upstream | [v1.4.0](https://github.com/kubeflow/kubeflow/tree/v1.4.0/components/notebook-controller/config) |
47+
| Tensorboard Controller | apps/tensorboard/tensorboard-controller/upstream | [v1.4.0](https://github.com/kubeflow/kubeflow/tree/v1.4.0/components/tensorboard-controller/config) |
48+
| Central Dashboard | apps/centraldashboard/upstream | [v1.4.0](https://github.com/kubeflow/kubeflow/tree/v1.4.0/components/centraldashboard/manifests) |
49+
| Profiles + KFAM | apps/profiles/upstream | [v1.4.0](https://github.com/kubeflow/kubeflow/tree/v1.4.0/components/profile-controller/config) |
50+
| PodDefaults Webhook | apps/admission-webhook/upstream | [v1.4.0](https://github.com/kubeflow/kubeflow/tree/v1.4.0/components/admission-webhook/manifests) |
51+
| Jupyter Web App | apps/jupyter/jupyter-web-app/upstream | [v1.4.0](https://github.com/kubeflow/kubeflow/tree/v1.4.0/components/crud-web-apps/jupyter/manifests) |
52+
| Tensorboards Web App | apps/tensorboard/tensorboards-web-app/upstream | [v1.4.0](https://github.com/kubeflow/kubeflow/tree/v1.4.0/components/crud-web-apps/tensorboards/manifests) |
53+
| Volumes Web App | apps/volumes-web-app/upstream | [v1.4.0](https://github.com/kubeflow/kubeflow/tree/v1.4.0/components/crud-web-apps/volumes/manifests) |
5454
| Katib | apps/katib/upstream | [v0.12.0](https://github.com/kubeflow/katib/tree/v0.12.0/manifests/v1beta1) |
5555
| KFServing | apps/kfserving/upstream | [v0.6.1](https://github.com/kubeflow/kfserving/releases/tag/v0.6.1) |
5656
| Kubeflow Pipelines | apps/pipeline/upstream | [1.7.0](https://github.com/kubeflow/pipelines/tree/1.7.0/manifests/kustomize) |
5757
| Kubeflow Tekton Pipelines | apps/kfp-tekton/upstream | [v1.0.0](https://github.com/kubeflow/kfp-tekton/tree/v1.0.0/manifests/kustomize) |
5858

59+
The following is also a matrix with versions from common components that are
60+
used from the different projects of Kubeflow:
61+
62+
| Component | Local Manifests Path | Upstream Revision |
63+
| - | - | - |
64+
| Istio | common/istio-1-9 | [1.9.6](https://github.com/istio/istio/releases/tag/1.9.6) |
65+
| Knative | common/knative | [0.22.1](https://github.com/knative/serving/releases/tag/v0.22.1) |
66+
5967
## Installation
6068

61-
Starting Kubeflow 1.3, the Manifests WG provides two options for installing Kubeflow official components and common services with kustomize. The aim is to help end users install easily and to help distribution owners build their opinionated distributions from a tested starting point:
69+
Starting from Kubeflow 1.3, the Manifests WG provides two options for installing Kubeflow official components and common services with kustomize. The aim is to help end users install easily and to help distribution owners build their opinionated distributions from a tested starting point:
6270

6371
1. Single-command installation of all components under `apps` and `common`
6472
2. Multi-command, individual components installation for `apps` and `common`
@@ -72,9 +80,9 @@ The `example` directory contains an example kustomization for the single command
7280

7381
### Prerequisites
7482

75-
- `Kubernetes` (tested with version `1.17`) with a default [StorageClass](https://kubernetes.io/docs/concepts/storage/storage-classes/)
83+
- `Kubernetes` (tested with version `1.19`) with a default [StorageClass](https://kubernetes.io/docs/concepts/storage/storage-classes/)
7684
- `kustomize` (version `3.2.0`) ([download link](https://github.com/kubernetes-sigs/kustomize/releases/tag/v3.2.0))
77-
- :warning: Kubeflow 1.3.0 is not compatible with the latest versions of of kustomize 4.x. This is due to changes in the order resources are sorted and printed. Please see [kubernetes-sigs/kustomize#3794](https://github.com/kubernetes-sigs/kustomize/issues/3794) and [kubeflow/manifests#1797](https://github.com/kubeflow/manifests/issues/1797). We know this is not ideal and are working with the upstream kustomize team to add support for the latest versions of kustomize as soon as we can.
85+
- :warning: Kubeflow 1.4.0 is not compatible with the latest versions of of kustomize 4.x. This is due to changes in the order resources are sorted and printed. Please see [kubernetes-sigs/kustomize#3794](https://github.com/kubernetes-sigs/kustomize/issues/3794) and [kubeflow/manifests#1797](https://github.com/kubeflow/manifests/issues/1797). We know this is not ideal and are working with the upstream kustomize team to add support for the latest versions of kustomize as soon as we can.
7886
- `kubectl`
7987

8088
---
@@ -398,8 +406,8 @@ For security reasons, we don't want to use the default password for the default
398406

399407
## Frequently Asked Questions
400408

401-
- **Q:** What versions of Istio, Knative, Cert-Manager, Argo, ... are compatible with Kubeflow 1.3? \
409+
- **Q:** What versions of Istio, Knative, Cert-Manager, Argo, ... are compatible with Kubeflow 1.4? \
402410
**A:** Please refer to each individual component's documentation for a dependency compatibility range. For Istio, Knative, Dex, Cert-Manager and OIDC-AuthService, the versions in `common` are the ones we have validated.
403411
404412
- **Q:** Can I use the latest Kustomize version (`v4.x`)? \
405-
**A:** Kubeflow 1.3.0 is not compatible with the latest versions of of kustomize 4.x. This is due to changes in the order resources are sorted and printed. Please see [kubernetes-sigs/kustomize#3794](https://github.com/kubernetes-sigs/kustomize/issues/3794) and [kubeflow/manifests#1797](https://github.com/kubeflow/manifests/issues/1797). We know this is not ideal and are working with the upstream kustomize team to add support for the latest versions of kustomize as soon as we can.
413+
**A:** Kubeflow 1.4.0 is not compatible with the latest versions of of kustomize 4.x. This is due to changes in the order resources are sorted and printed. Please see [kubernetes-sigs/kustomize#3794](https://github.com/kubernetes-sigs/kustomize/issues/3794) and [kubeflow/manifests#1797](https://github.com/kubeflow/manifests/issues/1797). We know this is not ideal and are working with the upstream kustomize team to add support for the latest versions of kustomize as soon as we can.

apps/admission-webhook/upstream/base/kustomization.yaml

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -16,7 +16,7 @@ commonLabels:
1616
images:
1717
- name: public.ecr.aws/j1r0q0g6/notebooks/admission-webhook
1818
newName: public.ecr.aws/j1r0q0g6/notebooks/admission-webhook
19-
newTag: v1.4-rc.1
19+
newTag: v1.4
2020
namespace: kubeflow
2121
generatorOptions:
2222
disableNameSuffixHash: true

apps/centraldashboard/upstream/base/kustomization.yaml

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -18,7 +18,7 @@ commonLabels:
1818
images:
1919
- name: public.ecr.aws/j1r0q0g6/notebooks/central-dashboard
2020
newName: public.ecr.aws/j1r0q0g6/notebooks/central-dashboard
21-
newTag: v1.4-rc.1
21+
newTag: v1.4
2222
configMapGenerator:
2323
- envs:
2424
- params.env

apps/jupyter/jupyter-web-app/upstream/base/configs/spawner_ui_config.yaml

Lines changed: 10 additions & 10 deletions
Original file line numberDiff line numberDiff line change
@@ -17,23 +17,23 @@
1717
spawnerFormDefaults:
1818
image:
1919
# The container Image for the user's Jupyter Notebook
20-
value: public.ecr.aws/j1r0q0g6/notebooks/notebook-servers/jupyter-scipy:v1.4-rc.1
20+
value: public.ecr.aws/j1r0q0g6/notebooks/notebook-servers/jupyter-scipy:v1.4
2121
# The list of available standard container Images
2222
options:
23-
- public.ecr.aws/j1r0q0g6/notebooks/notebook-servers/jupyter-scipy:v1.4-rc.1
24-
- public.ecr.aws/j1r0q0g6/notebooks/notebook-servers/jupyter-pytorch-full:v1.4-rc.1
25-
- public.ecr.aws/j1r0q0g6/notebooks/notebook-servers/jupyter-pytorch-cuda-full:v1.4-rc.1
26-
- public.ecr.aws/j1r0q0g6/notebooks/notebook-servers/jupyter-tensorflow-full:v1.4-rc.1
27-
- public.ecr.aws/j1r0q0g6/notebooks/notebook-servers/jupyter-tensorflow-cuda-full:v1.4-rc.1
23+
- public.ecr.aws/j1r0q0g6/notebooks/notebook-servers/jupyter-scipy:v1.4
24+
- public.ecr.aws/j1r0q0g6/notebooks/notebook-servers/jupyter-pytorch-full:v1.4
25+
- public.ecr.aws/j1r0q0g6/notebooks/notebook-servers/jupyter-pytorch-cuda-full:v1.4
26+
- public.ecr.aws/j1r0q0g6/notebooks/notebook-servers/jupyter-tensorflow-full:v1.4
27+
- public.ecr.aws/j1r0q0g6/notebooks/notebook-servers/jupyter-tensorflow-cuda-full:v1.4
2828
imageGroupOne:
2929
# The container Image for the user's Group One Server
3030
# The annotation `notebooks.kubeflow.org/http-rewrite-uri: /`
3131
# is applied to notebook in this group, configuring
3232
# the Istio rewrite for containers that host their web UI at `/`
33-
value: public.ecr.aws/j1r0q0g6/notebooks/notebook-servers/codeserver-python:v1.4-rc.1
33+
value: public.ecr.aws/j1r0q0g6/notebooks/notebook-servers/codeserver-python:v1.4
3434
# The list of available standard container Images
3535
options:
36-
- public.ecr.aws/j1r0q0g6/notebooks/notebook-servers/codeserver-python:v1.4-rc.1
36+
- public.ecr.aws/j1r0q0g6/notebooks/notebook-servers/codeserver-python:v1.4
3737
imageGroupTwo:
3838
# The container Image for the user's Group Two Server
3939
# The annotation `notebooks.kubeflow.org/http-rewrite-uri: /`
@@ -42,10 +42,10 @@ spawnerFormDefaults:
4242
# The annotation `notebooks.kubeflow.org/http-headers-request-set`
4343
# is applied to notebook in this group, configuring Istio
4444
# to add the `X-RStudio-Root-Path` header to requests
45-
value: public.ecr.aws/j1r0q0g6/notebooks/notebook-servers/rstudio-tidyverse:v1.4-rc.1
45+
value: public.ecr.aws/j1r0q0g6/notebooks/notebook-servers/rstudio-tidyverse:v1.4
4646
# The list of available standard container Images
4747
options:
48-
- public.ecr.aws/j1r0q0g6/notebooks/notebook-servers/rstudio-tidyverse:v1.4-rc.1
48+
- public.ecr.aws/j1r0q0g6/notebooks/notebook-servers/rstudio-tidyverse:v1.4
4949
# If true, hide registry and/or tag name in the image selection dropdown
5050
hideRegistry: true
5151
hideTag: false

apps/jupyter/jupyter-web-app/upstream/base/kustomization.yaml

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -23,7 +23,7 @@ commonLabels:
2323
images:
2424
- name: public.ecr.aws/j1r0q0g6/notebooks/jupyter-web-app
2525
newName: public.ecr.aws/j1r0q0g6/notebooks/jupyter-web-app
26-
newTag: v1.4-rc.1
26+
newTag: v1.4
2727
# We need the name to be unique without the suffix because the original name is what
2828
# gets used with patches
2929
configMapGenerator:

apps/jupyter/notebook-controller/upstream/base/kustomization.yaml

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -5,4 +5,4 @@ resources:
55
images:
66
- name: public.ecr.aws/j1r0q0g6/notebooks/notebook-controller
77
newName: public.ecr.aws/j1r0q0g6/notebooks/notebook-controller
8-
newTag: v1.4-rc.1
8+
newTag: v1.4

apps/profiles/upstream/base/kustomization.yaml

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -12,7 +12,7 @@ patchesStrategicMerge:
1212
images:
1313
- name: public.ecr.aws/j1r0q0g6/notebooks/profile-controller
1414
newName: public.ecr.aws/j1r0q0g6/notebooks/profile-controller
15-
newTag: v1.4-rc.1
15+
newTag: v1.4
1616

1717
configMapGenerator:
1818
- name: namespace-labels-data

apps/profiles/upstream/overlays/kubeflow/kustomization.yaml

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -28,4 +28,4 @@ vars:
2828
images:
2929
- name: public.ecr.aws/j1r0q0g6/notebooks/access-management
3030
newName: public.ecr.aws/j1r0q0g6/notebooks/access-management
31-
newTag: v1.4-rc.1
31+
newTag: v1.4

apps/tensorboard/tensorboard-controller/upstream/base/kustomization.yaml

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -36,4 +36,4 @@ patches:
3636
images:
3737
- name: public.ecr.aws/j1r0q0g6/notebooks/tensorboard-controller
3838
newName: public.ecr.aws/j1r0q0g6/notebooks/tensorboard-controller
39-
newTag: v1.4-rc.1
39+
newTag: v1.4

apps/tensorboard/tensorboards-web-app/upstream/base/kustomization.yaml

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -14,7 +14,7 @@ commonLabels:
1414
images:
1515
- name: public.ecr.aws/j1r0q0g6/notebooks/tensorboards-web-app
1616
newName: public.ecr.aws/j1r0q0g6/notebooks/tensorboards-web-app
17-
newTag: v1.4-rc.1
17+
newTag: v1.4
1818
# We need the name to be unique without the suffix because the original name is what
1919
# gets used with patches
2020
configMapGenerator:

0 commit comments

Comments
 (0)