Techniical-support

EC2インスタンスでプライベートIPアドレスを引き継いでみる

皆さんこんにちは。構築担当の川合です。

前回、新規作成するEC2インスタンスに指定のプライベートIPアドレスを割り当てる方法について記事にさせてもらいました。
今度は、指定して割り当てたプライベートIPアドレスを別のEC2インスタンスに引き継ぐ方法を記事にしたいと思います。

概要

障害が発生したりして元々のインスタンスが利用出来なくなり、バックアップなどから復元したインスタンスに同じプライベートIPアドレスを引き継ぎたいという事はよくあるかと思います。

先日CentOS6系がサポート切れとなりましたが、サーバのリプレイス時にIPアドレスを引き継いで切り替え作業を楽にしたいという理由もあるかと思います。

パブリックIPアドレスは、Elastic IPを付与していれば付け替えすることで同じパブリックIPアドレス引き継ぐ事が可能です。
けれど、プライベートIPアドレスはそのままでは引き継ぐ事は出来ません。
※関連付けを解除して、新しいプライベートIPで再度関連付ける場合

ですが、ちゃんと事前に準備しておけばプライベートIPアドレスをきちんと引き継ぐ事は可能です。

準備

プライベートIPアドレスは、通常EC2インスタンスを削除しない限り解放されません。

起動中であったり、停止中であったりしても基本的に新しいEC2インスタンスに同じプライベートIPアドレスを付与しようとすると以下の画像のようにエラーになって作成することが出来ません。

ではどこでプライベートIPアドレスの情報を管理しているかと言うと、以下のようにENIがIPアドレスの情報を管理しています。

通常はEC2インスタンスが削除されるタイミングで一緒にENIが削除されるようになっています。
その為、EC2インスタンスを削除すると一緒にENIが削除されプライベートIPアドレスが開放される仕組みになっています。

上記のENIを削除されないように設定を変更することで新規EC2インスタンス作成時にENIの情報を引き継いで作成することが可能になります。

注意点としては、ENIを引き継ぐと合わせてセキュリティグループの設定も引き継ぎます。
その為、IPアドレスは同じだけれど別の用途に新しいEC2インスタンスを使うのであればセキュリティグループの再割り当てが必要になるため注意が必要です。
※EC2インスタンスによってポート開放を制御している場合などは、セキュリティグループを引き継いでしまうとインスタンスに接続出来なくなる場合があります

動作確認

まず画像の通りENIがEC2インスタンス削除時に一緒に削除されないように設定を変更します。
これでEC2インスタンスを削除してもENIはそのまま削除されずに残ります。

では、元々のEC2インスタンスを削除してみて、削除後にENIが残っていることを確認します。
これでIPアドレスを引き継ぐ準備は整いました。

では、新しいEC2インスタンスの作成を進めます。
以下の画面にて画像の通りENIが選択出来るようになっています。

このENIを選択してインスタンスを作成すれば、プライベートIPアドレスを引き継いで新しいインスタンスを作成することが可能です。

Elastic IPと組み合わせると

Elastic IPは、パブリックIPアドレスとプライベートIPアドレスを関連付けています。
プライベートIPはENIが管理しているので、ENIとも関連しています。

通常は、EC2インスタンスを削除してENIが削除されてしまうとElastic IPもプライベートIPとの関連付けが解除されます。
ですが、ENIが削除されないように設定を変更するとElastic IPとの関連付けが残ったままになります。

その為、上記の手順でElastic IPと関連付いているENIを選択すれば、そのまま新しいインスタンスにElastic IPが設定されてEC2インスタンスが作成されます。
※インスタンスが作成されたタイミングでEIPも設定されていました

まとめ

前回に引き続きプライベートIPアドレスの引き継ぎ関連の内容を記事にしてみました。
Elastic IPでパブリックIPアドレスを引き継ぐこともできますが、このようにプライベートIPも一緒に引き継ぐことが出来る事が確認できました。

CMSなどで設定ファイルにプライベートIPアドレスを記載していたりする場合は特に役立つかと思います。

もし、パブリックIPアドレスを引き継ぐだけでなくプライベートIPも引き継ぐ必要があればこのように実施してみたいと思います。

返信を残す

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

CAPTCHA