分享web开发知识

注册/登录|最近发布|今日推荐

主页 IT知识网页技术软件开发前端开发代码编程运营维护技术分享教程案例
当前位置:首页 > 网页技术

Kubernetes client-go

发布时间:2023-09-06 02:13责任编辑:傅花花关键词:暂无标签

Github地址:https://github.com/kubernetes/client-go

访问kubernetes集群有几下几种方式:

方式特点支持者
Kubernetes dashboard直接通过Web UI进行操作,简单直接,可定制化程度低官方支持
kubectl命令行操作,功能最全,但是比较复杂,适合对其进行进一步的分装,定制功能,版本适配最好官方支持
client-go从kubernetes的代码中抽离出来的客户端包,简单易用,但需要小心区分kubernetes的API版本官方支持
client-pythonpython客户端,kubernetes-incubator官方支持
Java clientfabric8中的一部分,kubernetes的java客户端redhat

使用client-go获取Deployment列表:

package mainimport ( ???"path/filepath" ???"k8s.io/client-go/tools/clientcmd" ???"k8s.io/client-go/kubernetes" ???"k8s.io/apimachinery/pkg/apis/meta/v1" ???"fmt")func main() { ???path, err := filepath.Abs("./") ???if err != nil { ???????panic(err) ???} ???configFilePath := path + "/K8s/API/config" ???// use the config file ???config, err := clientcmd.BuildConfigFromFlags("", configFilePath) ???if err != nil { ???????panic(err.Error()) ???} ???????// NewForConfig creates a new ClientSet for the given config. ???clientSet, err := kubernetes.NewForConfig(config) ???if err != nil { ???????panic(err.Error()) ???} ???????// get all deployment in default namespace ???deploymentList, err := clientSet.AppsV1().Deployments("default").List(v1.ListOptions{}) ???if err != nil { ???????panic(err.Error()) ???} ???// print list deployment name and replicas ???for _, v := range deploymentList.Items { ???????fmt.Printf(" * %s (%d replicas)\n", v.Name, *v.Spec.Replicas) ???}}
View Code

Kubernetes client-go

原文地址:https://www.cnblogs.com/vincenshen/p/9581862.html

知识推荐

我的编程学习网——分享web前端后端开发技术知识。 垃圾信息处理邮箱 tousu563@163.com 网站地图
icp备案号 闽ICP备2023006418号-8 不良信息举报平台 互联网安全管理备案 Copyright 2023 www.wodecom.cn All Rights Reserved