准备工作

在开始多集群安装之前,回顾部署模型指南, 了解本指南中使用的基本概念。

另外,检查需求并执行以下初始步骤。

需求

集群

本指南需要你具备两个 Kubernetes 集群,且版本需为Kubernetes 支持的版本:1.22, 1.23, 1.24, 1.25。

API Server Access

每个集群中的 API 服务器必须能被网格中其他集群访问。 很多云服务商通过网络负载均衡器(NLB)开放 API 服务器的公网访问。 如果 API 服务器不能被直接访问,则需要调整安装流程以放开访问。 例如,用于多网络、主-从架构配置的 东西向网关 就可以用来开启 API 服务器的访问。

环境变量

本指南将引用 cluster1cluster2 两个集群。 以下环境变量将在整个过程中使用,以简化说明:

变量描述
CTX_CLUSTER1Kubernetes 配置文件中的默认上下文名称,用于访问集群 cluster1
CTX_CLUSTER2Kubernetes 配置文件中的默认上下文名称,用于访问集群 cluster2

继续之前,设置这两个变量:

  1. $ export CTX_CLUSTER1=<your cluster1 context>
  2. $ export CTX_CLUSTER2=<your cluster2 context>

配置信任关系

多集群服务网格部署要求你在网格中的所有集群之间建立信任关系。 基于你的系统需求,可以有多个建立信任关系的选择。 参阅证书管理,以了解所有可用选项的详细描述和说明。 根据你选择的方式,Istio 的安装说明可能略有变化。

如果您计划仅部署一个主集群(即采用本地——远程部署的方式),您将只有一个 CA (即使用 cluster1 上的 istiod )为两个集群颁发证书。 在这种情况下,您可以跳过以下 CA 证书生成步骤, 并且只需使用默认自签名的 CA 进行安装。

本指南假设你使用一个公共根来为每个主集群生成中间证书。 请按照说明, 生成并分别推送 CA 证书的秘钥给 cluster1cluster2

如果你当前有一个自签名 CA 的独立集群 (就像 入门 中描述的那样), 你需要用一个证书管理中介绍的方法,来改变 CA。 改变 CA 通常需要重新安装 Istio。 以下安装说明可能必须根据你对 CA 的选择进行更改。

后续步骤

你现在已经准备好,可以跨越多个集群安装 Istio 网格了。 具体的安装步骤取决于你对网络和控制平面拓扑结构的需求。

选择最适合你需要的安装方式:

对于跨越两个以上集群的网格,你可能需要使用一个以上的选项。 例如,每个 region 一个主集群(即:多主)。每个 zone 一个从集群,并使用 region 主集群(即:主从)的控制平面。

更多信息,参阅 部署模型