一站式资源运维
实践场景
某电商运维人员在日常工作中发现,云上资源合规性问题突出,OS合规性风险尤为明显,引发客户对云上OS安全合规性担忧;需要周期性检查主机OS补丁的合规性情况,避免主机因为OS补丁缺失产生漏洞,导致业务受损。云上无统一的OS合规性管理和自闭环工具,合规性问题修复困难或求助华为侧协助解决。希望能够自动化的完成OS补丁的扫描,并且及时修复补丁漏洞,保证主机的OS补丁合规性。
解决方案
治理:提供OS合规性自动化定时巡检能力,打造开箱即用体验,同时保留客户自定义能力,及时发现OS合规性问题并输出合规性报告;
运维:基于合规性报告触发补丁修复,通过增量迭代方式保证OS合规性全覆盖,保证OS合规性问题闭环SLA;
补丁管理:COC提供OS补丁管理能力,支持对Linux下的Huawei Cloud EulerOS、CentOS、EulerOS三种系统进行补丁扫描和修复,并且支持ECS节点和CCE集群两种场景。COC通过补丁基线中的规则,对主机的OS补丁进行扫描并且提供合规性报告。COC提供三条公共补丁基线,同时支持用户自定义创建补丁基线。用户可以自定义补丁安装规则、补丁的合规性级别、补丁例外。
使用补丁管理包含以下步骤:
- 创建补丁基线,基于操作系统及对应的补丁扫描基线。
- 补丁扫描,基于扫描基线对资源进行补丁扫描。
- 查看摘要,扫描完成后可以查看资源的扫描合规性。
- 补丁修复,不合规的资源可以执行批量修复。
定时运维:COC提供自动化运维能力,包含脚本管理、作业管理、定时运维三种能力。
- 脚本管理:COC提供公共脚本和自定义脚本,用户可以自定义创建脚本,支持shell、python、bat三种类型。
- 作业管理:用户可以将云服务API、公共作业、自定义作业、作业控制编排成自定义作业。
- 定时运维:定时运维向客户提供了定时或周期性的向特定实例执行特定脚本或者作业的功能。
核心优势
- 动态识别:OS合规性风险动态识别。
- 资源自动发现和纳管。
- 安全生产:执行运维操作时,自动分批、爆炸半径评估等。
- 自动预警:短信、邮件、企业微信等自动通知。
前提条件
执行自动化运维的主机需安装UniAgent。
创建补丁基线
通过Cloud Operations Center创建一个用户自定义的补丁基线。
- 登录COC。
- 在左侧菜单栏选择“资源运维 > 自动化运维”页面,在“日常运维”模块单击“补丁管理”,进入“补丁管理”页面,选择“补丁基线”页签。
- 单击“创建补丁基线”。
图2 单击创建补丁基线
- 填写补丁基线相关内容。
图3 填写补丁基线内容
表1 操作系统安装规则 类型
可选项
说明
产品
全部
Huawei Cloud EulerOS1.1
Huawei Cloud EulerOS2.0
选择补丁的产品属性,在补丁扫描修复时将会过滤出该产品的补丁。
分类
全部
Security
Bugfix
Enhancement
Recommended
Newpackage
选择补丁的分类属性,在补丁扫描修复时将会过滤出该分类的补丁。
严重性级别
全部
Critical
Important
Moderate
Low
None
选择补丁的严重性级别属性,在补丁扫描和修复时会过滤出该严重性级别的补丁。
合规性报告
未指定
重大
高
中
低
提示
符合该补丁基线的补丁在合规性报告中展示的等级。
安全更新
无
选择安全更新,在补丁修复时不会进行有漏洞的补丁升级。
补丁例外
无
已批准的补丁以及已拒绝补丁支持以下格式:
1. 完整的软件包名称,格式为:example-1.0.0-1.r1.hce2.x86_64。
2. 包含单个通配符的软件包名称,格式为:example-1.0.0*.x86_64。
表2 自定义安装规则 类型
可选项
说明
产品
全部
Huawei Cloud EulerOS1.1
Huawei Cloud EulerOS2.0
选择补丁的产品属性,在补丁扫描修复时将会过滤出该产品的补丁。
合规性报告
未指定
重大
高
中
低
提示
符合该补丁基线的补丁在合规性报告中展示的等级。
基线补丁
无
用户自定义基线补丁的版本以及发行版号,补丁扫描安装时将会以用户自定义的基线补丁作为是否合规判断依据。
1. 单个基线最多允许上传1000条基线补丁。
2. 补丁名称由字母、数字、下划线、中划线、点号、*号、加号组成,最长支持200字符。
3. 第二列数据由版本号(字母、数字、下划线、点号、冒号)-发行版号(字母、数字、下划线、点号)组成,各支持最多50字符,由中划线隔开。
- 单击“提交”,创建自定义补丁基线。
图4 保存自定义补丁基线
补丁扫描
补丁扫描提供了用户可以扫描目标ECS或CCE实例上补丁合规性的功能,补丁扫描会根据用户所选择的默认基线、实例、分批执行策略进行合规性报告扫描。
若出现实例不可选情况,请确认该实例UniAgent状态是否正常或是否为Cloud Operations Center补丁管理支持操作系统。
- 登录COC。
- 在左侧菜单栏选择“资源运维 > 自动化运维”页面,在“日常运维”模块单击“补丁管理”,进入“补丁管理”页面,选择“补丁扫描”页签。
- 单击“创建扫描任务”。
图5 单击创建扫描任务
- 单击“添加实例”。
图6 单击选择实例按钮
- 选择需要进行扫描的ECS或CCE实例。
图7 选择需要扫描的ECS实例
图8 选择需要扫描的CCE实例
- 设置分批策略。
分批策略:
- 自动分批:用户选择的待执行机器,会根据默认规则,分成多批。
- 手动分批:用户可以根据自身需要,将待执行的机器,分成若干批,控制机器所在的批次。
- 不分批:用户所有待执行的机器会全部在同一批次。
图9 选择分批策略
- 设置熔断策略。
熔断阈值:用户可以设置执行的成功率,当执行失败的机器数量到达根据成功率计算出的失败数量,工单状态会变为异常,并停止执行。图10 熔断策略
- 单击“提交”。
图11 单击提交后执行界面
- 确认执行信息,若无误则单击“确定”。
- 扫描工单执行完成后,单击“合规性报告”按钮则可跳转到合规性报告界面,查看ECS实例合规性状态。
图12 扫描工单界面
图13 合规性报告界面
查看补丁合规性报告
补丁合规性扫描或修复后,用户可单击合规性报告详情摘要查看实例上的补丁详情。
补丁合规性报告只会保留最近的一次扫描或修复记录。
- 登录COC。
- 在左侧菜单栏选择“资源运维 > 自动化运维”页面,在“日常运维”模块单击“补丁管理”,进入“补丁管理”页面,选择“补丁扫描”页签。
图14 合规性报告右侧“摘要”
- 选择需要查看详情的补丁合规性报告,单击“摘要”。
合规-已安装:补丁符合补丁基线,已经安装在ECS实例上,并且没有可用更新。
合规-已安装其他:补丁未包含在补丁基线中,但已安装到ECS实例上。
不合规-已安装待重启:补丁已被修复,但需要重启ECS实例才可生效。
不合规-已拒绝:在补丁基线的补丁例外中被拒绝的补丁,该状态的补丁就算满足基线也不会被修复。
不合规-缺失:补丁符合基线,但是尚未安装。
不合规-失败:补丁进行了修复操作,但是修复失败。
图15 补丁合规性报告摘要界面
状态说明:
合规-已安装:补丁符合补丁基线,已经安装在ECS实例上,并且没有可用更新。
合规-已安装其他:补丁未包含在补丁基线中,但已安装到ECS实例上。
不合规-已安装待重启:补丁已被修复,但需要重启ECS实例才可生效。
不合规-已拒绝:在补丁基线的补丁例外中被拒绝的补丁,该状态的补丁就算满足基线也不会被修复。
不合规-缺失:补丁符合基线,但是尚未安装。
不合规-失败:补丁进行了修复操作,但是修复失败。
补丁修复
补丁修复提供了用户可以修复补丁扫描出的不合规ECS或CCE实例的能力,补丁修复功能会将ECS或CCE实例上不合规的补丁进行升级或安装。
- 登录COC。
- 在左侧菜单栏选择“资源运维 > 自动化运维”页面,在“日常运维”模块单击“补丁管理”,进入“补丁管理”页面,选择“补丁扫描”页签。
- 选择需要修复的实例,单击“修复”按钮。
图16 选择需要修复的实例
- 设置“分批策略”。
分批策略:
- 自动分批:用户选择的待执行机器,会根据默认规则,分成多批。
- 手动分批:用户可以根据自身需要,将待执行的机器,分成若干批,控制机器所在的批次。
- 不分批:用户所有待执行的机器会全部在同一批次。
图17 选择分批策略
- 设置“熔断策略”。
熔断阈值:用户可以设置执行的成功率,当执行失败的机器数量到达根据成功率计算出的失败数量,工单状态会变为异常,并停止执行。图18 熔断策略
- 设置是否允许重启。
部分补丁需要重启生效,若选择否,则需要您择期安排重启
- 确认执行信息,若无误则单击“确认执行”。
图19 执行信息界面
创建定时运维任务
定时运维向客户提供了定时或周期性的向特定实例执行特定脚本或者作业的功能。
- 登录COC。
- 在左侧菜单栏选择“资源运维 > 自动化运维”页面,在“日常运维”模块中单击“定时运维”,进入“定时运维”列表页面。
图20 查询定时任务列表
- 单击左上角“创建定时任务”,进入“创建定时任务”页面。
图21 编辑定时任务
- 填写定时任务的基本信息;设置时区,当选中单次执行时,选择单次触发定时任务的时间,当选中周期执行时,会弹出“简单周期”和“Corn表达式”选项,帮助用户自定义执行周期,该定时任务会根据用户自定义的执行周期循环执行,直到规则结束时间。
图22 定时设置
- 填写任务类型,当任务类型为脚本时,选择脚本,弹出脚本列表,单击搜索框,按条件输关键字,回车即可搜索想要的脚本。单击操作列的“选择”字样,即可选中脚本。
图23 任务类型
单击“查看已选脚本”,右侧弹出脚本详情。
图24 脚本详情
脚本入参字段会展示脚本默认参数,可单击“敏感参数”决定是否明文展示,单击参数输入框可编辑参数值。
输入执行用户,输入超时时间。
选择实例,单击“添加实例”按钮,弹出实例选择弹窗。可选择CMDB资源视角和CMDB应用视角,根据“资源类型”,“区域”以及搜索框搜索想要执行的目标实例列表。勾选实例列表前的“选项框”,单击“确定”即可选中实例。
图25 选择实例
选择分批策略和熔断策略。
- 填写任务类型,当任务类型为作业时,选择作业,弹出作业列表,选择自定义作业和公共作业页签,单击搜索框,按条件输入关键字,回车即可搜索想要的作业。单击“操作”列“选择”字样,即可选中作业。
图26 选择作业类型
单击“查看已选作业”字样,右侧弹出作业详情弹窗,单击全局参数字段下的选项,右侧二级弹窗展示全局参数详情;单击作业步骤下的选项,右侧二级弹窗展示作业步骤详情。
图27 查询作业步骤
选择目标实例模式,当选择每个步骤独立时,可独立设置每个作业步骤执行的目标实例和分批策略。
图28 选择实例
单击“作业步骤”,右侧弹窗展示作业步骤详情,输入成功率阈值,输入暂定继续策略,选择异常处理策略,单击保存,即可修改作业步骤。
图29 编辑作业步骤
选择实例,单击“添加实例”,弹出实例选择弹窗。可选择CMDB资源视角和CMDB应用视角,根据“资源类型”,“区域”以及搜索框搜索想要执行的目标实例列表。勾选实例列表前的“选项框”,单击“确定”即可选中实例。
图30 添加实例
选择分批策略和熔断策略。
- 可根据业务选择是否勾选入库人工审核。
图31 编辑人工审核
- 根据业务选择是否开启消息通知,开启时,勾选通知策略,选中通知对象和通知渠道。
图32 编辑通知
- 单击“提交”,即可成功创建定时任务。
- 单击列表数据操作列的“启用”、“禁用”,对定时任务进行启用或禁用。
图33 查看列表