前提

・AWS CLIがインストールされて、初期設定が完了できていること
・実行OS:RedhatLinux 8.2
・EC2AutoScaling起動用OS:RedhatLinux 8.2

現象

Redhat Linux 8.2 をEC2AutoScalingグループのCloudFormationテンプレートでメタデータV2だけを有効するとssh接続ができなくなる。AWSに問い合わせしてその回答により検証した結果を備忘録として記載したいと思います。
インスタンスのメタデータV2だけを有効する方法を下記の記事を参考

インスタンスのメタデータV2だけを有効する方法
「CloudFormationを使ってLaunchTemplateでEC2を起動する場合」

原因

原因は、Redhat Linux 8.2にインストールされているcloud-initのバージョンが古かった。

解決方法

cloud-initのバージョン確認

コマンド:
cloud-init –version

実行結果:
/usr/bin/cloud-init 18.5

cloud-initの更新可能なバージョン確認

コマンド:
yum check-update | grep cloud-init

実行結果:
cloud-init.noarch      19.4-11_e18_3.3        rhel-8-appstream-rhui-rpms

更新

コマンド:
yum update cloud-init

下記の確認メッセージが表示されたら、[y]を入力し、Enterキーを押下する。

これでよろしいですか?[y/N]:y

インストール完了後、再度cloud-initのバージョン確認

コマンド:
cloud-init –version

実行結果:
/usr/bin/cloud-init 19.4

新バージョンのcloud-initが入った状態でAMIを作成する。

新規AMIでAutoScalingを起動するとssh接続できるようになりました。

参考

AWS CloudFormationでEC2AutoScalingを作成してみました(CLI)

まとめ

メタデータV2だけを有効するとssh接続ができなくなるという現象が発生して、Googleで検索してみましたが、関連の結果が出ませんでした。AWSサポートに問い合わせして、解決できるました。

Googleで検索しても分からない場合、AWSサポートを利用しましょう。

+2
Last modified: 2021-05-30

Author