Sign inSign up

sgfoot/kube-box

By sgfoot

•Updated over 3 years ago

用于 kubernetes 容器内调试使用的工具包,功能强大。

Image
0

6.3K

sgfoot/kube-box repository overview

Docker Image CI

⁠1. kube-box

专于诊断网络使用的

⁠1.1. 特色

  • ping 存活检查
  • healthz 健康检查
  • 检查IP是否通达
  • 检查健康接口是否通达
  • 检查 MySQL 连接状态
  • 创建 MySQL 新的数据库
  • 提供 Prometheus metrics 数据

⁠1.2. 部署使用

⁠1.2.1. Kubenetes 部署

两种使用方法,一种是使用 DeamonSet, 一种是 Deployment

⁠1.2.2. Docker 部署
# 使用默认端口 80
docker run -itd --name kube-box -p 9110:80 sgfoot/kube-box:latest

⁠1.3. 镜像选择

https://hub.docker.com/r/sgfoot/kube-box/tags⁠

# 最新版本
docker pull sgfoot/kube-box:latest

⁠1.4. 接口介绍

默认80端口

序列接口地址说明
1/主页
2/ping存活检测接口
3/healthz健康接口
4/check-ip检查IP是否通达
5/dry-check-ip检查IP是否通达,只返回失败的
6/check-healthz检查健康接口是否通达
7/dry-check-healthz检查健康接口是否通达,只返回失败的
8/metricsprometheus metrics infomation
9/check-mysql检查 MySQL 连接状态
10/create-mysql-db创建 MySQL 新的数据库

⁠1.5. 环境变量

名称默认值说明
PORT80端口
TARGET_PORT80目标端口,即 healthz请求时使用的端口
VERSIONv0.0.1版本号
DATA_PATH./data/数据存储目录路径
IP_DATA_FILENAMEip.dataIP数据文件名
NETWORK_NAMEeth0网卡名称,用于获取本机IP地址
GO_NUMBER10并发数
TIMEOUT5请求超时,单位秒(s)
HEALTHZ_PATH_NAMEhealthz健康接口地址

⁠1.6. 运行测试

  • windown
$env:DATA_PATH="./data/"
$env:NETWORK_NAME="WLAN"

go run .
  • linux
export DATA_PATH="./data/"
export NETWORK_NAME="WLAN"
go run .

⁠1.7. 添加 metrics 接口

用于接入 prometheus 监控使用。

访问方法:http://localhost:80/metrics⁠

# 统计接口访问状态次数。如 200 表示成功次数为 10 次,404表示未找到页面 7 次。
# HELP kubebox_requests_total Number of the http requests received since the server started
# TYPE kubebox_requests_total counter
kubebox_requests_total{status="200"} 10
kubebox_requests_total{status="404"} 7

⁠1.8. 检查数据库

⁠1.8.1. 参数说明
  • host 连接地址
  • port 端口号,必须整型
  • user 用户名称
  • pass 用户密码
  • dbname 需要创建的数据库名称

例:

curl localhost/check-mysql?host=127.0.0.1&port=3306&user=root&pass=123456

⁠1.9. 创建数据库

  • 创建数据库,默认采用 utf8mb4
⁠1.9.1. 参数说明
  • host 连接地址
  • port 端口号,必须整型
  • user 用户名称
  • pass 用户密码
  • dbname 需要创建的数据库名称

例:

curl localhost/create-mysql-db?host=127.0.0.1&port=3306&user=root&pass=123456&dbname=test

Tag summary

Content type

Image

Digest

sha256:c20a580e5…

Size

36.5 MB

Last updated

over 3 years ago

docker pull sgfoot/kube-box