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());
        }
    }
}
相关推荐
zhousenshan19 小时前
Python爬虫常用框架
开发语言·爬虫·python
皮皮林55120 小时前
SpringBoot 全局/局部双模式 Gzip 压缩实战:14MB GeoJSON 秒变 3MB
java·spring boot
weixin_4569042720 小时前
Spring Boot 用户管理系统
java·spring boot·后端
趁你还年轻_20 小时前
异步编程CompletionService
java
DKPT20 小时前
Java内存区域与内存溢出
java·开发语言·jvm·笔记·学习
sibylyue20 小时前
Guava中常用的工具类
java·guava
奔跑吧邓邓子20 小时前
【Java实战㉞】从0到1:Spring Boot Web开发与接口设计实战
java·spring boot·实战·web开发·接口设计
专注API从业者20 小时前
Python/Java 代码示例:手把手教程调用 1688 API 获取商品详情实时数据
java·linux·数据库·python
奔跑吧邓邓子21 小时前
【Java实战㉝】Spring Boot实战:从入门到自动配置的进阶之路
java·spring boot·实战·自动配置
ONLYOFFICE21 小时前
【技术教程】如何将ONLYOFFICE文档集成到使用Spring Boot框架编写的Java Web应用程序中
java·spring boot·编辑器