新增 auto-check 工具:网段扫描+SSH登录+压力测试永久循环工作流
- pkg/discovery: TCP端口探测存活主机,ARP表解析MAC作为设备唯一标识 - pkg/sshclient: SSH连接(密码/密钥认证)与远程命令执行 - pkg/stress: stress-ng/stressapptest 压测(cpu/memory/disk/memnative/full)+温度与dmesg监控 - pkg/report: 检测报告生成(文本/JSON) - pkg/workflow: 永久循环工作流(间隔可配),MAC唯一标识设备,增量测试+状态变化打印 - pkg/config: YAML分类配置(scan/ssh/stress/report/workflow) - cmd: cobra入口,仅 --config 指定配置文件
This commit is contained in:
35
auto-check/cmd/root.go
Normal file
35
auto-check/cmd/root.go
Normal file
@@ -0,0 +1,35 @@
|
||||
package cmd
|
||||
|
||||
import (
|
||||
"fmt"
|
||||
"os"
|
||||
|
||||
"github.com/spf13/cobra"
|
||||
)
|
||||
|
||||
var (
|
||||
configFile string // 配置文件路径
|
||||
)
|
||||
|
||||
var rootCmd = &cobra.Command{
|
||||
Use: "auto-check",
|
||||
Short: "自动化设备发现 + SSH 登录 + 远程压力测试工具",
|
||||
Long: `auto-check 是一个自动化运维工具,支持:
|
||||
1. 网段扫描发现存活设备
|
||||
2. 自动 SSH 登录验证
|
||||
3. 远程执行压力测试(CPU/内存/磁盘/网络)
|
||||
|
||||
配置仅从配置文件加载(默认 ./auto-check.yaml)`,
|
||||
}
|
||||
|
||||
func init() {
|
||||
rootCmd.PersistentFlags().StringVar(&configFile, "config", "", "配置文件路径 (默认: ./auto-check.yaml)")
|
||||
}
|
||||
|
||||
// Execute 入口:加载配置并启动
|
||||
func Execute() {
|
||||
if err := rootCmd.Execute(); err != nil {
|
||||
fmt.Fprintln(os.Stderr, err)
|
||||
os.Exit(1)
|
||||
}
|
||||
}
|
||||
Reference in New Issue
Block a user