快速开始
安装并运行 kticket,使用现有 Kubernetes 上下文签发独立 kubeconfig。kticket 不修改管理员 kubeconfig,也不会向集群控制面添加组件。
准备条件
- Linux、macOS 或 Windows,支持
amd64和arm64。 - 可用的管理员 kubeconfig,以及可以访问的 Kubernetes API 服务器。
- 具备读取命名空间和 RBAC 资源、创建 ServiceAccount 与绑定,以及创建
serviceaccounts/token的权限。
安装
从 下载页面 下载适合系统与架构的文件。Linux 使用 tar.gz,macOS 使用 zip,解压后得到 kticket;Windows 直接下载 exe。
# Linux amd64
tar -xzf kticket_linux_amd64.tar.gz
mv kticket /usr/local/bin/kticket
kticket --help每个文件都包含对应的 <filename>.sha256;请在解压或安装之前校验文件。
签发前激活
签发 kubeconfig 和添加授权需要有效 License。获取机器 ID 后,按照 License 购买与激活安装邮件中的文件。未激活时仍可体验 TUI、查看账户和撤销访问。
kticket license machine-id
kticket license install /path/to/kticket-license.ktlicense
kticket license status打开终端界面
不带子命令运行 kticket,选择集群和操作。按 F2 切换六种语言,保留当前草稿。
kticket选择账户、授权、有效期和输出目录,确认后签发凭据。
在脚本中使用 CLI
下面的 CLI 命令为 alice 授予现有 app-prod 命名空间的只读权限,并申请八小时凭据。集群中必须已存在 view ClusterRole。
kticket issue --context my-cluster --username alice \
--access namespace --role view --role-namespace app-prod \
--duration 8h --output ./alice.kubeconfig测试生成的文件,无需切换当前 kubeconfig:
kubectl --kubeconfig ./alice.kubeconfig \
get pods --namespace app-prod检查与撤销
kticket list --context my-cluster --credentials
kticket access list --context my-cluster --username alice
kticket revoke --context my-cluster --username alice注意:CLI 写操作会立即执行,不会再次询问确认。希望执行前检查变更时,请使用 TUI。