Ziel: Einen sehr genauen NTP Service für eine Oracle Real Application Cluster Installation unter VMware einrichten
Normalerweise wird der AD Controller unter Windows dazu verwandt auch den Zeitdienst zur Verfügung zu stellen. Alternativ kann aber auch ein „echter“ NTP Server hinterlegt werden.
Vorbereitung: Firewall für das NTP Protokoll (Default: Port 123 UDP) für den entsprechenden NTP Server freischalten!
Für Linux siehe ⇒ Die Uhrzeit unter Linux für eine Oracle Cluster Installation überwachen/prüfen und kontrollieren
Immer eine Administrative cmd/Powershell Session starten!
net stop w32time
w32tm /config /syncfromflags:manual /manualpeerlist:ntp1.lrz.de,0x08
Die Flags hinter dem NTP Server Namen bedeuten (nach KB875424)
Den Name des Zeitservers NICHT mit „“ angeben!! Das funktioniert für die Angabe von mehr als einen NTP Server wie
w32tm /config /syncfromflags:manual /manualpeerlist:"ntp1.lrz.de ntp2.lrz.de"
Für ein RAC Cluster, besonders bei VM's auf 600 stellen:
Registry Key anpassen: HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\W32Time\TimeProviders\NtpClient\SpecialPollInterval
Verhindern das die Zeit in die Vergangenheit auf der Maschine gesetzt wird (Spezielle Einstellung nur für Oracle Real Application Cluster Knoten!) Registry Key anpassen: HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\W32Time\Config\MaxNegPhaseCorrection
Prüfen das NTP als Protokoll eingetragen ist: Registry Key prüfen: HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\W32Time\Parameters\Type
net start w32time
Konfiguration auslesen:
w32tm /query /configuration
Mit „w32tm /query /status“ folgende Informationen anzeigen lassen:
w32tm /query /status Leap Indicator: 0(no warning) Stratum: 4 (secondary reference - syncd by (S)NTP) Precision: -6 (15.625ms per tick) Root Delay: 0.0490723s Root Dispersion: 7.8068769s ReferenceId: 0xC0A8B201 (source IP: 129.187.254.32) Last Successful Sync Time: 09.09.2015 09:53:19 Source: 192.168.178.1,8 Poll Interval: 10 (1024s)
Im Ideal Fall wird, wie erwartet, die obige Information angezeigt, allerdings wird teilweise auf meinen Server behauptet, dass die lokale CMOS Uhr abgefragt wird. Aber auch nicht immer! Und auf gleich konfigurierten Server zeigt nur einer von 5 das Verhalten! Seltsam ….
Zeit Synchronisieren:
w32tm /resync
Zeit anzeigen: Dos Shell:
time /T
Powershell:
get-date
Sollte es nicht funktionieren, kann ein Logfile geschrieben werden:
w32tm /debug /enable /file:C:\Temp\w32tmdebug.log /size:10485760 /entries:0-300
Nach der Fehlersuche auch wieder ausschalten!
w32tm /debug /disable
Alles wieder auf Anfang:
Stop-Service w32time w32tm /unregister w32tm /register
#Umgebung auf das Oracle Home des Clusters einstellen cd ENV:$ORACLE_HOME\log\gpidb-db01 select-string .\alertgpidb01.log -pattern "not synchronous" ... 2014-05-05 18:27:49.677: [ctssd(21703)]CRS-2409:The clock on host GPIDB-db01 is not synchronous with the mean cluster time. No action has been taken as the Cluster Time Synchronization Service is running in ...
Ursache: Siehe Meldungen von den Clufy Kommando für die Analyse
Ursache:
Der Unterschied in der Uhrzeit zwischen diesem Knoten und dem referenz Knoten im Cluster ist größer als 1ms. Laut Node 1311163.1 kann das ingnoriert werden, wenn keine Fehler bei einem ntp test mit clufy auftauchen.
[ctssd(7784)]CRS-2412:The Cluster Time Synchronization Service detects that the local time is significantly different from the mean cluster time. Details in ......./octssd.log.
Analyse: