edit-icon download-icon

時間設定:NTP サーバーを同期し Linux インスタンスのタイムゾーンを変更する

最終更新日: Apr 23, 2019

ECS (Elastic Compute Service) インスタンスでは、時間とタイムゾーンを同期させることが重要です。たとえば、データベースの更新時に時間が正確でないと、ビジネスに重大な影響を及ぼす可能性があります。インスタンスでのビジネスの中断やネットワークリクエストエラーを回避するには、Asia/ShanghaiAmerica/Los Angeles など、同じタイムゾーンに 1 つ以上のインスタンスを設定する必要があります。ECS インスタンスの現在のデフォルトタイムゾーンは、すべてのリージョンで CST (中国標準時) です。

さらに、NTP (Network Time Protocol) サービスは、インスタンスが標準時間と同期することを保証しています。次の手順に従って、ECS インスタンスのタイムゾーンを変更し、NTP サービスを設定してください。

Linux インスタンスのタイムゾーンを変更する

CentOS 6.5 を例にして、設定ファイルを編集し、タイムゾーンを変更する方法を説明します。

注意:インスタンスのタイムゾーンを変更した後は、インスタンスのリアルタイムクロック (RTC) を更新するために、常に hwclock -w を実行してください。

root ユーザーだけがタイムゾーン設定ファイルを開き、編集することができるため、ここでは、sudo コマンドを使用します。

  1. Linux インスタンスに 接続 します。

  2. インスタンスのローカルタイムを削除するために、 sudo rm /etc/localtime を実行します。

  3. 任意。ls /usr/share/zoneinfo を実行して使用可能なタイムゾーンのリストを照会します。たとえば、Shanghai もその一つです。

  4. sudo vi /etc/sysconfig/clock を実行して、設定ファイル /etc/sysconfig/clock を編集します。

  5. i を入力して、タイムゾーンと都市を追加します 。たとえば、Zone=Asia/Shanghai を追加します。[Esc] を押して編集を終了し、 :wq を入力して保存し、終了します。

  6. sudo ln -sf /usr/share/zoneinfo/XXXX/XXXXXXX /etc/localtime を実行して、タイムゾーンの変更を更新します。たとえば sudo ln -sf /usr/share/zoneinfo/Asia/Shanghai /etc/localtime を実行します。

  7. hwclock -w を実行して RTC を更新します。

  8. sudo reboot を実行して、インスタンスを再起動します。

  9. date -R を実行して、新しいタイムゾーンが有効かどうかを確認します。有効でない場合は、前の手順を繰り返します。

NTP サービスを設定する

Linux インスタンスでは、NTP サービスを同期させるための 2 つの方法である ntpdatentpd が用意されています。ntpdate は即時更新を強制するために使用でき、ntpd は段階的な方法として使用できます。ntpdate サービスは、新しいインスタンスに使用できますが、ntpd はビジネスを実行しているインスタンスに対して使用することを推奨します。このセクションでは、標準 NTP サービスとカスタム NTP サービスの設定について説明します。

前提条件

NTP サービスの通信ポートは、 UDP 123 です。サービスを設定する前に、UDP ポート123 が有効になっていることを確認してください。Linux インスタンスで netstat -nupl を使って、UDP ポート 123 が有効かどうかを確認できます。詳細については、「セキュリティグループルールの追加」をご参照ください。

標準 NTP サービスを設定する

  1. Linux インスタンスに 接続 します。

  2. sudo service ntpd start を実行して NTP サービスを実行します。

  3. chkconfig ntpd on を実行して NTP サービスを有効にします。

  4. ntpstat を実行して、NTP サービスが有効かどうかを確認します。

  5. 任意。ntpq -p を実行して、NTP サービスピアのリストを表示します。

  6. 任意。sudo chkconfig --list ntpd を実行して、NTP サービスの実行レベルを表示します。

カスタム NTP サービスを設定する

  1. Linux インスタンスに 接続 します。

  2. sudo vi /etc/ntp.conf を実行して、NTP サービス設定ファイルを編集します。

  3. ntp server XXXX iburst に関する情報を見つけたら、i を入力してファイルの編集を開始します。現在必要でない NTP サーバーは、行の先頭に (#) を追加して、非表示にできます。

  4. server XXXX iburst の形式で NTP サーバー情報の新しい行を追加します。XXXX はカスタム NTP エンドポイントです。編集後、[Esc] を押し、:wq を入力して保存し、終了します。

  5. sudo service ntpd start を実行して、カスタマイズされた NTP サービスを有効にします。

  6. chkconfig ntpd on を実行して NTP サービスを有効にします。

  7. ntpstat を実行して、NTP サービスが有効かどうかを確認します。