Open sungsoo opened 1 year ago
Please refer to the Istio install guide.
Please refer to Knative Serving install guide.
Note If you are looking to use PodSpec fields such as nodeSelector, affinity or tolerations which are now supported in the v1beta1 API spec, you need to turn on the corresponding feature flags in your Knative configuration.
The minimally required Cert Manager version is 1.3.0 and you can refer to Cert Manager.
Note Cert manager is required to provision webhook certs for production grade installation, alternatively you can run self signed certs generation script.
kubectl apply -f https://github.com/kserve/kserve/releases/download/v0.8.0/kserve.yaml
kubectl apply -f https://github.com/kserve/kserve/releases/download/v0.8.0/kserve-runtimes.yaml
I performed the KServe installation as the following versions in the recommended version matrix.
export ISTIO_VERSION=1.11.0
export KNATIVE_VERSION=knative-v1.0.0
export KSERVE_VERSION=v0.8.0
export CERT_MANAGER_VERSION=v1.3.0
To install Istio without sidecar injection:
istioctl install -y
(base) ╭─sungsoo@z840 ~/kubeflow/istio-1.11.0
╰─$ bin/istioctl install 127 ↵
This will install the Istio 1.11.0 default profile with ["Istio core" "Istiod" "Ingress gateways"] components into the cluster. Proceed? (y/N) y
✔ Istio core installed
✔ Istiod installed
✔ Ingress gateways installed
✔ Installation complete
Thank you for installing Istio 1.11. Please take a few minutes to tell us about your install/upgrade experience! https://forms.gle/kWULBRjUv7hHci7T6
istio 관련 pod가 제대로 실행되었는지 확인한다.
(base) ╭─sungsoo@z840 ~
╰─$ k get pods -A -w
istio-system istiod-75d5bf4676-tvztm 1/1 Running 0 28s
istio-system istio-ingressgateway-85fbdd86f7-pl2lc 1/1 Running 0 23
Knative is a serverless solution built on Kubernetes that is open source and managed by Google. Therefore, it is not tied to any cloud service and may be deployed locally if necessary.
이제 Knative를 설치해 보자.
아래 명령어을 통해, Knative 버전 1.0을 설치한다.
kubectl apply --filename https://github.com/knative/serving/releases/download/knative-v1.0.0/serving-crds.yaml
kubectl apply --filename https://github.com/knative/serving/releases/download/knative-v1.0.0/serving-core.yaml
kubectl apply --filename https://github.com/knative/net-istio/releases/download/knative-v1.0.0/release.yaml
kubectl apply --validate=false -f https://github.com/jetstack/cert-manager/releases/download/v1.3.0/cert-manager.yaml
kubectl wait --for=condition=available --timeout=600s deployment/cert-manager-webhook -n cert-manager
kubectl apply -f https://github.com/kserve/kserve/releases/download/v0.8.0/kserve.yaml
kubectl wait --for=condition=ready pod -l control-plane=kserve-controller-manager -n kserve --timeout=300s
kubectl apply -f https://github.com/kserve/kserve/releases/download/v0.8.0/kserve-runtimes.yaml
앞의 모든 내용을 실행 후, 설치가 제대로 되어있는지 POD 상태를 확인한다.
(base) ╭─sungsoo@z840 ~
╰─$ k get pods -A -w
NAMESPACE NAME READY STATUS RESTARTS AGE
kube-system calico-kube-controllers-f7868dd95-5qvc5 1/1 Running 0 22h
kube-system coredns-7f9c69c78c-sjtf5 1/1 Running 0 22h
kube-system calico-node-d72j4 1/1 Running 0 22h
... 중간 생략
traindb-ml ml-pipeline-visualizationserver-569ccd5d86-jcmvn 1/1 Running 0 20h
traindb-ml ml-pipeline-ui-artifact-77dfb58d8b-lf8rt 1/1 Running 0 20h
istio-system istiod-75d5bf4676-tvztm 1/1 Running 0 10m
istio-system istio-ingressgateway-85fbdd86f7-pl2lc 1/1 Running 0 9m55s
knative-serving autoscaler-6c8884d6ff-k9rkf 1/1 Running 0 5m7s
knative-serving activator-68b7698d74-cn24l 1/1 Running 0 5m8s
knative-serving controller-76cf997d95-95xmz 1/1 Running 0 5m7s
knative-serving domain-mapping-57fdbf97b-j6sqf 1/1 Running 0 5m6s
knative-serving domainmapping-webhook-66c5f7d596-h9qzf 1/1 Running 0 5m6s
knative-serving webhook-7df8fd847b-2wskb 1/1 Running 0 5m5s
knative-serving net-istio-controller-544874485d-8n5xz 1/1 Running 0 2m58s
knative-serving net-istio-webhook-695d588d65-wq7mp 1/1 Running 0 2m58s
cert-manager cert-manager-cainjector-655d695d74-czptn 1/1 Running 0 2m19s
cert-manager cert-manager-76b7c557d5-b8hl2 1/1 Running 0 2m18s
cert-manager cert-manager-webhook-7955b9bb97-7pv7v 1/1 Running 0 2m18s
kserve kserve-controller-manager-0 2/2 Running 0 72s
Kubeflow uninstallation (Microk8s with Kubeflow case)
Step#1. Juju uninstallation
Step#2. Microk8s uninstallation
재설치 Microk8s 오류 생길 때
microk8s를 재설치하고 istio를 설치하려고 할 때, 아래와 같은 오류가 생긴다.
아래 명령을 실행하여 config 를 갱신하자.
Step#3. Microk8s Installation
Install Istio
Step#4 Juju Installation