# task-client-java **Repository Path**: l-maverick/task-client-java ## Basic Information - **Project Name**: task-client-java - **Description**: No description available - **Primary Language**: Java - **License**: Not specified - **Default Branch**: master - **Homepage**: None - **GVP Project**: No ## Statistics - **Stars**: 0 - **Forks**: 0 - **Created**: 2025-05-29 - **Last Updated**: 2025-06-29 ## Categories & Tags **Categories**: Uncategorized **Tags**: None ## README # Task Manager - Kubernetes Task Management System 基于 Kubernetes CRD 的任务管理系统,提供分布式任务调度和管理能力。 ## 新增功能:CoreV1Api 客户端 ### 概述 基于 [Kubernetes Java 客户端官方示例](https://github.com/kubernetes-client/java/wiki/3.-Code-Examples) 实现的 CoreV1Api 客户端,提供对 Kubernetes 核心资源(Pod、Service、Namespace等)的访问能力。 ### 主要特性 - 🚀 **简单易用**: 基于官方示例实现,API使用直观 - 🔧 **工具方法**: 提供Pod状态检查、Service类型获取等实用工具 - 📖 **完整文档**: 包含详细的使用示例和参考文档 - ✅ **编译通过**: 兼容项目现有架构,无依赖冲突 ### 快速开始 ```java // 创建客户端 CoreV1ApiClient client = new CoreV1ApiClient(); // 获取原生API实例 CoreV1Api api = client.getCoreV1Api(); // 列出所有Pod(基于官方示例) V1PodList pods = api.listPodForAllNamespaces(null, null, null, null, null, null, null, null, null); for (V1Pod pod : pods.getItems()) { System.out.println(pod.getMetadata().getName()); } // 使用工具方法 boolean ready = client.isPodReady(pod); String status = client.getPodStatusSummary(pod); ``` ### 文件结构 ``` src/main/java/net/yingyitech/ ├── client/ │ └── CoreV1ApiClient.java # CoreV1Api 客户端实现 └── examples/ └── CoreV1ApiUsage.md # 详细使用指南 ``` ### 依赖信息 项目已包含 Kubernetes Java 客户端依赖: ```xml io.kubernetes client-java 24.0.0 ``` ### 参考文档 - [Kubernetes Java 客户端官方示例](https://github.com/kubernetes-client/java/wiki/3.-Code-Examples) - [CoreV1Api 使用指南](src/main/java/net/yingyitech/examples/CoreV1ApiUsage.md) ## 原有功能 ### 架构概览 系统基于 Kubernetes CRD 实现,包含以下核心组件: - **Task**: 任务资源定义 - **TaskQueue**: 任务队列管理 - **ComputeNode**: 计算节点资源 - **PriorityStrategy**: 优先级策略 ### 客户端实现 所有客户端都继承自 `CachedKubernetesClient` 基类,提供: - 基于 Informer 的缓存优化 - 统一的资源操作接口 - 事件监听和处理能力 ### 主要客户端 - `TaskClient`: 任务管理客户端 - `TaskQueueClient`: 任务队列客户端 - `ComputeNodeClient`: 计算节点客户端 - `PriorityStrategyClient`: 优先级策略客户端 - **`CoreV1ApiClient`**: 新增的核心资源客户端 ### 构建和运行 ```bash # 编译项目 mvn compile # 打包 mvn package # 运行示例 mvn exec:java -Dexec.mainClass="net.yingyitech.examples.YourExampleClass" ``` ## 许可证 本项目采用开源许可证,具体请查看 LICENSE 文件。