tencent cloud

文档反馈

连接集群

最后更新时间:2022-08-02 17:19:05

    操作场景

    您可以通过 Kubernetes 命令行工具 Kubectl 从本地客户端机器连接到 TKE 集群。本文档指导您如何连接集群。

    说明:

    为符合平台对于安全合规的要求,且提升腾讯云容器服务集群访问的安全性及稳定性,cls-xxx.ccs.tencent-cloud.com 域名将于北京时间2022年8月10日正式下线。
    为了保证您的使用体验、方便平滑迁移,平台将于北京时间7月20日升级集群访问能力(上线后,开启集群内外网访问会使用新版本,存量已开启的集群不受影响),请在北京时间7月20日至8月10日通过重新开启集群访问来切换至新版集群访问,以免域名下线后无法正常访问集群。您可参考本文档中的 开启集群访问获取 Kubeconfig 进行操作。

    1. 新架构支持传入自定义域名,平台会为您传入的域名进行安全签名。为了保证访问安全,需要您自行配置公网域名解析。
    2. 新架构支持用 IP 直接访问集群,平台会分配已安全签名的 IP。
    注意:

    新架构与旧架构存在如下差异,集群访问相关 云 API 已经兼容新架构、支持平滑迁移。如果您调用了相关 API,请在7月20日前做好相关适配:

    1. 新架构不提供公网域名解析功能。平台会为您传入的域名进行安全签名。为了保证访问安全,需要您自行配置公网域名解析。
    2. 新架构下开启外网访问时,需要填写安全组来配置来源授权。
    3. 新架构下开启外网访问时,会在您的账户下创建一个 CLB,公网 CLB 计费项详情见 标准账户类型计费说明

    前提条件

    请安装 curl

    操作步骤

    1. 安装 Kubectl 工具

    1. 参考 Installing and Setting up kubectl,安装 Kubectl 工具。您可根据操作系统的类型,选择获取 Kubectl 工具的方式:

      注意:

      • 如果您已经安装 Kubectl 工具,请忽略本步骤。
      • 请根据实际需求,将命令行中的 “v1.18.4” 替换成业务所需的 Kubectl 版本。客户端的 Kubectl 与服务端的 Kubernetes 的最高版本需保持一致,您可以在基本信息的“集群信息”模块里查看 Kubernetes 版本。

      执行以下命令,获取 Kubectl 工具:

      curl -LO https://storage.googleapis.com/kubernetes-release/release/v1.18.4/bin/darwin/amd64/kubectl
      

    2. 此步骤以 Linux 系统为例。执行以下命令,添加执行权限。

      chmod +x ./kubectl
      sudo mv ./kubectl /usr/local/bin/kubectl
      
    3. 执行以下命令,测试安装结果。

      kubectl version
      

    如若输出类似以下版本信息,即表示安装成功。

    Client Version: version.Info{Major:"1", Minor:"5", GitVersion:"v1.5.2", GitCommit:"08e099554f3c31f6e6f07b448ab3ed78d0520507", GitTreeState:"clean", BuildDate:"2017-01-12T04:57:25Z", GoVersion:"go1.7.4", Compiler:"gc", Platform:"linux/amd64"}
    

    2. 开启集群访问

    1. 登录容器服务控制台,选择左侧导航栏中的 集群
    2. 在“集群管理”页,选择集群所在地域。
    3. 单击需要连接的集群 ID/名称,进入集群详情页。
    4. 选择左侧导航栏中的基本信息,即可在“基本信息”页面中查看集群访问开启状态,如下图所示:

      开启外网访问时,需配置相关参数,如下图所示:

      • 安全组:开启外网访问后,会自动分配一个外网 CLB 作为访问端口。您可以通过安全组来配置来源授权,我们会将安全组绑定到外网 CLB 上,以达到访问控制的效果。
      • 运营商类型、网络计费模式、带宽上限:CLB 相关参数,请参考 CLB 创建指南,根据实际需求进行设置。
      • 访问方式:选择公网域名后,您需要传入自定义域名,我们会为您传入的域名进行安全签名,您需要自行配置公网解析。选择公网 IP 后,我们会为您分配公网 IP 并安全签名。

    3. 获取 KubeConfig

    TKE 提供了两种 KubeConfig,分别用于公网访问和私网访问。开启集群访问后,即可按如下步骤获取对应的 Kubeconfig:

    1. 集群详情 > 基本信息中,查看“集群 APIServer 信息”。
    2. 在对应集群访问的开关下方,复制或下载 Kubeconfig,或查看外网访问安全组、访问域名(开启访问时配置)、访问 IP。如下图所示:

    4. 配置 KubeConfig 并访问 Kubernetes 集群

    1. 根据实际情况进行集群凭据配置。
      配置前,请判断当前访问客户端是否已经配置过任何集群的访问凭证:

      • ,即 ~/.kube/config 文件内容为空,可直接复制已获取的 Kubeconfig 访问凭证内容并粘贴入 ~/.kube/config 中。若客户端无 ~/.kube/config 文件,您可直接创建。
        • ,您可下载已获取的 Kubeconfig 至指定位置,并依次执行以下命令以合并多个集群的 config。
          KUBECONFIG=~/.kube/config:~/Downloads/cls-3jju4zdc-config kubectl config view --merge --flatten > ~/.kube/config
          
    export KUBECONFIG=~/.kube/config
    

    其中,~/Downloads/cls-3jju4zdc-config 为本集群的 Kubeconfig 的文件路径,请替换为下载至本地后的实际路径。
    2. 完成 Kubeconfig 配置后,依次执行以下命令查看并切换 context 以访问本集群。

    kubectl config get-contexts
    
    kubectl config use-context cls-3jju4zdc-context-default
    
    1. 执行以下命令, 测试是否可正常访问集群。
      kubectl get node
      
      

    如果无法连接请查看是否已经开启公网访问或内网访问入口,并确保访问客户端在指定的网络环境内。

    相关说明

    Kubectl 命令行介绍

    Kubectl 是一个用于 Kubernetes 集群操作的命令行工具。本文涵盖 kubectl 语法、常见命令操作并提供常见示例。有关每个命令(包括所有主命令和子命令)的详细信息,请参阅 kubectl 参考文档 或使用 kubectl help 命令查看详细帮助。

    联系我们

    联系我们,为您的业务提供专属服务。

    技术支持

    如果你想寻求进一步的帮助,通过工单与我们进行联络。我们提供7x24的工单服务。

    7x24 电话支持