偏差监测可以帮助您查看资源栈组的实际配置是否与资源栈组模板配置存在差异,本文为您介绍如何检测资源栈组的偏差监测。
应用场景
如果您想检测资源栈组中每个资源栈实例关联的资源栈中资源的配置状态是否与模板中定义的状态存在差异,您可以选择使用偏差检测功能检测资源栈组的状态。
前提条件
请确保您已经创建了资源栈组。具体操作,请参见步骤二:创建资源栈组。
使用限制
支持使用偏差检测功能的资源类型,请参见支持偏差检测和资源导入的资源类型。
背景信息
偏差检测的判定标准是指检测出在ROS外部对资源栈进行的更改。如果您直接通过ROS对资源栈进行更改(并非直接在资源栈组进行更改),也不会被视为存在偏差。例如:假设您具有一个与资源栈组的资源栈实例关联的资源栈,如果您使用ROS更新该资源栈,即使该资源栈现在与资源栈组的其他资源栈有不同的模板,也不会被视为存在偏差。这是因为该资源栈仍与它在ROS中的预期模板和参数配置相匹配。
注意事项
当您对资源栈组执行偏差检测时,ROS会对与资源栈组中的每个资源栈实例关联的资源栈执行偏差检测。ROS将资源栈中的每个资源的当前状态与该资源的预期状态(通过资源栈的模板以及指定输入参数定义)进行比较,如果资源的当前状态不同于预期状态,则认为该资源已经存在偏差。
如果资源栈中的一个或多个资源已经存在偏差,则将资源栈本身视为已经存在偏差,并将与资源栈关联的资源栈实例也视为已经存在偏差。
如果资源栈组中的一个或多个资源栈实例已经存在偏差,则将资源栈组本身视为已经存在偏差。
在对资源栈组进行偏差检测时,ROS会分别对资源栈组中的每个资源栈执行偏差检测,它在确定资源栈是否偏离时考虑所有覆盖的参数值。如果直接对与资源栈实例关联的资源栈执行偏差检测,则无法从资源栈组页面中查看这些偏差结果。
检测偏差检测的方式
控制台:ROS控制台支持对资源栈组进行偏差检测。
对资源栈组进行偏差检测,请参见通过控制台检测资源栈组状态。
API:支持通过API检测资源栈组状态。
偏差检测API的更多信息,请参见DetectStackGroupDrift - 对资源栈组进行偏差检测。
阿里云CLI:支持通过阿里云CLI对资源栈组进行偏差检测。
阿里云CLI的具体操作,请参见通过阿里云CLI检测资源栈组状态。
通过控制台检测资源栈组状态
登录ROS控制台。
在左侧导航栏,单击资源栈组。
在资源栈组列表页面,单击目标资源栈组名称。
在详细信息页签,选择
。说明ROS会弹出提示窗口,说明已经为选定的资源栈组启动偏差检测。
在弹出的检测偏差对话框,填写最大并发账户数、容错和地域并发信息,单击确定。
(可选)单击操作页签,找到偏差检测操作,单击右侧操作列的查看偏差详细信息,可以监控偏差检测操作进度。
说明您每次只能对给定资源栈组运行一次偏差检测操作。即使您关闭信息窗口,ROS也会继续执行偏差检测操作。
偏差检测操作可能需要几分钟,具体时间取决于资源栈组中包含的资源栈实例数量以及资源栈组中包含的资源数量。
单击实例页签,查看偏差检测结果。
说明您可以在资源栈ID列查看与每个资源栈实例关联的资源栈ID,在偏差状态列查看该资源栈的偏差状态。如果资源栈的一个或多个资源已偏离,则认为资源栈已偏离。
要查看与特定资源栈实例关联的资源栈的偏差检测结果,您可以记录资源栈实例的阿里云账号、资源栈名称和地域,登录包含资源栈实例的阿里云账号查看偏差结果。更多信息,请参见检测资源栈的偏差状态。
通过阿里云CLI检测资源栈组状态
使用aliyun ros
在资源栈组上检测偏差。
命令 | 描述 |
| 对资源栈组启动偏差检测操作。更多信息,请参见DetectStackGroupDrift - 对资源栈组进行偏差检测。 |
| 查询资源栈组偏差检测操作的状态。更多信息,请参见GetStackGroupOperation - 查询资源栈组操作的信息。 |
| 停止资源栈组的偏差检查操作。更多信息,请参见StopStackGroupOperation - 停止资源栈组操作。 |
在偏差检测操作完成后,可以通过以下命令返回所需的偏差信息:
使用
GetStackGroup
返回有关资源栈组的详细信息,包括有关资源栈组上次完成的偏差操作的详细信息(不包括有关正在执行的偏差操作的信息)。使用
ListStackInstances
返回属于资源栈组的资源栈实例列表,包括每个实例的偏差状态和上次偏差检查时间。使用
GetStackInstance
返回有关特定资源栈实例的详细信息,包括其偏差状态和上次偏差检查时间。
后续操作
当您检测出资源栈组存在偏差时,您可以在资源栈组的实例页签中查看存在偏差的资源栈实例,然后对资源栈实例对应的资源栈进行更改,纠正资源栈组的偏差状态。具体操作,请参见更新资源栈。