ECS : xDoctor : RAP081 : Code symptôme : 2048 : Différence d’heure du système au-dessus du seuil d’erreur

Summary: xDoctor a détecté un problème de processus NTP (Network Time Protocol).

This article applies to This article does not apply to This article is not tied to any specific product. Not all product versions are identified in this article.

Symptoms

Le processus NTP doit être en cours d’exécution sur tous les nœuds d’un rack ECS, et les serveurs NTP configurés doivent pouvoir synchroniser l’heure. Si ce n’est pas le cas, cela peut entraîner des problèmes d’ingestion des données front-end.

Symptôme

Message

Différence d’heure système au-delà du seuil d’erreur

Message = System time difference above ERROR Threshold
Extra = [List of nodes]

Cause

Les symptômes ci-dessus restent comme un AVERTISSEMENT s’ils ne se produisent pas dans les 24 heures.
Au bout de 24 heures, si le problème persiste, la gravité passe à l’état ERROR, et un RAP081 est signalé.

Resolution

Différence d’heure du nœud due au fichier de dérive NTP qui est mis à jour toutes les heures par le service ntpd sur les nœuds. Ce problème peut se produire lorsqu’un problème de réseau s’est déjà produit sur un nœud. Une fois qu’il a rejoint le réseau, il crée un fichier de dérive incorrect, ce qui impose une différence d’heure entre les nœuds. 

Lorsqu’un nœud a rejoint le réseau après un problème, il peut créer temporairement un fichier de dérive pour correspondre à l’heure NTP sur le serveur NTP. Cela devrait être temporaire, mais si ntpd ne peut pas supprimer le fichier, nous pouvons supprimer les fichiers de dérive et redémarrer le service pour le restaurer.

Vérification:
Vérifiez si tous les serveurs NTP peuvent effectuer une commande ping.
1. Vérifiez si la Conformité est activée.

Commande :

# domulti 'cat /opt/emc/caspian/fabric/agent/conf/agent_customize.conf | grep compliance_enabled'
Exemple :
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. Vérifiez ECS pour déterminer si le cluster est conforme ou non. 

Commande : 
# viprexec -i "/opt/emc/caspian/fabric/cli/bin/fcli lifecycle cluster.compliance"
Exemple :
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
}

La sortie attendue est CONFORME. Si nous voyons NON_COMPLIANT, alors nous devons chercher pourquoi.

3. Exécutez le script de vérification de la conformité sur chaque nœud pour identifier les nœuds non conformes, ce qui peut entraîner une non-conformité de la part de la vérification ECS.

Exécutez le script de conformité sur tous les nœuds. Les nœuds avec le message « NTP peers out of sync » peuvent rencontrer le problème de fichier de dérive NTP sur certains nœuds. Le résultat de la commande « Vérification de la conformité... Sur un nœud sans sortie d’échec, signifie que la vérification a réussi sans qu’aucun problème ne soit détecté.

Commande :
# domulti /opt/emc/caspian/fabric/agent/conf/compliance_check.sh
Exemple :
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

Si la sortie « Homologues NTP désynchronisés », accédez à la section « Homologues désynchronisés » ci-dessous.

Résolution:
1. Vérifiez si un décalage NTP est supérieur à 10 (+/-), ce qui peut entraîner l’alerte de conformité.

Commande :
# viprexec -i "ntpq -nc peers"
Exemple : (Remarque : Par exemple, il existe trois serveurs NTP par nœud.)
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

Si nous redémarrons le service ntpd, viprexec -i « ntpq -nc peers » nous avons un décalage de moins de 10 pendant quelques instants, puis revient à plus de 100.

2. La réapplication d’un décalage incorrect dans le fichier ntp.drift d’un nœud après le redémarrage du service ntpd peut entraîner ce problème :

Commande :
# viprexec -i "cat /var/lib/ntp/drift/ntp.drift"
Exemple :
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

Un fichier de dérive NTP de cette taille de décalage peut être généré automatiquement en raison d’un problème réseau temporaire. Lorsqu’un nœud rétablit une connexion au service NTP se trouve en dehors de l’heure correcte, générez le fichier pour qu’il se corrige de nouveau. Après quelques instants, le fichier de dérive n’est plus nécessaire et peut être retiré. Par conséquent, les opérations suivantes doivent être effectuées. 

1. Arrêter le service ntpd.
2. Le fichier ntp.drift est supprimé.
3. Redémarrer le service ntpd.

Remarque : ntpd.service est un service sans impact.


Commandes :
# 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"

Exécutez à nouveau le script de vérification de conformité : viprexec -i « /opt/emc/caspian/fabric/agent/conf/compliance_check.sh"

Si les fichiers de dérive NTP sont nuls, vérifiez s’il y a une dérive de date dans NTP, puis redémarrez le service ntpd. 

Commande :
# viprexec "date +%s" 2>&1 | grep "^15"
Exemple :
admin@node1:~> viprexec "date +%s" 2>&1 | grep "^15"
1554470147
1554470111
1554470096
1554470142
1554470144
1554470109
1554470124
1554470140

La différence entre les nœuds indique qu’une dérive NTP avec un redémarrage du service ntpd est requise. Vérifiez l’état du service ntpd, puis redémarrez le service. (Même si l’état est en cours d’exécution, procédez au redémarrage.) Remarque : ntpd.service est un service sans impact.

Commande :
# viprexec systemctl status ntpd.service | grep Active:
Exemple :
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
Commande :
# viprexec -i "systemctl restart ntpd.service"
Exemple :
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

La dérive NTP doit être résolue :

Commande :
# viprexec -i "date +%s" 2>&1 | grep "^15"
Exemple :
admin@node1:~> viprexec -i "date +%s" 2>&1 | grep "^15"
1585746672
1585746672
1585746672
1585746672
1585746672
1585746672
1585746672
1585746672

Si le problème persiste ou ne correspond pas au problème ci-dessus, contactez le support technique ECS.

Additional Information

Si la solution ci-dessus ne fonctionne pas, l’équipe réseau du client doit être impliquée pour résoudre le problème NTP.

Pour le symptôme « NTP daemon not running » (NTPD_NOT_RUNNING), reportez-vous à l’article de la base de connaissances :
ECS : xDoctor : RAP081 : Code symptôme : 2048 : Le processus NTP n’est pas en cours d’exécution

Pour le symptôme « All NTP servers are NOT suitable for synchronization » (NTP_NOT_SUITABLE_ERROR), reportez-vous à l’article de la base de connaissances :
ECS : xDoctor : RAP081 : Code symptôme : 2048 : Tous les serveurs NTP ne sont PAS adaptés à la synchronisation.

Pour le symptôme « All NTP servers adjust an offset higher than the error threshold » (NTP_ERROR_OFFSET_ERROR), reportez-vous à l’article de la base de connaissances :
ECS : xDoctor : RAP081 : Code symptôme : 2048 : Tous les serveurs NTP ajustent un décalage supérieur au seuil d’erreur.

Affected Products

ECS

Products

ECS Appliance, ECS Appliance Gen 1, ECS Appliance Gen 2, ECS Appliance Gen 3, ECS Software
Article Properties
Article Number: 000230636
Article Type: Solution
Last Modified: 03 Oct 2024
Version:  2
Find answers to your questions from other Dell users
Support Services
Check if your device is covered by Support Services.