istio安装与升级

1.下载istio二进制安装包

在官网下载https://istio.io/latest/docs/setup/getting-started/#download 执行使用命令行下载会很慢

 

 

 可以点开Istio release直接进入gitlab下载amd64.tar.gz,然后上传到服务器进行安装

 

 

 2.安装istioctl

复制代码
解压

tar -zxvf istio-1.12.5-linux-amd64.tar.gz
进入目录

cd istio-1.12.5/bin
添加环境变量

vim ~/.bash_profile

PATH=$PATH:/data/istio/tools/istio-1.12.5/bin

使环境变量生效

source ~/.bash_profile

添加自动补全功能

cp tools/istioctl.bash ~/.istioctl.bash

source  ~/.istioctl.bash

测试可以使用

istioctl manifest
复制代码

 

3.安装istio

复制代码
使用istioctl在k8s中安装istio
istioctl install --set profile=demo -y 测试,在k8s中可以看到命名空间istio-system kubectl get pods -n istio-system 修改istio-ingressgateway是svc为NodePort kubectl patch svc -n istio-system istio-ingressgateway -p '{"spec": {"type": "NodePort"}}'
复制代码

 

4.卸载istio

istioctl manifest generate --set profile=demo | kubectl delete --ignore-not-found=true -f -

5.在新版本中,grafana.yaml  jaeger.yaml  kiali.yaml  prometheus.yaml在profile demo下都不会自动安装,需要自己进入samples/addons下执行kubectl apply -f来进行安装

6.istio注入

执行yaml文件时手动注入

istioctl kube-inject -f jiuxi.deployment.yaml | kubectl apply -f - -n istio

给命名空间打标签,此命名空间中起的pod自动注入

kubectl label ns istio istio-injection=enabled

 7.istio升级

istio升级需要分三步:istioctl升级与istio升级以及应用中istio的升级

a.istioctl升级

过程与安装过程相同,下载tar包解压,修改环境变量。

istioctl升级完后可见client版本更新,控制面和数据面还是老版本。

 

 

b.istio升级

注意之前的版本profile是啥现在的profile也需要设置成啥,如之前的是demo。先dump下新版本的yaml文件

istioctl profile dump demo > demo.yaml

编辑demo.yaml,查找jwt从第三方改为第一方,third-party-jwt 改为first-party-jwt,以解决证书挂载的问题。

 

 

 开始升级

istioctl upgrade -f demo.yaml

输入y确定升级

 

 

 升级成功。控制面升级成功,数据面有两个升级一个未升级。

 

 

c.升级之前注入的istio应用

如果老版本是用自动注入的话,使用自动注入的方法进行升级

kubectl rollout restart deploy -n <ns with auto injection>

如果老版本是手工注入的话,就需要使用手工注入的方式进行升级

istioctl kube-inject -f nginx.yaml | kubectl apply -f -

之前使用的是手工注入的方式,使用手工注入的方式升级,可见升级成功,数据面均为新版本。

 

posted @   潇潇暮鱼鱼  阅读(677)  评论(0编辑  收藏  举报
相关博文:
阅读排行:
· DeepSeek 开源周回顾「GitHub 热点速览」
· 物流快递公司核心技术能力-地址解析分单基础技术分享
· .NET 10首个预览版发布:重大改进与新特性概览!
· AI与.NET技术实操系列(二):开始使用ML.NET
· 单线程的Redis速度为什么快?
点击右上角即可分享
微信分享提示