istio
本文档基于 Kubernetes v1.25.4 版本安装 istio
部署前,您可以先阅读一下 istio 的一些注意事项
环境参数调整
Kubernetes 集群各节点都需要操作
sysctl -w fs.inotify.max_user_watches=10485760
sysctl -w fs.inotify.max_user_instances=10240
cat >> /etc/sysctl.conf <<EOF
fs.inotify.max_user_watches=10485760
fs.inotify.max_user_instances=10240
EOF
导入镜像
Kubernetes 集群各节点都需要操作
- 服务器支持访问互联网
- 服务器不支持访问互联网
crictl pull registry.cn-hangzhou.aliyuncs.com/mdpublic/proxyv2:1.18.0
crictl pull registry.cn-hangzhou.aliyuncs.com/mdpublic/pilot:1.18.0
# 镜像文件下载链接,下载完成后上传到部署服务器
http://pdpublic.mingdao.com/private-deployment/offline/common/istio-1.18.0-images.tar.gz
# 导入镜像
docker load -i istio-1.18.0-images.tar.gz
# 启动本地仓库
docker run -d -p 5000:5000 --restart always --name registry registry:2
# 上传本地仓库
for i in $(docker images | grep 'istio' | awk 'NR!=0{print $1":"$2}');do docker tag $i $(echo $i | sed -e "s/istio/127.0.0.1:5000/");done
for i in $(docker images | grep :5000 | awk 'NR!=0{print $1":"$2}');do docker push $i;done
部署 istio
仅在 Kubernetes 第一台 Master 节点操作
-
下载 istio 安装包
- 服务器支持访问互联网
- 服务器不支持访问互联网
wget http://pdpublic.mingdao.com/private-deployment/offline/common/istio-1.18.0-linux-amd64.tar.gz
# istio 安装包下载链接,下载完成后上传到部署服务器
http://pdpublic.mingdao.com/private-deployment/offline/common/istio-1.18.0-linux-amd64.tar.gz -
解压到安装目录
tar -zxvf istio-1.18.0-linux-amd64.tar.gz
mv istio-1.18.0/ /usr/local/istio -
配置环境变量
cat >> ~/.bashrc <<\EOF
export PATH=/usr/local/istio/bin/:$PATH
EOF
source ~/.bashrc -
验证 istio 命令查看版本
istioctl version
-
在 k8s 集群中安装 istio
- 服务器支持访问互联网
- 服务器不支持访问互联网
istioctl install --set profile=default -y --set values.global.hub=registry.cn-hangzhou.aliyuncs.com/mdpublic
istioctl install --set profile=default -y --set values.global.hub=127.0.0.1:5000
-
开启命名空间自动注入
kubectl label namespace default istio-injection=enabled --overwrite