Kubernetes API 身份验证
Kubernetes API authentication
我关注了these instructions for setting up a kubernetes cluster on AWS using kops.
然后我就能够 运行 kubectl create -f ...
命令来获取应用程序 运行ning。
我可以在我的浏览器中访问(我认为是)https://api.useast1.dev.example.com/
处的 API。
这会提示进行身份验证,我通过 运行ning
获得的凭据
kubectl config view --minify
根据 these instructions from the kops github。
然后API显示:
{
"paths": [
"/apis",
"/apis/",
"/apis/apiextensions.k8s.io",
"/apis/apiextensions.k8s.io/v1beta1",
"/healthz",
"/healthz/etcd",
"/healthz/ping",
"/healthz/poststarthook/generic-apiserver-start-informers",
"/healthz/poststarthook/start-apiextensions-controllers",
"/healthz/poststarthook/start-apiextensions-informers",
"/metrics",
"/swagger-2.0.0.json",
"/swagger-2.0.0.pb-v1",
"/swagger-2.0.0.pb-v1.gz",
"/swagger.json",
"/swaggerapi",
"/version"
]
}
现在我正在尝试设置 GitLab CI,它请求一个 API 端点和一个服务令牌。
我使用 these instructions from kubernetes 创建了一个服务令牌,但我还没有完成 imagePullSecret 部分。
但是,当我尝试在 kubernetes 集群上进行任何操作时(例如安装 Helm Tiller),它给了我:Kubernetes error: Unauthorized
。我认为这是因为我没有给它任何访问该 API 的凭据。
如何设置 kubernetes 集群,使 Gitlab 不需要这些凭据来访问 API?
好的,对于令牌是什么有点困惑。
获取令牌的最佳方式是:
kubectl get secrets
列出秘密
然后
kubectl describe secret SECRET_NAME
取回令牌。
我关注了these instructions for setting up a kubernetes cluster on AWS using kops.
然后我就能够 运行 kubectl create -f ...
命令来获取应用程序 运行ning。
我可以在我的浏览器中访问(我认为是)https://api.useast1.dev.example.com/
处的 API。
这会提示进行身份验证,我通过 运行ning
获得的凭据kubectl config view --minify
根据 these instructions from the kops github。
然后API显示:
{
"paths": [
"/apis",
"/apis/",
"/apis/apiextensions.k8s.io",
"/apis/apiextensions.k8s.io/v1beta1",
"/healthz",
"/healthz/etcd",
"/healthz/ping",
"/healthz/poststarthook/generic-apiserver-start-informers",
"/healthz/poststarthook/start-apiextensions-controllers",
"/healthz/poststarthook/start-apiextensions-informers",
"/metrics",
"/swagger-2.0.0.json",
"/swagger-2.0.0.pb-v1",
"/swagger-2.0.0.pb-v1.gz",
"/swagger.json",
"/swaggerapi",
"/version"
]
}
现在我正在尝试设置 GitLab CI,它请求一个 API 端点和一个服务令牌。
我使用 these instructions from kubernetes 创建了一个服务令牌,但我还没有完成 imagePullSecret 部分。
但是,当我尝试在 kubernetes 集群上进行任何操作时(例如安装 Helm Tiller),它给了我:Kubernetes error: Unauthorized
。我认为这是因为我没有给它任何访问该 API 的凭据。
如何设置 kubernetes 集群,使 Gitlab 不需要这些凭据来访问 API?
好的,对于令牌是什么有点困惑。
获取令牌的最佳方式是:
kubectl get secrets
列出秘密
然后
kubectl describe secret SECRET_NAME
取回令牌。