用途:这是 NetClaw 的断言层,用来校验 Arista EOS 网络状态是否符合预期,返回可执行的 pass/fail 裁决,而非读取原始状态。若要问“接口 MTU 是多少”,应走设备 CLI 类工具;若问“MTU 是否应为该值”,才用本技能。
主要能力:服务端 anta-mcp 基于 ANTA 1.9.0,提供 4 个工具,测试目录含 208 条测试。裁决分五种且不合并:pass(已测且符合)、fail(已测但不符合)、not_applicable(功能未配置,未测)、skipped(ANTA 拒绝执行)、error(设备不可达或运行中断)。ANTA 原生会把未配置功能报为 failure,本服务将其重分类为 not_applicable 并保留原始消息,因此不应把它说成“测试失败”。不提供健康百分比,因其在含 not_applicable 与 skipped 时无意义,应报告五个计数。
使用方式:先查测试,anta_list_tests 支持 category(如 routing.bgp)或 keyword(如 ntp);再用 anta_describe_test 查看测试所需输入 schema;随后用 anta_run_tests 指定 host、tests 或 category、inputs 运行,例如对 VerifyEOSVersion 传入 versions、对 VerifyUptime 传入 minimum。缺少必需输入的测试会以 skipped 报告并列出要求,不会猜测默认值。无法匹配任何测试时返回 no_tests_selected;设备不可达时返回 error 且零结果。fail 会给出 observed 与 expected,应两者一并引用。
凭据与范围:ANTA_USERNAME / ANTA_PASSWORD 来自环境变量,不作为工具参数,也不出现在输出中。ANTA_VERIFY_TLS 默认 true,校验证书信任与主机名;私有 PKI 可设 ANTA_CA_BUNDLE 指向可信 PEM。实验环境显式关闭会披露为 tls_verified=false,但不影响 SSH 主机密钥校验。
限制:仅支持 EOS,不适用于多厂商校验;只读,不提供修复路径,失败后需走正常变更流程;按需执行,不是持续监控,历史趋势需用 zabbix-metrics-history。其他事实暂未提供。