client-java 连接 k8s 集群(调通版,后期再优化结构)

  1. pom 添加依赖,版本信息在 https://github.com/kubernetes-client/java/wiki/2.-Versioning-and-Compatibility
xml 复制代码
        <dependency>
            <groupId>io.kubernetes</groupId>
            <artifactId>client-java</artifactId>
            <version>17.0.0</version>
        </dependency>
  1. 通过 token 连接集群
java 复制代码
public class K8sClient {
    public static void run () {

        String token = "eyJhb...gyQ1cJ29w";
        String url = "https://1...6:6443";
        ApiClient apiClient = Config.fromToken(url, token, false);
        Configuration.setDefaultApiClient(apiClient);
    }
}

token 获取方式为 secret 中的 token 经过 base64 加密,通常 kube-system 命名空间的 secret 中包含 token 内容的都可以

url 就是集群的 IP 地址

  1. 写个接口调用验证
java 复制代码
@RestController
public class PodController {

    @ResponseBody
    @GetMapping("/podList")
    public void getPodList () throws ApiException {
        K8sClient.run();
        CoreV1Api api = new CoreV1Api();
        V1PodList list =
                api.listNamespacedPod("default",null,null,null,null,null,null,null,null,null,null);
        for (V1Pod item : list.getItems()) {
            System.out.println(item.getMetadata().getName());
        }
    }
}
相关推荐
知我心·几秒前
Java 正则表达式知识点总结
java
indexsunny几秒前
互联网大厂Java面试实战:微服务与Spring生态技术解析
java·spring boot·redis·kafka·mybatis·hibernate·microservices
狂奔蜗牛飙车几秒前
Python学习之路-Python3 迭代器与生成器学习详解
开发语言·python·学习·#python学习笔记·python迭代器生成器
小疙瘩4 分钟前
去掉 IDEA 中 mybatis配置文件的局部背景颜色(图解)
java·ide·intellij-idea
xqqxqxxq4 分钟前
洛谷算法1-3 暴力枚举(NOIP经典真题解析)java(持续更新)
java·开发语言·算法
爱上妖精的尾巴5 分钟前
8-5 WPS JS宏 match、search、replace、split支持正则表达式的字符串函数
开发语言·前端·javascript·wps·jsa
阿猿收手吧!5 分钟前
【C++】inline变量:全局共享新利器
开发语言·c++
沐知全栈开发6 分钟前
Python3 列表详解
开发语言
逝水如流年轻往返染尘7 分钟前
正则表达式字符串
java·正则表达式
LYS_06188 分钟前
寒假学习(14)(HAL库5)
java·linux·学习