AWS-Systems-Manager

AWS環境外のサーバをSSMを使って管理してみた

前置き

ども、安田です。
今回は、かなり便利なAWS Systems Manager(SSM)の
ハイブリッドアクティベーション機能についてアウトプットします。

ハイブリッドアクティベーションとは

AWS Systems Managerを通じて、オンプレミスや他クラウドのサーバーやVMを
「マネージドインスタンス」としてAWS内で一元管理する仕組みです。
AWS EC2と同様にRun Commandやパッチ管理、インベントリ収集、監視などが可能になります。
公式情報

オンプレ環境への制限事項

  1. アウトバウンド通信の許可
    オンプレミス環境のサーバーは、AWS Systems Managerと通信するためにアウトバウンド通信が許可されている必要があります。

やってみた

  1. ハイブリッドアクティベーションを作成(AWS側でアクティベーションコードを取得)
  2. SSMエージェントをインストール(VM側でエージェントをインストール)
  3. VMの登録(アクティベーションコードを使用して登録)
  4. VMの管理(AWS Systems Managerから管理・操作)

1. ハイブリッドアクティベーションの作成

AWSマネジメントコンソールでアクティベーションを作成します。
左側のメニューから「ハイブリッドアクティベーション」を選択し、「アクティベーションの作成」をクリックします。

以下の情報を入力します。

  • アクティベーションの説明: アクティベーションの説明を記載
  • IAMロール: システムによって作成されたデフォルトのロール
    ※ブログではデフォルトのロールを使用しますが、監視をCloudWatchで行いたい場合など、要件に応じてカスタマイズ可能です。その場合は適用するロールに「AmazonSSMManagedInstanceCore」のIAMポリシーを含めてください。
  • インスタンスの数: 登録したいVMの数を指定します(例:5台など)。
  • 有効期限: アクティベーションコードの有効期限を指定します(デフォルトは30日間)。
  • デフォルトのインスタンス名: 登録されたVMに割り当てるインスタンス名

情報を入力し「作成」をクリックすると、アクティベーションコードとアクティベーションIDが生成されます。
これらは後で使用するので、メモしておいてください。

2. SSMエージェントをインストール(VM側でエージェントをインストール)

各OSごとのマニュアルはAWS公式ドキュメントを参照してください。

以下はLinux環境での例です。

[root@HybridActivations ~]# sudo dnf install -y https://s3.amazonaws.com/ec2-downloads-windows/SSMAgent/latest/linux_amd64/amazon-ssm-agent.rpm
[root@HybridActivations ~]# sudo systemctl status amazon-ssm-agent

SSMエージェントのステータスがactive (running)になっていることを確認します。

● amazon-ssm-agent.service - amazon-ssm-agent
   Loaded: loaded (/etc/systemd/system/amazon-ssm-agent.service; enabled; vendor preset: disabled)
   Active: active (running) since Mon 2024-09-30 00:45:29 EDT; 5s ago

3. VMの登録(アクティベーションコードを使用して登録)

以下のコマンドでVMをAWSに登録します。

sudo amazon-ssm-agent -register -code <ActivationCode> -id <ActivationID> -region <AWSRegion>


登録後、AWS Systems ManagerにVMがマネージドインスタンスとして表示されます。

4. VMの管理(AWS Systems Managerから管理・操作)

AWS Systems Managerのセッションマネージャーから対象ノードに接続できるようになります。

また、必要なポリシーを追加すれば、Patch Managerによるパッチ管理なども可能です。

感想

今回、ハイブリッドアクティベーションを試してみたところ、思ったよりも手順自体はシンプルで、特にAWS Systems Managerコンソールを使った操作が直感的にできたのは助かりました。
良かった点としては、一度マネージドインスタンスとして登録さえしてしまえば、あとはAWS環境内のEC2と同じように、リモート操作や監視、パッチ管理ができることです。特に、既存のスクリプトや設定をそのまま使えるのは効率的で大規模なオンプレ環境でも活用できそうです。

返信を残す

メールアドレスが公開されることはありません。 が付いている欄は必須項目です

CAPTCHA