导入 Alibaba Cloud ACK 集群

使用此提供商专用操作步骤,将现有的 Alibaba Cloud ACK 托管集群或专有集群作为第三方集群导入。除非有记录在案的提供商专用功能提供相应的生命周期管理,否则外部提供商仍负责提供商基础设施,以及由提供商管理的 Kubernetes 和节点生命周期。

TIP

有关提供商集群类型的详细信息,请参阅提供商指南。

前提条件

获取镜像仓库地址

  • 若要使用 global 集群部署中的平台部署的镜像仓库,请在 global 集群的控制平面节点上执行以下命令以获取地址:

    if [ "$(kubectl get productbase -o jsonpath='{.items[].spec.registry.preferPlatformURL}')" = 'false' ]; then
        REGISTRY=$(kubectl get cm -n kube-public global-info -o jsonpath='{.data.registryAddress}')
    else
        REGISTRY=$(kubectl get cm -n kube-public global-info -o jsonpath='{.data.platformURL}' | awk -F \// '{print $NF}')
    fi
    echo "Image registry address is: $REGISTRY"
  • 若要使用外部镜像仓库,请手动设置 REGISTRY 变量。

    REGISTRY=<external image registry address>  # Valid examples: registry.example.cn:60080 or 192.168.134.43
    echo "Image registry address is: $REGISTRY"

确定镜像仓库是否需要其他配置

  1. 执行以下命令,确定指定的镜像仓库是否支持 HTTPS 访问,以及是否使用由受信任 CA 颁发机构签发的证书:

    REGISTRY=<image registry address obtained from the "Get Image Registry Address" section>
    
    if curl -s -o /dev/null --retry 3 --retry-delay 5 -- "https://${REGISTRY}/v2/"; then
        echo 'Test passed: The image registry uses certificates issued by trusted CA authorities. You do not need to execute the content in the "Trust Insecure Image Registry" section.'
    else
        echo 'Test failed: The image registry does not support HTTPS or the certificate is not trusted. See the "Trust Insecure Image Registry" section for configuration.'
    fi
  2. 如果测试失败,请参阅如何信任不安全的镜像仓库?。

获取 KubeConfig

  1. 登录 Alibaba Cloud 容器服务管理平台。

  2. 在控制台左侧导航栏中,单击集群。

  3. 在集群列表页面中,单击目标集群名称,或单击目标集群右侧操作列中的详情。

  4. 在集群信息页面中,单击连接信息选项卡,然后单击生成临时 KubeConfig。

  5. 在临时 KubeConfig对话框中,设置临时凭证的有效期以及访问集群的方式(包括公网访问和内网访问)。

  6. 单击生成临时 KubeConfig,然后单击复制,将内容复制并保存到本地计算机上的 KubeConfig 文件中。

  7. 集群成功导入后,您可以撤销临时凭证。

导入集群

  1. 在左侧导航栏中,单击集群管理 > 集群。

  2. 单击导入集群。

  3. 根据以下说明配置相关参数。

    参数描述
    镜像仓库用于存储集群所需平台组件镜像的仓库。- 平台默认:global 集群部署期间配置的镜像仓库。- 私有仓库:存储平台所需组件镜像的预构建仓库。您需要输入用于访问镜像仓库的私有镜像仓库地址、端口、用户名和密码。- 公共仓库:使用互联网中的公共镜像仓库服务。使用前,请更新公共仓库云凭证以获取仓库身份验证权限。
    集群信息提示:可以手动填写,也可以通过上传 KubeConfig 文件,由平台自动解析并填写。解析 KubeConfig 文件:上传获取的 KubeConfig 文件后,平台将自动解析并填写集群信息。您可以修改自动填写的信息。集群地址:集群对外暴露的 API Server 访问地址,平台通过该地址访问集群的 API Server。CA 证书:集群的 CA 证书。注意:手动输入时,需要输入经过 Base64 解码的证书。身份验证方式:访问集群的身份验证方式。您需要使用具有集群管理权限的 token 或证书身份验证(客户端证书和密钥) 进行身份验证。
  4. 单击检查连通性,检查与待导入集群的网络连通性,并自动识别待导入集群的类型。集群类型将以徽章形式显示在表单右上角。

  5. 连通性检查通过后,单击导入并确认。

    TIP
    • 单击处于导入中状态的集群右侧的详情图标,在弹出的执行进度对话框中查看集群的执行进度(status.conditions)。
    • 集群成功导入后,您可以在集群列表中查看集群的关键信息。集群状态显示为正常,您可以执行与集群相关的操作。

网络配置

确保 global 集群与待导入集群之间的网络连通性。请参阅导入集群的网络配置。

常见问题

如何处理 Alibaba Cloud 监控与平台监控组件之间的端口冲突?

当 Alibaba Cloud 内置监控与平台监控组件共存时,会发生端口冲突。建议卸载 Alibaba Cloud 监控,仅保留平台监控。

如何使用 Alibaba Cloud 集群的公网访问?

如果使用 Alibaba Cloud 集群的公网访问,可以在 Alibaba Cloud 上绑定公网 IP。

导入集群后,添加节点按钮显示为灰色。如何添加节点?

Alibaba Cloud ACK 托管集群和 ACK 专有集群均不支持通过平台界面添加节点。请在提供商后端添加节点,或联系集群提供商。

导入集群的证书管理功能支持哪些证书?

  1. Kubernetes 证书:所有导入的集群仅支持在平台证书管理界面查看 APIServer 证书信息。不支持查看其他 Kubernetes 证书,也不支持自动轮换。

  2. 平台组件证书:所有导入的集群均可在平台证书管理界面查看平台组件证书信息,并支持自动轮换。

此提供商特定导入路径的限制

  • Alibaba Cloud ACK 托管集群不支持获取审计数据。

  • Alibaba Cloud ACK 托管集群不支持获取 ETCD、Scheduler、Controller Manager 相关的监控信息,但支持部分 APIServer 监控图表。

  • Alibaba Cloud ACK 托管集群和 ACK 专有集群均不支持获取集群证书相关信息,但 Kubernetes APIServer 证书除外。