对 Systems Manager Inventory 的问题进行故障排除
本主题包括有关如何排除 Amazon Systems Manager Inventory 中常见错误或问题的信息。如果您在 Systems Manager 中查看节点时遇到问题,请参阅 排除托管式节点可用性的问题。
主题
不支持多次应用所有使用文档“AWS-GatherSoftwareInventory
”的关联
错误消息 Multiple apply all associations with document
'AWS-GatherSoftwareInventory' are not supported
表示:您尝试在其中为所有节点配置 Inventory 关联的一个或多个 Amazon Web Services 区域,已配置有一个适用于所有节点的清单关联。如有必要,您可以删除所有节点的现有清单关联,然后创建新的清单关联。要查看现有清单关联,在 Systems Manager 控制台中选择 State Manager,然后找到使用 AWS-GatherSoftwareInventory
SSM 文档的关联。如果跨多个区域创建了所有节点的现有清单关联,并且您希望创建一个新的清单关联,则必须从现有清单关联存在的每个区域中删除它。
清单执行状态永远不会退出待处理状态
清单收集永远不会退出 Pending
状态的原因有两个:
-
所选 Amazon Web Services 区域 中没有节点:
如果您使用 Systems Manager Quick Setup 创建全局清单关联,并且如果所选区域中没有可用节点,则清单关联(
AWS-GatherSoftwareInventory
文档)的状态将显示Pending
。 -
权限不足
如果一个或多个节点没有运行 Systems Manager Inventory 的权限,清单关联将显示
Pending
。验证并确保 Amazon Identity and Access Management (IAM) 实例配置文件包含 AmazonSSMManagedInstanceCore 托管式策略。有关如何将此策略添加到实例配置文件的信息,请参阅EC2 实例权限的替代配置。实例配置文件必须至少拥有以下 IAM 权限。
AWS-ListWindowsInventory
文档无法运行
AWS-ListWindowsInventory
文档已被弃用。请勿使用此文档收集清单,而应使用 配置清单收集 中描述的其中一个进程。
控制台不显示 Inventory“控制面板”|“详细视图”|“设置”选项卡
仅在提供 Amazon Athena 的 Amazon Web Services 区域 中提供了 Inventory Detailed View (详细视图) 页面。如果在 Inventory 页面上未显示以下选项卡,则意味着 Athena 在该区域中不可用,并且您无法使用 Detailed View (详细视图) 查询数据。

UnsupportedAgent
如果清单关联的详细状态显示为 UnsupportedAgent(不支持的代理),并且 Association status(关联状态)显示为 Failed(失败),则说明托管式节点上的 Amazon Systems Manager SSM Agent 版本不正确。例如,要创建全局清单关联(用于清点 Amazon Web Services 账户 中的所有节点),您必须使用 SSM Agent 版本 2.0.790.0 或更高版本。您可以在 Managed Instances(托管式实例)页面的 Agent version(代理版本)列中查看各个节点上运行的代理版本。有关如何在节点上更新 SSM Agent 的信息,请参阅 使用 Run Command 更新 SSM Agent。
Skipped
如果某个节点的清单关联状态显示为跳过,则意味着该节点已经有更高优先级清单关联在运行。当多个清单关联可能应用于同一个托管节点时,Systems Manager 会遵循特定的优先顺序。
清单关联优先顺序
Systems Manager 按照以下优先顺序应用清单关联:
-
Quick Setup清单关联:使用 Quick Setup 和统一控制台创建的关联。这些关联的名称以
AWS-QuickSetup-SSM-CollectInventory-
开头,并以所有托管节点为目标。 -
显式清单关联:使用以下方法,以特定托管节点为目标的关联:
-
实例 ID
-
标签键值对
-
Amazon 资源组
-
-
全局清单关联:以所有托管节点为目标(使用
--targets "Key=InstanceIds,Values=*"
),但并非通过 Quick Setup 创建的关联。
常见场景
场景 1:Quick Setup 关联优先于显式关联
-
您拥有一个以所有实例为目标的清单关联 Quick Setup
-
您通过标签创建一个以特定托管节点为目标的手动关联
-
结果:手动关联显示为
Skipped
,详细状态为OverriddenByExplicitInventoryAssociation
-
该 Quick Setup 关联继续从所有实例收集清单
场景 2:显式关联优先于全局关联
-
您拥有一个以所有实例为目标的全局清单关联(并非通过 Quick Setup 创建)
-
您创建一个以特定实例为目标的关联
-
结果:对于特定的目标实例,全局关联显示
Skipped
-
显式关联运行在目标实例上
解决步骤
如果您想使用自己的清单关联而非 Quick Setup:
-
识别 Quick Setup 关联:在 Systems Manager 控制台中,转至 State Manager 并查找名字以
AWS-QuickSetup-SSM-CollectInventory-
开头的关联。 -
删除 Quick Setup 配置:
-
转至 Systems Manager 控制台中的 Quick Setup。
-
查找清单收集配置。
-
删除 Quick Setup 配置(这将移除已关联的清单关联)。
注意
无需手动删除通过 Quick Setup 创建的关联。
-
-
验证关联是否运行:删除 Quick Setup 配置后,显式清单关联应该已成功开始运行。
如果您要修改现有行为:
-
要查看现有所有清单关联,请在 Systems Manager 控制台中选择 State Manager,然后找到使用
AWS-GatherSoftwareInventory
SSM 文档的关联。 -
请谨记,每个托管节点一次只能有一个活动的清单关联。
重要
-
当为跳过的节点分配的(更高优先级)清单关联运行时,仍会从跳过的节点收集清单数据。
-
Quick Setup 清单关联优先于其他所有类型,即使是具有显式目标的类型。
-
当任何关联被更高优先级的关联覆盖时,无论关联类型如何,都会显示详细的状态消息
OverriddenByExplicitInventoryAssociation
。
失败
如果某个节点的清单关联状态显示 Failed(失败),则意味着节点上分配了多个清单关联。一个节点一次只能分配一个清单关联。清单关联使用 AWS-GatherSoftwareInventory
Amazon Systems Manager 文档(SSM 文档)。可以使用 Amazon Command Line Interface (Amazon CLI) 运行以下命令来查看节点的关联列表。
aws ssm describe-instance-associations-status --instance-id
instance-ID
Amazon EC2 实例的库存合规性失败
如果为 Amazon Elastic Compute Cloud (Amazon EC2) 实例分配多个库存关联,则该实例的库存合规性可能会失败。
要解决此问题,请删除分配给实例的一个或多个库存关联。有关更多信息,请参阅删除关联。
注意
如果您为一个托管式节点创建多个清单关联,请注意以下行为:
-
可为每个节点分配一个以所有节点为目标的清单关联 (--targets "Key=InstanceIds,Values=*")。
-
还可以为每个节点分配一个特定关联,该关联使用标签键-值对或 Amazon 资源组。
-
如果为某个节点分配了多个清单关联,则对于尚未运行的关联,状态将显示为 Skipped(已跳过)。最近运行的关联将显示清单关联的实际状态。
-
如果为某个节点分配了多个清单关联,并且每个关联都使用标签键 - 值对,则这些清单关联将因标签冲突而无法在该节点上运行。关联仍会在没有标签键 - 值冲突的节点上运行。
S3 存储桶对象包含旧数据
清单关联成功并发现新数据后,Amazon S3 存储桶对象中的数据将会更新。关联运行但失败时,每个节点的 Amazon S3 存储桶对象都会更新,但在这种情况下,对象内的数据不会更新。只有当关联成功运行时,Amazon S3 存储桶对象内的数据才会更新。清单关联失败时,将在 Amazon S3 存储桶对象中看到旧数据。