gpt4 book ai didi

kubernetes - 在 Google Container Engine 上访问 Kubernetes API

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

根据 Kubernetes API 文档,可以创建/列出/删除 Pod、复制 Controller 和服务:

http://kubernetes.io/third_party/swagger-ui/#!/v1beta1

但是在 Google Container Engine 文档中,他们似乎没有公开这个 API。您可以通过 REST API 管理的唯一资源是集群。 Pod、复制 Controller 和服务必须使用 gcloud 进行管理。

使用 Google Container Engine 时是否可以访问 Kubernetes API?

最佳答案

我创建了一个 blog post只是为了这个话题。它包括代码和演示的视频演练。本质上,您可以从 Google Container Engine API 获取 Kubernetes 凭证。下面是如何在 golang 中做到这一点:

func newKubernetesClient(clstr *container.Cluster) (*kubernetes.Clientset, error) {
cert, err := base64.StdEncoding.DecodeString(clstr.MasterAuth.ClientCertificate)
if err != nil {
return nil, err
}
key, err := base64.StdEncoding.DecodeString(clstr.MasterAuth.ClientKey)
if err != nil {
return nil, err
}
ca, err := base64.StdEncoding.DecodeString(clstr.MasterAuth.ClusterCaCertificate)
if err != nil {
return nil, err
}
config := &rest.Config{
Host: clstr.Endpoint,
TLSClientConfig: rest.TLSClientConfig{CertData: cert, KeyData: key, CAData: ca},
Username: clstr.MasterAuth.Username,
Password: clstr.MasterAuth.Password,
// Insecure: true,
}
kbrnts, err := kubernetes.NewForConfig(config)
if err != nil {
return nil, err
}
return kbrnts, nil
}

关于kubernetes - 在 Google Container Engine 上访问 Kubernetes API,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/28694346/

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