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());
        }
    }
}
相关推荐
hy____123几秒前
类与对象(中)(详解)
开发语言·c++
wen__xvn6 分钟前
c++STL入门
开发语言·c++·算法
信徒_13 分钟前
Spring 怎么解决循环依赖问题?
java·后端·spring
2301_7944615721 分钟前
多线程编程中的锁策略
java·开发语言
XYN6124 分钟前
【嵌入式学习3】基于python的tcp客户端、服务器
服务器·开发语言·网络·笔记·python·学习·tcp/ip
老华带你飞29 分钟前
木里风景文化|基于Java+vue的木里风景文化管理平台的设计与实现(源码+数据库+文档)
java·数据库·vue.js·毕业设计·论文·风景·木里风景文化管理平台
SofterICer30 分钟前
Eclipse Leshan 常见问题解答 (FAQ) 笔记
java·笔记·eclipse
只有月亮知道38 分钟前
C++list常用接口和模拟实现
开发语言·c++
liang899940 分钟前
Shiro学习(四):Shiro对Session的处理和缓存
java·学习·缓存
苏格拉没有底_coder41 分钟前
【Easylive】saveVideoInfo 方法详细解析
java