Product
Mailgun-Post-mortem September 2014
Dies wurde am 2. Oktober 2014 gemeldet.
Wir möchten Ihnen einen vollständigen Bericht über die Verbindungsprobleme geben, von denen in den letzten Tagen ein Teil unserer Mailgun-Kunden betroffen war.
Die Situation
Rackspace, unsere Muttergesellschaft und unser Hosting-Anbieter, teilte uns am Freitag, dem 26. September, mit, dass im Rechenzentrum in Chicago (ORD) Neustarts von Cloud-Instanzen durchgeführt werden, die sich auf die Infrastruktur von Mailgun auswirken könnten, und zwar zwischen Sonntag, dem 28. September, 11:00 Uhr UTC und Montag, dem 29. September, 11:00 Uhr UTC. Lesen Sie hier die Erklärung von Rackspace zu den Neustarts: http://www.rackspace.com/blog/an-apology/
Mailgun betreibt mehrere Umgebungen in verschiedenen Rechenzentren über das Hybrid-Cloud-Setup von Rackspace, das Load-Balancer von F5 einsetzt und als primäres Gateway für alle ein- und ausgehenden Verbindungen in unseren Rechenzentren dient. Bei Ausfällen oder Wartungsarbeiten in diesen Umgebungen leitet Mailgun den Datenverkehr aus den betroffenen Umgebungen über virtuelle F5-IP-Pools nahtlos um, ohne dass dies Auswirkungen auf die Kunden hat oder DNS-Änderungen erforderlich sind. Dies gibt uns mehr Kontrolle über den Datenverkehr, sodass wir die Load-Balancing-Verhältnisse für die virtuellen IPs schrittweise erhöhen oder verringern und den Datenverkehr auf die Umgebungen verteilen können.
Der Plan
Um Auswirkungen auf Kunden durch die Neustarts der ORD-Cloud-Instanzen zu vermeiden, bereiteten wir die Umleitung des Datenverkehrs aus dieser Umgebung vor und nahmen alle dafür erforderlichen Änderungen vor. Am Samstag, dem 27. September, um 18:50 Uhr UTC stellten wir fest, dass alle Datenbankreplikate sowie der interne Datenverkehr zwischen den Umgebungen in allen Regionen unterbrochen waren und begannen, Zeitüberschreitungen zu melden.
Wir konnten die eigentliche Ursache für die Zeitüberschreitungen vor Beginn der Cloud-Instanz-Neustarts in ORD nicht ermitteln und den Datenverkehr folglich nicht rechtzeitig umleiten, um Auswirkungen auf Kunden zu vermeiden.
Was tatsächlich passiert ist
Die Neustarts der Cloud-Instanzen in ORD begannen um 01:10 Uhr UTC am Montag, dem 30. September, und führten zu den folgenden Problemen in der Zeit zwischen 01:10 Uhr UTC und 11:29 Uhr UTC:
- Gelegentliche Verbindungsabbrüche
- Verlorene Ereignisse zwischen 02:30 Uhr UTC und 07:00 Uhr UTC
- Etwa 100.000 doppelt gesendete E-Mails
Alle während dieses Ausfalls als akzeptiert gemeldeten Nachrichten wurden zugestellt.
Ein Teil der Mailgun-Kunden erlebte bis in den Nachmittag des Dienstags, den 30. September, weiterhin zeitweilige Verbindungsabbrüche und Fehlerquoten.
Wir haben bei der Untersuchung mit dem Enterprise-Networking-Team von Rackspace zusammengearbeitet und konnten schließlich die Ursache des Problems ermitteln.
Die Cloud-Wartung löste die Fehlerbedingung auf den F5-Servern von Mailgun aus, die begannen, eine Path MTU mit dem Wert 296 für die IPs in den Mailgun-Netzwerken zu melden, was von allen F5s der Rackspace-Kunden mit dedizierten Servern, die Mailgun nutzen, zwischengespeichert wurde.
Die F5s der Rackspace-Kunden mit dedizierten Servern speicherten die MTU von 296 zwischen, die Server hinter den F5s konnten jedoch nur Pakete mit einer MTU von mindestens 512 senden. Dies löste den Paketverlust aus, da die F5 von Mailgun die MTU mit dem kleineren Wert erzwang.
Das Netzwerkteam von Rackspace leerte die Caches auf den F5s von Mailgun sowie auf den F5s einiger Rackspace-Kunden mit dedizierten Servern und richtete die neue virtuelle IP für die Mailgun-Dienste ein. Mailgun änderte die DNS-Einstellungen, wodurch die Leerung der Caches auf den Remote-F5s erzwungen wurde. Dieser Workaround löste die verbleibenden Probleme für die Rackspace-Kunden mit dedizierten Servern, die Mailgun nutzen.
Wir arbeiten weiterhin mit Rackspace zusammen, um die eigentliche Ursache des Problems zu untersuchen. Zum jetzigen Zeitpunkt können wir sagen, dass dies mit einem ungewöhnlich niedrigen Path-MTU-Wert zusammenhängt, der ursprünglich von den F5-Load-Balancern von Mailgun zwischengespeichert und erzwungen wurde.
Wie es weitergeht
Wir nehmen die Verfügbarkeit sehr ernst und entschuldigen uns bei allen Mailgun-Kunden, die von diesem Problem betroffen waren. Sobald wir unsere Ursachenanalyse für das F5-Problem abgeschlossen haben, werden wir Maßnahmen ergreifen, um sicherzustellen, dass Wartungsarbeiten an unserer Cloud-Infrastruktur keine Auswirkungen auf die Mailgun-Kunden haben.