gpt4 book ai didi

google-kubernetes-engine - 设置持续部署到运行 Kubernetes 的 Google Compute Engine

转载 作者:行者123 更新时间:2023-12-04 23:00:32 24 4
gpt4 key购买 nike

我正在尝试基于 tutorial 设置从 CircleCI 到我的 Google 容器引擎实例的持续部署在 CircleCI 网站上。

但是,我目前正在研究如何设置身份验证以便执行滚动更新:

KUBE_CMD=${KUBERNETES_ROOT:-~/kubernetes}/cluster/kubectl.sh
$KUBE_CMD rolling-update my-controller \
-f my-controller.yml --server="https://xxx.xxx.xxx.xxx"

Google 似乎只支持 OAuth,我找不到任何关于设置非交互式身份验证的文档。将基本身份验证参数传递给 kubectl 似乎不起作用。

关于这方面的任何建议或我可以在哪里查看?

最佳答案

在您的容器引擎集群中运行的 apiserver 不使用 Google 的 OAuth;它改为使用集群身份验证。如果你跑

$ gcloud alpha container clusters describe <cluster-name>

然后您将获得一个用户名和密码,可用作访问集群的 apiserver 的 http basic auth 凭据(您也可以使用 bearer token 或 TLS 客户端证书访问服务器,但 basic auth 是最容易上手的和)。

要测试,运行

$ curl --insecure --user <username>:<password> https://<endpoint>

您应该会看到一个成功的响应。

既然您了解了集群的 apiserver 如何对客户端进行身份验证,您需要在 CircleCI 机器上配置 kubectl 以提供正确的身份验证。最简单的方法是使用 gcloud 通过运行生成“kubeconfig”文件

$ gcloud alpha container get-credentials --cluster=<cluster-name>

这将在本地生成文件。然后您可以将文件复制到 CircleCI 框中。 kubectl 默认在 ~/.kube/config 查找文件(您可以使用环境变量或使用命令行标志 --kubeconfig 指定不同的位置)。

关于google-kubernetes-engine - 设置持续部署到运行 Kubernetes 的 Google Compute Engine,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/30901989/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com