1. Dashboard
  2. Mitglieder
    1. Letzte Aktivitäten
    2. Benutzer online
    3. Team
    4. Mitgliedersuche
  3. Filebase
  4. Forum
  5. Zebradem-WIKI
  6. Foren-Regeln
  7. Spenden Liste
    1. Spenden
  • Anmelden
  • Registrieren
  • Suche
ZebraDem-Sponsoring
Dieses Thema
  • Alles
  • Dieses Thema
  • Dieses Forum
  • Seiten
  • Dateien
  • Forum
  • Erweiterte Suche
  1. Forum
  2. Computer Ecke
  3. Betriebssysteme
  4. Linux

Schaltsekunde: Linux kann einfrieren Update

  • mandy28
  • 2. Juli 2012 um 21:23
  • mandy28
    Erleuchteter
    Reaktionen
    1
    Punkte
    88.996
    Beiträge
    16.178
    • 2. Juli 2012 um 21:23
    • #1
    Zitat


    02.07.2012

    Die in der vergangenen Nacht geschaltete Extrasekunde kann auf Linux-Rechnern zu dauerhafter CPU-Auslastung führen. Dokumentiert ist dieses Verhalten etwa im Blog der Mozilla Foundation, die vom Zeitpunkt der Schaltsekunde an seltsame Lastspitzen auf einem ihrer Server bemerkte. Die Lösung soll sehr einfach gewesen sein: Datum neu setzen, alternativ das System rebooten.

    Auch das aktuelle "Squeeze"-Release der Linux-Distribution Debian scheint vom Schaltsekundenproblem betroffen zu sein. In einer Postmortem-Analyse bei serverfault.com heißt es, etliche Rechner eines Datacenter hätten mit der Schaltsekunde nicht mehr auf Pings reagiert und einen schwarzen Bildschirm gezeigt. Die Systemadministratoren hätten die Situation durch Stoppen des NTP-Daemons und Ausführen eines Perl-Skripts gerettet, das das Schaltsekunden-Bit im Kernel zurücksetzt.

    Die Ursache für das Verhalten liegt im Linux-Kernel. Dort führt die durch das NTP-Subsystem getriggerte Schaltsekunde zu einer Deadlock-Situation. Davon betroffen sind offenbar alle Kernelversionen von 2.6.26 bis einschließlich 3.3.

    Auf Servern mit Red Hat Enterprise Linux 5 (RHEL5) ist das Deadlock-Problem durch Schaltsekunden seit der Version 5.2 ausgemerzt. Im Bugtracking-System findet sich die Notiz, dass bei Linux-Versionen vor 2.6.29 eine mit dem NTP-Update zusammenhängende Debug-Ausgabe (printk) den Kernel zum Einfrieren gebracht hat.

    Vorbeugen ist besser als Heilen, hat sich Google anlässlich wiederkehrender Störungen durch Schaltsekunden in den eigenen Serverparks gesagt und ein "leap smear" genanntes Verfahren etabliert, das ebenso einfach wie genial ist: Mit modifizierten NTP-Servern sorgt Google dafür, dass am Tag der Schaltsekunde mit jedem NTP-Update einige Millisekunden eingefügt werden, die sich bis zum Schaltzeitpunkt zu einer Sekunde addieren. Diese kleinen Differenzen zwischen alter und neuer Systemzeit verkraften Betriebssysteme in der Regel klaglos.

    [Update 2.7.2012 10:13]

    Die in RHEL 5.2 eingeflossene Korrektur behebt ein älteres, zum Jahreswechsel 2009 aufgetretenes Problem mit Schaltsekunden. Der an der Entwicklung des Timer-Codes im Linux-Kernel beteiligte Entwickler John Stultz hat das jetzt aufgetretene Problem mittlerweile analysiert und arbeitet an zwei Patches

    Alles anzeigen

    heise online | Schaltsekunde: Linux kann einfrieren

    • Zitieren
  • Reppo
    Super Moderator
    Punkte
    69.655
    Beiträge
    12.683
    • 2. Juli 2012 um 22:13
    • #2

    [h=1]Wie die Schaltsekunde Chaos im Internet verursachte[/h] Mit teils massiven Ausfällen hat die Schaltsekunde in der Nacht zum 1. Juli 2012 unter anderem dem Linux-Kernel, MySQL und Java-basierten Anwendungen Probleme bereitet. Betroffen waren unter anderem Qantas, Reddit und Mozilla.
    Die Schaltsekunde, die in der Nacht zum 1. Juli 2012 die Uhren weltweit mit der Erdrotation synchronisieren sollte, hat zahlreichen Servern Probleme bereitet und legte vorübergehend Webseiten und Datenbanken lahm.
    Die Webseite Reddit berichtete von Problemen mit ihrer Java- und Cassandra-Infrastruktur. Auch die Server der Webseiten WDR.de, sportschau.de und WDR2.de und das Redaktionssystem des WDR waren betroffen.
    [h=3]Hadoop-Ausfall bei Mozilla[/h] Von ähnlichen Problemen zeugt auch ein Bugzilla-Report bei Mozilla. Dort hängten sich Java-Applikationen wie Hadoop und Elasticsearch auf. Später berichtete der Bugzilla-Post davon, dass sämtliche JVMs (Java Virtual Machine) außer Kontrolle geraten seien. Der Befehl date; date `date +"%m%d%H%M%C%y.%S"`; date; behob das Problem ohne Server- oder JVM-Neustart. Einem weiteren Kommentar zufolge reicht der Befehl date -s "`date`".
    Das Gawker-Netzwerk, zu dem die Webseite Gizmodo gehört, verfasste selbst einen Artikel über den bevorstehenden Zeitsprung und war danach für etliche Minuten nicht mehr erreichbar.
    [h=3]Amadeus-Ausfall verursacht Flugverspätungen[/h] Fünfzig Flüge der australischen Fluglinie Qantas mussten wegen eines Serverausfalls verschoben werden. Qantas nutzt die Reservierungssoftware des Anbieters Amadeus. Laut einer Qantas-Sprecherin war das weltweite Buchungssystem betroffen.
    Was genau die Ausfälle auslöste, wird noch ermittelt, etwa ob die Java Virtual Machines, MySQL oder der Linux-Kernel der Verursacher war. Einiges deutet jedoch auf Komponenten im Linux-Betriebssystem und dessen Kernel hin.
    Red Hat hat bereits einen Knowledgebase-Artikel dazu veröffentlicht. Demnach sind Linux-Kernel in älteren Versionen von Red Hat Enterprise Linux (RHEL) betroffen.
    Unter RHEL 6 hat die Schaltsekunde einen Systemabsturz bei der Interrupt-Verwaltung NMI-Watchdog ausgelöst. Ein zweiter Bugzilla-Report berichtet von einer außergewöhnlich hohen CPU-Last, die durch zahlreiche Prozesse, vor allem aber durch Java-Anwendungen verursacht wird, nachdem die zusätzliche Sekunde geschaltet wurde. Hier wird explizit RHEL 6.1 erwähnt.
    [h=3]Tzdata-Update hilft[/h] Der Fehler tritt bei RHEL 6 nur dann auf, wenn dort kein NTP-Daemon läuft, der die Zeit auf einem Rechner mit den Zeitservern im Internet synchronisiert. Hier sollte die Synchronisation manuell ausgeführt werden. Zusätzlich sollte das Paket Tzdata auf den aktuellen Stand gebracht werden.
    Von der Schaltsekunde betroffen sind auch die Linux-Kernel in RHEL 4 und 5, die auf die Versionen 2.6.9-89.EL und 2.6.18-164.el5 aktualisiert werden sollten. Auch hier empfiehlt Red Hat, die Tzdata-Pakete zu aktualisieren. Der Fehler liegt laut Red Hat darin, dass die Linux-Kernel den Befehl zur Zeitänderung, den sie über den NTP-Daemon erhalten, als Nachricht in die Systemprotokolldatei schreiben möchten, was zum Kernel-Absturz führt.
    [h=3]Fehler im Linux-Kernel 3.4.4 und 3.5-rc4[/h] Betroffen waren unter anderem die Linux-Kernel 3.4.4 und 3.5-rc4, die die zusätzliche Sekunde nicht verarbeiten konnten.
    Erstaunlich sind die massiven Ausfälle allerdings schon, denn eigentlich sind Distributoren, Entwickler und Administratoren schon seit geraumer Zeit gewarnt. Die Schaltsekunde wird in regelmäßigen Abständen hinzugefügt. Denn Zeitmessung, die seit 1967 mit Atomuhren durchgeführt wird, und Erdrotation sind nämlich nicht ganz synchron: Die Erde dreht sich nicht gleichmäßig, die Gezeiten verlangsamen zudem die Erdrotation kontinuierlich - ein Tag ist heute also länger als einer zu Zeiten Napoleons oder des Römischen Reiches.
    Zuletzt wurde die Zeit 2008 angepasst. Damals gab es keine Probleme, was einen Red-Hat-Entwickler noch im Januar 2012 veranlasste, einen Bugreport auf die Schaltsekunde als vernachlässigbar einzustufen.
    [h=3]Zeitsprünge scheibchenweise[/h] Auf der Weltfunkkonferenz im Januar 2012 wollte die Internationale Fernmeldeunion (ITU) über die Abschaffung der Schaltsekunde entscheiden. Statt immer wieder eine Sekunde einzufügen, könnte in einigen Jahrhunderten eine ganze Stunde ausgeglichen werden. Die Entscheidung wurde aber vertagt.
    Auch Google hatte diesen Vorschlag bereits im September 2011 ins Gespräch gebracht.
    [h=3]Nachtrag vom 2. Juli 2012, 13:45 Uhr[/h] Die Ursache der Ausfälle liegt offensichtlich in einem Fehler im Linux-Kernel. Zumindest arbeitet der Entwickler John Stultz an einem Patch.

    Quelle: golem.de

    • Zitieren
  • mandy28
    Erleuchteter
    Reaktionen
    1
    Punkte
    88.996
    Beiträge
    16.178
    • 2. Juli 2012 um 23:06
    • #3

    Was so eine Sekunde ausmachen kann :D

    • Zitieren
  • Reppo
    Super Moderator
    Punkte
    69.655
    Beiträge
    12.683
    • 2. Juli 2012 um 23:09
    • #4

    Jo, wenn heute nicht der 2. Juli wäre, hätte man das glatt für einen Aprilscherz halten können.

    • Zitieren
  • Gast
    Gast
    • 3. Juli 2012 um 03:03
    • #5
    Zitat


    Vorbeugen ist besser als Heilen, hat sich Google anlässlich wiederkehrender Störungen durch Schaltsekunden in den eigenen Serverparks gesagt und ein "leap smear" genanntes Verfahren etabliert, das ebenso einfach wie genial ist: Mit modifizierten NTP-Servern sorgt Google dafür, dass am Tag der Schaltsekunde mit jedem NTP-Update einige Millisekunden eingefügt werden, die sich bis zum Schaltzeitpunkt zu einer Sekunde addieren. Diese kleinen Differenzen zwischen alter und neuer Systemzeit verkraften Betriebssysteme in der Regel klaglos.


    Was schon im von mandy28 geposteten Artikel angeschnitten wurde hier im englischen Original von Google.

    Google ist einfach anders.

    Zitat

    [h=2]Time, technology and leaping seconds[/h] September 15, 2011


    Google’s Site Reliability team is responsible for keeping Google’s services and data centers up and running 24/7. In this post, you’ll hear about a project our Site Reliability Engineers took on to make sure that the fluctuations of time don’t adversely affect Google’s products and services. If you like this (detailed) glimpse at the tech behind the scenes, come back for more about this team’s work in the future. -Ed.

    Have you ever had a watch that ran slow or fast, and that you’d correct every morning off your bedside clock? Computers have that same problem. Many computers, including some desktop and laptop computers, use a service called the “Network Time Protocol” (NTP), which does something very similar—it periodically checks the computers’ time against a more accurate server, which may be connected to an external source of time, such as an atomic clock. NTP also takes into account variable factors like how long the NTP server takes to reply, or the speed of the network between you and the server when setting a to-the-second or better time on the computer you’re using.

    Soon after the advent of ticking clocks, scientists observed that the time told by them (and now, much more accurate clocks), and the time told by the Earth's position were rarely exactly the same. It turns out that being on a revolving imperfect sphere floating in space, being reshaped by earthquakes and volcanic eruptions, and being dragged around by gravitational forces makes your rotation somewhat irregular. Who knew?

    These fluctuations in Earth’s rotational speed mean that even very accurate clocks, like the atomic clocks used by global timekeeping services, occasionally have to be adjusted slightly to bring them in line with “solar time.” There have been 24 such adjustments, called “leap seconds,” since they were introduced in 1972. Their effect on technology has become more and more profound as people come to rely on fast, accurate and reliable technology.

    Why time matters at Google
    Having accurate time is critical to everything we do at Google. Keeping replicas of data up to date, correctly reporting the order of searches and clicks, and determining which data-affecting operation came last are all examples of why accurate time is crucial to our products and to our ability to keep your data safe.

    Very large-scale distributed systems, like ours, demand that time be well-synchronized and expect that time always moves forwards. Computers traditionally accommodate leap seconds by setting their clock backwards by one second at the very end of the day. But this “repeated” second can be a problem. For example, what happens to write operations that happen during that second? Does email that comes in during that second get stored correctly? What about all the unforeseen problems that may come up with the massive number of systems and servers that we run? Our systems are engineered for data integrity, and some will refuse to work if their time is sufficiently “wrong.” We saw some of our clustered systems stop accepting work on a small scale during the leap second in 2005, and while it didn’t affect the site or any of our data, we wanted to fix such issues once and for all.

    This was the problem that a group of our engineers identified during 2008, with a leap second scheduled for December 31. Given our observations in 2005, we wanted to be ready this time, and in the future. How could we make sure everything at Google stays running as if nothing happened, when all our server clocks suddenly see the same second happening twice? Also, how could we make this solution scale? Would we need to audit every line of code that cares about the time? (That’s a lot of code!)

    The solution we came up with came to be known as the “leap smear.” We modified our internal NTP servers to gradually add a couple of milliseconds to every update, varying over a time window before the moment when the leap second actually happens. This meant that when it became time to add an extra second at midnight, our clocks had already taken this into account, by skewing the time over the course of the day. All of our servers were then able to continue as normal with the new year, blissfully unaware that a leap second had just occurred. We plan to use this “leap smear” technique again in the future, when new leap seconds are announced by the IERS.

    Here’s the science bit
    Usually when a leap second is almost due, the NTP protocol says a server must indicate this to its clients by setting the “Leap Indicator” (LI) field in its response. This indicates that the last minute of that day will have 61 seconds, or 59 seconds. (Leap seconds can, in theory, be used to shorten a day too, although that hasn’t happened to date.) Rather than doing this, we applied a patch to the NTP server software on our internal Stratum 2 NTP servers to not set LI, and tell a small “lie” about the time, modulating this “lie” over a time window w before midnight:
    [INDENT] lie(t) = (1.0 - cos(pi * t / w)) / 2.0[/INDENT] What this did was make sure that the “lie” we were telling our servers about the time wouldn’t trigger any undesirable behavior in the NTP clients, such as causing them to suspect the time servers to be wrong and applying local corrections themselves. It also made sure the updates were sufficiently small so that any software running on the servers that were doing synchronization actions or had Chubby locks wouldn't lose those locks or abandon any operations. It also meant this software didn’t necessarily have to be aware of or resilient to the leap second.

    In an experiment, we performed two smears—one negative then one positive—and tested this setup using about 10,000 servers. We'd previously added monitoring to plot the skew between atomic time, our Stratum 2 servers and all those NTP clients, allowing us to constantly evaluate the performance of our time infrastructure. We were excited to see monitoring showing plots of those servers’ clocks tracking our model's predictions, and that we were continuing to serve users’ requests without errors.

    Following the successful test, we reconfigured all our production Stratum 2 NTP servers with details of the actual leap second, ready for New Year's Eve, when they would automatically activate the smear for all production machines, without any further human intervention required. We had a “big red button” opt-out that allowed us to stop the smear in case anything went wrong.

    What we learned
    The leap smear is talked about internally in the Site Reliability Engineering group as one of our coolest workarounds, that took a lot of experimentation and verification, but paid off by ultimately saving us massive amounts of time and energy in inspecting and refactoring code. It meant that we didn’t have to sweep our entire (large) codebase, and Google engineers developing code don’t have to worry about leap seconds. The team involved in solving this issue was a handful of people, distributed around the world, who were able to work together without restriction in order to solve this problem.

    The solution to this challenge drove a lot of thinking to develop better ways to implement locking and consistency, and synchronizing units of work between servers across the world. It also meant we thought more about the precision of our time systems, which have a knock-on effect on our ability to minimize resource wastage and run greener data centers by reducing the amount of time we must spend waiting for responses and rarely doing excess work.

    By anticipating potential problems and developing solutions like these, the Site Reliability Engineering group informs and inspires the development of new technology for distributed systems—the systems that you use every day in Google’s products.

    Posted by Christopher Pascoe, Site Reliability Engineer

    Alles anzeigen

    Official Google Blog: Time, technology and leaping seconds

    Cu
    Verbogener

    • Zitieren

Jetzt mitmachen!

Du hast noch kein Benutzerkonto auf unserer Seite? Registriere dich kostenlos und nimm an unserer Community teil!

Benutzerkonto erstellen Anmelden

Spenden

Vielen Dank für die Unterstützung!
Hiermit unterstützt du Zebradem.
Das beinhaltet überwiegend die Serverkosten und Lizenzgebühren.
Spenden

Letzte Beiträge

  • Musik TV ( IPTV)

    Fellfresse 5. Juni 2025 um 20:00
  • BGH-Urteil: Fingerabdruck schützt dein Smartphone nicht mehr

    heugabel 5. Juni 2025 um 16:27
  • Pluto TV

    Fellfresse 4. Juni 2025 um 19:43
  • BGH-Urteil: Neue Richtlinien zur Entsperrung von Handys durch Ermittler

    Katze Flohli 4. Juni 2025 um 12:09
  • Plex Live TV / LG Channels / Wedo TV

    Fellfresse 3. Juni 2025 um 18:48
  • Amazon Fire TV und die Schatten der Piraterie

    heugabel 3. Juni 2025 um 09:27
  • IPTV-Pirat steht vor Rekordstrafe – 25 bis 30 Jahre Haft

    Morbid Angel 3. Juni 2025 um 07:44
  • ALDI TALK Unlimited: Ein GitHub-Skript für echte Unbegrenztheit

    heugabel 3. Juni 2025 um 07:27
  • Samsung TV Plus/Rakuten TV

    Fellfresse 2. Juni 2025 um 22:36
  • Medienkompetenz: Eine Notwendigkeit in der digitalen Welt

    heugabel 1. Juni 2025 um 12:27

Aktivste Themen

  • The Highway to Freedom is now Open for Everyone!!

    29 Antworten
  • iOmega sftp

    24 Antworten
  • Wo sind die Linux User ???

    20 Antworten
  • Erste Beta von Ubuntu 10.04 steht zum Download bereit

    19 Antworten
  • php webseiten script ubuntu reboot

    18 Antworten
  • Welches Linux auf alten Laptop?

    11 Antworten
  • kennt sich jemand mit SABnzbd aus?

    10 Antworten
  • Keybord Error bei Fujitsu Siemens Futro C 100

    9 Antworten
  • Debian Homeserver Anleitung

    9 Antworten
  • Debian 5.0.5

    9 Antworten
  1. Kontakt
© 2024 Zebradem - Software by WoltLab