時刻のずれは、定期タスクのエラー、ログのタイムスタンプの不整合、分散システムにおけるクロックスキューを引き起こす可能性があります。これらの問題に対処するため、クロック同期サービスを設定して、ご利用の Elastic Compute Server (ECS) インスタンスの時刻を調整できます。
仕組み
Network Time Protocol (NTP):ネットワーク遅延を計算することで、クライアントとサーバー間のクロックをミリ秒単位で同期させるプロトコルです。
Alibaba Cloud NTP サーバー:Alibaba Cloud は、内部 VPC (Virtual Private Cloud) エンドポイントを持つ NTP サーバーを提供しています。これにより、ECS インスタンスは最小限のネットワーク遅延で時刻を同期できます。
chrony/ntpd/W32time:NTP プロトコルを使用してインスタンスのシステムクロックを NTP サーバーと同期させる時刻同期サービスです。Linux/UNIX システムでは、
chronyはntpdよりもパフォーマンスが優れています。Windows システムでは、組み込みのW32timeサービスを使用します。
時刻精度の確認
時刻同期の設定
Linux (chrony)
Alibaba Cloud のパブリックイメージから作成された ECS インスタンスは、時刻同期のためにデフォルトで chrony を実行します。一部の古いパブリックイメージは、デフォルトで ntpd を実行します。ps -C chronyd,ntpd -o comm= を実行して、どのプロセスが実行されているかを確認できます。出力が ntpd の場合、インスタンスはデフォルトで ntpd を使用します。時刻同期を設定するには、「Linux (ntpd)」をご参照ください。
Linux システムでは、時刻同期デーモンプロセスは 1 つしか実行できません。chronyd または ntpd の 2 つのサービスのうち、1 つだけを使用する必要があります。いずれかのサービスを開始する前に、もう一方のサービスが停止され、無効になっていることを確認してください。
複数のインスタンスで時刻同期を設定するには、クラウドアシスタントのバッチ実行 を使用してください。
1. NTP サーバーアドレスの確認と設定
chronyの設定ファイルを編集します。Alibaba Cloud Linux/CentOS/RHEL
sudo vim /etc/chrony.confUbuntu/Debian
sudo vim /etc/chrony/chrony.confAlibaba Cloud NTP サーバーを設定します。
#を使用して、`server` で始まるすべての行をコメントアウトし、次に構成ファイルに次の内容を追加します。重要フォールトトレランスと精度の向上のため、単一の NTP タイムソースを使用しないでください。複数のソースを設定することで冗長性が確保され、システムが同期に最適なソースを選択できるようになります。
# 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設定ファイルを保存して終了します。
chronyを再起動します。sudo systemctl restart chronyd.service
2. 時刻同期の確認
再起動されたサービスは、時刻をスムーズかつ段階的に調整します。sudo chronyc tracking を実行して、同期ステータスを確認します。
sudo chronyc tracking出力の [システム時間] フィールドは、システムクロックと NTP 時間のオフセットを示します。たとえば、0.000036150 seconds fast of NTP time は、システムクロックが NTP 時間より進んでいることを示します。
時刻のオフセットが大きく (数分または数時間)、ワークロードが急激な時刻変更を許容できる場合は、手動での時刻同期 を検討してください。
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 : NormalLinux (ntpd)
一部の古い Alibaba Cloud パブリックイメージ (CentOS 6 など) は、デフォルトで ntpd サービスを設定します。NTP プロジェクトはメンテナンスが終了しているため、パフォーマンスとセキュリティを向上させるために Chrony へのアップグレードを推奨します。
Linux システムでは、時刻同期デーモンは 1 つしか実行できません。chronyd または ntpd の 2 つのサービスのうち、1 つだけを使用する必要があります。いずれかのサービスを開始する前に、もう一方のサービスが停止され、無効になっていることを確認してください。
複数のインスタンスで時刻同期を設定するには、クラウドアシスタントのバッチ実行 を使用してください。
1. NTP サーバーアドレスの確認と設定
NTPの設定ファイルを編集します。sudo vim /etc/ntp.confAlibaba Cloud NTP サーバーを設定します。
#を使用して `server` で始まるすべての行をコメントアウトし、構成ファイルに次の内容を追加します。重要フォールトトレランスと精度の向上のため、単一の NTP タイムソースを使用しないでください。複数のソースを設定することで冗長性が確保され、システムが同期に最適なソースを選択できるようになります。
# 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
設定ファイルを保存して終了します。
ntpdを再起動します。Alibaba Cloud Linux/CentOS/RHEL
sudo service ntpd restartUbuntu/Debian
service ntp restart
2. 時刻同期の確認
再起動されたサービスは、スムーズかつ段階的に時間を調整します。 sudo ntpq -p を実行して、同期ステータスを確認します。出力の [offset] フィールドは、ローカル時間とサーバー時間の差を示します。キーパラメーターは次のとおりです。
offset:システム時刻とサーバー時刻の差 (ミリ秒単位)。offsetの値が 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.119Windows
グラフィカルユーザーインターフェイス
Windows のグラフィカルユーザーインターフェイス (GUI) は、単一の NTP サーバーの設定のみをサポートしています。そのノードでネットワークジッターが発生したり、利用できなくなったりすると、システムは時刻を同期できなくなり、単一障害点となります。
本番環境での時刻同期の高可用性を確保するため、GUI での設定は行わず、代わりに コマンドプロンプト を使用して複数の NTP サーバーを設定することを強く推奨します。
タスクバーの通知領域で、日付と時刻をクリックし、[日付と時刻の設定] をクリックします。

設定ページで、[関連設定] > [別のタイムゾーンの時計を追加する] をクリックします。
[日付と時刻] ウィンドウで、[インターネット時刻] > [設定の変更] をクリックします。
[インターネット時刻設定] ダイアログボックスで、[インターネット時刻サーバーと同期する] を選択し、
ntp.cloud.aliyuncs.comと入力して [今すぐ更新] をクリックし、[OK] をクリックします。時刻同期を確認します。成功メッセージが表示されれば、サーバーとの同期が確認できます。同期に失敗した場合は、ファイアウォールまたはセキュリティソフトウェアが UDP ポート 123 をブロックしていないか確認してください。

コマンドラインインターフェイス (CLI)
GUI と比較して、CLI では複数のタイムソースを設定して自動フェールオーバーを有効にできます。
複数のインスタンスで時刻同期を設定するには、クラウドアシスタントのバッチ実行 を使用してください。
1. NTP サーバーの設定
デフォルトの Windows Server NTP サーバー (time.windows.com) を Alibaba Cloud NTP サーバーに置き換えることを推奨します。以下の手順では、Windows Server 2022 を例として使用します。
Win + Rを押し、cmdと入力してEnterを押すと、コマンドプロンプトが開きます。NTP サーバーを設定します。たとえば、
ntp.cloud.aliyuncs.com ntp7.cloud.aliyuncs.com ntp8.cloud.aliyuncs.com ntp11.cloud.aliyuncs.comを使用します。w32tm /config /manualpeerlist:"ntp.cloud.aliyuncs.com ntp7.cloud.aliyuncs.com ntp8.cloud.aliyuncs.com ntp11.cloud.aliyuncs.com" /syncfromflags:manual /reliable:YES /update時刻サービスを再起動します。
net stop w32time net start w32timeNTP サーバーと時刻を同期します。
w32tm /resync
2. 時刻同期の確認
w32tm /query /status を実行します。[Source] フィールドに、設定した NTP サーバーアドレスの代わりに Local CMOS Clock が表示されている場合、同期は失敗しています。
w32tm /query /statusLeap 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
Poll Interval: 10 (1024s)よくある質問
コンテナー (Docker/Kubernetes) 内で chronyd または ntpd をインストールまたは設定する必要がありますか?
番号
コンテナー内で chronyd または ntpd を実行しないでください。コンテナーはデフォルトでホストの時刻を共有するため、独立した設定は不要です。コンテナー内で時刻同期サービスを実行すると、ホストとの間でクロックリソースの競合が発生し、ワークロードの安定性が著しく損なわれます。
システムクロックを手動で強制的に同期する方法
急激な時刻変更に伴うリスクを避けるため、手動での時刻同期は行わないでください。ただし、システムクロックが標準時刻から大幅にずれている場合 (たとえば、数分または数時間) で、かつワークロードが急激な時刻変更を許容できる場合は、手動で同期を実行できます。
Linux (chrony)
chronyを停止します。sudo systemctl stop chronyd.service手動で時刻を同期します。
重要フォールトトレランスと精度の向上のため、単一の NTP タイムソースを使用しないでください。手動で時刻を同期する前に、複数の Alibaba Cloud NTP サーバーが設定されていることを確認してください。
sudo chronyd -qchronyを開始します。sudo systemctl start chronyd.service
Linux (ntpd)
Alibaba Cloud Linux/CentOS/RHEL
ntpdを停止します。sudo service ntpd stop手動で時刻を同期します。
重要NTP プロジェクトはメンテナンスが終了しています。
ntpdateを使用した手動同期には、急激な時刻変更のリスクが伴います。使用する必要がある場合は、リスクを軽減するために ntpdate コマンドで 3 つ以上のタイムソースを指定してください。Alibaba Cloud NTP サーバーの詳細については、「Alibaba Cloud NTP サーバーのドメイン名」をご参照ください。重要スクリプトを使用して
ntpdateを定期的に実行することは、NTP デーモンの有効な代替手段にはなりません。NTP デーモンは、リソース使用量を最小限に抑えながら、時刻の精度と信頼性を最大化するために高度なアルゴリズムを使用します。sudo ntpdate ntp.cloud.aliyuncs.com ntp7.cloud.aliyuncs.com ntp10.cloud.aliyuncs.com ntp11.cloud.aliyuncs.com ntp12.cloud.aliyuncs.comntpdを開始します。sudo service ntpd start
Ubuntu/Debian
ntpdを停止します。sudo service ntp stop手動で時刻を同期します。
重要NTP プロジェクトはメンテナンスが終了しています。
ntpdateを使用した手動同期には、急激な時刻変更のリスクが伴います。使用する必要がある場合は、リスクを軽減するために ntpdate コマンドで 3 つ以上のタイムソースを指定してください。Alibaba Cloud NTP サーバーの詳細については、「Alibaba Cloud NTP サーバーのドメイン名」をご参照ください。sudo ntpdate ntp.cloud.aliyuncs.com ntp7.cloud.aliyuncs.com ntp10.cloud.aliyuncs.com ntp11.cloud.aliyuncs.com ntp12.cloud.aliyuncs.comntpdを開始します。sudo service ntp start
Alibaba Cloud NTP サーバーのドメイン名
次の表に、異なるネットワーク (IPv4 のみ) に対応する Alibaba Cloud NTP サーバーのアドレスを示します。
Alibaba Cloud 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 のパブリックイメージには、デフォルトの時刻同期設定が含まれています。デフォルトでは、これらのイメージから作成された ECS インスタンスは、Chrony または NTP サービスを使用して時刻を同期します。
ntpd から chrony へのアップグレード方法
CentOS 6 などの一部の古い Alibaba Cloud ECS イメージでは、`ntpd` サービスが使用されます。NTP プロジェクトはメンテナンスが終了しているため、ワークロードが NTP に依存していない場合は `chrony` にアップグレードすることを推奨します。
ntpサービスをアンインストールします。Alibaba Cloud Linux/CentOS/RHEL
sudo yum remove ntpUbuntu/Debian
sudo apt remove ntpChronyをインストールします。ダウンロードに失敗した場合は、「CentOS 6 (EOL) で chrony のインストール時に yum が失敗する場合の解決方法
Alibaba Cloud Linux/CentOS/RHEL
sudo yum install chronyUbuntu/Debian
sudo apt update sudo apt install chronyChronyを設定します。設定ファイルを編集します。
Alibaba Cloud Linux/CentOS/RHEL
sudo vim /etc/chrony.confUbuntu/Debian
sudo vim /etc/chrony/chrony.confNTP サーバーやその他の設定をファイルに追加します。以下は、簡単な
chrony.confの例です:# NTP サーバー設定 server ntp.cloud.aliyuncs.com minpoll 4 maxpoll 10 iburst # ドリフトファイルの場所を指定 driftfile /var/lib/chrony/drift # localhost から chronyd へのクエリを許可 allow 127.0.0.1パラメーターの説明:
パラメーター
説明
server ntp.cloud.aliyuncs.comこれは NTP サーバーのドメイン名です。
chronyはこのサーバーに接続して時刻同期を行います。minpoll 4最小ポーリング間隔を 2 のべき乗 (秒単位) で指定します。
minpoll 4は、最小間隔が 2⁴ = 16 秒であることを意味します。これにより、chronyは少なくとも 16 秒ごとに 1 回の同期リクエストを送信します。maxpoll 10最大ポーリング間隔を 2 のべき乗 (秒単位) で指定します。
maxpoll 10は、最大間隔が 2¹⁰ = 1024 秒であることを意味します。iburst初回同期を高速化するオプションです。
chronyが起動すると、リクエストのバースト (通常は 8 回) を送信して、サーバーから迅速に正確な時刻を取得します。chronyサービスを開始します。Chronyサービスを開始し、起動時に自動的に開始するように設定します。# chrony サービスを開始 sudo service chronyd start # システム起動時に chrony が自動的に開始するように設定 sudo chkconfig chronyd onchronyのステータスを確認します。chronycツールを使用して、chronyのステータスと同期を確認します。# サービスステータスを確認 sudo service chronyd status時刻同期を確認します。コマンドを実行して、プライマリサーバーのステータスと、ローカルクロックとタイムサーバー間のオフセットを確認します。
sudo chronyc tracking
CentOS 6 (EOL) で chrony のインストール時に yum が失敗する場合の解決方法
古い
repo設定をクリーンアップします。sudo mkdir -p /etc/yum.repos.d/backup && sudo mv /etc/yum.repos.d/*.repo /etc/yum.repos.d/backup/公式アーカイブを指す新しい設定を作成します。次のコマンドを実行して、新しい
CentOS-Vault.repoファイルを作成します。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キャッシュをクリーンアップして再構築します。
sudo yum clean all && sudo yum makecachechrony のダウンロード
sudo yum install chrony
参考資料
Linux の時刻の概念、操作、または Linux パブリックイメージの時刻設定の変更に関する詳細については、「Linux の時刻とタイムゾーン」をご参照ください。
Precision Time Protocol (PTP) 時刻同期サービスは、ハードウェアレベルのタイムスタンプと動的パス補正を使用して、サブマイクロ秒のクロック同期を実現します。これにより、分散システムにおけるタイミングの一貫性が確保され、高頻度金融取引など、高い時刻精度が要求されるシナリオに最適です。