# 通过COC批量升级OS版本
#### 实践场景
随着企业云资源规模扩张，ECS、IDC 离线服务器等基础设施数量激增，操作系统版本迭代与安全漏洞修复成为常态化运维需求。传统逐台手动升级模式存在三大核心痛点：
- **效率低下**，数百台服务器升级耗时数天，运维人力成本高企；
- **一致性差**，易出现版本不统一、配置遗漏、依赖冲突等问题，引发业务兼容性故障；
- **风险不可控**，缺乏批量管控、过程监控与快速回滚机制，单点故障易扩散，严重影响业务连续性与合规性。
华为云运维中心（COC）的OS版本变更功能，以 "安全合规、高效协同、可追溯可审计" 为核心，提供从兼容性评估、批量执行、过程监控到结果验证、故障回滚的全流程自动化能力，可支撑大规模ECS与IDC离线资源的OS版本平滑升级，解决传统模式痛点，保障业务稳定与运维效率。
#### 解决方案
COC批量OS升级基于**云运维自动化框架** ，整合**CMDB资源纳管** 、**作业调度** 、**远程执行** 、**监控告警**四大模块，通过UniAgent代理实现与ECS/IDC服务器的安全通信，构建 "管控平台 + 执行代理" 的分布式批量运维架构。
- 升级前准备（风险前置管控）
  - 资源与版本梳理：通过COC CMDB统一纳管目标ECS/IDC资源，确认当前OS版本（仅支持RHEL 7.4/7.6→7.9、7.9→8.6/8.8/8.10 小版本升级，x86_64 架构），筛选需升级实例，确保UniAgen 运行正常。
  
  - 兼容性预评估：使用COC内置兼容性检查工具，校验目标版本与业务应用、中间件、驱动的依赖兼容性，生成评估报告，提前修复冲突项。
  
  - 数据与备份保障：对所有目标实例创建系统镜像备份，配置数据盘快照，制定回滚预案；核心业务集群优先在测试环境验证升级流程。
  
  - 分批策略规划：根据业务架构（如集群、可用区）制定分批规则，核心业务采用手动分批（按节点/可用区分组），非核心业务采用自动分批。
   
- 批量升级执行（自动化管控）
  - 创建OS版本变更任务：登录COC控制台，进入 "资源运维 \> 自动化运维 \> OS版本变更"页面，选择目标资源（ECS/IDC）、区域、企业项目，指定目标OS版本。
  
  - 配置执行策略：选择分批模式（自动/手动）；绑定运维账号与权限，开启操作审计与日志留存。
  
  - 一键批量执行：提交任务生成升级工单，COC自动按批次下发升级指令，通过UniAgent远程执行OS升级包安装、配置更新、系统重启等操作。
   
- 故障处理与回滚（风险兜底）
  - 节点故障：针对升级失败实例，通过COC快速执行镜像回滚，恢复至升级前状态，排查问题后重新执行。
  
  - 审计复盘：查看升级全流程日志，分析故障原因，优化分批策略与兼容性检查规则，沉淀运维经验。
   
 
#### 约束限制
- 目前操作系统类型仅支持Red Hat Enterprise Linux。
- 资源类型仅支持ECS和IDC离线资源。
- 升级路径：Red Hat Enterprise Linux（RHEL）7.4/7.6 -\> 7.9、Red Hat Enterprise Linux（RHEL）7.9 -\> 8.6/8.8/8.10。
- 架构类型仅支持x86_64。
- 所选择实例的UniAgent状态必须为运行中。
 
#### 注意事项
OS升级失败时可能会导致系统无法启动或功能异常，升级前务必完成系统镜像备份。更多兼容性问题请参考[OS版本升级兼容性问题](https://support.huaweicloud.com/usermanual-coc/coc_um_05_05_03.html)。
#### 创建OS版本变更
1. 登录[云运维中心](https://console.huaweicloud.com/coc/?#/console/home)。
2. 在左侧导航栏选择"资源运维 \> 自动化运维"。
3. 在"高阶运维"模块单击"OS版本变更"，进入OS版本变更页面。
4. 在OS版本变更页面，参考[表1]设置版本升级必要参数，其余参数保持默认。
   
   图1配置执行内容   
   ![](https://support.huaweicloud.com/bestpractice-coc/zh-cn_image_0000002561912593.png "点击放大")
   图2添加实例   
   ![](https://support.huaweicloud.com/bestpractice-coc/zh-cn_image_0000002561975061.png "点击放大")
    表1设置版本升级说明 
   | 参数       | 本实践示例                                                | 说明                                                                                                     |
   |:---|:---|:---|
   | OS类型   | RedHat                                              | 选择升级的OS类型。目前仅支持"RedHat"类型。                                                                             |
   | 架构类型      | Red Hat Enterprise Linux for x86_64                | 请选择升级的CPU架构类型。目前仅支持x86_64。                                                                            |
   | 目标版本    | Red Hat Enterprise Linux Server release 7.9 (Maipo) | 选择升级的目标版本。                                                                                           |
   | OS版本升级步骤 | -                                                  | 系统已预置了"升级前业务处理"、"升级前准备"、"升级前检查"、"升级前备份"、"OS升级"、"OS重启"、"睡眠"、"等待OS重启"、"升级后系统处理"、"升级后业务处理"和"升级后业务验证"11个步骤。 |
   | 目标实例   | -                                                    | 单击"添加实例"，选择需要升级的实例。                                                                                      |
      
   
   
5. 在参数设置模块中，单击"修改"，修改OS版本变更相关的全局参数，其中，带\*的为必须填参数。 
   表2全局参数 
   | 参数                         | 本实践示例                                        | 说明        |
   |:---|:---|:---|
   | REPO_IP_GLOBAL            | 100.\*\*.\*\*.\*\*                           | 本地yum源IP地址。  |
   | SUT_PACKAGE_NAME_GLOBAL    | sut-1.1.5-13.eulerosv2r13.x86_64.rpm            | sut包名。    |
   | HUAWEI_OBS_ENDPOINT_GLOBAL | https://obs-test.obs.\*\*\*.myhuaweicloud.com | 华为云OBS桶地址。   |
   | REPO_BASE_URL_GLOBAL         | /myropo/redhat                                  | 本地yum源结构。 |
      
   
   
6. 单击"确定"，确认执行信息后再次单击"确定"，开始执行OS版本变更。 
   系统自动跳转至工单详情页面，等待工单执行完成。
   
   
7. 在工单详情页面，单击实例名称，查看升级步骤的执行日志。 
   图3查看执行日志   
   ![](https://support.huaweicloud.com/bestpractice-coc/zh-cn_image_0000002531174890.png "点击放大")
   
   
   
 
