信息系统管理工程师 · 高频练习

自动扩容脚本失败后重跑,为什么可能重复创建20台服务器?

中级 单选题 第 1112 题 较难 信息系统管理工程师运维自动化幂等性运行手册风险控制
题目

值班人员执行自动扩容脚本创建10台服务器。脚本在返回结果前超时,实际资源已经创建;值班人员直接重跑,又创建10台。改造该运行手册时,最关键的是()。

A 把超时时间无限延长,其他逻辑不变
B 删除执行日志,让脚本每次都从头开始
C 允许任何人无上限反复执行
D 执行前读取当前状态并使用唯一操作标识,做到重复调用结果一致,同时设置上限、停止条件和审计记录
题目类型:原创高频练习题 用途:用于帮助理解信息系统管理工程师相关考点和答案解析,不等同于官方真题。
正确答案
D
答案解析

网络超时只表示调用方没收到结果,不代表操作没发生。自动化应先观察实际状态,使用幂等键或期望状态收敛,并设置最大影响范围、失败停止和人工接管条件。

选项分析

A

错误。更长超时仍可能发生,且不能处理结果未知。

B

错误。日志是判断已执行动作和追责复盘的重要证据。

C

错误。无权限和影响上限会让自动化扩大故障。

D

正确。通过幂等与安全护栏控制重试和最大影响。

本题为什么容易错

人手操作慢,出错影响往往有限;脚本一分钟能改上千台机器,所以‘能自动执行’不等于‘可以安全重跑’。

先看结论

简短答案

自动扩容脚本失败后重跑,为什么可能重复创建20台服务器,正确答案是 D(执行前读取当前状态并使用唯一操作标识,做到重复调用结果一致,同时设置上限、停止条件和审计记录)。网络超时只表示调用方没收到结果,不代表操作没发生。自动化应先观察实际状态,使用幂等键或期望状态收敛,并设置最大影响范围、失败停止和人工接管条件。

解析

易混淆概念对比表

概念本题判断区别要点记忆提示
把超时时间无限延长,其他逻辑不变 本题干扰项 错误。更长超时仍可能发生,且不能处理结果未知。 看到该词不要急着选,先判断是否真正解决题干问题
删除执行日志,让脚本每次都从头开始 本题干扰项 错误。日志是判断已执行动作和追责复盘的重要证据。 看到该词不要急着选,先判断是否真正解决题干问题
允许任何人无上限反复执行 本题干扰项 错误。无权限和影响上限会让自动化扩大故障。 看到该词不要急着选,先判断是否真正解决题干问题
执行前读取当前状态并使用唯一操作标识,做到重复调用结果一致,同时设置上限、停止条件和审计记录 本题正确答案 正确。通过幂等与安全护栏控制重试和最大影响。 看到题干核心场景时优先联想到它
本题易混淆选项怎么区分
  • 把超时时间无限延长,其他逻辑不变:错误。更长超时仍可能发生,且不能处理结果未知。
  • 删除执行日志,让脚本每次都从头开始:错误。日志是判断已执行动作和追责复盘的重要证据。
  • 允许任何人无上限反复执行:错误。无权限和影响上限会让自动化扩大故障。
复习

知识点详解

幂等操作重复执行一次或多次,最终状态与执行一次一致。可以通过资源唯一标识、期望状态比较、事务记录和去重键实现。对不可幂等动作,应先查询状态或引入补偿流程。

备考速记

自动化先问现在是什么状态,再把它收敛到目标;不是每重跑一次就再做一遍。

风险控制在风险控制场景中的作用

扩容任务可使用变更单号作为操作标识,先查询该标识已创建的实例数,只补足到目标10台;达到费用或数量上限立即停止并通知值班人员。

拓展

同类题怎么考

  • 判断自动化任务超时后的安全重试方式。
  • 识别运行手册缺少影响边界的风险。
风险控制在信息系统管理工程师软考中的考法

看到超时、重试、重复创建,优先找幂等和状态核对;出现大批量自动化,再补影响上限和停止条件。

解题思路

题眼是‘请求超时但资源已创建’。仅延长等待时间不能消除不确定结果,重跑前必须按操作标识或目标状态确认已经完成多少,D才真正解决重复执行。

考点定位

自动化把动作做快,也会把错误放大。成熟运行手册除正确步骤外,还要明确前置检查、影响上限、退出条件、回滚和证据。

易错提醒

  • 脚本只判断API返回码,不核对真实资源状态。
  • 批量任务没有每批上限,一次覆盖全网。
  • 回滚脚本从未演练,事故时才发现参数不兼容。

备考提示

  • 用前置条件、幂等、限速、停止、回滚、审计六个词检查自动化。
  • 先在小范围试运行,再逐步扩大对象。

你可能还想了解

  • 运维脚本为什么需要幂等?
  • API超时后能直接重试吗?
  • 自动化运行手册要有哪些安全护栏?

本文小结

自动化任务超时后不能盲目重跑,应通过实际状态检查、唯一操作标识和期望状态实现幂等,并设置影响上限与停止条件。