Openstack ist eine kostenlose und Open-Source-Private-Cloud-Software, mit der wir Rechen-, Netzwerk- und Speicherressourcen unseres Rechenzentrums mit Leichtigkeit über ein einziges Dashboard und über Openstack-CLI-Befehle verwalten können. In diesem Artikel zeigen wir, wie man Openstack auf einem CentOS 8-System mit packstack installiert . Packstack ist ein Befehlszeilendienstprogramm, das verschiedene Komponenten von Openstack mithilfe von Puppet-Modulen bereitstellt.
Die Openstack-Bereitstellung mit Packstack wird im Allgemeinen für POC-Zwecke (Proof of Concept) verwendet, daher wird die Verwendung von Packstack für die Produktionsbereitstellung nicht empfohlen. Verwenden Sie die TripleO-Methode, um Openstack in der Produktionsumgebung bereitzustellen.
Mindestsystemanforderungen für OpenStack
- Minimum CentOS 8
- Dual-Core-Prozessor
- 8 GB Arbeitsspeicher
- 40 GB freier Speicherplatz
- Stabile Internetverbindung
- Mindestens eine Netzwerkkarte
Details zur My Lab-Einrichtung:
- Hostname – openstack.example.com
- IP – 192.168.1.8
- Flaches Netzwerk – 192.168.1.0/24
Lassen Sie uns tief in die Openstack-Installationsschritte eintauchen,
Schritt 1) Legen Sie den Hostnamen fest und aktualisieren Sie die Datei /etc/hosts
Öffnen Sie das Terminal und legen Sie den Hostnamen mit dem folgenden hostnamectl-Befehl fest:
[[email protected] ~]# hostnamectl set-hostname "openstack.example.com" [[email protected] ~]# exec bash
Führen Sie den folgenden Echo-Befehl aus, um den Hostnamen-Eintrag in der Datei /etc/hosts anzuhängen.
[[email protected] ~]# echo -e "192.168.1.8\topenstack.example.com" >> /etc/hosts
Schritt 2) Deaktivieren Sie Network Manager und konfigurieren Sie das Netzwerk mithilfe von Netzwerkskripten
Netzwerk-Manager ist das Standardtool in CentOS 8 zum Verwalten von Netzwerken, aber für Openstack müssen wir es deaktivieren, da Openstack-Netzwerke mit Network-Manager nicht richtig funktionieren. Anstelle des Netzwerkmanagers müssen wir native Netzwerkskripte installieren.
Um den Netzwerkmanager zu deaktivieren, führen Sie die folgenden Befehle aus,
[[email protected] ~]# systemctl disable NetworkManager [[email protected] ~]# systemctl stop NetworkManager
Führen Sie den folgenden dnf-Befehl aus, um native Netzwerkskripte zu installieren
[[email protected] ~]# dnf install network-scripts -y
Sobald das network-scripts-Paket installiert ist, können wir das Netzwerk (ifcfg-*-Dateien) mit dem nativen network.service
verwaltenLassen Sie uns nun die IP-Adresse in der Datei ifcfg-enp0s3 konfigurieren und den Netzwerkdienst starten
[email protected] ~]# vi /etc/sysconfig/network-scripts/ifcfg-enp0s3
Speichern und beenden Sie die Datei und starten Sie dann den Netzwerkdienst mit dem folgenden Befehl,
[[email protected] ~]# systemctl start network [[email protected] ~]# systemctl enable network
Überprüfen Sie nun, ob die IP der NIC (enp0s3) zugewiesen ist, indem Sie den Befehl ip verwenden,
[[email protected] ~]# ip a s enp0s3
Schritt 3) Aktivieren Sie OpenStack-Repositories und installieren Sie das Packstack-Dienstprogramm
Zum Zeitpunkt des Schreibens dieses Artikels war ussuri Openstack verfügbar, führen Sie also den folgenden Befehl aus, um seine Repositories zu konfigurieren
[[email protected] ~]# dnf config-manager --set-enabled powertools or [[email protected] ~]# dnf config-manager --enable PowerTools [[email protected] ~]# dnf install -y centos-release-openstack-ussuri
Installieren Sie nun alle verfügbaren Updates und starten Sie Ihr System neu,
[[email protected] ~]# dnf update -y [[email protected] ~]# reboot
Sobald das System nach dem Neustart verfügbar ist, führen Sie den folgenden dnf-Befehl aus, um das Packstack-Dienstprogramm zu installieren
[[email protected] ~]# dnf install -y openstack-packstack
Schritt 4) Antwortdatei generieren und Openstack mit Packstack installieren
Verwenden Sie den Befehl packstack, um die Antwortdatei zu generieren,
[[email protected] ~]# packstack --gen-answer-file /root/openstack-answer.txt
Sobald die Antwortdatei generiert ist, bearbeiten Sie die folgenden Parameter mit dem vi-Editor,
[[email protected] ~]# vi /root/openstack-answer.txt .............. CONFIG_HEAT_INSTALL=y CONFIG_PROVISION_DEMO=n [email protected] CONFIG_NEUTRON_OVN_BRIDGE_IFACES=br-ex:enp0s3 ..............
Speichern und beenden Sie die Datei.
Ersetzen Sie den Schnittstellennamen (enp0s3) gemäß Ihrer Einrichtung.
Hinweis: Das standardmäßige Tenant-Netzwerklaufwerk ist auf „geneve“ eingestellt “ und der Standardtreiber vom Neutronentyp ist auf „geneve“ eingestellt und flach “. Wenn Sie diese Standardparameter ändern möchten, aktualisieren Sie die folgenden Zeilen in der Antwortdatei. In dieser Demonstration werde ich diese Parameter nicht aktualisieren.
CONFIG_NEUTRON_ML2_TYPE_DRIVERS=geneve,flat CONFIG_NEUTRON_ML2_TENANT_NETWORK_TYPES=geneve
Führen Sie den folgenden Befehl aus, um die OpenStack-Bereitstellung mithilfe der Antwortdatei zu initiieren.
[[email protected] ~]# packstack --answer-file /root/openstack-answer.txt
Die Bereitstellung dauert je nach Hardware und Internetgeschwindigkeit Ihres Systems etwa 20 bis 30 Minuten. Nach erfolgreicher Installation erhalten wir Folgendes:
Überprüfen Sie nun, ob die IP von der enp03-Schnittstelle der Brücke br-ex zugewiesen ist, und bestätigen Sie auch, ob die Schnittstelle enp0s3 als Port in ovs-bridge hinzugefügt wurde.
Führen Sie die folgenden Befehle aus:
[[email protected] ~]# ip a s enp0s3 [[email protected] ~]# ip a s br-ex [[email protected] ~]# ovs-vsctl show
Die perfekte, obige Ausgabe bestätigt, dass die Installation erfolgreich war, und das Netzwerk ist auch gemäß der Antwortdatei konfiguriert.
Schritt 5) Greifen Sie auf das Horizon-Dashboard zu
Versuchen Sie nun, sich beim Horizon-Dashboard anzumelden. Die URL ist bereits in der obigen Ausgabe angegeben, in meinem Fall lautet die URL http://192.168.1.8/dashboard , Verwenden Sie den Benutzernamen als Administrator und das Kennwort, das wir in der Antwortdatei angeben.
Wir verweisen auch auf die Datei „keystonerc_admin“ für Anmeldeinformationen
Lassen Sie uns nun diese Openstack-Bereitstellung testen, indem wir eine Instanz starten.
Schritt 6) Testen und überprüfen Sie die OpenStack-Installation, indem Sie eine Instanz starten
Bevor wir eine Instanz in Openstack starten, müssen wir zuerst Netzwerke und Router erstellen und ein Image anzeigen. Lassen Sie uns also zuerst ein externes Netzwerk im Verwaltungsmandanten erstellen, indem Sie die folgenden Neutronenbefehle verwenden,
[[email protected] ~]# source keystonerc_admin [[email protected] ~(keystone_admin)]# neutron net-create external_network --provider:network_type flat --provider:physical_network extnet --router:external
Fügen Sie nun ein Subnetz Ihres flachen Netzwerks zu einem externen Netzwerk hinzu, indem Sie den folgenden Neutronenbefehl ausführen.
[[email protected] ~(keystone_admin)]# neutron subnet-create --name public_subnet --enable_dhcp=True --allocation-pool=start=192.168.1.210,end=192.168.1.230 --gateway=192.168.1.1 external_network 192.168.1.0/24
Erstellen Sie einen Router, indem Sie den folgenden Neutronenbefehl ausführen, und stellen Sie sein Gateway mithilfe eines externen Netzwerks ein
[[email protected] ~(keystone_admin)]# neutron router-create dev-router [[email protected] ~(keystone_admin)]# neutron router-gateway-set dev-router external_network
Erstellen Sie ein privates Netzwerk und hängen Sie ein Subnetz daran an. Führen Sie den folgenden Neutronenbefehl aus,
[[email protected] ~(keystone_admin)]# neutron net-create pvt_net [[email protected] ~(keystone_admin)]# neutron subnet-create --name pvt_subnet pvt_net 10.20.1.0/24
Fügen Sie die pvt_net-Schnittstelle zum Router „dev_router“ hinzu, indem Sie den Befehl below neutron verwenden,
[[email protected] ~(keystone_admin)]# neutron router-interface-add dev-router pvt_subnet
Laden Sie jetzt das Cirros-Bild herunter und laden Sie es dann auf Glow hoch
[[email protected] ~(keystone_admin)]# wget http://download.cirros-cloud.net/0.5.1/cirros-0.5.1-x86_64-disk.img [[email protected] ~(keystone_admin)]# openstack image create --disk-format qcow2 --container-format bare --public --file cirros-0.5.1-x86_64-disk.img cirros
Gehen Sie jetzt zurück zum Horizont-Dashboard und überprüfen Sie die Netzwerktopologie
Perfekt, oben bestätigt, dass das private und externe Netzwerk zusammen mit dem Router korrekt eingerichtet wurden.
Ein letzter Schritt vor dem Erstellen einer VM:Aktualisieren Sie die Standardsicherheitsgruppe, fügen Sie icmp- und ssh-Ingress-Regeln hinzu und klicken Sie auf „Sicherheitsgruppen Klicken Sie auf der Registerkarte "Netzwerk" auf "Regeln verwalten" und dann auf "Regel hinzufügen". ”
Fügen Sie auf ähnliche Weise eine Regel für ssh hinzu
Klicken Sie auf Hinzufügen
Jetzt sind alle Voraussetzungen zum Starten einer Openstack-Instanz erfüllt. Klicken Sie auf Berechnen Tab und wählen Sie dann Instanzen Option und klicken Sie auf „Instanz starten“. ”
Sobald die VM erfolgreich gestartet wurde, erhalten wir etwas wie unten,
Ordnen Sie jetzt der Instanz (demo_vm) eine Floating-IP zu. Unter „Aktionen ”-Tab, wählen Sie “Floating IP zuordnen ”
Wählen Sie nun IP oder klicken Sie auf + Zeichen Floating-IP von einem externen Netzwerk zu erhalten und diese dann zuzuordnen
Sobald die IP mit der VM verknüpft ist, wird unter der Option „IP-Adresse“ die Floating-IP angezeigt, das Beispiel ist unten gezeigt
Versuchen Sie nun, mit der Floating-IP auf diese demo_vm zuzugreifen, verwenden Sie cirros als Benutzer und „gocubsgo“ als Passwort
Großartig, die obige Ausgabe bestätigt, dass wir über Floating-IP auf unsere Instanz zugreifen können. Damit ist der Artikel abgeschlossen; Ich hoffe, dieses Tutorial hilft bei der Bereitstellung von Openstack auf dem CentOS 8-System. Bitte zögern Sie nicht, Ihr Feedback und Ihre Kommentare zu teilen.
Auch lesen :So erstellen Sie eine Instanz in OpenStack über die Befehlszeile