Donnerstag, 8. Oktober 2015

OpenStack

  • Initiiert wurde das Softwareprojekt von  Rackspace & NASA und wird unterstützt durch z.B. Firmen wie SUSE Linux GmbH, Dell, Canonical, etc
  • OpenStack wird als freie Software in Python unter Apache Lizenz entwickelt
  • Cloud Computing (als Dienstleistung) umfasst das gesamte Spektrum der Informationstechnologie (Infrastruktur => z.B. Rechenerleistung, Speicherplatz), Plattformen & Software) 
OpenStack => Software, die aus vielen unterschiedlichen Einzelprodukten besteht:
  • OpenStack Compute -> Nova:
    • Kann Gruppen von virtuellen Maschinen verwalten
    • unterstützt Hypervisoren -> XEN & KVM & Hyper-V(MS)
    • Ansteuerung über libvirt
    • Bereitstellung von Storage: iSCSI, sheepDog oder Swift
    • Bereitstellung von Object Storage: Glance
    • Verwaltung erfolgt über REST API, die mit dem CLI von Eucalyptus angesteuert wird
    • Für den Betrieb von Nova ist noch eine Datenbank notwendig
  • OpenStack Storage -> Swift:
    • verantwortlich für reduntante Datenspeicherung (Object Storage)
    • Als Backend für Glance oder Cinder einsetzbar
    • Für Dateiverwaltung z.B. Cyberduck
  •  OpenStack Image Service -> Glance:
    • stellt den OpenStack Usern Images für virtuelle Maschinen zur Verfügung
    • Images dienen Nova dazu, Instanzen zu kompilieren
  •   OpenStack Identity ->Keystone:
    • Authentifizierungs- und Rechtesystem zwischen den OpenStack Komponenten
    • Gliederung des Projektzugriffs in sog. Mandanten (tenants)
    • Der Tenenat ist Mieter der Cloud und hat mind. einen zugeordenten Benutzer
    • Verschiedene Benutzer mit unterschiedlichen Rechten pro Mandant möglich
    • Token System zur Authorisierung
    • Anbindung anderer Authentifizierungssysteme möglich (z.B. LDAP)
    • Abstrahieren der Authentifizierung auf vorgelagerten Webservern möglich -> Erweiterung der Authentifizierungssysteme
  • OpenStack Dashboard -> Horizon:
    • Webinterface zur Verwaltung der OpenStack Cloud
    • Bereitstellung der wichtigsten Funktionen der OpenStack Komponenten in einer GUI
  • OpenStack Block Storage -> Cinder
    • Bereitstellung virtuellen Blockspeichers in Form virtualisierter Speichermedien (Festplatten, CDs, etc.)
    • Blockspeicher kann an VMs angehängt werden
    • Über eine API-Schnittstelle lässt sich Cinder mit Swift verbinden => Blockspeicher kann mit Objektspeicher kommunizieren 
  • OpenStack Networking -> Neutron (ehem. Quantum)
    • Netzwerkdienst für OpenStack
    • Verwaltung von Netzwerken, Subnetze, IP-Adressen/ Floating IPs
    • Floating IP: IP die als Schnittstelle zwischen dem öffentlichen und internen Netzwerk dient
    • Unterstützung von Load Balancer (?), HA-Proxy(?), Health-Monitor, sowie VLAN & VPN
    • Firewall mit vielseitigen Portregeln 
  • OpenStack Database Service -> Trove
    • befindet sich noch in der Entwicklungsphase
    • soll sowohl NoSQL Datenbank (z.B. MongoDB) als auch SQL-Datenbanken (z.B. MariaDB) in der Cloud als DBaaS (Datenbank as a Service) bereitstellen
  • OpenStack Orchestration -> Heat
    • Erzeugung von Stacks
    • Stack: Konfigurationen aus verschiedenen Cloud-Komponenten z.B. Instanzen, Load Balancer, Sicherheitsgruppen, etc.
    • Realisierung von Deployment- und Autoscaling Prozessen direkt im OpenStack
    • Ablage der Konfiguration in einem Heat Orchestration Template (HOT) im YAML-Format
    • Mit einem Template können gesamte Infrastrukturen automatisiert erzeugt werden
  • OpenStack Telemetry -> Ceilometer
    • Erfassen und Abfragen von Nutzungsdaten der OpenStack Cloud
    • Wird von Heat verwendet um Leistungszahlen für Autoscaling zu ermitteln
  •  OpenStack Data processing service -> Sahara
    • Datenverarbeitungssystem
    • Dem Nutzer einfachen Zugang zu Datenverarbeitungscluster bereitstellen
    • Wikipedia-Artikel wird an diesem Punkt zu chinesisch... SPÄTER noch mal lesen

Keine Kommentare:

Kommentar veröffentlichen