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

Elastic Compute Service:ECS インスタンスにおける高精度なクロックと時刻同期

最終更新日:Dec 11, 2025

時刻のずれは、スケジュールされたタスクのエラー、ログのタイムスタンプの不整合、分散システムにおけるクロックスキューなどを引き起こす可能性があります。これらの問題に対処するため、時刻同期サービスを設定して、ご利用の Elastic Compute Service (ECS) インスタンスの時刻を調整できます。

仕組み

  • Network Time Protocol (NTP):ネットワーク遅延を計算することで、クライアントとサーバー間のクロックをミリ秒単位で同期させるためのプロトコルです。

  • Alibaba Cloud NTP サーバー:ECS インスタンスに高精度な時刻ソースとして機能する Virtual Private Cloud (VPC) エンドポイントを提供し、最小限のネットワーク遅延でシステムクロックを同期させることができます。

  • chrony/ntpd/W32time:NTP を使用してインスタンスのシステムクロックを NTP サーバーから提供される時刻リファレンスと同期させる時刻同期サービスです。Linux/UNIX システムでは、chronyntpd よりも優れたパフォーマンスを提供します。Windows システムでは、組み込みの W32time サービスが使用されます。

時刻の精度の確認

クイックガイド

Linux (chrony)

Alibaba Cloud のパブリックイメージから作成された ECS インスタンスは、デフォルトで chrony を実行します。一部の古いパブリックイメージでは、デフォルトで ntpd が実行されます。どちらのプロセスが実行されているかを確認するには、ps -C chronyd,ntpd -o comm= を使用します。出力が ntpd の場合は、「Linux (ntpd)」タブをご参照ください。

以下のコマンドを実行して、クロックオフセットを確認します。出力の [System Time] フィールドを確認します。この値は、インスタンスのシステムクロックと NTP 時刻リファレンスとの現在のオフセットを示します。この例では、0.000027851 seconds fast of NTP time は、システムクロックが NTP サーバーの時刻より 0.000027851 秒進んでいることを意味します。このオフセットがアプリケーションの許容範囲を超える場合は、クロック設定を調整してください。

複数のインスタンスの時刻の精度を確認するには、Cloud Assistant の一括チェック
sudo chronyc tracking
Reference ID    : 64643D58 (100.100.61.88)
Stratum         : 2
Ref time (UTC)  : Tue Oct 28 05:53:58 2025
System time     : 0.000027851 seconds fast of NTP time
Last offset     : +0.000044533 seconds
RMS offset      : 0.000036478 seconds
Frequency       : 41.053 ppm slow
Residual freq   : +0.000 ppm
Skew            : 0.007 ppm
Root delay      : 0.000408892 seconds
Root dispersion : 0.011003596 seconds
Update interval : 1028.9 seconds
Leap status     : Normal

Linux (ntpd)

以下のコマンドを実行して、クロックオフセットを確認します。出力の [offset] フィールドを確認します。この値は、インスタンスのシステムクロックと NTP 時刻リファレンスとの差をミリ秒単位で示します。このオフセットをアプリケーションの許容範囲と比較します。許容範囲を超える場合は、クロック設定を調整してください。

複数のインスタンスの時刻の精度を確認するには、Cloud Assistant の一括チェック
sudo ntpq -p
remote           refid      st t when poll reach   delay   offset  jitter
==============================================================================
 LOCAL(0)        .LOCL.          10 l  107   64    2    0.000    0.000   0.000
+47.96.XXX.XXX   100.100.61.91    2 u   37   64    3   31.241  1009.95   1.313
 11.116.XXX.XX   .INIT.          16 u    -   16    0    0.000    0.000   0.000
-100.100.3.1     10.137.55.181    2 u   52   64    7   25.344  1010.26   0.566
-100.100.3.2     10.137.55.181    2 u   18   64    7   26.873  1008.80   2.143
-100.100.3.3     10.137.55.181    2 u   66   64   12   29.656  1010.16   0.902
-203.107.6.88    10.137.55.181    2 u   65   64    7   33.689  1005.74   0.697
 11.196.XXX.XXX  .INIT.          16 u    -   16    0    0.000    0.000   0.000
 11.196.XXX.XX   .INIT.          16 u    -   16    0    0.000    0.000   0.000
 10.143.0.44     .INIT.          16 u    -   16    0    0.000    0.000   0.000
 10.143.0.45     .INIT.          16 u    -   16    0    0.000    0.000   0.000
 10.143.0.46     .INIT.          16 u    -   16    0    0.000    0.000   0.000
+100.100.5.1     203.107.X.XX     2 u   59   64    7   53.214  1009.42   0.519
*100.100.5.2     203.107.X.XX     2 u   58   64    7   49.062  1009.26   0.984
-100.100.5.3     203.107.X.XX     2 u   57   64    7   56.670  1011.81   3.331

Windows

コマンドプロンプトウィンドウで w3tm /query /status コマンドを実行します。出力の [Root Dispersion] フィールドは、現在のクロックオフセットを示します。この例では、7.7612440s は、システムクロックが NTP サーバーの時刻より 7.7612440 秒進んでいることを意味します。このオフセットがアプリケーションの許容範囲を超える場合は、クロック設定を調整してください。

複数のインスタンスの時刻の精度を確認するには、Cloud Assistant の一括チェック
Leap Indicator: 0(no warning)
Stratum: 3 (secondary reference - syncd via (S)NTP)
Precision: -23 (119.209ns per tick)
Root Delay: 0.0259591s
Root Dispersion: 7.7612440s
Reference ID: 0x64640302 (source IP:  100.100.3.2)
Last Successful Sync Time: 2025/10/28 15:05:02
Source: ntp11.cloud.aliyuncs.com,0x9
Poll Interval: 6 (64s)

時刻同期の設定

Linux (chrony)

Alibaba Cloud のパブリックイメージから作成された ECS インスタンスは、デフォルトで chrony を実行します。一部の古いパブリックイメージでは、デフォルトで ntpd が実行されます。どちらのプロセスが実行されているかを確認するには、ps -C chronyd,ntpd -o comm= を使用します。出力が ntpd の場合は、「Linux (ntpd)」タブをご参照ください。

複数のインスタンスで時刻同期を設定するには、Cloud Assistant の一括実行

1. NTP サーバーアドレスの確認と設定

  1. chrony 設定ファイルを編集します。

    Alibaba Cloud Linux/CentOS/RHEL

    sudo vim /etc/chrony.conf

    Ubuntu/Debian

    sudo vim /etc/chrony/chrony.conf
  2. Alibaba Cloud NTP サーバーを設定します。

    server で始まる行を削除またはコメントアウトし、次の内容を設定ファイルにコピーします。

    複数の NTP サーバーを使用すると、クライアントが最適なサーバーを選択できるようになり、冗長性が確保され、時刻の精度が向上します。
    # Configuration information, including NTP server addresses, minimum polling interval, and maximum polling interval.
    # NTP サーバーアドレス、最小ポーリング間隔、最大ポーリング間隔などの設定情報。
    server ntp.cloud.aliyuncs.com minpoll 4 maxpoll 10 iburst
    server ntp10.cloud.aliyuncs.com minpoll 4 maxpoll 10 iburst
    server ntp11.cloud.aliyuncs.com minpoll 4 maxpoll 10 iburst
    server ntp12.cloud.aliyuncs.com minpoll 4 maxpoll 10 iburst
    server ntp7.cloud.aliyuncs.com minpoll 4 maxpoll 10 iburst
    server ntp8.cloud.aliyuncs.com minpoll 4 maxpoll 10 iburst
    server ntp9.cloud.aliyuncs.com minpoll 4 maxpoll 10 iburst
  3. 設定ファイルを保存し、chrony を再起動します。

    sudo systemctl restart chronyd.service

2. 時刻同期の確認

再起動後、時刻同期のメトリックを確認します。

sudo chronyc tracking

出力の [System Time] は、システムのクロックと NTP サーバーの時刻とのオフセットを示します。例えば、0.000036150 seconds fast of NTP time は、わずかなずれがあることを示します。

時刻のオフセットが大きい場合 (数分や数時間など) で、かつワークロードが急な時刻変更を許容できる場合は、手動での時刻同期を検討してください。
Reference ID    : 64643D58 (100.100.61.88)
Stratum         : 2
Ref time (UTC)  : Sat Sep 20 07:55:33 2025
System time     : 0.000036150 seconds fast of NTP time
Last offset     : +0.000031322 seconds
RMS offset      : 0.000044841 seconds
Frequency       : 43.592 ppm slow
Residual freq   : +0.000 ppm
Skew            : 0.005 ppm
Root delay      : 0.000228760 seconds
Root dispersion : 0.010518964 seconds
Update interval : 1029.1 seconds
Leap status     : Normal

Linux (ntpd)

CentOS 6 などの一部のレガシーな Alibaba Cloud パブリックイメージには、ntpd サービスがプリインストールされています。NTP サービスは現在アクティブにメンテナンスされていないため、パフォーマンスとセキュリティを向上させるために Chrony へのアップグレードを推奨します。

複数のインスタンスで時刻同期を設定するには、Cloud Assistant の一括実行

1. NTP サーバーアドレスの確認と設定

  1. NTP 設定ファイルを編集します。

    sudo vim /etc/ntp.conf
  2. Alibaba Cloud NTP サーバーを設定します。

    server で始まる行を削除またはコメントアウトし、次の内容を設定ファイルにコピーします。

    複数の NTP サーバーを使用すると、クライアントが最適なサーバーを選択できるようになり、冗長性が確保され、時刻の精度が向上します。
    # Configuration information, including NTP server addresses, minimum polling interval, and maximum polling interval.
    # NTP サーバーアドレス、最小ポーリング間隔、最大ポーリング間隔などの設定情報。
    server ntp10.cloud.aliyuncs.com iburst minpoll 4 maxpoll 10
    server ntp11.cloud.aliyuncs.com iburst minpoll 4 maxpoll 10
    server ntp12.cloud.aliyuncs.com iburst minpoll 4 maxpoll 10
    server ntp7.cloud.aliyuncs.com iburst minpoll 4 maxpoll 10
    server ntp8.cloud.aliyuncs.com iburst minpoll 4 maxpoll 10
    server ntp9.cloud.aliyuncs.com iburst minpoll 4 maxpoll 10
  3. 設定ファイルを保存し、ntpd を再起動します。

    Alibaba Cloud Linux/CentOS/RHEL

    sudo service ntpd restart

    Ubuntu/Debian

    service ntp restart

2. 時刻同期の確認

再起動後、時刻同期のメトリックを確認します。出力の主要なパラメーターは次のとおりです:

  • offset:システムのクロックと NTP サーバーの時刻とのオフセット (ミリ秒単位)。0 に近い値ほど精度が高いことを示します。

  • jitter:時間遅延のばらつき。値が小さいほど、より正確なクロック同期を示します。

時刻のオフセットが大きい場合 (数分や数時間など) で、かつワークロードが急な時刻変更を許容できる場合は、手動での時刻同期を検討してください。
sudo ntpq -p
     remote           refid      st t when poll reach   delay   offset  jitter
==============================================================================
 LOCAL(0)        .LOCL.          10 l   17   64    1    0.000    0.000   0.000
+100.100.3.1     10.137.55.181    2 u    8   16    1   30.426  -307.76   0.153
*100.100.3.2     10.137.55.181    2 u    5   16    1   26.845  -309.25   0.221
+100.100.3.3     10.137.55.181    2 u    4   16    1   28.819  -309.37   0.187
-100.100.5.1     203.107.X.XX     2 u    3   16    1   50.478  -310.70   0.164
-100.100.5.2     203.107.X.XX     2 u    2   16    1   47.235  -311.89   0.246
 100.100.5.3     203.107.X.XX     2 u    1   16    1   53.661  -310.50   0.119

Windows

グラフィカルユーザーインターフェイス (GUI)

デフォルトの NTP サーバーを Alibaba Cloud NTP サーバーに変更します。以下の手順は、Windows Server 2022 を例として使用します。

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

    image

  2. [設定] ページで、[関連設定] > [別のタイムゾーンの時計を追加する] をクリックします。

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

  4. [インターネット時刻設定] ダイアログボックスで、[インターネット時刻サーバーと同期する] を選択し、ntp.cloud.aliyuncs.com を入力して [今すぐ更新] をクリックし、[OK] をクリックします。

  5. 同期を確認します。成功メッセージが表示されれば、時刻が更新されたことを意味します。同期に失敗した場合は、ファイアウォールまたはセキュリティソフトウェアが UDP ポート 123 をブロックしていないか確認してください。

    image

コマンドラインインターフェイス (CLI)

複数のインスタンスで時刻同期を設定するには、Cloud Assistant の一括実行

1. NTP サーバーの設定

デフォルトの NTP サーバーを Alibaba Cloud NTP サーバーに変更します。以下の手順は、Windows Server 2022 を例として使用します。

  1. コマンドプロンプトウィンドウを開きます。

  2. NTP サーバーを設定します。次の例では ntp11.cloud.aliyuncs.com を使用します。

     w32tm /config /manualpeerlist:"ntp11.cloud.aliyuncs.com" /syncfromflags:manual /reliable:YES /update
  3. 時刻サービスを再起動します。

     net stop w32time
     net start w32time
  4. NTP サーバーとクロックを同期します。

    w32tm /resync

2. 時刻同期の確認

出力の [Source] フィールドが、設定した NTP サーバーアドレスではなく Local CMOS Clock になっている場合、同期は失敗しています。

 w32tm /query /status
Leap Indicator: 0(no warning)
Stratum: 3 (secondary reference - syncd via (S)NTP)
Precision: -23 (119.209ns per tick)
Root Delay: 0.0020371s
Root Dispersion: 0.0191713s
Reference ID: 0x64640302 (source IP:  100.100.3.2)
Last Successful Sync Time: 2025/10/28 14:37:42
Source: ntp11.cloud.aliyuncs.com,0x9
Poll Interval: 10 (1024s)

よくある質問

Linux/UNIX システムで手動で時計の同期を強制実行する方法

急な時刻のジャンプに伴うリスクを避けるため、手動での同期は推奨されません。ただし、時間オフセットが著しく大きい (数分または数時間) 場合で、かつワークロードが急な時刻のジャンプを許容できる場合は、手動で時計を同期させることができます。

Linux (chrony)

  1. chrony を停止します。

    sudo systemctl stop chronyd.service
  2. 手動で時計を同期します。

    sudo chronyd -q
  3. chrony を開始します。

    sudo systemctl start chronyd.service

Linux (ntpd)

Alibaba Cloud Linux/CentOS/RHEL

  1. ntpd を停止します。

    sudo service ntpd stop
  2. 手動で時計を同期します。

    sudo service ntpdate start
  3. ntpd を開始します。

    sudo service ntpd start

Ubuntu/Debian

  1. ntpd を停止します。

    sudo service ntp stop
  2. 手動で時計を同期します。

    sudo ntpdate ntp.cloud.aliyuncs.com ntp7.cloud.aliyuncs.com ntp10.cloud.aliyuncs.com ntp11.cloud.aliyuncs.com ntp12.cloud.aliyuncs.com
  3. ntpd を開始します。

    sudo service ntp start

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

以下の表は、異なるネットワーク (IPv4 のみ) に対応する Alibaba Cloud NTP サーバーのアドレス一覧です。

  • Alibaba Cloud Elastic Compute Service (ECS) インスタンスの場合: ネットワーク遅延を低減するために VPC ドメインを使用します。

  • Alibaba Cloud 以外のインスタンスの場合: インターネットドメインを使用します。

VPC ドメイン

インターネットドメイン

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 サービスは無料です。パブリックイメージは時計の同期のために事前設定されており、これらのイメージから作成されたインスタンスは、自動的に chrony または ntpd を使用して時計を正確に保ちます。

ntpd から chrony にアップグレードするにはどうすればよいですか?

CentOS 6 などの一部の古い Alibaba Cloud ECS イメージでは ntpd が使用されています。ntpd は現在アクティブにメンテナンスされていないため、ワークロードが ntpd に特定の依存関係を持っていない限り、chrony へのアップグレードを推奨します。

  1. ntp サービスをアンインストールします。

    Alibaba Cloud Linux/CentOS/RHEL
    sudo yum remove ntp
    Ubuntu/Debian
    sudo apt remove ntp
  2. Chrony をインストールします。

    ダウンロードに失敗した場合は、「CentOS 6 (EOL) で chrony をインストールする際の yum の失敗を修正する方法

    Alibaba Cloud Linux/CentOS/RHEL
    sudo yum install chrony
    Ubuntu/Debian
    sudo apt update
    
    sudo apt install chrony
  3. Chrony を設定します。

    設定ファイルを編集します。

    Alibaba Cloud Linux/CentOS/RHEL

    sudo vim /etc/chrony.conf

    Ubuntu/Debian

    sudo vim /etc/chrony/chrony.conf

    NTP サーバーとその他の設定をファイルに追加します。以下は、簡単な chrony.conf の例です。

    # NTP server settings
    server ntp.cloud.aliyuncs.com minpoll 4 maxpoll 10 iburst
    # Specify the location of the drift file
    driftfile /var/lib/chrony/drift
    # Allow chronyd to be queried from localhost
    allow 127.0.0.1

    パラメーターの説明:

    パラメーター

    説明

    server <address>

    NTP サーバーのドメイン名または IP アドレスです。chrony はこのサーバーに接続して時計を同期します。

    minpoll <n>

    最小ポーリング間隔を秒単位の 2 のべき乗で指定します。minpoll 4 は、最小間隔が 2⁴=16 秒であることを意味します。

    maxpoll <n>

    最大ポーリング間隔を秒単位の 2 のべき乗で指定します。maxpoll 10 は、最大間隔が 2¹⁰=1024 秒であることを意味します。

    iburst

    初回同期を高速化するオプションです。chrony が起動すると、リクエストのバーストを送信して、迅速に正確な時刻を取得します。

  4. chrony サービスを開始します。

    1. Chrony サービスを開始し、起動時に有効化します。

      # chrony サービスを開始
      sudo service chronyd start
      
      # システム起動時に chrony が自動的に開始するように設定
      sudo chkconfig chronyd on
    2. chrony サービスのステータスを確認します。

      # サービスのステータスを確認
      sudo service chronyd status
    3. chronyc ツールで時計の同期を検証します。

      sudo chronyc tracking

CentOS 6 (サポート終了) での失敗を修正:yum を使用した chrony のインストール

  1. 古い repo 設定ファイルをバックアップして削除します。

    sudo mkdir -p /etc/yum.repos.d/backup && sudo mv /etc/yum.repos.d/*.repo /etc/yum.repos.d/backup/
  2. 公式の CentOS ボールトを指す新しいリポジトリ構成ファイルを作成します。

    sudo tee /etc/yum.repos.d/CentOS-Vault.repo <<'EOF'
    [C6.10-base]
    name=CentOS-6.10 - Base
    baseurl=http://vault.centos.org/6.10/os/$basearch/
    gpgcheck=1
    gpgkey=file:///etc/pki/rpm-gpg/RPM-GPG-KEY-CentOS-6
    enabled=1
    [C6.10-updates]
    name=CentOS-6.10 - Updates
    baseurl=http://vault.centos.org/6.10/updates/$basearch/
    gpgcheck=1
    gpgkey=file:///etc/pki/rpm-gpg/RPM-GPG-KEY-CentOS-6
    enabled=1
    [C6.10-extras]
    name=CentOS-6.10 - Extras
    baseurl=http://vault.centos.org/6.10/extras/$basearch/
    gpgcheck=1
    gpgkey=file:///etc/pki/rpm-gpg/RPM-GPG-KEY-CentOS-6
    enabled=1
    EOF
  3. yum キャッシュをクリーンアップして再構築します。

    sudo yum clean all && sudo yum makecache
  4. chrony をインストールします。

    sudo yum install chrony

関連ドキュメント

  • Linux の時間に関する概念、操作、または Linux パブリックイメージにおける時間構成の変更の詳細については、Linux の時間とタイムゾーンをご参照ください。

  • PTP 時間同期サービスは、ハードウェアレベルのタイムスタンプと動的なパス補償を使用して、サブマイクロ秒の時計同期を実現します。これにより、分散システムにおけるタイミングの一貫性が確保され、高周波金融取引など、高い時間精度が求められるシナリオに最適です。