ISTIO部署

80 阅读1分钟

最近研究service mesh,不可避免需要学习istio。 istio架构本身不算复杂,今天就按照官网部署。部署之前需要自行安装好k8s,最好是1.21版本以上的新版本。k8s部署方法本文不再赘述

  • Istio安装包下载 curl -L istio.io/downloadIst… | sh - 这个命令执行官方提供的istio下载安装脚本。该脚本会自动帮你匹配合适的linux版本内核。不过前提是你的部署环境能访问github。要不然会下载失败。 下载完成后该脚本还会自行帮你解压缩下载的Istio文件并在当前目录建立Istio目录。把Istio目录下的bin目录加入PATH环境变量。 export PATH=$ISTIO_PATH/bin:$PATH 添加成功并重新加载PATH后,可以执行istioctl命令

  • Istio安装 非常简单,就一步: istioctl install --set profile=demo -y 不出意外一分钟就装好了。

但是:不出意外一定会出意外的 这里记录下遇到的几个问题

jsonPath的语法: kubernetes.io/zh/docs/ref…

  1. k8s 1.21必须开启ipv6,否则kube apiserver有问题 开启方法: 在/etc/sysctl.conf内加入下面语句 net.ipv6.conf.all.disable_ipv6=0 然后执行sysctl -p即可

  2. 单节点k8s集群必须取消taint 否则istio服务会一直处于pending状态无法执行 kubectl taint nodes new-k8s node-role.kubernetes.io/master:NoSchedule- 加粗标黑部分需要根据自己环境自行修改 可以通过kubectl describe nodes 查询