本文将介绍如何从零开始,开通云原生分布式云中心 TDCC 服务,注册集群,创建应用并配置分发策略,实现多云多集群的应用管理。
步骤1:注册腾讯云账号
步骤2:开通云原生分布式云中心
服务授权
说明
云原生分布式云中心基于容器服务打造,在服务授权步骤将请求容器服务权限,请单击同意授权。
配置并开通 Hub 集群
说明
云原生分布式云中心通过后台托管的 Hub Cluster 集群来管理其他注册进来的 Child Cluster 子集群。
1. 如果完成服务授权,将跳转至服务开通页面设置基本信息,该信息将用于配置 Hub 集群:
开通地域:选择 Hub Cluster 的地域,当前支持北京、广州、上海、新加坡,未来会支持更多地域。
可用区:选择 Hub Cluster 的可用区。
集群网络:选择一个子网。 访问 Hub Cluster 的 kube-apiserver 需要使用弹性网卡,因此需要您提供 VPC 子网。TKE 会自动在选定的子网内创建代理弹性网卡。
纳管集群主要为腾讯云 TKE 集群场景下,Hub 集群网络建议复用 TKE 集群数量最多的 VPC subnet。
Hub 集群 APIServer 访问:选择创建 Hub 集群 Apiserver 的代理 LB,注册集群中的 Cluster-net 组件通过 CLB 访问 Hub 集群的 apiserver。默认会创建内网 CLB,如果注册集群是通过公网连接则需一并创建公网 CLB。
创建 EIP:选择是否创建 EIP 实例,helm 应用下发和 tkeanywhere 云上交付依赖 EIP 实现。
2. 单击立即开通,开通过程可能持续数分钟,完成后自动进入云原生分布式云中心控制台。
步骤3:注册集群
场景1:注册 TKE 集群
约束条件
操作者若为子账号,则需要子账号具备对将要纳管的 TKE 集群的操作权限。
仅支持纳管 TKE 标准集群和 TKE Serverless 集群,且对集群生命周期有要求。
TKE 标准集群:仅支持运行中、规模调整中状态集群。
TKE Serverless 集群:仅支持运行中状态集群。
TKE 集群与 Hub 默认通过内网连接,建议 TKE 集群与 Hub 同 VPC,跨 VPC 可采用云联网打通。
操作步骤
1. 登录 云原生分布式云中心控制台,进入分布式基础设施 > 集群页面。
2. 单击关联 TKE 集群,在关联 TKE 集群页面选择待添加的 TKE 集群。如下图所示:
说明:
已经注册过的集群不会在列表中展示。
3. 单击确定。
场景2:注册第三方集群
1. 登录 云原生分布式云中心控制台,进入分布式基础设施 > 集群页面。
2. 单击注册已有集群,添加一个集群,命名为 cluster1,支持添加 TKE 集群或非 TKE 集群。详细步骤请参见 创建注册集群。
3. 单击完成。完成注册集群的创建。为体验多集群的应用管理,本文将会再注册一个外部集群 cluster2。
步骤4:创建分发策略
1. 登录 云原生分布式云中心控制台,进入分布式应用管理 > 分发策略页面。
2. 单击新建分发策略,在创建分发策略页面填写分发策略名称,例如 "nginx-demo"。
3. 单击选择已有集群,选择您后续应用想要分发部署的集群,为其创建分发策略。
步骤5:创建命名空间
1. 登录 云原生分布式云中心控制台,进入分布式应用管理 > 应用管理页面。
2. 选择左侧命名空间,单击新建创建一个命名空间,例如 "nginx-test"。
3. 在新建 Namespace 页面的底端,需要为该资源配置分发策略,支持选择不关联分发策略、新建分发策略、已有分发策略,此处选择已有分发策略,单击下拉菜单,选择上一步创建的分发策略 "nginx-demo"。
4. 单击创建 Namespace,完成资源创建,进入命名空间列表页面,可以看到 Namespace 命名空间已创建成功。
5. 单击创建出的 Namespace 名称进入详情页面,查看该 Namespace 的基本信息,关联的分发策略和拓扑图,单击实例管理标签页可以看到该 Namespace 已成功部署到多个集群上。
步骤6:创建工作负载
说明
创建工作负载Workload,以及其他各种 K8s 资源与创建命名空间的流程基本一致,您可以根据需要灵活配置。
1. 登录 云原生分布式云中心控制台,进入分布式应用管理 > 应用管理页面。
2. 单击左侧工作负载 > Deployment 标签页,单击新建创建一个 Deployment 工作负载,本文将创建一个 my-nginx 工作负载。
3. 在新建 Workload 页面的底端,需要为该资源配置分发策略,此处选择已有分发策略,单击下拉菜单,选择上一步创建出的分发策略 "nginx-demo"。
4. 单击创建 Workload,完成资源创建,进入工作负载列表页面,可以看到该工作负载已创建成功。
5. 单击创建出的 Deployment 名称进入详情页面,查看该 Deployment 的基本信息,关联的分发策略和拓扑图,单击实例管理标签页可以看到该 Deployment 已成功部署到多个集群上。
步骤7:模拟灰度发布
说明
nginx 应用已成功发布至两个集群上,单独升级其中一个集群上的 nginx 版本,模拟灰度发布操作。
1. 登录 云原生分布式云中心控制台,进入分布式应用管理 > K8s 资源页面。
2. 单击 my-nginx 工作负载进入详情页面,单击进入实例管理标签页,查看 my-nginx 工作负载已成功部署到多个集群。
3. 选择其中一个集群上实例,单击新建差异化策略,在弹出的对话框中配置差异化策略,以本文为例升级该实例的镜像版本为 nginx:1.14.2 。更多差异化策略信息参见 差异化策略。
apiVersion: apps.clusternet.io/v1alpha1kind: Localizationmetadata:labels:f07d0bec-fac8-4ed1-b4e5-1e2f00111111: Deploymentname: my-nginx-overridesnamespace: clusternet-b5vgvspec:priority: 300feed:apiVersion: apps/v1kind: Deploymentname: my-nginxnamespace: nginx-testoverridePolicy: ApplyLateroverrides:- name: update-image-versiontype: JSONPatchvalue: |-- path: "/spec/template/spec/containers/0/image"value: "nginx:1.14.2"op: replace
4. 单击完成,完成差异化策略配置,查看实例列表页面,查看该差异化策略已创建成功。
5. 单击集群名称进入集群管理页面,查看 my-nginx 工作负载信息,镜像版本已升级至 nginx:1.14.2,表明该针对该集群的差异化配置已生效,my-nginx 应用在该集群上实现了灰度升级。