连接集群
本文介绍如何连接 AI 容器服务中的 Kubernetes 集群,提供两种常用方式:通过控制台一键启动 AICoder Shell 进行内网直连,或获取 kubeconfig 后在本地/云端使用 kubectl 连接公网集群。根据网络环境与权限需求选择合适方式,并按照步骤完成连接与连通性验证。
使用 AICoder Shell 直接连接集群
AI 容器服务平台直接集成了 AICoder Shell。通过 AI 容器服务集群列表页面「连接」按钮,可直接启动 AICoder Shell。您可以通过 kubectl 直接管理集群。
注意
AICoder Shell 是网页版命令行工具。在 AICoder Shell 启动时,智算云平台会自动为您分配一台 Linux CPU 实例供您免费使用。详见 AICoder Shell。
内网直接连接集群
在 AI 容器服务集群列表页面,通过「连接」按钮可直接启动 AICoder Shell。
- AICoder Shell 会自动加载集群的 KubeConfig 文件,权限与当前登录用户一致。
- AICoder Shell 支持通过内网连接集群,因此待连接集群无需开启公网访问能力。
注意
基于 Spot 资源创建的 AI 容器服务集群不支持内网连接。请获取公网 Kubeconfig 文件后连接集群。
操作步骤:
登录 AI 容器服务平台,在左侧导航栏选择集群。
在「集群」页面点击操作栏的连接按钮,可以唤起 AICoder。AICoder 中已预装 kubectl 工具,并已配置当前集群的 kubeconfig 文件。
注意
平台将自动激活与集群同可用区的 AICoder。如果租户在当前可用区购买了高性能共享存储,可在 AICoder Shell 启动弹窗中选择挂载该共享存储。
验证 kubectl 是否已正确安装
shellkubectl version --client
查看当前集群的 Namespace。
shellkubectl get namespace
预期输出:
shellNAME STATUS AGE default Active 3h14m kube-node-lease Active 3h14m kube-public Active 3h14m kube-system Active 3h14m
获取 kubeconfig 并通过 kubectl 工具连接集群
AI 容器服务平台集群提供了 Kubeconfig 文件。一般用于公网访问集群的场景。
kubectl 和 kubeconfig 介绍
kubectl 是标准的 Kubernetes 命令行管理工具,通过 kubectl 可以连接和管理 AI 容器服务的集群。kubeconfig 中包含了有关集群、用户、命名空间以及身份认证机制的信息。kubectl 使用 kubeconfig 来连接集群。
每个集群提供四个集群凭证(即 kubeconfig):
- 租户管理员,内网访问凭证
- 租户管理员,公网访问凭证
- 普通用户,内网访问凭证
- 普通用户,公网访问凭证
KubeConfig 签发证书的默认有效期为 1 年。
注意
KubeConfig 与租户绑定。暂不支持生成用户专属 Kubeconfig。
公网连接集群
为集群开启公网访问能力后,可以通过公网中的任一机器作为客户端来连接集群。
关于如何开启或关闭 API Server 的公网访问能力,请参见步骤 2 获取 kubeconfig。
步骤 1 安装 kubectl 工具
具体操作,请参见 K8S 官方文档下载和安装 kubectl。
步骤 2 获取 kubeconfig
kubectl 工具默认会从客户端机器的 $HOME/.kube
目录下查找名为 config
的文件,该文件用于存储所要管理集群的访问凭证,kubectl 会根据该配置文件连接至集群。
登录 AI 容器服务平台,在左侧导航栏选择集群。
在集群页面,单击目标集群名称或者目标集群右侧操作列下的详情。
在集群详情页面,单击连接信息页签,可看到内网访问和外网访问凭证,可复制外网访问凭证。
注意
如未展示外网访问凭证,可前往详情标签页,启用公网访问。
将复制的集群凭证内容粘贴至
$HOME/.kube
目录下的 config 文件中,保存并退出。验证集群连通性:
shellkubectl get namespace
预期输出:
shellNAME STATUS AGE default Active 4h39m kube-node-lease Active 4h39m kube-public Active 4h39m kube-system Active 4h39m
常见问题
kubeconfig 采用证书认证还是 Token 认证?
采用 Token 认证。
如怀疑 Kubeconfig 泄漏,租户超级管理员在集群详情页重置 Kubeconfig。
注意
集群的 Kubeconfig 与租户绑定。重置 Kubeconfig 即重置集群的 Kubeconfig。重置后,所有用户需重新获取 Kubeconfig。
如何获取 kubeconfig 的过期时间?
kubeconfig 默认有效期为 1 年。
您也可以从 kubeconfig 中的 token 中解析得到过期时间。以 MacOS 为例:
% grep "token:" ~/.kube/config | awk '{print $2}' | awk -F'.' '{print $2}' | sed 's/$/==/' | base64 -d | jq -r '.iat, .exp' | xargs -I {} date -r {}
2025年 4月 8日 星期二 16时02分24秒 CST
2026年 4月 8日 星期三 16时02分24秒 CST