RHEL 7 または CentOS 7 を実行する Amazon EC2 インスタンスに静的ホスト名を割り当てる方法を教えてください。
最終更新日: 2020 年 11 月 13 日
Amazon Elastic Compute Cloud (Amazon EC2) インスタンスのホスト名を変更しました。ただし、インスタンスを再起動するか停止してから起動すると、ホスト名が元に戻ります。ホスト名を永続化するにはどうすればよいですか?
簡単な説明
EC2 インスタンスの再起動または停止および起動時にホスト名が保持されるようにするには、インスタンス上の適切な設定ファイルにホスト名を追加します。
注: RHEL 7 または CentOS 7 には以下の手順が適用されます。他のディストリビューションに適用される手順については、次のいずれかを参照してください。
RHEL 5 もしくは 6、CentOS 5 もしくは 6、または Amazon Linux を実行する Amazon EC2 インスタンスに静的ホスト名を割り当てるにはどうすればよいですか?
SLES を実行している Amazon EC2 インスタンスに静的ホスト名を割り当てるにはどうすればよいですか?
Ubuntu Linux を実行している Amazon EC2 インスタンスに静的ホスト名を割り当てるにはどうすればよいですか?
解決方法
1. シェルから hostnamectl コマンドを実行して、RHEL 7 または CentOS 7 Linux インスタンスのホスト名を更新します。persistent-hostname をインスタンスで使用する名前に置き換えます。
sudo hostnamectl set-hostname --static persistent-hostname
注: hostnamectl コマンドを使用してホスト名を変更しても、/etc/hosts ファイルは更新されません。ただし、必要に応じて、このファイルを手動で編集して新しいホスト名を追加することができます。
2. vi テキストエディタを使用して、RHEL 7 または CentOS 7 の Linux インスタンスの /etc/cloud/cloud.cfg ファイルを更新します。vi エディターの使用に関する一般情報については、コマンドシェルからコマンド info vi を実行してください。
注: RHEL 7.4 以降を実行しているインスタンスの場合は、この手順を省略してください。
sudo vi /etc/cloud/cloud.cfg
3. /etc/cloud/cloud.cfg ファイルの最後に次の文字列を追加して、再起動される前に新しいホスト名を保持するようにします。
preserve_hostname: true
vi エディタを保存して終了します。
4. reboot コマンドを実行して EC2 インスタンスを再起動し、新しいホスト名をインスタンスに関連付けます。
sudo reboot
5. パラメータを指定せずに Linux hostname コマンドを実行して、以下のようにホスト名の変更が持続したことを確認します。
hostname
コマンドは、ステップ 1 で指定した新しいホスト名を返します。
注: /etc/hosts ファイル、hostname ファイル、または hostname ユーティリティに影響するシステムアップデートをインストールした場合は、これらの手順をもう一度実行する必要があります。