すべてのプロダクト
Search
ドキュメントセンター

Elastic Compute Service:時刻同期サービスの管理

最終更新日:Aug 22, 2024

インスタンスがスケジュールされたタスクを時間通りに実行し、正しいログタイムスタンプを記録する必要がある場合など、さまざまなシナリオでElastic Compute Service (ECS) インスタンスにとって、時間の正確性と一貫性は重要です。 ECSインスタンスでビジネスが実行されているときに発生するデータの不整合、脆弱性、ビジネス障害を防ぐため、Alibaba CloudはNTP (Network time Protocol) に基づく時刻同期サービスを提供し、インスタンス時刻の正確性を確保しています。

時刻同期サービス

時刻同期サービスは、ECSインスタンスの時刻をNTPサーバーに同期して、ECSインスタンスの時刻が正確であることを保証します。 時刻同期サービスは、NTPを使用して実装されます。 デフォルトでは、ECSインスタンスはchronyまたはNTPを実行して時刻を同期します。

詳細については、このトピックの「chrony and NTP」および「Alibaba Cloud NTPサーバーのドメイン名」をご参照ください。

時刻同期サービスの管理

Alibaba Cloudパブリックイメージには、デフォルトの時刻同期設定が含まれています。 パブリックイメージから作成されたECSインスタンスは、時間同期を実装するためにchronyまたはNTPを実行します。 ほとんどの場合、時刻同期サービスに介入する必要はありません。

次の手順を実行して、既存のECSインスタンスで時刻同期サービスが期待どおりに機能するかどうかを確認できます。 その後、ビジネス要件に基づいて関連する操作を実行できます。

  1. ECSインスタンスがchronyまたはNTPを実行しているかどうかを確認します。 詳細については、このトピックの「ECSインスタンスによって実行される時刻同期サービスの表示」をご参照ください。

  2. 次の操作を実行して、時刻同期サービスが期待どおりに実行されるかどうかを確認します。 時刻同期サービスが期待どおりに実行される場合、関連する設定を変更する必要はありません。 ビジネスに時間依存性がある場合は、ビジネス要件に基づいて設定を変更できます。

時刻同期サービスのステータスを表示し、関連する設定を変更する必要があるかどうかを確認します

ECSインスタンスによって実行される時刻同期サービスの表示

次のコマンドを実行して、ECSインスタンスによって実行されている時刻同期サービスを表示します。 ECSインスタンスがNTPを実行しているが、ビジネスがNTPに依存していない場合は、chronyを使用することを推奨します。

sudo ps aux | grep -E "ntpd|chronyd"
  • ECSインスタンスがchronyを実行すると、次の図に示す出力が返されます。

    image

  • ECSインスタンスがNTPを実行すると、次の図に示す出力が返されます。

    説明

    NTPは、ECSインスタンスのCentOS 6イメージなど、以前の特定のバージョンのイメージに対して設定されています。 NTPは、NTPコミュニティによって維持されなくなりました。 あなたのビジネスがNTPに依存していない場合は、chronyを使用することをお勧めします。

    image

現在の時刻が正確かどうかを確認する

コマンドを実行して、現在の時刻が正確かどうかを確認します。 このコマンドは、ECSインスタンスによって実行される時刻同期サービスによって異なります。 chronyとNTPは、時間ジャンプのリスクを避けるために時間を徐々に調整します。 ビジネスでインスタンスの現在時刻を正確にする必要がある場合は、時刻同期を実行します。 詳細については、このトピックの「手動時刻同期の設定」をご参照ください。

chrony

次のコマンドを実行して、システム時刻オフセット、システム時刻の安定性、前回の時刻同期が実行された時刻など、現在の時刻同期ステータスに関する情報を表示します。 システム時間の値を表示することで、現在の時刻が正確かどうかを評価できます。

sudo chronyc tracking

サンプルコマンド出力:

image

NTP

次のコマンドを実行して、設定されたNTPサーバーと対応するステータスインジケータに関する情報を表示します。 コマンド出力では、offsetパラメーターは、NTPサーバー時刻とインスタンスのローカル時刻の差を示します。

sudo ntpq -p

サンプルコマンド出力:

image

時刻同期サーバーのアドレスを変更する必要があるかどうかを確認する

コマンドを実行して、設定された時刻同期サーバーを表示します。 このコマンドは、ECSインスタンスによって実行される時刻同期サービスによって異なります。 時刻同期サーバーの設定方法については、このトピックの「NTPサーバーアドレスの設定」をご参照ください。

chrony

cat /etc/chrony.conf

コマンド出力では、server <NTP server> minpoll 4 maxpoll 10 iburstは、設定された時刻同期サーバーを示します。

NTP

cat /etc/ntp.conf

コマンド出力では、server <NTP server> iburst minpoll 4 maxpoll 10は、設定された時刻同期サーバーを示します。

時刻同期サービスの設定

手動時刻同期の設定

デフォルトでは、ECSインスタンスで実行されるchronyまたはNTPは、時間ジャンプのリスクを回避するために時間を徐々に調整します。 手動で時刻を同期しないことを推奨します。 ビジネスで手動の時刻同期が必要な場合は、次の手順を実行します。

  1. ECSインスタンスによって実行される時刻同期サービスを表示します。 詳細については、このトピックの「ECSインスタンスによって実行される時刻同期サービスの表示」をご参照ください。

  2. 時刻同期サービスに基づいてコマンドを実行し、インスタンスの時刻を同期します。

    chrony

    sudo chronyc makestep

    chronyが時間同期を完了するために使用される場合、200 OKが返される。

    image

    NTP

    重要

    NTPは、NTPコミュニティによって維持されなくなりました。 ntpdateコマンドを実行して時刻同期を実行すると、時刻ジャンプが発生する可能性があります。 このコマンドを実行する必要がある場合は、ntpdateコマンドで少なくとも3つのクロックソースを指定して、時間のジャンプを防ぎます。 Alibaba Cloud NTPサーバーの詳細については、このトピックの「Alibaba Cloud NTPサーバーのドメイン名」をご参照ください。

    • 仮想プライベートクラウド (VPC) にあるインスタンスのサンプルコマンド:

      sudo ntpdat e ntp.cloud.aliyuncs.com ntp7.cloud.aliyuncs.com ntp10.cloud.aliyuncs.com ntp11.cloud.aliyuncs.com ntp12.cloud.aliyuncs.com
    • クラシックネットワークに存在するインスタンスのサンプルコマンド:

      sudo ntpdat e ntp1.cloud.aliyuncs.com ntp2.cloud.aliyuncs.com ntp3.cloud.aliyuncs.com ntp4.cloud.aliyuncs.com ntp5.cloud.aliyuncs.com

NTPサーバーアドレスの設定

ビジネスに特別な要件がない場合は、NTPサーバーアドレスを変更する必要はありません。 ビジネスで特定の時刻同期サーバーが必要な場合は、ECSインスタンスで実行される時刻同期サービスに基づいてNTPサーバーアドレスを設定します。 Linuxインスタンスによって実行される時刻同期サービスを表示する方法については、このトピックの「ECSインスタンスによって実行される時刻同期サービスの表示」をご参照ください。

chronyを実行するLinuxインスタンス

CentOS 7またはAlibaba Cloud Linux 2以降を実行するインスタンスは、chronyを使用して時間を同期します。 chronyはシステム時間をより速くより正確に同期させます。 これにより、インスタンスと時刻同期サーバー間の時間と周波数の差が最小限に抑えられます。

  1. ECSインスタンスが属するセキュリティグループにインバウンドルールを追加して、UDPポート123でのトラフィックを許可します。 詳細については、「セキュリティグループルールの追加」をご参照ください。

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

    詳細については、「パスワードまたはキーを使用したLinuxインスタンスへの接続」をご参照ください。

  3. NTPサーバーを設定します。

    Alibaba Cloud NTPサーバーを使用する場合は、<NTP server> パラメーターを設定します。 詳細については、このトピックの「Alibaba Cloud NTPサーバーのドメイン名」をご参照ください。 Alibaba Cloud NTPサーバーアドレスの選択方法については、NTP時刻同期が異常になった場合はどうすればよいですか? このトピックの「FAQ」セクションで。

    1. 次のコマンドを実行して、chrony設定ファイルにアクセスします。

      sudo vim /etc/chrony.conf
    2. 必要のないNTPサーバーをマスクします。 設定ファイルでマスクするserver <NTP server> minpoll 4 maxpoll 10 iburstの行を見つけ、Iキーを押してInsertモードに入ります。 次に、前の行の先頭に数字記号 (#) を追加して、行をコメントアウトします。

    3. NTPサーバーを追加します。 NTPサーバーは、次の形式で構成ファイルに追加できます。server <NTP server> minpoll 4 maxpoll 10 iburst

    4. 次に、Escキーを押して :wqと入力し、設定ファイルを保存して閉じます。

  4. chronyを有効にします。

    1. 次のコマンドを順番に実行して、chronydサービスを有効にし、システム起動時にサービスを有効にします。

      sudo systemctl start chronyd.service
      sudo systemctl enable chronyd.service
    2. 次のコマンドを実行して、インスタンスの時刻同期ステータスを表示し、chronyがアクティブ化されているかどうかを確認します。

      sudo chronyc tracking
    3. 次のコマンドを実行して、時刻同期サーバーに関する情報を表示します。

      sudo chronyc -n sources -v

NTPを実行するLinuxインスタンス

ECSインスタンスでは、CentOS 6イメージなど、特定の以前のバージョンのイメージに対してNTPが設定されます。 インスタンスの時刻同期サービスが期待どおりに実行される場合、設定を変更する必要はありません。 ビジネスで特定の時刻同期サーバーが必要な場合は、次の手順を実行します。

  1. ECSインスタンスが属するセキュリティグループにインバウンドルールを追加して、UDPポート123でのトラフィックを許可します。 詳細については、「セキュリティグループルールの追加」をご参照ください。

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

    詳細については、「パスワードまたはキーを使用したLinuxインスタンスへの接続」をご参照ください。

  3. NTPサーバーを設定します。

    Alibaba Cloud NTPサーバーを設定する場合は、<NTP server> パラメーターを設定します。 詳細については、このトピックの「Alibaba Cloud NTPサーバーのドメイン名」をご参照ください。 Alibaba Cloud NTPサーバーアドレスの選択方法については、NTP時刻同期が異常になった場合はどうすればよいですか? このトピックの「FAQ」セクションで。

    1. 次のコマンドを実行して、NTP設定ファイルにアクセスします。

      sudo vim /etc/ntp.conf
    2. 必要のないNTPサーバーをマスクします。 設定ファイルでマスクするserver <NTP server> iburst minpoll 4 maxpoll 10行を見つけ、Iキーを押してInsertモードに入ります。 次に、前の行の先頭に数字記号 (#) を追加して、行をコメントアウトします。

    3. NTPサーバーを追加します。 NTPサーバーは、server <NTP server> iburst minpoll 4 maxpoll 10の形式で構成ファイルに追加できます。

    4. 次に、Escキーを押して :wqと入力し、設定ファイルを保存して閉じます。

  4. NTPを有効にします。

    1. 次のコマンドを順番に実行して、システム起動時にNTPを有効にします。

      sudo service ntpd start
      sudo chkconfig ntpd on
    2. 次のコマンドを実行して、NTPのステータスを確認します。

      sudo ntpstat
    3. 次のコマンドを実行してNTPピアを表示します。

      sudo ntpq -p

Windows

デフォルトでは、Windows ServerオペレーティングシステムはMicrosoft NTPサーバー (time.windows.com) に同期されます。 しかしながら、同期エラーが発生することがある。 Windows ECSインスタンスを使用する場合、デフォルトのMicrosoft NTPサーバーをAlibaba Cloudが提供する内部NTPサーバーに置き換えることができます。 この例では、Windows Server 2016オペレーティングシステムが使用されています。 次のセクションでは、デフォルトのNTPサーバーアドレスを変更する方法について説明します。

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

    詳細については、「パスワードまたはキーを使用したWindowsインスタンスへの接続」をご参照ください。

  2. タスクバーの通知エリアで、[日付と時刻] をクリックし、[日付と時刻の設定] をクリックします。

    image

  3. [設定] ページで、[異なるタイムゾーンの時計の追加] をクリックします。

    image

  4. [日付と時刻] ダイアログボックスで、[インターネット時間] タブをクリックし、[設定の変更] をクリックします。

    image

  5. [インターネット時刻設定] ダイアログボックスで、[インターネットタイムサーバーと同期する] を選択し、内部ネットワーク内のAlibaba Cloud NTPサーバーのアドレスを入力し、[今すぐ更新] をクリックし、[OK] をクリックします。 NTPサーバーアドレスの詳細については、このトピックの「Alibaba Cloud NTPサーバーのドメイン名」をご参照ください。

    重要

    インスタンス上のサードパーティのウイルス対策ソフトウェアが原因で、時間同期が失敗する可能性があります。 ウイルス対策ソフトウェアを無効にし、時間を再同期します。

    image

  6. [OK] をクリックします。

付録

クロニーとNTP

時刻同期サービス

シナリオ

時間同期精度

安定性

説明

クロニー

高精度、高い安定性、およびオートメーションを必要とするシナリオに適しています。

高い

高レイテンシで不安定なネットワーク環境を処理できます。

chronyは、NTPを使用してコンピュータシステムの時間を世界中のNTPサーバーと同期させるソフトウェアパッケージです。 chronyは変化するネットワーク環境に適しており、システム時間を高速かつ効率的に調整できます。 詳細については、「chrony」をご参照ください。

NTP

高精度を必要としないほとんどのシナリオに適しています。

限られた量のネットワーク不安定性のみを処理できます。

NTPは、古典的な時刻同期サービスであり、NTPプロトコルの実装です。 NTPは、特にネットワーク条件が比較的安定している環境で、長時間実行されるサーバーに適しています。 詳細については、「NTP」をご参照ください。

Alibaba Cloud NTPサーバーのドメイン名

次の表に、さまざまなネットワーク内のAlibaba Cloud NTPサーバーのドメイン名を示します。 これらのドメイン名はIPv4のみをサポートします。 Alibaba Cloud NTPサーバーアドレスを変更する場合は、ビジネス要件に基づいて次のいずれかのアドレスを選択できます。

クラシックネットワーク (内部ネットワーク)

VPC (内部ネットワーク)

インターネット

ntp1.cloud.aliyuncs.com

ntp2.cloud.aliyuncs.com

ntp3.cloud.aliyuncs.com

ntp4.cloud.aliyuncs.com

ntp5.cloud.aliyuncs.com

ntp6.cloud.aliyuncs.com

ntp.cloud.aliyuncs.com

ntp7.cloud.aliyuncs.com

ntp8.cloud.aliyuncs.com

ntp9.cloud.aliyuncs.com

ntp10.cloud.aliyuncs.com

ntp11.cloud.aliyuncs.com

ntp12.cloud.aliyuncs.com

ntp.aliyun.com

ntp1.aliyun.com

ntp2.aliyun.com

ntp3.aliyun.com

ntp4.aliyun.com

ntp5.aliyun.com

ntp6.aliyun.com

ntp7.aliyun.com

よくある質問

Alibaba Cloud NTPサーバーの使用に対して課金されますか?

いいえ、Alibaba Cloud NTPサーバーは無料です。 Alibaba Cloudパブリックイメージには、デフォルトの時刻同期設定が含まれています。 デフォルトでは、パブリックイメージから作成されたECSインスタンスは、時間同期用にchronyまたはNTPを実行します。

NTP時刻同期が異常になった場合はどうすればよいですか?

サーバーのネットワークタイプを確認します。 次に、ネットワークタイプに基づいてNTPサーバーアドレスを選択します。 NTPサーバーアドレスの詳細については、このトピックの「Alibaba Cloud NTPサーバーのドメイン名」をご参照ください。 パブリックNTPサーバーアドレスは、インターネット経由で時刻同期サービスを提供するために使用されます。 パブリックNTPサーバーアドレスと比較して、プライベートNTPサーバーアドレスは、より高い時間精度と安定性を提供できます。

  • インスタンスのネットワークタイプがVPCの場合、上記の表のVPC (内部ネットワーク) 列にあるNTPサーバーアドレスを選択します。

  • インスタンスのネットワークタイプがクラシックネットワークの場合、上記の表のクラシックネットワーク (内部ネットワーク) 列にあるNTPサーバーアドレスを選択します。

関連ドキュメント

Linuxオペレーティングシステムの時間関連の概念と操作、またはLinuxパブリックイメージへの構成変更の時間については、「Linuxの時間とタイムゾーン」をご参照ください。