开发者
资源
文档评分
获取效率
正确性
完整性
易理解
在线提单
论坛求助

安装前准备

请参考本小节完成安装环境准备,包括K8s集群的部署、容器镜像准备。

  • 安装Istio前请确保已完成K8s集群的部署;若暂未部署K8s集群,可利用集群管理工具(如sealos)快速完成集群部署。
  • 安装Istio前请确保网络环境可顺利拉取所需容器镜像。若所处环境无法直接拉取容器镜像,需要提前准备相关镜像并导入目标环境。

    查看Istio所需镜像版本可运行如下命令。

    istioctl manifest generate --set profile=default | grep "image:"

    输出结果示例如下。

    image: busybox:1.28
    image: docker.io/istio/proxyv2:1.23.4
    image: docker.io/istio/pilot:1.23.4

容器镜像导入导出示例

在多节点的K8s集群中,Istio相关Pod可能被调度到任意节点上,为了避免istio安装失败,可以在所有节点上导入相关镜像。若节点数过多,可先进行istio安装步骤(会因对应节点缺失相关镜像阻塞),并利用kubectl get pods -A -o wide查看Istio的相关Pod被调度到哪个节点,然后在相应节点导入镜像。

假设目前有环境A和目标环境B(可能有多个节点),其中环境A已安装了Docker,且可以正常拉取容器镜像;而环境B已部署了K8s集群,容器运行时为Containerd,需要安装Istio,但无法直接拉取容器镜像,则可进行如下操作提前导入镜像。

  1. 在环境A中拉取相关镜像,以busybox:1.28为例。
    docker pull busybox:1.28
  2. 在环境A中将相关镜像保存为tar包。
    docker save busybox:1.28 -o busybox-1.28.tar
  3. 将镜像tar包上传至环境B,并在环境B中导入。
    ctr -n k8s.io images import busybox-1.28.tar 

可参考上述操作,拉取、导入其他镜像(docker.io/istio/proxyv2:1.23.4、docker.io/istio/pilot:1.23.4等)。