Install istio-knative-kserve components
Deploy istio if it is not already running in aizen-infra namespace
helm repo add istio https://istio-release.storage.googleapis.com/charts
helm install istio-base istio/base -n istio-system --create-namespace
helm install istiod istio/istiod -n istio-system
helm install istio-ingress istio/gateway -n istio-system
Deploy knative, kserve if it is not already running in aizen-infra namespace
kubectl -n aizen-infra apply -f https://github.com/knative/serving/releases/download/knative-v1.17.0/serving-crds.yaml
kubectl -n aizen-infra apply -f $HELMCHART_LOCATION/aizen/charts/infra/charts/istio-knative-kserve/serving-core.yaml
kubectl apply -f $HELMCHART_LOCATION/aizen/charts/infra/charts/istio-knative-kserve/net-istio.yaml
#Install cert manager
helm repo add jetstack https://charts.jetstack.io --force-update
helm install -n aizen-infra \
cert-manager jetstack/cert-manager \
--version v1.17.2 \
--set crds.enabled=true
helm install -n aizen-infra kserve-crd oci://ghcr.io/kserve/charts/kserve-crd --version v0.15.0
helm install -n aizen-infra kserve oci://ghcr.io/kserve/charts/kserve --version v0.15.0
#install gateway APIs
kubectl -n aizen-infra apply -f https://github.com/kubernetes-sigs/gateway-api/releases/download/v1.3.0/standard-install.yaml
Note
Check if istio-injection is enabled on your namespace
kubectl get namespace -L istio-injection
Note
Helm upgrade command fails if istio-injection is enabled on your namespace. This is due to the conflicts it encounters during upgrade.
Solution to fix the failing upgrade, is to temporarily disable automatic injection on the namespace, complete the upgrade and then enable istio-injection on the namespace
kubectl label namespace < namespace > istio-injection-
helm upgrade ...
kubectl label namespace < namespace > istio-injection=enabled
To enable injection at pod level
spec:
predictor:
annotations:
sidecar.istio.io/inject: "true"