「ECS:xDoctor:RAP081:Symptom Code: 2048:すべてのNTPサーバーが同期に適していません
Summary: xDoctorがNetwork Time Protocol (NTP)デーモンの問題を検出しました。
Symptoms
ECSラック内のすべてのノードでNTPデーモンが実行されている必要があり、構成されたNTPサーバーは時刻を同期できる必要があります。そうでない場合は、フロントエンドのデータ取得で問題が発生する可能性があります。
| 症状 |
メッセージ |
|---|---|
| NTP_NOT_SUITABLE_ERROR |
メッセージ = すべてのNTPサーバーが同期に適していません。 |
Cause
24時間以内に発生しない場合、上記の現象は警告のままです
24時間が経過しても、これが解決しない場合は重大度がエラーに上がり、RAP081が報告されます。
Resolution
つまり、[追加]フィールドにリストされている各ノードでは、NTPサーバーと同期できません。
検証:
1.一覧表示されている各ノード上のNTPサーバーのリストを取得します。
コマンド:
#getrackinfo-r |grep NTP
Example:
admin@node1:~> getrackinfo -r | grep NTP
NTPServer = xxx.xxx.xxx.xxx
2.ステップ1でリストされているNTPサーバーごとに、時刻を同期できるかどうかをテストします。
コマンド:
# sudo ntpdate -p 2 -d <NTP IPアドレス/NTP FQDN>
または
# sudo ntpdate -p 2 -d 'getrackinfo-r |grep NTP |grep -oP "(?:[0-9]{1,3}\.){3}[0-9]{1,3}"'
例(時刻の同期が可能):
admin@node1:~> sudo ntpdate -p 2 -d xxx.xxx.xxx.xxx
22 Feb 13:47:48 ntpdate [110901]: ntpdate 4.2.8p11@1.3728-o Thu Jun 14 09:26:52 UTC 2018 (1)
ホスト <NTP IPアドレス> とサービスntp
<NTP IPアドレス> を <NTPホスト名>
ホストに逆に検索しています: <NTP ホスト名>
送信(<NTP IP アドレス>)
受信(<NTP IP アドレス>)
送信(<NTP IP アドレス>)
受信(<NTP IP アドレス>)
サーバ <NTP IP アドレス>、ポート 123
ストラタム 2、精度 -24、leap 00、信頼 000
refid [< NTP IP アドレス>]、遅延 0.02615、分散 0.00003
送信 2、フィルタ 2
参照時間: e01a7b0d.af9e6616 Fri, Feb 22 2019 13:43: 41.686
originate timestamp: e01a7c06.748e0c65 Fri, Feb 22 2019 13:47:50.455
transmit timestamp: e01a7c06.7478b000 Fri, Feb 22 2019 13:47: 50.454
filter delay: 0.02635 0.02615 0.00000 0.00000
0.00000 0.00000 0.00000 0.000000 0.00000
フィルター オフセット: 0.000043 -0.00002 0.000000 0.000000
0.000000 0.000000 0.0000000 0.0000000
遅延 0.02615, 分散 0.00003
オフセット -0.000022
22 Feb 13:47:50 ntpdate [110901]:タイムサーバーの調整<NTP IPアドレス>オフセット-0.000022秒
Example: (出力される時刻の同期ができない場合)
admin@node1:~> sudo ntpdate -p 2 -d xxx.xxx.xxx.xxx
22 Feb 13:47:48 ntpdate [110901]: ntpdate 4.2.8p11@1.3728-o Thu Jun 14 09:26:52 UTC 2018 (1)
ホスト <NTP IPアドレス> とサービスntp
<NTP IPアドレス> を <NTPホスト名>
ホストに逆に検索しています: <NTP ホスト名>
送信(<NTP IP アドレス>)
送信(<NTP IP アドレス>)
送信(<NTP IP アドレス>)
サーバ <NTP IP アドレス>、ポート 123
ストラタム 2、精度 -24、leap 00、信頼 000
refid [<NTP IP アドレス>]、遅延 0.02615、分散 0.00003
送信 2、フィルタ 2
参照時間: e01a7b0d.af9e6616 Fri, Feb 22 2019 13:43: 41.686
originate timestamp: e01a7c06.748e0c65 Fri, Feb 22 2019 13:47:50.455
transmit timestamp: e01a7c06.7478b000 Fri, Feb 22 2019 13:47: 50.454
filter delay: 0.02635 0.02615 0.00000 0.00000
0.00000 0.00000 0.00000 0.000000 0.00000
フィルター オフセット: 0.000043 -0.00002 0.000000 0.000000
0.000000 0.000000 0.0000000 0.0000000
遅延 0.02615, 分散 0.00003
オフセット -0.000022
22 Feb 13:47:50 ntpdate [112232]: 同期に適したサーバーが見つかりません
3.getrackinfo -rの結果のNTPセクションにFQDNを追加します。
コマンド:
# sudo setrackinfo-a NTPServer < NTP FQDN >
4.ポリシーベース ルーティングを介して管理インターフェイスから送信されるNTPが原因で問題が発生する可能性があるため、ネットワーク分離と静的ルートを確認します。
コマンド:
#getrackinfo-n;getrackinfo-t
Example:
admin@node1:~>getrackinfo -n;getrackinfo -t
Named networks
==============
Node ID Network IP Address Netmask Gateway VLAN Interface
Static route list
=================
Node ID Network Netmask Gateway Interface
5.NTPサーバーがその環境でリスニングしているかどうかを確認します。また、ファイアウォールがポートをブロックしている場合がよくあります。
コマンド:
# sudo ntpq-c として
Example: (以下では、1台のNTPサーバーにアクセスできず、もう1台はACLが原因でブロックされている可能性があります)。
admin@node1:~> sudo ntpq -c as
ind assid status conf reach auth condition last_event cnt
===========================================================
1 56633 8011 yes no none reject mobilize 1
6.NTPに日付のずれがあるかどうかを確認します。
コマンド:
# viprexec "日付 +%s" 2>&1 | grep "^15"
Example:
admin@node1:~>viprexec "date +%s" 2>&1 | grep "^15"
1554470147
1554470111
1554470096
1554470142
1554470144
1554470109
1554470124
1554470140
7.ntpdサービスのステータスを確認してから、サービスを再起動します(ステータスが稼働中の場合でも、再起動を続行します)。
注:ntpd.serviceは、影響のないサービスです。
コマンド:
# viprexec systemctl status ntpd.service | grep Active:
Example:
admin@node1:~> viprexec systemctl status ntpd.service | grep Active:
アクティブ: Tue 2019-08-06 02:49:06 UTC からアクティブ (実行中);1日18h前
アクティブ: 2019-08-06 02:49:07 UTCからアクティブ(実行中); 1日18h前
アクティブ: 2019-08-07 20:13:27 UTCからアクティブ(実行中); 58分前
アクティブ: 2019-08-06 02:49:06 UTCからアクティブ(実行中); 1日18h前
アクティブ: 2019-08-06 02:49:07 UTCからアクティブ(実行中); 1日18h前
アクティブ: 2019-08-06 02:49:07 UTCからアクティブ(実行中); 1日18h前
アクティブ: Tue 2019-08-06 02:49:07 UTCからアクティブ(実行中);1日18時間前
アクティブ:2019-08-06 02:49:07 UTCからアクティブ(実行中)です。 1日18時間前
コマンド:
# viprexec systemctl 再起動 ntpd.service
Example:
admin@node1:~> viprexec systemctl restart ntpd.service
ホストからの出力: 192.168.219.8
ホストからの出力: 192.168.219.7
ホストからの出力: 192.168.219.6
ホストからの出力: 192.168.219.4
ホストからの出力: 192.168.219.3
ホストからの出力: 192.168.219.2
ホストからの出力: 192.168.219.5
ホストからの出力: 192.168.219.1
8.すべてのノードでmd5sum ntp.confファイルを確認します。
コマンド:
# viprexec "sudo md5sum /etc/ntp.conf"
Example:
admin@node1:~> viprexec "sudo md5sum /etc/ntp.conf"
ホストからの出力: 192.168.219.2
741f0abb12ac82a21f150004bd407334/etc/ntp.conf
ホストからの出力: 192.168.219.5
741f0abb12ac82a21f150004bd407334/etc/ntp.conf
ホストからの出力: 192.168.219.4
741f0abb12ac82a21f150004bd407334/etc/ntp.conf
ホストからの出力: 192.168.219.1
7da6eb8009abc18ed1875f1f15ade72a/etc/ntp.conf
ホストからの出力: 192.168.219.3
741f0abb12ac82a21f150004bd407334/etc/ntp.conf
ホストからの出力: 192.168.219.8
741f0abb12ac82a21f150004bd407334/etc/ntp.conf
ホストからの出力: 192.168.219.6
741f0abb12ac82a21f150004bd407334/etc/ntp.conf
ホストからの出力: 192.168.219.7
741f0abb12ac82a21f150004bd407334/etc/ntp.conf
注:これは、パブリック インターフェイスと管理インターフェイスがあり、最後に提供された構成に従ってノードがすべてパブリックになるように構成されていることが原因である可能性があります。ECSの古いバージョンでは、1つのノードが有効で、残りのノードがファイアウォールの背後にあるように見える場合に、PBRがスタックする可能性があります
9.getrackinfo -rの結果のns_mgmtに123を追加してから、NTPが送受信を開始したかどうかを確認します。
コマンド:
#sudo setrackinfo-123 ns_mgmt
Example:
admin@node1:~>sudo setrackinfo -a ns_mgmt 123
それでもエラーが発生する場合は、ポート123をパブリック インターフェイスに戻し、再度同期を確認します。
コマンド:
# sudo setrackinfo-d ns_mgmt 123
Example:
admin@node1:~> sudo setrackinfo-d ns_mgmt 123
前述の各手順を実行した後、NTP同期のステータスを確認します。
解像度:
これは、構成されたサーバーがNTPサーバーではないか、期待どおりに機能していないことを意味します。NTPの問題を解決するには、お客様のネットワーク チームと連携する必要があります。
Additional Information
現象「NTP デーモンが実行されていません」(NTPD_NOT_RUNNING)については、ナレッジベース記事
ECS: xDoctor: RAP081:Symptom Code: 2048:NTPデーモンが実行されていません
「すべてのNTPサーバーがエラーしきい値よりも高いオフセットを調整する」(NTP_ERROR_OFFSET_ERROR)現象については、次のナレッジベース記事を参照してください。
ECS: xDoctor: RAP081:Symptom Code: 2048:すべてのNTPサーバーは、エラーしきい値よりも高いオフセットを調整します
現象「System time difference above ERROR Threshold」については、ナレッジベース記事
ECS: xDoctor: RAP081:Symptom Code: 2048:ERROR閾値を超えるシステム時間差