Zum Inhalt springen
_CORE
KI & Agentensysteme Unternehmensinformationssysteme Cloud & Platform Engineering Datenplattform & Integration Sicherheit & Compliance QA, Testing & Observability IoT, Automatisierung & Robotik Mobile & Digitale Produkte Banken & Finanzen Versicherungen Öffentliche Verwaltung Verteidigung & Sicherheit Gesundheitswesen Energie & Versorgung Telko & Medien Industrie & Fertigung Logistik & E-Commerce Retail & Treueprogramme
Referenzen Technologien Blog Know-how Tools
Über uns Zusammenarbeit Karriere
CS EN DE
Lassen Sie uns sprechen

OpenStack — Eine Private Cloud von Grund auf aufbauen

23. 06. 2014 4 Min. Lesezeit CORE SYSTEMScloud
OpenStack — Eine Private Cloud von Grund auf aufbauen

Ein Kunde aus dem Finanzsektor brauchte Cloud — konnte aber aus regulatorischen Gründen die Daten nicht außerhalb des eigenen Rechenzentrums platzieren. Public Clouds wie AWS kamen nicht in Frage. Wir beschlossen, eine Private Cloud auf OpenStack aufzubauen.

Warum OpenStack?

Auf dem Private-Cloud-Markt gab es 2014 mehrere Alternativen: VMware vCloud Suite (teuer, aber bewährt), CloudStack (einfacheres Deployment) und OpenStack (größte Community, modulare Architektur). Der Kunde wollte eine herstellerunabhängige Lösung ohne Lock-in an einen einzelnen Anbieter. OpenStack — unterstützt von Unternehmen wie Rackspace, IBM, HP, Red Hat und Dutzenden anderen — war die logische Wahl.

Im April 2014 erschien das Icehouse-Release mit deutlichen Stabilitätsverbesserungen und neuen Funktionen in der Netzwerkschicht. Darauf bauten wir auf.

OpenStack-Komponenten

OpenStack ist kein einzelnes Produkt — es ist ein Ökosystem von Diensten, wobei jeder einen Aspekt der Cloud-Infrastruktur abdeckt:

  • Keystone — Identität und Authentifizierung, zentrale Verwaltung von Benutzern und Tenants
  • Nova — Compute-Dienst, verwaltet den Lebenszyklus virtueller Maschinen
  • Neutron — Netzwerkdienst, virtuelle Netzwerke, Subnetze, Router, Firewalls
  • Cinder — Block Storage, persistente Festplatten für VMs
  • Glance — Registry von Betriebssystem-Images
  • Horizon — Web-Dashboard zur Verwaltung
  • Swift — Object Storage (analog zu S3)
  • Heat — Orchestrierung, Infrastructure-as-Code-Templates

Hardware und Topologie

Wir setzten OpenStack auf 12 physischen Servern in einem Rack ein: 3 Controller-Knoten (HA), 8 Compute-Knoten und 1 Storage-Knoten mit einem Ceph-Cluster. Jeder Compute-Knoten hatte zwei Xeon E5-2650 v2 Prozessoren, 128 GB RAM und 2× SSD für Ephemeral Storage. Das Netzwerk war 10 GbE mit dedizierten VLANs für Management, Tenant-Traffic und Storage.

# OpenStack — Eine Private Cloud von Grund auf aufbauen
heat_template_version: 2014-10-16

resources:
  web_server:
    type: OS::Nova::Server
    properties:
      image: ubuntu-14.04-lts
      flavor: m1.medium
      key_name: deploy-key
      networks:
        - network: { get_resource: internal_net }

  floating_ip:
    type: OS::Neutron::FloatingIP
    properties:
      floating_network: external

  association:
    type: OS::Neutron::FloatingIPAssociation
    properties:
      floatingip_id: { get_resource: floating_ip }
      port_id: { get_attr: [web_server, addresses, internal_net, 0, port] }

Neutron: Die Netzwerkschicht als größte Herausforderung

Wenn Nova das Herz von OpenStack ist, dann ist Neutron sein komplexestes Organ. Virtuelle Netzwerke, Floating-IP-Adressen, Security Groups, Load Balancer — alles wird von Neutron verwaltet. Und 2014 war es auch die Komponente mit den meisten Bugs.

Wir wählten Open vSwitch als Netzwerk-Backend mit VXLAN-Tunneln zwischen den Compute-Knoten. Jeder Tenant hat ein isoliertes virtuelles Netzwerk — er kann den Traffic eines anderen Tenants nicht sehen. Security Groups implementieren eine zustandsbehaftete Firewall auf Port-Ebene.

Das größte Problem: Der Neutron L3 Agent war ein Single Point of Failure. Wenn der Netzwerk-Knoten ausfiel, funktionierten alle Floating IPs nicht mehr. Die Lösung — Distributed Virtual Router (DVR) — war in Icehouse experimentell. Wir setzten einen HA L3 Agent mit VRRP-Failover ein.

Ceph als Storage-Backend

Für Cinder (Block Storage) und Glance (Image Registry) wählten wir Ceph als Backend — ein verteiltes Speichersystem. Drei OSD-Knoten mit insgesamt 24 Festplatten stellten redundanten Speicher mit einem Replikationsfaktor von 3 bereit.

Der Vorteil der Ceph + OpenStack-Integration: Copy-on-Write-Klonen. Das Erstellen einer neuen VM aus einem Image dauert Sekunden — Ceph erstellt lediglich einen Thin Clone; die tatsächlichen Daten werden erst beim ersten Schreibvorgang kopiert.

Deployment-Automatisierung

Die manuelle Installation von 12 Servern hätte Wochen gedauert. Wir nutzten Puppet mit Modulen von stackforge (heute openstack-puppet) für die automatisierte Konfiguration aller Komponenten. Der gesamte Cluster konnte innerhalb von zwei Stunden „gelöscht und neu erstellt” werden — entscheidend für das Testen von Upgrades.

Betriebserfahrung

Monitoring

OpenStack generiert enorme Mengen an Logs. Wir setzten einen ELK Stack und Nagios für das Monitoring der API-Endpunkte ein. Die Schlüsselmetrik: API-Antwortzeit. Wenn die Nova-API länger als 2 Sekunden zum Antworten braucht, stimmt etwas nicht — typischerweise ein überlasteter RabbitMQ oder ein voller Compute-Knoten.

Upgrades

Das Upgrade von OpenStack zwischen Versionen ist notorisch schwierig. Jede Komponente hat eigene Datenbankmigrationen, API-Versionen ändern sich und Konfigurationen werden umbenannt. Unsere Strategie: Blue-Green Deployment der Controller-Knoten — die neue Version auf Standby-Knoten deployen, Traffic umschalten, alte Knoten als Fallback behalten.

Ergebnisse nach dem ersten Jahr

Auf dem Cluster laufen über 200 virtuelle Maschinen über 8 Tenants verteilt. Das Provisioning einer neuen VM dauert unter 30 Sekunden. Entwickler erstellen ihre Umgebungen selbst über das Horizon-Dashboard oder die CLI — kein Ticket beim Infrastruktur-Team nötig. Plattformverfügbarkeit im ersten Jahr: 99,95 %.

OpenStack ist nicht für jeden, aber für die richtigen Anwendungsfälle ausgezeichnet

OpenStack erfordert ein dediziertes Team — mindestens zwei Personen im Vollzeit-Betrieb. Es ist kein „Installieren und Vergessen”. Aber für Organisationen, die Cloud brauchen und nicht in eine Public Cloud gehen können oder wollen, ist es die beste Open-Source-Alternative.

Die wichtigste Lektion: Starten Sie mit einer minimalen Konfiguration (Nova, Neutron, Cinder, Keystone), bewähren Sie sie in der Produktion und fügen Sie erst dann weitere Dienste hinzu.

openstackcloudvirtualizaceinfrastruktura
Teilen:

CORE SYSTEMS

Wir bauen Kernsysteme und KI-Agenten, die den Betrieb am Laufen halten. 15 Jahre Erfahrung mit Enterprise-IT.

Brauchen Sie Hilfe bei der Implementierung?

Unsere Experten helfen Ihnen bei Design, Implementierung und Betrieb. Von der Architektur bis zur Produktion.

Kontaktieren Sie uns