aks*_*aks 2 kubernetes kubernetes-go-client
我有一个Kubernetes集群,并有一个运行容器(X).从这个容器我想创建一个新的命名空间,在这个名称空间中部署一个pod并生成容器(Y).我知道kubernetes提供REST API.但是,我正在探索goClient做同样的事情,不知道如何使用命名空间创建API.
小智 9
这对我有用:
clientset, err := kubernetes.NewForConfig(config)
if err != nil {
panic(err)
}
nsName := &corev1.Namespace{
ObjectMeta: metav1.ObjectMeta{
Name: "my-new-namespace",
},
}
clientset.CoreV1().Namespaces().Create(context.Background(), nsName, metav1.CreateOptions{})
Run Code Online (Sandbox Code Playgroud)
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)
}
Run Code Online (Sandbox Code Playgroud)
归档时间: |
|
查看次数: |
2321 次 |
最近记录: |