【AWS】自作AMIからEC2インスタンス作成後、ネットワークに繋がらなった時に試したこと

AMIからEC2インスタンスをいくつも作れるのは便利ですが、作成後にネットワークにつながらない為、該当のEC2インスタンスにSSH接続も出来ずに詰みかけたことがありました。
ネットワークが繋がるよう対処した時のログを残しておきます。

環境:

  • OS:CentOS 7.9-2009

SSH接続が出来ず何も操作が出来ない為、AWSコンソールでシリアルコンソールでマシンを操作します。

EC2 > インスタンス > 該当のインスタンスを選択 > アクション > モニタリングとトラブルシューティング > EC2 シリアルコンソール

インスタンスによっては以下のように権限不足の警告が出ることがありますが、Manage accessから権限を付与してやることでアクセスが可能となります。
試した中では、t3系のインスタンスタイプだと権限不足、m5系だと権限がありました。

シリアルコンソールを起動すると、以下のようなログが大量に流れます。

169.254.169.254 はAWSが用意しているメタデータを取得するサーバです。
参考:インスタンスメタデータの取得
このサーバに接続が出来ないというエラーが頻発していました。

その後、

といった具合に、ネットワークでエラーのログが出ます。

詳細を見るならステータスを確認しろ、と言われたので確認、ついでにIPアドレスも確認してみます。

ネットワークに異常がありサービスが起動できず、プライベートIPアドレスも付与されていませんでした。

そこで、ネットワークの設定ファイルを開き、設定を変更します。
今回はインタフェース名が eth0 なので、対象は ifcfg-eth0 というファイル名となります。

中身は以下のようになっていました(HWADDR辺りは環境により異なります)。

結論、今回はMACアドレスが悪さをしていたので、この設定をばっさり削除してしまいます。
HWADDRのある5行目を行ごと削除し、以下のようにします。

その後ネットワークサービスを再起動し、状態を確認します。

問題なくサービスが起動し、プライベートIPアドレスが付与されました。
AWSコンソール側でElasticIPを付与していると外部からSSH接続が可能となります。

シェア: