我已按照这些说明使用 kops 在 AWS 上设置 kubernetes 集群。
然后我就可以运行kubectl create -f ...
命令来运行应用程序了。
https://api.useast1.dev.example.com/
我可以在浏览器中访问(我认为是)API 。
这会提示进行身份验证,我通过运行获得的凭据
kubectl config view --minify
然后 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 端点和一个服务令牌。
我使用来自 kubernetes 的这些指令创建了一个服务令牌,尽管我还没有完成 imagePullSecret 部分。
但是,当我尝试在 kubernetes 集群上进行任何操作时(例如安装 Helm Tiller),它给了我:Kubernetes error: Unauthorized
. 我认为这是因为我没有给它任何访问该 API 的凭据。
如何设置 kubernetes 集群以使 Gitlab 不需要这些凭据来访问 API?