Skip to content
Draft
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
28 commits
Select commit Hold shift + click to select a range
2a9f670
migrate to gateway api
akagami-harsh Apr 11, 2025
9513d12
migrate centraldashboard VirtualService to HTTPRoute
akagami-harsh Jun 9, 2025
00e5ada
migrate jupyterwebapp VirtualService to HTTPRoute
akagami-harsh Jun 9, 2025
5c79844
update sync script
akagami-harsh Jun 9, 2025
c35f0a6
update port-forward script
akagami-harsh Jun 9, 2025
83cfce3
migrate pipelines VirtualService to HTTPRoute
akagami-harsh Jun 9, 2025
e90acf8
migrate dex VirtualService to HTTPRoute
akagami-harsh Jun 9, 2025
660209c
add gateway api AP and RA
akagami-harsh Jun 9, 2025
517c178
add gateway api rbac
akagami-harsh Jun 9, 2025
d734eec
migrate oauth2proxy VirtualService to HTTPRoute
akagami-harsh Jun 9, 2025
081841e
update oauth2proxy
akagami-harsh Jun 9, 2025
b978cab
migrate katib VirtualService to HTTPRoute
akagami-harsh Jun 9, 2025
a9c42dc
update profiles
akagami-harsh Jun 9, 2025
9040813
volumes-web-app profiles
akagami-harsh Jun 9, 2025
68e9afd
update swfs
akagami-harsh Jun 9, 2025
991571c
move gateway api to istio-system ns
akagami-harsh Jun 9, 2025
dab4f10
fix
akagami-harsh Jun 10, 2025
4de47bf
fix port-forward
akagami-harsh Jun 10, 2025
9e71b35
update RequestAuthentication
akagami-harsh Jun 10, 2025
e46a225
update tensorboard-web-app to use httproute
akagami-harsh Jun 10, 2025
eee237b
update notebook_controller port-forward
akagami-harsh Jun 10, 2025
ce17f84
update model-registry to use httproute
akagami-harsh Jun 10, 2025
575fec4
update kserve-models-web-app to use httproute
akagami-harsh Jun 10, 2025
3803c8d
fix typo
akagami-harsh Jun 10, 2025
941da76
use istio-cni
akagami-harsh Jun 10, 2025
5817e3a
fix
akagami-harsh Jun 11, 2025
fe3ca08
use net-gateway-api
akagami-harsh Jun 13, 2025
1614632
update test
akagami-harsh Jun 13, 2025
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
9 changes: 3 additions & 6 deletions .github/workflows/model_registry_test.yaml
Original file line number Diff line number Diff line change
Expand Up @@ -20,7 +20,7 @@
- name: Install KinD, Create KinD cluster and Install kustomize
run: ./tests/install_KinD_create_KinD_cluster_install_kustomize.sh

- name: Remove AppArmor profile for mysql in KinD on GHA # https://github.com/kubeflow/manifests/issues/2507

Check warning on line 23 in .github/workflows/model_registry_test.yaml

View workflow job for this annotation

GitHub Actions / format_YAML_files

23:62 [comments] too few spaces before comment: expected 2
run: |
set -x
sudo apt-get install apparmor-profiles
Expand All @@ -45,7 +45,7 @@
run: ./tests/multi_tenancy_install.sh

- name: Install kubeflow-istio-resources
run: kustomize build common/istio-1-24/kubeflow-istio-resources/base | kubectl apply -f -
run: kustomize build common/istio-cni-1-24/kubeflow-istio-resources/base | kubectl apply -f -

- name: Create KF Profile
run: kustomize build common/user-namespace/base | kubectl apply -f -
Expand Down Expand Up @@ -88,11 +88,8 @@
-H 'accept: application/json'

# for these steps below ensure same steps as kserve (ie: Istio with external authentication, cert-manager, knative) so to achieve same setup
- name: Port forward Istio gateway
run: |
INGRESS_GATEWAY_SERVICE=$(kubectl get svc --namespace istio-system --selector="app=istio-ingressgateway" --output jsonpath='{.items[0].metadata.name}')
nohup kubectl port-forward --namespace istio-system svc/${INGRESS_GATEWAY_SERVICE} 8080:80 &
while ! curl localhost:8080; do echo waiting for port-forwarding; sleep 1; done; echo port-forwarding ready
- name: Port forward
run: ./tests/port_forward_gateway.sh

- name: Dry-run KF Model Registry REST API
run: |
Expand Down
9 changes: 3 additions & 6 deletions .github/workflows/notebook_controller_test.yaml
Original file line number Diff line number Diff line change
Expand Up @@ -34,7 +34,7 @@
run: ./tests/oauth2-proxy_install.sh

- name: Install kubeflow-istio-resources
run: kustomize build common/istio-1-24/kubeflow-istio-resources/base | kubectl apply -f -
run: kustomize build common/istio-cni-1-24/kubeflow-istio-resources/base | kubectl apply -f -

- name: Install KF Multi Tenancy
run: ./tests/multi_tenancy_install.sh
Expand All @@ -50,11 +50,8 @@
run: kustomize build common/user-namespace/base | kubectl apply -f -

- name: Port forward
run: |
INGRESS_GATEWAY_SERVICE=$(kubectl get svc --namespace istio-system --selector="app=istio-ingressgateway" --output jsonpath='{.items[0].metadata.name}')
nohup kubectl port-forward --namespace istio-system svc/${INGRESS_GATEWAY_SERVICE} 8080:80 &
while ! curl localhost:8080; do echo waiting for port-forwarding; sleep 1; done; echo port-forwarding ready

run: ./tests/port_forward_gateway.sh

Check failure on line 54 in .github/workflows/notebook_controller_test.yaml

View workflow job for this annotation

GitHub Actions / format_YAML_files

54:1 [trailing-spaces] trailing spaces
- name: List notebooks over API with authorized SA Token
run: |
KF_PROFILE=kubeflow-user-example-com
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -8,7 +8,7 @@ spec:
- from:
- source:
principals:
- cluster.local/ns/istio-system/sa/istio-ingressgateway-service-account
- cluster.local/ns/istio-system/sa/kubeflow-gateway-istio
selector:
matchLabels:
app: centraldashboard
29 changes: 5 additions & 24 deletions apps/centraldashboard/upstream/overlays/istio/kustomization.yaml
Original file line number Diff line number Diff line change
Expand Up @@ -7,37 +7,18 @@ resources:
namespace: kubeflow
replacements:
- source:
fieldPath: metadata.namespace
fieldPath: metadata.name
kind: Service
name: centraldashboard
version: v1
targets:
- fieldPaths:
- spec.http.0.route.0.destination.host
options:
delimiter: .
index: 1
- spec.rules.0.backendRefs.0.name
select:
group: networking.istio.io
kind: VirtualService
group: gateway.networking.k8s.io
kind: HTTPRoute
name: centraldashboard
version: v1alpha3
- source:
fieldPath: data.CD_CLUSTER_DOMAIN
kind: ConfigMap
name: centraldashboard-parameters
version: v1
targets:
- fieldPaths:
- spec.http.0.route.0.destination.host
options:
delimiter: .
index: 3
select:
group: networking.istio.io
kind: VirtualService
name: centraldashboard
version: v1alpha3
version: v1beta1
configurations:
- params.yaml
labels:
Expand Down
4 changes: 2 additions & 2 deletions apps/centraldashboard/upstream/overlays/istio/params.yaml
Original file line number Diff line number Diff line change
@@ -1,3 +1,3 @@
varReference:
- path: spec/http/route/destination/host
kind: VirtualService
- path: spec/rules/backendRefs/name
kind: HTTPRoute
36 changes: 19 additions & 17 deletions apps/centraldashboard/upstream/overlays/istio/virtual-service.yaml
Original file line number Diff line number Diff line change
@@ -1,20 +1,22 @@
apiVersion: networking.istio.io/v1alpha3
kind: VirtualService
apiVersion: gateway.networking.k8s.io/v1beta1
kind: HTTPRoute
metadata:
name: centraldashboard
spec:
gateways:
- kubeflow-gateway
hosts:
- '*'
http:
- match:
- uri:
prefix: /
rewrite:
uri: /
route:
- destination:
host: centraldashboard.CD_NAMESPACE_PLACEHOLDER.svc.CD_CLUSTER_DOMAIN_PLACEHOLDER
port:
number: 80
parentRefs:
- name: kubeflow-gateway
namespace: istio-system
rules:
- matches:
- path:
type: PathPrefix
value: /
filters:
- type: URLRewrite
urlRewrite:
path:
type: ReplacePrefixMatch
replacePrefixMatch: /
backendRefs:
- name: centraldashboard
port: 80
Original file line number Diff line number Diff line change
Expand Up @@ -8,7 +8,7 @@ spec:
- from:
- source:
principals:
- cluster.local/ns/istio-system/sa/istio-ingressgateway-service-account
- cluster.local/ns/istio-system/sa/kubeflow-gateway-istio
selector:
matchLabels:
app: jupyter-web-app
Original file line number Diff line number Diff line change
@@ -1,4 +1,4 @@
apiVersion: networking.istio.io/v1alpha3
apiVersion: networking.istio.io/v1beta1
kind: DestinationRule
metadata:
name: jupyter-web-app
Expand Down
Original file line number Diff line number Diff line change
@@ -1,3 +1,3 @@
varReference:
- path: spec/http/route/destination/host
kind: VirtualService
- path: spec/rules/backendRefs/name
kind: HTTPRoute
Original file line number Diff line number Diff line change
@@ -1,24 +1,27 @@
apiVersion: networking.istio.io/v1alpha3
kind: VirtualService
apiVersion: gateway.networking.k8s.io/v1beta1
kind: HTTPRoute
metadata:
name: jupyter-web-app-jupyter-web-app
spec:
gateways:
- kubeflow-gateway
hosts:
- '*'
http:
- headers:
request:
parentRefs:
- name: kubeflow-gateway
namespace: istio-system
rules:
- matches:
- path:
type: PathPrefix
value: /jupyter/
filters:
- type: RequestHeaderModifier
requestHeaderModifier:
add:
x-forwarded-prefix: /jupyter
match:
- uri:
prefix: /jupyter/
rewrite:
uri: /
route:
- destination:
host: jupyter-web-app-service.$(JWA_NAMESPACE).svc.$(JWA_CLUSTER_DOMAIN)
port:
number: 80
- name: x-forwarded-prefix
value: /jupyter
- type: URLRewrite
urlRewrite:
path:
type: ReplacePrefixMatch
replacePrefixMatch: /
backendRefs:
- name: jupyter-web-app-service
port: 80
Original file line number Diff line number Diff line change
Expand Up @@ -12,4 +12,5 @@ spec:
rules:
- from:
- source:
principals: ["cluster.local/ns/istio-system/sa/istio-ingressgateway-service-account"]
principals:
- "cluster.local/ns/istio-system/sa/kubeflow-gateway-istio"
4 changes: 2 additions & 2 deletions apps/katib/upstream/installs/katib-with-kubeflow/params.yaml
Original file line number Diff line number Diff line change
@@ -1,4 +1,4 @@
---
varReference:
- path: spec/http/route/destination/host
kind: VirtualService
- path: spec/rules/backendRefs/name
kind: HTTPRoute
Original file line number Diff line number Diff line change
@@ -1,21 +1,23 @@
---
apiVersion: networking.istio.io/v1alpha3
kind: VirtualService
apiVersion: gateway.networking.k8s.io/v1beta1
kind: HTTPRoute
metadata:
name: katib-ui
spec:
gateways:
- kubeflow-gateway
hosts:
- "*"
http:
- match:
- uri:
prefix: /katib/
rewrite:
uri: /katib/
route:
- destination:
host: katib-ui.$(KATIB_UI_NAMESPACE).svc.cluster.local
port:
number: 80
parentRefs:
- name: kubeflow-gateway
namespace: istio-system
rules:
- matches:
- path:
type: PathPrefix
value: /katib/
filters:
- type: URLRewrite
urlRewrite:
path:
type: ReplacePrefixMatch
replacePrefixMatch: /katib/
backendRefs:
- name: katib-ui
port: 80
36 changes: 19 additions & 17 deletions apps/kserve/models-web-app/base/istio.yaml
Original file line number Diff line number Diff line change
@@ -1,21 +1,23 @@
apiVersion: networking.istio.io/v1beta1
kind: VirtualService
apiVersion: gateway.networking.k8s.io/v1beta1
kind: HTTPRoute
metadata:
name: kserve-models-web-app
namespace: kserve
spec:
gateways:
- knative-serving/knative-ingress-gateway
hosts:
- '*'
http:
- match:
- uri:
prefix: /kserve-endpoints/
rewrite:
uri: /
route:
- destination:
host: kserve-models-web-app.kserve.svc.cluster.local
port:
number: 80
parentRefs:
- name: kubeflow-gateway
namespace: istio-system
rules:
- matches:
- path:
type: PathPrefix
value: /kserve-endpoints/
filters:
- type: URLRewrite
urlRewrite:
path:
type: ReplacePrefixMatch
replacePrefixMatch: /
backendRefs:
- name: kserve-models-web-app
port: 80
Original file line number Diff line number Diff line change
Expand Up @@ -35,8 +35,8 @@ labels:
patches:
- path: patches/web-app-vsvc.yaml
target:
group: networking.istio.io
kind: VirtualService
group: gateway.networking.k8s.io
kind: HTTPRoute
name: kserve-models-web-app
namespace: kserve
version: v1beta1
Expand Down
Original file line number Diff line number Diff line change
@@ -1,14 +1,10 @@
- op: replace
path: /spec/gateways
path: /spec/parentRefs
value:
- kubeflow/kubeflow-gateway
- name: kubeflow-gateway
namespace: istio-system
- op: replace
path: /spec/http/0/route/0/destination
path: /spec/rules/0/backendRefs/0
value:
host: kserve-models-web-app.kubeflow.svc.cluster.local
port:
number: 80
- op: replace
path: /spec/gateways
value:
- kubeflow/kubeflow-gateway
name: kserve-models-web-app
port: 80
Original file line number Diff line number Diff line change
Expand Up @@ -15,4 +15,4 @@ spec:
- from:
- source:
principals:
- cluster.local/ns/istio-system/sa/istio-ingressgateway-service-account
- cluster.local/ns/istio-system/sa/kubeflow-gateway-istio
Original file line number Diff line number Diff line change
@@ -1,4 +1,4 @@
apiVersion: networking.istio.io/v1alpha3
apiVersion: networking.istio.io/v1beta1
kind: DestinationRule
metadata:
name: model-registry-service
Expand Down
Loading
Loading