前書
AWSのSystems Managerのセッションマネージャー機能はあまりにも便利すぎで、個人的にはそのサービスが大好きです!!
SSM Agentさえサーバー内にインストールしておけば、アウトバウンド通信がAWS側のSystems Managerとの疎通がさえできていれば、Systems Manager機能がフル活用することができます。
なので、GCP側のGCEにSSM Agentをインストールし、AWSのSystems Managerのセッションマネージャー機能から利用してみました!
1.AWS側でアクティベーション作成
まず、Systems Mangaer側にSystems Manager
-> ハイブリッドアクティベーション
-> アクティベーションの作成
を作成します。
生成されたActivation Code
とActivation ID
はメモっておいてください
2.GCE側で実装
まずGCEを作成します。今回私はUbuntuのGCEを作成しました。
UbuntuインスタンスにSSHでログインして、以下のコマンドを実行します。
なお、下記コード中のactivation-code
、activation-id
はそれぞれ上記メモって置いた情報を置換してください。region
にはAWSのSystems Managerが利用しているリージョンを記入してください。
mkdir /tmp/ssm
curl https://s3.amazonaws.com/ec2-downloads-windows/SSMAgent/latest/debian_amd64/amazon-ssm-agent.deb -o /tmp/ssm/amazon-ssm-agent.deb
sudo dpkg -i /tmp/ssm/amazon-ssm-agent.deb
sudo service amazon-ssm-agent stop
sudo -E amazon-ssm-agent -register -code "activation-code" -id "activation-id" -region "region"
sudo service amazon-ssm-agent start
参考URL:
3.AWS側でセッションマネージャーでログイン
上記のコマンド実行完了後に、アクティベーションの登録済みインスタンス
が1
に変更したことを確認します。
セッションマネージャー側で、GCP側のインスタンスを選択の上、セッションを開始します。
その他
プライベートキーのローテーションもサポートされているので、下記の手順を参考の上設定していただけます。