容器服务 使用 kubecm 管理多集群 kubeconfig

Kubernetes 提供 kubectl 命令行工具用于操作集群,kubectl 使用 kubeconfig 作为配置文件(默认路径为 ~/.kube/config),通过其配置多个集群的信息,实现统一管理与操作。

相关产品
容器服务 产品页,含版本规格、价格与购买入口。

一、操作场景

通过 kubectl 管理和操作容器服务 TKE 或 TKE Serverless 集群,需要在集群基本信息页面开启 APIServer 的公网访问或内网访问,并获取 Kubeconfig (集群访问凭证)。如果需要使用 Kubectl 管理多个集群,通常做法是提取 kubeconfig 中各个字段的内容,将其合并到 kubectl 所在设备的 kubeconfig 文件中,但该方式操作繁琐且容易出错。

借助 kubecm 工具,可以更简单高效地将多个集群访问凭证合并添加到 kubeconfig 中。这篇说说如何利用 kubecm 实现多集群的 kubeconfig 高效管理。

二、前提条件

·已创建 TKE 标准集群 或 TKE Serverless 集群。

·已在需要管理多集群的设备上安装 kubectl 命令行工具。

三、安装 kubecm

在管理多集群的设备上安装 kubecm。

四、获取集群访问凭证

创建集群后,请按照以下步骤获取集群访问凭证:

1. 登录 容器服务控制台,单击左侧导航栏中的集群。

2. 单击需要获取集群访问凭证的集群 ID/名称,进入该集群的基本信息页面。

3. 在 API Server 信息页面,开启公网访问和内网访问。

4. 单击 Kubeconfig 右侧的下载即可。

五、使用 Kubecm 添加访问凭证到 Kubeconfig

这篇以集群访问凭证文件名 cls-l6whmzi3-config 为例,执行以下命令,使用 Kubecm 将访问凭证添加到 Kubeconfig 中(-n 可指定 context 名称)。示例如下:

kubecm add -f cls-l6whmzi3-config –context-name cd

六、查看集群列表

执行以下 kubecm ls 命令查看 kubeconfig 中的集群列表(星号标识的是当前操作的集群)。示例如下:

$ kubecm ls+————+————+———————–+——————–+———————————–+——————-+| CURRENT | NAME | CLUSTER | USER | SERVER | Namespace |+============+============+=======================+====================+===================================+===================+| * | cd | cluster-chh6kgf9d9 | user-chh6kgf9d9 | https://cls-l6whmzi3.ccs.tence | default || | | | | nt-cloud.com | |+————+————+———————–+——————–+———————————–+——————-+| | bj | cluster-6qaua96n | user-6qaua96n | https://cls-6qaua96n.ccs.tence | kube-system || | | | | nt-cloud.com | |+————+————+———————–+——————–+———————————–+——————-+

七、切换集群

执行以下 kubecm switch 命令可以交互式切换到其他集群。如下:

八、移除集群

执行以下 kubecm delete 命令可以移除某个集群。示例如下:

$ kubecm delete bjContext Delete:「bj」「/Users/roc/.kube/config」 write successful!+————+———+———————–+——————–+———————————–+————–+| CURRENT | NAME | CLUSTER | USER | SERVER | Namespace |+============+=========+=======================+====================+===================================+==============+| | cd | cluster-chh6kgf9d9 | user-chh6kgf9d9 | https://cls-l6whmzi3.ccs.tence | default || | | | | nt-cloud.com | |+————+———+———————–+——————–+———————————–+————–+

九、参考文档

·kubecm 开源地址

·kubecm 产品文档

赞 (0)
上一篇 4天前
下一篇 4天前