天天看點

專有版Kubernetes叢集支援VPC多路由表

背景

Kubernetes通過Cloud Controller Manager(又稱CCM)元件在VPC路由表中添加合适的路由來打通叢集中Pod之間的網絡連接配接。

近期VPC釋出了對多個路由表的支援能力,讓使用者可以自行選擇ECS關聯哪些路由表,為使用者提供了豐富的路由管理能力。由于CCM早期版本中僅提供了VPC單路由表的支援,是以您需要在容器服務控制台更新CCM至最新版本。

前置條件

  • 通過容器服務控制台建立一個專有版Kubernetes叢集,參考文檔 建立Kubernetes專有叢集
  • Kubernetes叢集為Flannel網絡
  • CCM版本需大于v1.9.3.86-g4454991-aliyun,檢視CCM版本可參考文檔 管理元件

操作步驟

1、更新CloudConfig配置檔案

使用指令行

kubectl edit cm -n kube-system cloud-config

修改配置檔案,将其中的${ROUTE_TABLES_IDS}替換為您的VPC路由表id(必須包含系統路由表),多個路由表清單使用逗号分隔。示例:

vtb-t4n7888888888,vtb-t4n7k6u3m0n8407999999

apiVersion: v1
kind: ConfigMap
metadata:
  name: cloud-config
  namespace: kube-system
data:
  cloud-config.conf: |-
    {
        "Global": {
            "routeTableIDs": "${ROUTE_TABLES_IDS}"
        }
    }           

2、重新開機CCM pod

kubectl -nkube-system delete po -lapp=cloud-controller-manager

重新開機CCM pod即可。重新開機完畢後,即可在路由表中看到對應的叢集節點條目。

繼續閱讀