「ECS:xDoctor:RAP081:Symptom Code: 2048:ERROR閾値を超えるシステム時間差
Summary: xDoctorがNetwork Time Protocol (NTP)デーモンの問題を検出しました。
Symptoms
ECSラック内のすべてのノードでNTPデーモンが実行されている必要があり、構成されたNTPサーバーは時刻を同期できる必要があります。そうでない場合は、フロントエンドのデータ取得で問題が発生する可能性があります。
| 症状 |
メッセージ |
|---|---|
| エラーしきい値を超えるシステム時刻の差 |
メッセージ = システム時間差がエラーしきい値を超えています |
Cause
24時間以内に発生しない場合、上記の現象は警告のままです
24時間が経過しても、これが解決しない場合は重大度がエラーに上がり、RAP081が報告されます。
Resolution
ノード上のntpdサービスによって1時間ごとに更新されるNTPドリフト ファイルによるノードの時間差。この問題は、以前にノードでネットワークの問題が発生した場合に発生する可能性があります。ネットワークに再参加した後、誤ったドリフト ファイルが作成され、ノード間に時間差が適用されます。
問題が発生した後にノードがネットワークに再参加した際に、NTPサーバー上のNTP時刻と一致するドリフト ファイルが一時的に作成される場合があります。これは一時的なものですが、ntpdがファイルを削除できない場合は、ドリフト ファイルを削除し、サービスを再起動してリストアすることがあります
検証:
すべてのNTPサーバーがpingできるかどうかを確認します。
1.コンプライアンスが有効になっているかどうかを確認します。
コマンド:
# domulti 'cat /opt/emc/caspian/fabric/agent/conf/agent_customize.conf | grep compliance_enabled'
admin@node1:~> domulti 'cat /opt/emc/caspian/fabric/agent/conf/agent_customize.conf | grep compliance_enabled' 192.168.219.1 ======================================== compliance_enabled = true 192.168.219.2 ======================================== compliance_enabled = true 192.168.219.3 ======================================== compliance_enabled = true 192.168.219.4 ======================================== compliance_enabled = true
2.ECSをチェックして、クラスターが準拠しているかどうかを判断します。
# viprexec -i "/opt/emc/caspian/fabric/cli/bin/fcli lifecycle cluster.compliance"
admin@node1:~> viprexec -i "/opt/emc/caspian/fabric/cli/bin/fcli lifecycle cluster.compliance"
Output from host : 192.168.219.1
{
"compliance": "NON_COMPLIANT",
"status": "OK",
"etag": 22527
}
Output from host : 192.168.219.2
{
"compliance": "NON_COMPLIANT",
"status": "OK",
"etag": 22527
}
Output from host : 192.168.219.3
{
"compliance": "NON_COMPLIANT",
"status": "OK",
"etag": 22527
}
Output from host : 192.168.219.4
{
"compliance": "NON_COMPLIANT",
"status": "OK",
"etag": 22527
}
予想される出力はCOMPLIANTです。NON_COMPLIANTが見られる場合は、その理由を調査する必要があります
3.各ノードでコンプライアンス チェック スクリプトを実行して、非準拠ノードを特定します。これにより、ECSチェックで非準拠と表示される場合があります。
すべてのノードでコンプライアンス スクリプトを実行します。「NTPピアが同期していない」ノードでは、一部のノードでNTPドリフト ファイルの問題が発生する可能性があります。「コンプライアンスを確認しています...」の出力障害のないノードでの出力は、チェックに合格し、問題が見つからなかったことを意味します。
# domulti /opt/emc/caspian/fabric/agent/conf/compliance_check.sh
admin@node1:~> domulti /opt/emc/caspian/fabric/agent/conf/compliance_check.sh
192.168.219.1
========================================
Checking compliance...
NTP peers out of sync
192.168.219.2
========================================
Checking compliance...
192.168.219.3
========================================
Checking compliance...
NTP peers out of sync
192.168.219.4
========================================
Checking compliance...
NTP peers out of sync
「NTP peers out of sync」の出力がある場合は、以下の「peers out of sync」セクションに進みます
解像度:
1.NTPオフセットが10(+/-)を超えていないか確認してください。これにより、コンプライアンス アラートが発生する可能性があります。
# viprexec -i "ntpq -nc peers"
admin@node1:~> viprexec -i "ntpq -nc peers" Output from host : 169.254.1.1 remote refid st t when poll reach delay offset jitter ============================================================================== *10.xxx.xxx.16 .GPSs. 1 u 31 64 377 0.103 -367.66 44.909 +10.xxx.xxx.33 .GPSs. 1 u 32 64 377 0.097 -368.68 44.341 +10.xxx.xxx.35 .GPSs. 1 u 16 64 377 0.107 -338.96 69.736 Output from host : 169.254.1.2 remote refid st t when poll reach delay offset jitter ============================================================================== +10.xxx.xxx.16 .GPSs. 1 u 26 64 377 0.089 8.566 0.746 *10.xxx.xxx.33 .GPSs. 1 u 26 64 377 0.100 8.585 0.739 +10.xxx.xxx.35 .GPSs. 1 u 23 64 377 0.104 8.888 0.592 Output from host : 169.254.1.3 remote refid st t when poll reach delay offset jitter ============================================================================== *10.xxx.xxx.16 .GPSs. 1 u 31 64 377 0.101 -354.40 52.444 +10.xxx.xxx.33 .GPSs. 1 u 29 64 377 0.101 -338.84 63.750 +10.xxx.xxx.35 .GPSs. 1 u 39 64 377 0.106 -387.28 44.286 Output from host : 169.254.1.4 remote refid st t when poll reach delay offset jitter ============================================================================== *10.xxx.xxx.16 .GPSs. 1 u 26 64 377 0.084 72.675 9.200 +10.xxx.xxx.33 .GPSs. 1 u 37 64 377 0.107 65.047 14.913 +10.xxx.xxx.35 .GPSs. 1 u 33 64 377 0.103 87.374 13.435 Output from host : 169.254.1.5 remote refid st t when poll reach delay offset jitter ============================================================================== *10.xxx.xxx.16 .GPSs. 1 u 27 64 377 0.094 352.741 54.056 +10.xxx.xxx.33 .GPSs. 1 u 26 64 377 0.103 413.893 43.770 +10.xxx.xxx.35 .GPSs. 1 u 33 64 377 0.101 334.493 69.059 Output from host : 169.254.1.6 remote refid st t when poll reach delay offset jitter ============================================================================== +10.xxx.xxx.16 .GPSs. 1 u 27 64 377 0.101 -428.51 54.955 +10.xxx.xxx.33 .GPSs. 1 u 26 64 377 0.097 -326.21 91.208 *10.xxx.xxx.35 .GPSs. 1 u 32 64 377 0.098 -349.00 70.110
viprexec -i "ntpq -nc peers" で ntpd サービスを再起動すると、しばらくの間オフセットが 10 未満になり、その後 100 を超えるまで増加しました
2.ntpdサービスの再起動後にノードのntp.driftファイルが誤ったオフセットを再適用すると、次の問題が発生する可能性があります。
# viprexec -i "cat /var/lib/ntp/drift/ntp.drift"
admin@node1:~> viprexec -i "cat /var/lib/ntp/drift/ntp.drift" Output from host : 169.254.1.1 500.000 Output from host : 169.254.1.2 -14.212 Output from host : 169.254.1.3 500.000 Output from host : 169.254.1.4 -102.474 Output from host : 169.254.1.5 -500.000 Output from host : 169.254.1.6 500.000
このオフセット サイズのNTPドリフト ファイルは、一時的なネットワークの問題により自動的に生成される場合があります。NTPサービスへの接続を再確立しているノードが正しい時刻から外れていることを検出した場合は、ファイルを生成して自身を再修正します。しばらくすると、ドリフト ファイルは不要になり、削除できます。したがって、次のことを実行する必要があります。
注: ntpd.service は影響のないサービスです。
コマンド:
# viprexec -i "systemctl stop ntpd" # viprexec -i "cat /var/lib/ntp/drift/ntp.drift # viprexec -i "rm -f /var/lib/ntp/drift/ntp.drift" # viprexec -i "ntpd -gq" # viprexec -i "systemctl start ntpd" # viprexec -i "ntpq -p"
コンプライアンス チェック スクリプトを再実行します。viprexec -i "/opt/emc/caspian/fabric/agent/conf/compliance_check.sh"
NTPドリフト ファイルがゼロの場合は、NTPに日付ドリフトがあるかどうかを確認し、ntpdサービスを再起動します。
# viprexec "date +%s" 2>&1 | grep "^15"
admin@node1:~> viprexec "date +%s" 2>&1 | grep "^15" 1554470147 1554470111 1554470096 1554470142 1554470144 1554470109 1554470124 1554470140
ノード間の相違は、ntpdサービスの再起動を伴うNTPドリフトが必要であることを示しています。ntpdサービスのステータスを確認してから、サービスを再起動します(ステータスが稼働中の場合でも、再起動を続行します)。注: ntpd.service は影響のないサービスです。
# viprexec systemctl status ntpd.service | grep Active:
admin@node1:~> viprexec systemctl status ntpd.service | grep Active: Active: active (running) since Tue 2019-08-06 02:49:06 UTC; 1 day 18h ago Active: active (running) since Tue 2019-08-06 02:49:07 UTC; 1 day 18h ago Active: active (running) since Wed 2019-08-07 20:13:27 UTC; 58min ago Active: active (running) since Tue 2019-08-06 02:49:06 UTC; 1 day 18h ago Active: active (running) since Tue 2019-08-06 02:49:07 UTC; 1 day 18h ago Active: active (running) since Tue 2019-08-06 02:49:07 UTC; 1 day 18h ago Active: active (running) since Tue 2019-08-06 02:49:07 UTC; 1 day 18h ago Active: active (running) since Tue 2019-08-06 02:49:07 UTC; 1 day 18h ago
# viprexec -i "systemctl restart ntpd.service"
admin@node1:~> viprexec systemctl restart ntpd.service Output from host : 192.168.219.1 Output from host : 192.168.219.2 Output from host : 192.168.219.3 Output from host : 192.168.219.4 Output from host : 192.168.219.5 Output from host : 192.168.219.6 Output from host : 192.168.219.7 Output from host : 192.168.219.8
NTPドリフトを解決する必要があります。
# viprexec -i "date +%s" 2>&1 | grep "^15"
admin@node1:~> viprexec -i "date +%s" 2>&1 | grep "^15" 1585746672 1585746672 1585746672 1585746672 1585746672 1585746672 1585746672 1585746672
それでも問題が解決しない場合、または前述の問題と一致しない場合は、ECSテクニカル サポートにお問い合わせください。
Additional Information
上記の解決策で解決しない場合は、お客様のネットワーク チームと連携してNTPの問題を解決する必要があります
現象「NTP デーモンが実行されていません」(NTPD_NOT_RUNNING)については、ナレッジベース記事
ECS: xDoctor: RAP081:Symptom Code: 2048:NTPデーモンが実行されていません
「すべてのNTPサーバーは同期に適していません」(NTP_NOT_SUITABLE_ERROR)現象については、次のナレッジベース記事を参照してください。
ECS: xDoctor: RAP081:Symptom Code: 2048:すべてのNTPサーバーが同期に適していません。
「すべてのNTPサーバーがエラーしきい値よりも高いオフセットを調整する」(NTP_ERROR_OFFSET_ERROR)現象については、次のナレッジベース記事を参照してください。
ECS: xDoctor: RAP081:Symptom Code: 2048:すべてのNTPサーバーは、エラーしきい値よりも大きいオフセットを調整します。