# 通过COC向多台ECS发送执行命令
#### 实践场景
在当前企业级数字化转型的深水区，华为云弹性云服务器（ECS）的承载量呈指数级增长，支撑着业务系统的稳定运行。然而，在华为云云运维中心（COC）的日常运营实践中，面对由数百甚至数千台ECS组成的大规模资源池，传统的运维模式正面临严峻的挑战。
在未引入COC批量执行能力前，运维团队通常依赖远程桌面（RDP）或SSH逐台登录实例进行操作。这种 "人机对话" 式的运维模式在资源数量较少时尚可维持，但在处理版本批量升级、大规模配置对齐、突发安全基线加固、健康巡检脚本批量下发等高频场景时，暴露出了极高的人力成本和低效率问题。人工操作的时延直接导致业务响应变慢，且随着实例数量增加，一致性难以保证。
在大规模运维场景下，传统运维手段陷入了效率与风险的冲突：
- 效率冲突：**手动** vs**批量**
  逐台操作的线性耗时与业务需求的非线性增长形成矛盾。例如，更新10台服务器可能仅需半小时，但更新100台则需数小时甚至更久，这不仅占用了大量人力资源，还导致运维窗口过长，挤占业务可用时间。
  
- 风险冲突：**人为失误** vs**一致性**
  人工手写脚本或重复输入指令时，极易因疲劳导致命令拼写错误、参数配置错误（如路径错误、版本号错误）。更严重的是，不同运维人员在不同时间点的操作缺乏统一标准，导致集群内出现 "配置漂移"，即虽然硬件相同，但软件环境不一致，这是导致线上故障的常见根源。
  
 
#### 解决方案
华为云云运维中心（COC）提供的**批量执行命令**功能构建了一套标准化、自动化、可审计的运维闭环，将原来的 "串行人工运维" 升级为 "并行自动运维"：
- 以批量替代串行，降本增效该功能支持基于标签、企业项目或资源池一键筛选多台ECS，将原来数小时的人工操作压缩至分钟级。运维人员只需编写一次标准化脚本（支持Shell/Python），系统即可通过UniAgent代理并发下发至所有目标实例，实现大规模操作的并行处理，极大提升了运维响应速度。
- 以标准化规避风险，保障一致性解决方案强制要求脚本前置验证和操作系统隔离（Linux和Windows分开执行）。通过统一的脚本仓库和标准化的操作参数，消除了人为随意性，确保集群内所有实例在同一时间点保持一致的配置状态，从源头减少了 "配置漂移" 和操作失败率。
本文以批量查询多台ECS实例磁盘使用率为例，为您介绍批量执行命令功能。
#### 注意事项
- 所选实例处于运行中状态，才能执行此操作。
- 所选实例UniAgent状态为运行中，才能执行此操作。UniAgent相关操作请参考[为主机安装UniAgent](https://support.huaweicloud.com/usermanual-coc/coc_um_03_01_02.html)。
- 批量操作时，如果勾选的多个ECS不属于同一操作系统，既包含Linux系统ECS，又包含Windows系统ECS，则需要分别进行配置。
 
#### 前提条件
已[注册华为云账号](https://support.huaweicloud.com/usermanual-account/account_id_001.html)，且登录成功。
#### 批量下发命令
1. 登录[云运维中心](https://console.huaweicloud.com/coc/?#/console/home)。
2. 在左侧导航栏选择"资源运维 \> 资源批量操作"。
3. 选择"弹性云服务器ECS \> 执行命令"。
4. 参考[表1]设置批量执行命令。
   
    表1批量执行命令参数配置 
   | 参数   | 本案例的示例    | 说明                                                                             |
   |:---|:---|:---|
   | 目标实例   | 目标ECS实例 | 单击"添加实例"，选择待执行命令的目标ECS实例。                                                       |
   | 操作系统   | Linux     | 目标实例的操作系统类型，当前支持Linux和Windows。 请根据目标实例的操作系统类型进行选择。 |
   | 执行用户 | root      | Linux系统ECS默认为root，支持手动输入其他用户作为执行用户。                                               |
   | 执行计划 | 立即执行       | 命令的执行计划，默认为"立即执行"，不可修改。                                                         |
   | 超时时间 | 60       | 单次命令执行的超时时间，超时后会强制终止发送进程。 单位：秒。                     |
   | 命令类型 | Shell    | 发送的脚本命令类型。                                                                     |
   | 命令输入 | df -h    | 输入内容必须为单次执行可返回结果的命令，即不支持与命令返回信息进行二次交互。                                           |
      
   图1设置批量执行命令   
   ![](https://support.huaweicloud.com/bestpractice-coc/zh-cn_image_0000002530038240.png "点击放大")
   
   
5. 单击"确定"，等待命令执行完成。
 
#### 验证执行结果
命令执行完成后，可在命令输出栏查看执行结果。
单击实例名称可切换页签查看对应ECS实例磁盘使用率。
图2查看执行结果   
![](https://support.huaweicloud.com/bestpractice-coc/zh-cn_image_0000002530027988.png "点击放大")
