更新 RFCs - AMS 高级用户指南

本文属于机器翻译版本。若本译文内容与英语原文存在差异,则一律以英文原文为准。

更新 RFCs

您可以通过更新 RFC 然后提交或重新提交来重新提交已被拒绝或尚未提交的 RFC。请注意,大多数 RFCs 都被拒绝,因为指定的值在提交前RequestedStartTime已通过,或者指定的值 TimeoutInMinutes 不足以运行 RFC(由于 TimeoutInMinutes 不会延长成功的 RFC,因此对于长期运行的 Amazon EC2 或 Amazon A EC2 uto Scaling 组,我们建议始终将其设置为至少 “60”,最多设置为 “360”)。 UserData本节介绍如何使用UpdateRfc命令的 CLI 版本使用新的 RFC 参数更新 RFC,或者使用字符串化的 JSON 或更新的参数文件来更新 RFC。

此示例介绍如何使用 CLI 版本的 AMS UpdateRfc API(参见更新 RFC)。虽然有些更改类型可用于更新某些资源(DNS 私有和公有、负载均衡器堆栈以及堆栈修补配置),但没有 CT 可以更新 RFC。

我们建议您一次提交一个 UpdateRfc 操作。如果您提交多个更新(例如在 DNS 堆栈上),则尝试同时更新 DNS 时,更新可能会失败。

必填数据:RfcId: 您正在更新的 RFC。

可选数据:ExecutionParameters: 除非你要更新非必填字段,比如Description,否则你需要提交修改后的执行参数来解决导致 RFC 被拒绝或取消的问题。所有提交的非空值都会覆盖原始 RFC 中的这些值。

  1. 找到相关的已拒绝或已取消的 RFC,您可以使用以下命令(可以将值替换为Canceled):

    aws amscm list-rfc-summaries --filter Attribute=RfcStatusId,Value=Rejected
  2. 您可以修改以下任何 RFC 参数:

    { "Description": "string", "ExecutionParameters": "string", "ExpectedOutcome": "string", "ImplementationPlan": "string", "RequestedEndTime": "string", "RequestedStartTime": "string", "RfcId": "string", "RollbackPlan": "string", "Title": "string", "WorstCaseScenario": "string"}

    更新描述字段的命令示例:

    aws amscm update-rfc --description "AMSTestNoOpsActionRequired" --rfc-id "RFC_ID" --region us-east-1

    更新 ExecutionParameters VpcId 字段的命令示例:

    aws amscm update-rfc --execution-parameters "{\"VpcId\":\"VPC_ID\"}" --rfc-id "RFC_ID" --region us-east-1

    使用包含更新的执行参数文件更新 RFC 的命令示例;参见步骤 2 中的示例执行参数文件:EC2 stack | Creat e:

    aws amscm update-rfc --execution-parameters file://CreateEc2ParamsUpdate.json --rfc-id "RFC_ID" --region us-east-1
  3. 使用submit-rfc与首次创建 RFC 时相同的 RFC 编号重新提交 RFC:

    aws amscm submit-rfc --rfc-id RFC_ID

    如果 RFC 成功,则您不会在命令行收到任何确认或错误消息。

  4. 要监控请求的状态并查看执行输出,请运行以下命令。

    aws amscm get-rfc --rfc-id RFC_ID