Raspberry Pi を AWS Systems Manager のマネージドノードとして登録

セットアップ

ハイブリッド環境で AWS Systems Manager を設定する の手順を参考にセットアップをおこなう。

SSM Agent のインストール

SSM Agent をダウンロード

curl https://s3.ap-northeast-1.amazonaws.com/amazon-ssm-ap-northeast-1/latest/debian_arm64/amazon-ssm-agent.deb \
    -o /tmp/amazon-ssm-agent.deb

32bit 版の場合

curl https://s3.ap-northeast-1.amazonaws.com/amazon-ssm-ap-northeast-1/latest/debian_arm/amazon-ssm-agent.deb \
    -o /tmp/amazon-ssm-agent.deb

インストール

sudo dpkg -i /tmp/amazon-ssm-agent.deb

アクティベーション

参考) ステップ 3: ハイブリッド環境用のマネージドインスタンスのアクティベーションを作成

アクティベーションを作成する

管理コンソールからおこなう場合

  • AWS Systems Manager > ノード管理 > ハイブリッドアクティベーション > アクティベーションを作成する
  • 必要に応じて設定を入力し「アクティベーションの作成」

AWS CLI でおこなう場合

aws ssm create-activation \
    --iam-role service-role/AmazonEC2RunCommandRoleForManagedInstances \
    | jq -r "\"ACTIVATION_ID=\" + .ActivationId + \"\\nACTIVATION_CODE=\" + .ActivationCode"

アクティベーションを実行

出力された ID /コードを使って、ノード上で以下を実行することでアクティベーションを実行をおこなう。

ACTIVATION_ID=XXXXXXXX-XXXX-XXXX-XXXX-XXXXXXXXXXXX
ACTIVATION_CODE=XXXXXXXXXXXXXXXXXXXX
sudo amazon-ssm-agent -register -region "ap-northeast-1" \
    -code "${ACTIVATION_CODE}" -id "${ACTIVATION_ID}"
sudo systemctl start amazon-ssm-agent

アクティベーションを解除するには

sudo amazon-ssm-agent -register -clear

設定

ノードに名前をつける。

INSTANCE_ID=mi-XXXXXXXXXXXXXXXXX
NODE_NAME=(ノード名)
aws ssm add-tags-to-resource \
    --resource-type "ManagedInstance" \
    --resource-id "${INSTANCE_ID}" \
    --tags "Key=Name,Value=${NODE_NAME}"