kubernetes - 我如何使用kubernetes go-client从集群中运行的容器创建 namespace

标签 kubernetes kubernetes-go-client

我有一个Kubernetes集群,并且有一个正在运行的容器(X)。我要从此容器创建一个新的命名空间,在此 namespace 中部署一个pod并生成容器(Y)。我知道kubernetes提供了REST API。但是,我正在探索goClient来执行相同操作,并且不确定如何使用 namespace 创建api。

最佳答案

import (
    "github.com/golang/glog"
    "k8s.io/client-go/kubernetes"
    "k8s.io/kubernetes/pkg/api/v1"
    metav1 "k8s.io/apimachinery/pkg/apis/meta/v1"
)

clientConfig, err := config.createClientConfigFromFile()
if err != nil {
        glog.Fatalf("Failed to create a ClientConfig: %v. Exiting.", err)
}

clientset, err := clientset.NewForConfig(clientConfig)
if err != nil {
        glog.Fatalf("Failed to create a ClientSet: %v. Exiting.", err)
}

nsSpec := &v1.Namespace{ObjectMeta: metav1.ObjectMeta{Name: ns}}

_, err := clientset.Core().Namespaces().Create(nsSpec)
}

关于kubernetes - 我如何使用kubernetes go-client从集群中运行的容器创建 namespace ,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/44711709/

相关文章:

kubernetes - Knative 服务 URL

kubernetes - Kubernetes L7 入口能否用于非 HTTP 端口流量?

kubernetes - Hyperledger-fabric v1.0.0 在 kubernetes 上实例化链代码失败

mysql - 通过 kubernetes 连接到外部 mysql 数据库

go - 如何使用 Go 客户端 API 在 kubernetes 中创建和使用卷?

bash - 运行 kubectl exec 时禁用 Kubernetes 上的网络日志

api - 客户端去: parse kubernetes json files to k8s structures

docker - Docker容器启动后如何自动运行脚本

kubernetes - 如何使用masterurl访问kubernetes集群

go - 如何使用 kubernetes go-client 获取与 kubectl 提供的相同的 Pod 状态信息