Muss ich ntpd in meiner EC2-Instanz ausführen?

42

Ich arbeite daran, einige Server in der EC2-Umgebung zum Laufen zu bringen, und ich stelle einige Fehler fest, wenn ntpd versucht, eine Synchronisierung durchzuführen (mit CentOS).

Ich habe auf dieser Site gelesen und habe den Eindruck, dass ich ntpd nicht ausführen muss, da EC2 Xen ist und der Host sich um die Zeit für die virtuellen Server kümmert.
http://support.ntp.org/bin/view/Support/KnownOsIssues

Ist das korrekt oder muss ich herausfinden, wie ich den Fehler umgehen kann, den ich habe?
cap_set_proc () konnte Root-Rechte nicht löschen
Es sieht so aus, als würde ein neuer Kernel und andere Dinge erstellt, die ich lieber nicht tun würde, wenn ich nicht muss.

Ahanson
quelle

Antworten:

2

Das solltest du nicht brauchen. Die Uhr Ihrer EC2-Instanz wird mit Xen Dom0 synchronisiert. Sie können dies überprüfen, indem Sie überprüfen, ob der Inhalt von /proc/sys/xen/independent_wallclock0 ist.

Kamil Kisiel
quelle
2
Ich konnte so etwas nicht finden. Gilt diese Information noch?
Kariem
8
@Kariem: Neuere Kernel haben /sys/devices/system/clocksource/clocksource0/current_clocksource, siehe Kommentar unten.
Intgr
4
Für mich enthält / sys / devices / system / clocksource / clocksource0 / current_clocksource "xen", aber die Zeit auf dem Computer ist noch einige Minuten entfernt.
Akostadinov
1
Bei einem AWS-Service ist die Uhrzeit oft falsch. Es ist nicht einmal klar, ob ihre Server überhaupt synchronisiert werden.
Ken Sharp
1
Ich werde auch von Ubuntu EC2-Instanzen gebissen. Zum späteren Nachschlagen würde ich empfehlen, ntp für Nicht-Amazon-Linux-Amis einzurichten.
Daryl Teo
72

Ja, Sie müssen ntpd ausführen.

Meine Uhr war auf einer EC2-Mikroinstanz (mit Ubuntu UEC Maverick) mit 5 Tagen Betriebszeit 18,5 Sekunden ausgeschaltet.

Nach dem Herunterfahren und erneuten Starten war es wieder normal, so dass es eine Art Drift zu geben scheint.

Dies gilt übrigens trotz aller /sys/devices/system/clocksource/clocksource0/current_clocksourceÄußerungen xen. Ich bin mir nicht sicher, warum es nicht funktioniert.

Das Installieren des ntp-Pakets hat das Problem für mich gelöst. Die Uhr bleibt genau und es gibt nichts Verdächtiges im Syslog, das auf einen Konflikt mit der Uhrensynchronisation von Xen hinweisen könnte. (Es verwendet ntp.ubuntu.com als Server. Ich bin mir nicht sicher, ob es einen NTP-Server im AWS-Netzwerk gibt, den ich stattdessen verwenden könnte, aber der Ubuntu-Server funktioniert vorerst noch gut.)

Update: Ich habe kürzlich beobachtet, dass auf meinen (neueren?) Instanzen die Uhr automatisch genau bleibt, ohne dass ntp läuft. Gemessen an den Kommentaren scheint dies jedoch nicht für alle der Fall zu sein, daher ist es wahrscheinlich immer noch am besten, ntp nur für den Fall zu verwenden.

Jo Liss
quelle
8
Ich bemerkte nur einige Minuten Drift in einem meinem Server , in dem /sys/devices/system/clocksource/clocksource0/current_clocksourcefestgelegt wird , xenals auch
jberryman
3
independent_wallclock sysctl wurde für den pvops-kernel nicht als upstream akzeptiert. Neuere Kernel (vielleicht 2.6.24 und höher) verhalten sich wie unabhängige Wallclock == 1. Die einzige Lösung ist also die Verwendung von NTP.
Akostadinov
3
Dieser Beitrag enthält einen Kommentar von (angeblich) einem AWS-Mitarbeiter, der besagt, dass EC2 keine Uhren synchronisiert. Daher sollten Sie NTP ausführen. forums.aws.amazon.com/thread.jspa?messageID=364749
Dan Pritts
2
... außerdem hat der ntp.org-Pool einige amazonenspezifische Server: forums.aws.amazon.com/message.jspa?messageID=312682 - Dan Pritts 15. Februar um 22:21
Dan Pritts
1
Wir hatten gerade eine> 5-minütige Zeitverschiebung auf der ec2-Mikroinstanz mit / sys / devices / system / clocksource / clocksource0 / current_clocksource == xen
Moritz
8

Wir führen Linux ec2-Instanzen von klein bis extragroß aus, und ich habe nur überprüft, ob sie synchron sind.

Auf allen Servern wurde der NTP-Daemon ausgeführt, der eine Verbindung zu Amazon-spezifischen Pools herstellte.

server 0.amazon.pool.ntp.org iburst
server 1.amazon.pool.ntp.org iburst
server 2.amazon.pool.ntp.org iburst
server 3.amazon.pool.ntp.org iburst

Dies war möglicherweise nicht der Fall, bevor der Fehler auftrat. Ich wollte nur sicherstellen, dass jeder, der in Zukunft darüber stolpert, aktuelle Informationen hat.

Zach
quelle
1
Linux EC2-Instanzen werden standardmäßig mit ntp eingerichtet.
Daryl Teo
2

Sie müssen ntpd auf allen Instanzen konfigurieren. Wenn Sie nicht Ihre Server zu tun Zeit wird driften beginnen.

Sie müssen UDP 123 für das öffentliche Internet zulassen, wie in der Bedienungsanleitung unter Konfigurieren des Netzwerkzeitprotokolls beschrieben .

Wenn sich Ihre Instanzen in einer VPC befinden, möchten Sie möglicherweise eine Instanz als Ihren NTP-Server festlegen, diese Instanz nur dem Internet aussetzen und die anderen mit ihr synchronisieren lassen.

jonatan
quelle