Token导航 LogoToken导航TokenDH.com
Chaostoolkit Aws MCP Server logo
运维云端stdio官方级别未说明来源级核验

Chaostoolkit Aws MCP Server

MCP Server

Chaos Toolkit AWS MCP Server是一个用于生成和管理AWS基础设施混沌实验的工具,支持多种故障模拟和实验管理功能。

工具数

22

提示词数

0

GitHub Stars

0

资源数

0
Python自动化测试云端部署

安装说明

本站只整理中文说明和来源信息,不托管安装包,也不代用户安装。

作者 / 组织

RadiumGu

提供方

RadiumGu

最后核验

2026/5/17 20:23

快速接入

先看主来源和安装命令,再打开仓库或文档;下面只保留这个条目的关键接入事实。

命令预览

pip install chaostoolkit chaostoolkit-aws aws-az-failure-chaostoolkit

详细介绍

混沌工具包AWS MCP服务器

一个模型上下文协议(MCP)服务器,提供用于为AWS基础设施生成和管理Chaos Toolkit实验的工具。此服务器实现了actions.md规范中的所有混沌操作。

特性

  • AZ故障模拟:生成实验以模拟整个可用区故障
  • EC2混沌测试:停止、终止、重新启动实例和分离卷
  • ASG混沌测试:创建自动缩放组故障场景
  • SSM混沌操作:通过系统管理器执行混沌命令
  • 网络混沌:修改安全组并模拟网络问题
  • RDS混沌:数据库实例和集群故障场景
  • 负载平衡器混乱:目标注销和健康检查修改
  • 实验管理:运行、验证和回滚混沌实验
  • 状态管理:用于安全回滚的自动状态文件处理

安装

新环境

# 1. Clone the repository
# Option 1: GitHub
git clone https://github.com/RadiumGu/chaostoolkit-aws-mcp-server.git
# Option 2: Gitee (China mirror)
git clone https://gitee.com/radiumgu/chaostoolkit-aws-mcp-server.git

cd chaostoolkit-aws-mcp-server

# 2. Install dependencies with uv
uv sync --all-groups

# 3. Install additional Chaos Toolkit dependencies
pip install chaostoolkit chaostoolkit-aws aws-az-failure-chaostoolkit

对于现有环境

# Update dependencies
cd chaostoolkit-aws-mcp-server
uv sync --all-groups

3.配置AWS凭据

# For AWS China regions
aws configure --profile awscn
AWS Access Key ID [None]: your-access-key
AWS Secret Access Key [None]: your-secret-key
Default region name [None]: cn-north-1
Default output format [None]: json

用法

使用MCP客户端

添加到MCP客户端配置中:

{
  "chaostoolkit-aws-mcp-server": {
    "command": "uv",
    "args": [
      "--directory",
      "/path/to/chaostoolkit-aws-mcp-server",
      "run",
      "chaostoolkit-aws-mcp-server"
    ],
    "env": {
      "AWS_REGION": "cn-north-1"
    }
  }
}

可用工具

AZ故障工具

  • chaos_generate_az_failure_experiment -使用生成AZ故障实验 azchaosaws.ec2.actions.fail_az
  • chaos_isolate_az_network -生成隔离AZ网络连接的实验
  • chaos_simulate_az_partition -生成实验以模拟AZ网络分区
  • chaos_generate_asg_az_failure_experiment -使用生成ASG AZ故障 azchaosaws.asg.actions.fail_az

EC2混沌工具

  • chaos_stop_instances -生成停止EC2实例的实验
  • chaos_terminate_instances -生成终止EC2实例的实验
  • chaos_reboot_instances -生成重启EC2实例的实验
  • chaos_detach_volumes -生成分离EBS卷的实验

ASG混沌工具

  • chaos_suspend_asg_processes -生成暂停ASG过程的实验
  • chaos_terminate_random_instances -生成终止随机ASG实例的实验

SSM混沌工具

  • chaos_ssm_send_command -生成发送SSM命令的实验
  • chaos_ssm_stress_cpu -通过SSM生成CPU压力实验
  • chaos_ssm_fill_disk -通过SSM生成磁盘填充实验
  • chaos_ssm_kill_process -通过SSM生成进程终止实验

网络混沌工具

  • chaos_modify_security_groups -生成修改安全组规则的实验
  • chaos_simulate_network_latency -生成网络延迟模拟实验

RDS混沌工具

  • chaos_reboot_db_instance -生成重启RDS实例的实验
  • chaos_failover_db_cluster -生成故障转移RDS群集的实验

负载均衡器混沌工具

  • chaos_deregister_targets -生成注销ALB/NLB靶标的实验

实验管理工具

  • chaos_run_experiment -从JSON文件执行Chaos Toolkit实验
  • chaos_validate_experiment -验证Chaos Toolkit实验JSON语法
  • chaos_rollback_from_state -使用状态文件执行回滚操作

示例用法

1.生成AZ故障实验:

Use the chaos_generate_az_failure_experiment tool with:
- title: "Production AZ Failure Test"
- az: "cn-north-1a"
- failure_type: "network"
- health_check_url: "https://my-app.com/health"

2.生成SSM CPU压力实验:

Use chaos_ssm_stress_cpu with:
- title: "CPU Stress Test"
- instance_ids: ["i-1234567890abcdef0"]
- cpu_cores: 4
- duration_seconds: 300

3.生成EC2实例终止实验:

Use chaos_terminate_instances with:
- title: "Instance Termination Test"
- instance_ids: ["i-1234567890abcdef0", "i-0987654321fedcba0"]
- az: "cn-north-1a"

4.进行实验:

Use chaos_run_experiment with:
- experiment_file: "./experiment.json"
- journal_path: "./experiment-journal.json"

5.必要时回滚:

Use chaos_rollback_from_state with:
- state_files: ["./fail_az.ec2.json"]

支持的混沌动作

此服务器实现了规范中的所有混乱操作:

1.AZ故障模拟

  • 模拟故障 -模拟整个可用区故障
  • isolate_az_network 网络 -隔离AZ网络连接
  • block_az交通 -特定AZ交通
  • drain_az状态 -清空AZ实例
  • 模拟分区 -模拟AZ网络分区

2.EC2混沌实验

  • 停止状态 -停止EC2实例
  • 终止实例 -终止实例
  • 重新启动实例 -重新启动实例
  • 详细信息_卷数 -分离EBS卷
  • 应力cpu -CPU压力测试
  • fill_disk -磁盘填充测试

3.ASG混沌实验

  • suspend_asg过程 -暂停ASG进程(启动、终止、健康检查等)
  • 结果_过程 -恢复ASG流程
  • change_asg_子网 -修改ASG子网配置
  • detach_random_实例 -随机分离ASG实例
  • terminate_random_实例 -随机终止ASG实例
  • set_asg_容量 -修改ASG容量(最小/最大/所需)
  • stop_random_实例 -随机停止ASG实例

4.SSM混沌实验

  • send_命令 -通过SSM发送混沌命令
  • run_shell_command -执行shell命令进行故障注入
  • stress_cpu_via_ssm -通过SSM进行CPU压力测试
  • fill_disk_via_ssm -通过SSM填充磁盘
  • kill过程 -终止指定进程
  • 网络腐败 -网络数据包损坏
  • 记忆压力 -记忆压力测试
  • io_stress -IO压力测试

5.网络层混沌实验

  • 黑洞交通 -网络黑洞
  • modify_security_groups -修改安全组规则
  • detach_internet_gateway -断开互联网网关
  • 模拟网络延迟 -网络延迟注入
  • packet_loss_模拟 -丢包模拟

6.负载均衡器混沌实验

  • 注销_目标 -注销ALB/NLB目标
  • 修改健康检查 -修改健康检查
  • simulate_lb故障 -模拟负载平衡器故障

7.RDS/数据库混沌实验

  • reboot_db_实例 -重新启动数据库实例
  • 故障转移_db_cluster -数据库群集故障转移
  • simulate_db-connection_limit -模拟连接限制
  • 注入延迟 -数据库延迟注入

先决条件

  • Python 3.10+
  • 已安装Chaos工具包(pip install chaostoolkit)
  • Chaos Toolkit AWS扩展(pip install chaostoolkit-aws)
  • AWS AZ故障混沌工具包扩展(pip install aws-az-failure-chaostoolkit)
  • 已配置AWS凭据
  • 混乱操作所需的AWS权限

发展

# Install development dependencies
uv sync --all-groups

# Run tests
uv run pytest --cov --cov-branch --cov-report=term-missing

# Run linting
uv run ruff check
uv run mypy src/

测试覆盖率

当前测试覆盖率: 36% 通过12项测试

  • 涵盖核心功能
  • 实验生成单元测试
  • 异步测试支持

许可证

阿帕奇-2.0

目录标签

目录标签

Python自动化测试云端部署混沌工程本地部署AWS故障模拟实验管理

接入字段

传输方式(transport,传输协议)

stdio

鉴权方式(authType,认证方式)

none

工具数量(toolCount,工具数)

22

资源数量(resourceCount,资源数)

0

提示词数量(promptCount,提示词数)

0

权限和风险

stdionone部署方式未说明

接入前请确认传输方式、认证方式和部署位置,并根据实际工具能力限制访问范围。

安装前确认

不要直接授予不必要的文件、网络或账号权限;先核对安装命令和配置内容。

来源信息

继续浏览同类 MCP