有奖捉虫:办公协同&微信生态&物联网文档专题 HOT
本文将介绍如何从零开始,开通云原生分布式云中心 TDCC 服务,注册集群,创建应用并配置分发策略,实现多云多集群的应用管理。

步骤1:注册腾讯云账号

在使用云原生分布式云中心 TDCC 服务之前,您需要 注册腾讯云账号,并完成 实名认证

步骤2:开通云原生分布式云中心

开通云原生分布式云中心 TDCC 服务,请参见 购买指南

服务授权

腾讯云控制台 中,选择云产品 > 云原生分布式云中心,进入云原生分布式云中心控制台,按照界面提示开通云原生分布式云中心服务并为服务授权。(如果您已为该服务授权,请跳过该步骤。)
说明
云原生分布式云中心基于容器服务打造,在服务授权步骤将请求容器服务权限,请单击同意授权

配置并开通 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/v1alpha1
kind: Localization
metadata:
labels:
f07d0bec-fac8-4ed1-b4e5-1e2f00111111: Deployment
name: my-nginx-overrides
namespace: clusternet-b5vgv
spec:
priority: 300
feed:
apiVersion: apps/v1
kind: Deployment
name: my-nginx
namespace: nginx-test
overridePolicy: ApplyLater
overrides:
- name: update-image-version
type: JSONPatch
value: |-
- path: "/spec/template/spec/containers/0/image"
value: "nginx:1.14.2"
op: replace

4. 单击完成,完成差异化策略配置,查看实例列表页面,查看该差异化策略已创建成功。


5. 单击集群名称进入集群管理页面,查看 my-nginx 工作负载信息,镜像版本已升级至 nginx:1.14.2,表明该针对该集群的差异化配置已生效,my-nginx 应用在该集群上实现了灰度升级。