Ala*_*orm 10 kubernetes kubectl kubernetes-dashboard
我尝试按照https://github.com/kubernetes/dashboard/blob/master/docs/user/access-control/creating-sample-user.md上的说明创建 Kubernetes 仪表板令牌。但是,当我运行指定的命令时,出现错误
% kubectl -n kubernetes-dashboard create token admin-user
Error: must specify one of -f and -k
error: unknown command "token admin-user"
See 'kubectl create -h' for help and examples
Run Code Online (Sandbox Code Playgroud)
如果我跳回文档历史记录,我会看到一个可以运行的不同的、更详细的命令
% kubectl -n kubernetes-dashboard get secret $(kubectl -n kubernetes-dashboard get sa/admin-user -o jsonpath="{.secrets[0].name}") -o go-template="{{.data.token | base64decode}}"
Run Code Online (Sandbox Code Playgroud)
这似乎工作正常,文档更改的 PR 提到“版本 1.24”,但没有提到 1.24 版本指的是哪个软件(kubectl?仪表板?Kuberenetes 本身??kind还有其他东西吗?)
那么第一个命令发生了什么?为什么不起作用?
这是 kubernetes 1.24 中的一项新功能,您的集群kubectl必须运行 <1.24 版本的 Kubernetes,从而导致出现此问题。请参阅下面的更改日志:
kubectl create token 现在可用于请求服务帐户令牌,并且请求服务帐户令牌的权限已添加到编辑和管理 RBAC 角色中(#107880,@liggitt)
显示更多相关信息的另一个片段:
Kubectl 的变化:
向 kubectl 添加命令以请求绑定的服务帐户令牌。这将有助于简化使用 kubectl get Secret "$(kubectl get serviceaccount default -o jsonpath='{.secrets[0].name}')" 等命令抓取生成的服务帐户令牌的过渡
服务器和客户端都必须运行 1.24 或更高版本,如下所示:
kubectl version --output=json
{
"clientVersion": {
"major": "1",
"minor": "24",
"gitVersion": "v1.24.0",
"gitCommit": "4ce5a8954017644c5420bae81d72b09b735c21f0",
"gitTreeState": "clean",
"buildDate": "2022-05-03T13:46:05Z",
"goVersion": "go1.18.1",
"compiler": "gc",
"platform": "linux/amd64"
},
"kustomizeVersion": "v4.5.4",
"serverVersion": {
"major": "1",
"minor": "24",
"gitVersion": "v1.24.2",
"gitCommit": "f66044f4361b9f1f96f0053dd46cb7dce5e990a8",
"gitTreeState": "clean",
"buildDate": "2022-06-15T14:15:38Z",
"goVersion": "go1.18.3",
"compiler": "gc",
"platform": "linux/amd64"
}
}
Run Code Online (Sandbox Code Playgroud)
检查此以获取更多信息:https ://github.com/kubernetes/kubernetes/pull/107880
小智 9
如果您的版本低于1.24,请运行以下命令。
kubectl -n kubernetes-dashboard get secret $(kubectl -n kubernetes-dashboard get sa/admin-user -o jsonpath="{.secrets[0].name}") -o go-template="{{.data.token | base64decode}}"
Run Code Online (Sandbox Code Playgroud)
这适用于我的情况。谢谢。
| 归档时间: |
|
| 查看次数: |
10108 次 |
| 最近记录: |