News
ZurückHochverfügbarkeit mit Floating IPs
Die gesamte Infrastruktur von cloudscale.ch ist darauf ausgelegt, dass Ihre virtuellen Server stets verfügbar sind. Dank Floating IPs können Sie Ihre Services nun auch auf Software-Ebene hochverfügbar betreiben. Nachfolgend erläutern wir kurz:
Wie Sie die Verfügbarkeit mit Floating IPs steigern
Früher oder später ist es soweit: ein Prozess stürzt ab, ein Limit wird erreicht oder Wartungsarbeiten stehen an. Viele Systemadministratoren betreiben daher den gleichen Dienst auf mehreren Servern und ändern bei Bedarf die DNS-Einträge, um Benutzer-Anfragen vom einen auf den anderen Server zu verschieben. Auch bei kurzer TTL bedeutet das jedoch häufig Zusatzaufwand oder gar Service-Unterbrüche – und eine weitere Quelle für Fehler und Folgeprobleme.
Unsere neuen Floating IPs können Sie beliebig zwischen Ihren virtuellen Servern verschieben; ein neuer Server kann für den Benutzer transparent alle Requests übernehmen, während Sie den bisher aktiven Server in Ruhe auf den neusten Stand bringen, neu starten, skalieren oder allfällige Probleme beheben.
Am Beispiel von keepalived lässt sich zeigen, wie einfach Hochverfügbarkeit erreicht werden kann: zwei Server prüfen in regelmässigen Abständen den Zustand des jeweiligen Gegenübers. Bei einem Problem des aktiven Servers übernimmt der Standby-Server automatisch, indem er sich mittels unserer API die Floating IP zuweist. Selbstverständlich können Sie Floating IPs mit unserem Control-Panel auch manuell einem anderen Server zuweisen.
Update: Falls Sie Ihre Server mit Ubuntu 18.04 oder 20.04 betreiben, beachten Sie bitte auch das überarbeitete Beispiel von keepalived.
Um höchstmögliche Verfügbarkeit zu gewährleisten, kombinieren Sie Floating IPs am besten mit unserer Anti-Affinity-Funktion. Damit ist sichergestellt, dass zwei Server, die sich gegenseitig vertreten können, stets auf separaten physischen Maschinen laufen. Auch wenn wir bereits auf den verschiedensten Ebenen für Redundanz gesorgt haben, können Sie so das Restrisiko eines Hardware-Ausfalls noch weiter reduzieren.
Welche weiteren Vorteile Floating IPs bieten
Auch wenn Sie nicht planen, IP-Adressen dynamisch zwischen Servern zu verschieben, können Sie von den neuen Floating IPs profitieren: sie bieten Ihnen zum Beispiel die Möglichkeit, bei Bedarf weitere IP-Adressen zu Ihren Servern hinzuzufügen. Mit jeweils bis zu fünf zusätzlichen IPv4- und IPv6-Adressen können Sie Services oder Kunden voneinander trennen, ohne dafür separate Server erstellen und unterhalten zu müssen.
Update: Das Limit wurde mittlerweile von fünf auf insgesamt fünfzehn Floating IPs oder Floating Networks pro Server erhöht.
Da Floating IPs nicht fix an einen virtuellen Server gebunden sind, bleiben diese beim Löschen des Servers in Ihrem Benutzerkonto erhalten. Damit lässt sich unter anderem vermeiden, dass Ihre "Service IP" beim Ersetzen von Servern verloren geht – vorausgesetzt natürlich, dass Ihre Kunden ausschliesslich mit dieser Floating IP kommunizieren.
Was im Hintergrund geschieht
Aus technischer Sicht ist jede Floating IP ein eigener, kleiner IP-Bereich – daher auch die Netzmaske "/128" oder "/32" bzw. "255.255.255.255". Wenn Sie eine Floating IP erstellen oder sie einem neuen Server zuweisen, erhalten unsere Router eine entsprechende Anweisung: An die Floating IP gerichteter Datenverkehr soll umgehend ebendiesem Server geschickt werden. Diese Konfiguration erfolgt über ein separates, redundantes Setup aus zwei ExaBGP-Speakern, die über redundante BGP-Sessions mit unseren Routern kommunizieren.
Detailliertere Hintergrundinformationen zu diesem besonderen Ansatz haben André Keller von der VSHN AG und unser CEO Manuel Schweizer am SwiNOG Meeting in Bern präsentiert; die Slides dazu finden Sie unter http://www.swinog.ch/meetings/swinog30/. Für unser Cloud-Control-Panel haben wir die technischen Details natürlich wie gewohnt hinter einer selbsterklärenden Benutzeroberfläche versteckt, und für die Nutzung via API finden Sie alle Informationen in der API-Dokumentation unter https://www.cloudscale.ch/en/api/v1.
Stets im Fluss,
Ihr cloudscale.ch-Team