Kubernetes 使用Istio OCTL和Istio运算符升级Istio 1.4.3至1.5.6

Kubernetes 使用Istio OCTL和Istio运算符升级Istio 1.4.3至1.5.6,kubernetes,istio,kubernetes-operator,servicemesh,Kubernetes,Istio,Kubernetes Operator,Servicemesh,我是否可以使现有的Istio开放源码安装程序与(Istioctl+运算符)兼容?我目前通过istioctl安装了Istio 1.4.3。。在升级到Istio 1.5.6+之前,还需要让现有的部署Istio操作员知道。这里有什么具体的步骤需要遵循吗?这应该不会有任何问题,我已经在我的测试集群上尝试过了,一切都很好 我在立即从1.4.3升级到1.5.6时遇到问题,因此通过以下步骤,您首先从1.4.3升级到1.5.0,然后从1.5.0升级到1.5.6 请看下面要遵循的步骤 1.遵循istio并安装i

我是否可以使现有的Istio开放源码安装程序与(Istioctl+运算符)兼容?我目前通过istioctl安装了Istio 1.4.3。。在升级到Istio 1.5.6+之前,还需要让现有的部署Istio操作员知道。这里有什么具体的步骤需要遵循吗?

这应该不会有任何问题,我已经在我的测试集群上尝试过了,一切都很好

我在立即从1.4.3升级到1.5.6时遇到问题,因此通过以下步骤,您首先从1.4.3升级到1.5.0,然后从1.5.0升级到1.5.6

请看下面要遵循的步骤


1.遵循istio并安装istioctl 1.4、1.5和1.5.6,包括:

curl -L https://istio.io/downloadIstio | ISTIO_VERSION=1.4.0 sh -
curl -L https://istio.io/downloadIstio | ISTIO_VERSION=1.5.0 sh -
curl -L https://istio.io/downloadIstio | ISTIO_VERSION=1.5.6 sh -
2.将istioctl 1.4添加到路径中

cd istio-1.4.0
export PATH=$PWD/bin:$PATH
cd istio-1.5.0
export PATH=$PWD/bin:$PATH
cd istio-1.5.6
export PATH=$PWD/bin:$PATH
3.安装istio 1.4

istioctl manifest apply --set profile=demo
4.检查是否一切正常

kubectl get pod -n istio-system
kubectl get svc -n istio-system
istioctl version
kubectl get pod -n istio-system
kubectl get svc -n istio-system
istioctl version
kubectl label namespace default istio-injection=enabled
kubectl apply -f samples/bookinfo/platform/kube/bookinfo.yaml
kubectl apply -f samples/bookinfo/networking/bookinfo-gateway.yaml
5.将istioctl 1.5添加到路径中

cd istio-1.4.0
export PATH=$PWD/bin:$PATH
cd istio-1.5.0
export PATH=$PWD/bin:$PATH
cd istio-1.5.6
export PATH=$PWD/bin:$PATH
6.安装以备将来升级

istioctl operator init
7.准备IstioOperator.yaml

nano IstioOperator.yaml
istioctl upgrade -f IstioOperator.yaml 
nano IstioOperator.yaml
istioctl upgrade -f IstioOperator.yaml 

8.升级前,请使用以下命令

kubectl -n istio-system delete service/istio-galley deployment.apps/istio-galley
kubectl delete validatingwebhookconfiguration.admissionregistration.k8s.io/istio-galley
kubectl -n istio-system delete deployment istio-citadel istio-galley istio-pilot istio-policy istio-sidecar-injector istio-telemetry
kubectl -n istio-system delete service istio-citadel istio-policy istio-sidecar-injector istio-telemetry
kubectl -n istio-system delete horizontalpodautoscaler.autoscaling/istio-pilot horizontalpodautoscaler.autoscaling/istio-telemetry
kubectl -n istio-system delete pdb istio-citadel istio-galley istio-pilot istio-policy istio-sidecar-injector istio-telemetry
kubectl -n istio-system delete deployment istiocoredns
kubectl -n istio-system delete service istiocoredns
9.使用istioctl升级和准备的IstioOperator.yaml从1.4升级到1.5

nano IstioOperator.yaml
istioctl upgrade -f IstioOperator.yaml 
nano IstioOperator.yaml
istioctl upgrade -f IstioOperator.yaml 
10.升级后,使用以下命令

kubectl -n istio-system delete service/istio-galley deployment.apps/istio-galley
kubectl delete validatingwebhookconfiguration.admissionregistration.k8s.io/istio-galley
kubectl -n istio-system delete deployment istio-citadel istio-galley istio-pilot istio-policy istio-sidecar-injector istio-telemetry
kubectl -n istio-system delete service istio-citadel istio-policy istio-sidecar-injector istio-telemetry
kubectl -n istio-system delete horizontalpodautoscaler.autoscaling/istio-pilot horizontalpodautoscaler.autoscaling/istio-telemetry
kubectl -n istio-system delete pdb istio-citadel istio-galley istio-pilot istio-policy istio-sidecar-injector istio-telemetry
kubectl -n istio-system delete deployment istiocoredns
kubectl -n istio-system delete service istiocoredns
11.检查是否一切正常

kubectl get pod -n istio-system
kubectl get svc -n istio-system
istioctl version
kubectl get pod -n istio-system
kubectl get svc -n istio-system
istioctl version
kubectl label namespace default istio-injection=enabled
kubectl apply -f samples/bookinfo/platform/kube/bookinfo.yaml
kubectl apply -f samples/bookinfo/networking/bookinfo-gateway.yaml
12.更改istio IstioOperator.yaml标记值


14.将istioctl 1.5.6添加到路径中

cd istio-1.4.0
export PATH=$PWD/bin:$PATH
cd istio-1.5.0
export PATH=$PWD/bin:$PATH
cd istio-1.5.6
export PATH=$PWD/bin:$PATH
15.我部署了一个bookinfo应用程序来检查是否一切正常

kubectl get pod -n istio-system
kubectl get svc -n istio-system
istioctl version
kubectl get pod -n istio-system
kubectl get svc -n istio-system
istioctl version
kubectl label namespace default istio-injection=enabled
kubectl apply -f samples/bookinfo/platform/kube/bookinfo.yaml
kubectl apply -f samples/bookinfo/networking/bookinfo-gateway.yaml
16.结果

curl -v xx.xx.xxx.xxx/productpage | grep HTTP
HTTP/1.1 200 OK


istioctl version
client version: 1.5.6
control plane version: 1.5.6
data plane version: 1.5.6 (9 proxies)

如果还有任何问题,请告诉我