1、前言
1.1 istio
2、环境准备
2.1 istio部署包
| istio下载链接 |
|---|
| https://github.com/istio/istio/releases/download/1.28.1/istio-1.28.1-linux-amd64.tar.gz |
2.2 镜像包
| istio镜像 |
|---|
| docker.1ms.run/istio/pilot:1.28.1 |
| docker.1ms.run/istio/proxyv2:1.28.1 |
3、部署istio
3.1 配置环境变量
tar xf istio-1.28.1-linux-amd64.tar.gz
cd istio-1.28.1
export PATH=$PWD/bin:$PATH
3.2 镜像修改
提前导入镜像,否则可能外网无法下载,镜像列表2.2小节
#打镜像标签
ctr -n k8s.io images tag docker.1ms.run/istio/pilot:1.28.1 docker.io/istio/pilot:1.28.1
ctr -n k8s.io images tag docker.1ms.run/istio/proxyv2:1.28.1 docker.io/istio/proxyv2:1.28.1
3.3 获取外部ip
参考本文:外部ip获取方法
3.4 部署istio
istioctl install --set profile=demo -y
部署过程中发现部署失败,可以describe查看错误

kubectl -n istio-system describe pod istio-ingressgateway-7f8c66c64-n2r6b
#得知报错是readiness探针超时

#需要在istioctl install --set profile=demo -y执行超时是edit这两个deployment
kubectl -n istio-system edit deployment istio-ingressgateway
kubectl -n istio-system edit deployment istio-egressgateway

#删除这段探针检查
readinessProbe:
failureThreshold: 30
httpGet:
path: /healthz/ready
port: 15021
scheme: HTTP
initialDelaySeconds: 1
periodSeconds: 2
successThreshold: 1
timeoutSeconds: 1

3.5 检查部署情况
kubectl -n istio-system get pods -o wide

检查istio-ingressgateway运行日志,出现以下信息代表istio部署成功

评论区