【AWS CLI】SSM関連の情報取得編

記事タイトルとURLをコピーする

こんにちは。AWS CLIが好きな福島です。

はじめに

今回は、SSM関連の情報を取得する方法をご紹介いたします。

利用するコマンド,サブコマンド

まず、AWS CLIの構造は以下の通りです。

aws <command> <subcommand> [options and parameters]

上記を前提に今回使う <command>,<subcommand>は、以下の通りです。

<command>

  • ssm

<subcommand>

  • describe-instance-information
    Managed Nodesの情報を取得できます。

describe-instance-information

①ResourceType,InstanceId

  • コマンド
aws ssm describe-instance-information --query "InstanceInformationList[].[ResourceType,InstanceId]" --output text
  • 実行例
EC2Instance     i-0e08c017a1ba06549
EC2Instance     i-0808672558492fde8

②①+PingStatus

  • コマンド
aws ssm describe-instance-information --query "InstanceInformationList[].[ResourceType,InstanceId,PingStatus]" --output text
  • 実行例
EC2Instance     i-0e08c017a1ba06549     Online
EC2Instance     i-0808672558492fde8     Online

③①+AgentVersion,IsLatestVersion

  • コマンド
aws ssm describe-instance-information --query "InstanceInformationList[].[ResourceType,InstanceId,AgentVersion,IsLatestVersion]" --output text
  • 実行例
EC2Instance     i-0e08c017a1ba06549     3.1.338.0       False
EC2Instance     i-0808672558492fde8     3.1.459.0       False

④①+PlatformType,PlatformName,PlatformVersion

  • コマンド
aws ssm describe-instance-information --query "InstanceInformationList[].[ResourceType,InstanceId,PlatformType,PlatformName,PlatformVersion]" --output text
  • 実行例
EC2Instance     i-0e08c017a1ba06549     Windows Microsoft Windows Server 2016 Datacenter        10.0.14393
EC2Instance     i-0808672558492fde8     Linux   Amazon Linux    2

⑤①+IPAddress,ComputerName

  • コマンド
aws ssm describe-instance-information --query "InstanceInformationList[].[ResourceType,InstanceId,IPAddress,ComputerName]" --output text
  • 実行例
EC2Instance     i-0e08c017a1ba06549     10.88.1.187     EC2AMAZ-4HMOOO0.WORKGROUP
EC2Instance     i-0808672558492fde8     10.88.0.59      ip-10-88-0-59

⑥①~⑤全て

  • コマンド
aws ssm describe-instance-information --query "InstanceInformationList[].[ResourceType,InstanceId,PingStatus,AgentVersion,IsLatestVersion,PlatformType,PlatformName,PlatformVersion,IPAddress,ComputerName]" --output text
  • 実行例
EC2Instance     i-0e08c017a1ba06549     Online  3.1.338.0       False   Windows Microsoft Windows Server 2016 Datacenter        10.0.14393      10.88.1.187     EC2AMAZ-4HMOOO0.WORKGROUP
EC2Instance     i-0808672558492fde8     Online  3.1.459.0       False   Linux   Amazon Linux    2       10.88.0.59      ip-10-88-0-59

⑦AssociationStatus関連

  • コマンド
aws ssm describe-instance-information --query \
"InstanceInformationList[].\
[ResourceType,\
InstanceId,\
PlatformType,\
AssociationStatus,\
AssociationOverview.DetailedStatus,\
AssociationOverview.InstanceAssociationStatus.AggregatedCount.Success,\
AssociationOverview.InstanceAssociationStatusAggregatedCount.Failed,\
LastAssociationExecutionDate,\
LastSuccessfulAssociationExecutionDate]" \
--output text | tr "\t" "?" | column -s? -t
  • 実行例
EC2Instance  i-0e08c017a1ba06549  Windows  Failed   ErrorThresholdExceeded  None  1     2021-11-29T16:18:16.462000+09:00  None
EC2Instance  i-0808672558492fde8  Linux    Success  ErrorThresholdExceeded  None  None  2021-11-29T16:18:04.502000+09:00  2021-11-29T16:18:04.502000+09:00

終わりに

今回は、SSM関連の情報取得を出力するコマンドをご紹介いたしました。 どなたかのお役に立てれば幸いです。

福島 和弥 (記事一覧)

2019/10 入社

AWS CLIが好きです。

AWS資格12冠。2023 Japan AWS Partner Ambassador/APN ALL AWS Certifications Engineer。