Istio多集群调研

本文详细介绍了Istio在多集群环境下的部署模型,包括相同和不同网络下的多主、单控制面配置,强调了istio如何打通集群间的流量,以及验证部署和问题诊断的方法。重点讨论了无需额外配置serviceEntry等来实现服务间连通性,并指出多集群理解中的常见误区。
摘要由CSDN通过智能技术生成

版本 1.12

概述

将多个集群纳于同一网格下管理。

部署模型

总共有4种基本部署结构:

  1. 相同网络下多控制面

    两集群处在相同网络下,各自部署一个控制面,istio资源只影响到本集群中的sidecar;因为处在相同网络,pod与pod之间可以直接通信(同上)。
    在这里插入图片描述

  2. 相同网络下单控制面

    两集群处在相同网络下,其中一个集群共用另一集群的控制平面,在控制平面组所在集群创建istio资源可以下发到两个集群sidecar中;因为处在相同网络,pod与pod之间可以直接通信(网格istiod做了集群间的服务发现和流量打通工作,无须其他配置);但是要实现共享控制面,需要通过eastwest-gateway暴露主控制面的istiod服务。

在这里插入图片描述

  1. 不同网络下多控制面

    两集群处在不同网络下,各自部署一个控制平面,istio资源只影响到本集群中的sidecar;因为处在不同网络,pod与pod之间不能直接通信,需要通过eastwest-gateway来互相暴露应用服务;无需使用eastwest-gateway暴露istiod服务。

在这里插入图片描述

  1. 不同网络下单控制面

    两集群处在不同网络下,其中一个集群共用另一集群的控制平面,在控制平面组所在集群创建istio资源可以下发到两个集群sidecar中;因为处在不同网络,pod与pod之间不能直接通信,需要通过eastwest-gateway来互相暴露服务,并且需要在控制平面所在集群使用eastwest-gateway暴露主控制面的istiod的服务。
    在这里插入图片描述

部署准备

以上4种部署结构,有些前置工作都是一样。

参考before you begin.

  1. 准备两个kubernetes集群,版本1.20, 1.21, 1.22, 1.23。

  2. 配置API Server Access

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

    我们做实验的机器每个集群apiserver 6443端口可以互相连通,无需额外工作。

  3. 配置kubeconfig及环境变量,参考环境变量 一节

    先参考Kubernetes 配置文件 配置(kubectl)对多个集群的访问。

    因为已有两个集群的kubeconfig文件,也可以直接将两者合并,形式如下:

    #合并后的kubeconfig
    apiVersion: v1
    clusters:
    - cluster: //来自cluster1 config
    ...
    - cluster: //来自cluster2 config
    
    contexts:
    - context: //来自cluster1 config
    ...
    - context: //来自cluster2 config
    ...
    users: 同上
    
    
    # 测验,可以看到有两个context存在
    kubectl  config get-contexts
    CURRENT   NAME                         CLUSTER    AUTHINFO          NAMESPACE
              kubernetes-admin@kubernetes  kubernetes kubernetes-admin   
    *         minikube                     minikube   minikube          default
    

    然后需要配置CTX_CLUSTER1,CTX_CLUSTER2环境变量以供后续部署使用:

    export CTX_CLUSTER1=<your cluster1 context>
    export CTX_CLUSTER2=<your cluster2 context>
    
  4. 配置网格多集群间信任关系。参考

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值