# 集群检查工具 **Repository Path**: CodeGrok/cdt ## Basic Information - **Project Name**: 集群检查工具 - **Description**: No description available - **Primary Language**: Rust - **License**: Apache-2.0 - **Default Branch**: main - **Homepage**: None - **GVP Project**: No ## Statistics - **Stars**: 0 - **Forks**: 0 - **Created**: 2026-03-19 - **Last Updated**: 2026-03-19 ## Categories & Tags **Categories**: Uncategorized **Tags**: None ## README # CDT - 集群诊断工具 一款强大的 Kubernetes 集群和裸金属服务器诊断 CLI 工具。 ## 功能特性 ### K8s 模式 - `pod ` - 诊断指定 Pod 异常 - `net [pod] ` - 网络连通性测试(宿主机模式或 Pod 内模式) - `node [target]` - 节点诊断(本地或远程 SSH) - `lb ` - 负载均衡 / Service 检查 - `events [pod]` - 查看 K8s 事件 - `nodes` - 节点状态概览 - `scan` - 快速扫描异常 Pod ### 裸金属模式 - `dns` - 检查 DNS 配置 - `net ` - 网络连通性测试 ## 快速开始 ```bash # 下载二进制文件 chmod +x cdt ./cdt # 选择模式 1. K8s 集群 2. 裸金属部署 # K8s 模式命令示例 > pod my-app > net my-app google.com > node 192.168.1.100 > lb my-service > scan ``` ## 安装 ### Linux ```bash # 从 releases 下载或编译 curl -L -o cdt https://gitee.com/CodeGrok/cdt/releases chmod +x cdt sudo mv cdt /usr/local/bin/ ``` ### 源码编译 ```bash git clone git@gitee.com:CodeGrok/cdt.git cd cdt cargo build --release ./target/release/cdt ``` ## 配置 CDT 自动查找 kubectl 和 kubeconfig: ### kubectl 路径 1. PATH 环境变量 2. `/usr/local/bin/kubectl` 3. `which kubectl` 结果 ### kubeconfig 路径 1. `KUBECONFIG` 环境变量 2. `/etc/kubernetes/admin.conf` 3. `/etc/kubernetes/kubelet-config.yaml` 4. `/etc/kubernetes/kubelet.conf` 5. `~/.kube/config` 如果未找到 kubeconfig,CDT 会提示用户输入路径。 ## 项目架构 ``` cdt/ ├── src/ │ ├── main.rs # 入口 │ ├── k8s/ # K8s 模式模块 │ │ ├── pod.rs # Pod 诊断 │ │ ├── net.rs # 网络诊断 │ │ ├── lb.rs # 负载均衡 │ │ ├── events.rs # 事件查看 │ │ ├── nodes.rs # 节点状态 │ │ ├── scan.rs # 快速扫描 │ │ └── node_check.rs # 节点诊断 │ └── host/ # 裸金属模式模块 │ ├── dns.rs # DNS 检查 │ └── network.rs # 网络测试 └── target/release/cdt # 编译产物 ``` ## 许可证 MIT