OpenStack ist eine Open-Source-Cloud-Software, die Infrastructure-as-a-Service (IaaS) bereitstellt . Es kann auf einzelnen und mehreren Knoten installiert werden.
In diesem Artikel werden wir OpenStack auf drei Knoten (Rechen + Controller + Netzwerk) unter CentOS 7.x mit dem RDO-Repository und dem Packstack-Dienstprogramm bereitstellen. Informationen zur Einzelknoten-OpenStack-Installation finden Sie unten:
So installieren Sie Single Node OpenStack unter CentOS 7
Im Artikel verwende ich drei virtuelle Maschinen, die auf VirtualBox gehostet werden, und jede VM hat eine einzelne LAN-Schnittstelle. Nachfolgend finden Sie Architekturdetails:
Controller-Knotendetails:
- Hostname =controller.example.com
- IP-Adresse =192.168.1.30
- Betriebssystem =CentOS 7.x
- DNS =192.168.1.11
Die folgenden OpenStack-Komponenten werden auf dem Controller-Knoten installiert:
- Schlüsselstein
- Blick
- schnell
- Schlacke
- Horizont
- Neutron
- Nova novncproxy
- Novnc
- Nova-API
- Nova-Scheduler
- Nova-Dirigent
Rechenknotendetails:
- Hostname =compute.example.com
- IP-Adresse =192.168.1.31
- Betriebssystem =CentOS 7.X
- DNS =192.168.1.11
Die folgenden OpenStack-Komponenten werden auf dem Rechenknoten installiert:
- Nova Compute
- Neutron – Openvswitch-Agent
Netzwerkknotendetails :
- Hostname =network.example.com
- IP-Adresse =192.168.1.32
- Betriebssystem =CentOS 7.x
- DNS =192.168.1.11
Die folgenden OpenStack-Komponenten werden auf dem Netzwerkknoten installiert:
- Neutron-Server
- Neturon-DHCP-Agent
- Neutron-Openswitch-Agent
- Neutron L3-Agent
Führen Sie die folgenden Schritte zur Installation durch:
Schritt:1 Aktualisieren Sie die Knoten mit dem folgenden Befehl.
Verwenden Sie den folgenden Befehl auf allen drei Knoten, um alle installierten Pakete zu aktualisieren.
# yum -y update ; reboot
Schritt:2 /etc/hosts-Datei und Hostnamen aktualisieren
Legen Sie den Hostnamen auf allen drei Knoten mit dem folgenden Befehl fest, falls er nicht festgelegt ist.
# hostnamectl set-hostname 'new_hostname'
Aktualisieren Sie die Datei /etc/hosts, wenn Sie Ihr lokales DNS nicht konfiguriert haben.
192.168.1.30 controller.example.com controller 192.168.1.31 compute.example.com compute 192.168.1.32 network.example.com network
Schritt:3 Deaktivieren Sie SELinux und Network Manager auf allen drei Knoten.
Verwenden Sie den folgenden Befehl, um SELinux auf allen drei Knoten zu deaktivieren.
# setenforce 0
Deaktivieren Sie SELinux dauerhaft, indem Sie den Parameter „SELINUX=disabled“ in der Datei „/etc/sysconfig/selinux“ ändern ‘
Verwenden Sie die folgenden Befehle, um Network Manager auf allen drei Knoten zu deaktivieren.
# systemctl stop NetworkManager # systemctl disable NetworkManager # reboot
Schritt:4 Legen Sie die passwortlose Authentifizierung vom Controller-Knoten auf den Rechen- und Netzwerkknoten fest.
Führen Sie die folgenden Befehle vom Controller-Knoten aus.
[[email protected] ~]# ssh-keygen [[email protected] ~]# ssh-copy-id -i /root/.ssh/id_rsa.pub [email protected] [[email protected] ~]# ssh-copy-id -i /root/.ssh/id_rsa.pub [email protected]
Überprüfen Sie jetzt:
[[email protected] ~]# ssh compute Last login: Sun Apr 3 00:03:44 2016 from controller.example.com [[email protected] ~]# hostname compute.example.com [[email protected] ~]# [[email protected] ~]# ssh network Last login: Sun Apr 3 00:04:20 2016 from controller.example.com [[email protected] ~]# hostname network.example.com [[email protected] ~]#
Schritt:5 Aktivieren Sie das RDO-Repository und installieren Sie das Packstack-Dienstprogramm
Verwenden Sie den folgenden yum-Befehl, um das RDO-Repository zu aktivieren und das Packstack-Dienstprogramm nur auf dem Controller-Knoten zu installieren.
[[email protected] ~]# yum install -y https://www.rdoproject.org/repos/rdo-release.rpm [[email protected] ~]# yum install -y openstack-packstack
Schritt:6 Antwortdatei erstellen und anpassen
Verwenden Sie den folgenden Befehl, um eine Antwortdatei zu generieren.
[[email protected] ~]# packstack --gen-answer-file=/root/answer.txt [[email protected] ~]#
Bearbeiten Sie die Antwortdatei und geben Sie die IP-Adresse des Controllers, des Computers und des Netzwerkknotens an. Legen Sie außerdem die Passwörter verschiedener Dienste fest und deaktivieren Sie die Komponenten wie Demoversion und Ceilometer.
[[email protected] ~]# vi /root/answer.txt ........................................ CONFIG_CONTROLLER_HOST=192.168.1.30 CONFIG_COMPUTE_HOSTS=192.168.1.31 CONFIG_NETWORK_HOSTS=192.168.1.32 CONFIG_PROVISION_DEMO=n CONFIG_CEILOMETER_INSTALL=n CONFIG_HORIZON_SSL=y CONFIG_NTP_SERVERS=<Specify NTP Server IP > CONFIG_KEYSTONE_ADMIN_PW=<Specify New_Password> ..........................................
Hinweis: Falls Sie keinen NTP-Server haben, können Sie den NTP-Parameter unverändert lassen, aber es wird dringend empfohlen, den NTP-Server für die Zeitsynchronisierung zu verwenden.
Schritt:7 Starten Sie die Installation mit dem Befehl packstack.
Jetzt können wir die Openstack-Installation mit dem Packstack-Befehl starten. Führen Sie den folgenden Befehl vom Controller-Knoten aus.
[[email protected] ~]# packstack --answer-file=/root/answer.txt
Sobald die Installation erfolgreich abgeschlossen ist, erhalten wir Folgendes:
Nach der Installation erscheint eine neue Oberfläche „br-ex ‘ wird im Netzwerkknoten erstellt. Fügen Sie der Open vSwitch ‚br-ex‘ Bridge eine Netzwerkschnittstelle (enp0s3 oder eth0 oder kann ein anderer Name sein) hinzu als Port und weisen Sie die IP-Adresse von „enp0s3“ „br-ex“ zu
[[email protected] ~]# cd /etc/sysconfig/network-scripts/ [[email protected] network-scripts]# cp ifcfg-enp0s3 ifcfg-br-ex [[email protected] network-scripts]# vi ifcfg-enp0s3 DEVICE=enp0s3 HWADDR=08:00:27:37:4C:EF TYPE=OVSPort DEVICETYPE=ovs OVS_BRIDGE=br-ex ONBOOT=yes [[email protected] network-scripts]# vi ifcfg-br-ex DEVICE=br-ex DEVICETYPE=ovs TYPE=OVSBridge BOOTPROTO=static IPADDR=192.168.1.32 NETMASK=255.255.255.0 GATEWAY=192.168.1.1 DNS1=192.168.1.11 ONBOOT=yes
Starten Sie den Netzwerkdienst mit dem folgenden Befehl neu.
[[email protected] network-scripts]# systemctl restart network [[email protected] network-scripts]#
Schritt:8 Greifen Sie auf das Openstack-Dashboard zu.
Versuchen Sie nun, über den Browser unten auf das Openstack-Dashboard zuzugreifen.
https://192.168.1.30/dashboard
Verwenden Sie den Benutzernamen als „admin“ und das Passwort, das Sie in der Datei answer.txt angeben.
Klicken Sie auf „Verbinden“
Hinweis:Falls Sie im Dashboard „Error:Unable to retrieve volume limit information“ erhalten, kann dies behoben werden, indem Sie Folgendes in der cinder.conf hinzufügen Datei auf dem Controller-Knoten.
[[email protected] ~]# vi /etc/cinder/cinder.conf .................................... [keystone_authtoken] auth_uri = http://<Controller_IP>:5000 auth_url = http://<Controller_IP>:35357 auth_plugin = password project_domain_id = default user_domain_id = default project_name = services username = cinder password = <Cinder_Password> {Search CONFIG_CINDER_KS_PW in answer file} .....................................
Starten Sie den Cinder-Dienst neu.
[[email protected] ~]# systemctl restart openstack-cinder-api.service [[email protected] ~]# systemctl restart openstack-cinder-backup.service [[email protected] ~]# systemctl restart openstack-cinder-scheduler.service [[email protected] ~]# systemctl restart openstack-cinder-volume.service
Da wir uns im Dashboard anmelden können, können wir sagen, dass der Installationsteil abgeschlossen ist. Die nächste Aufgabe besteht nun darin, eine Instanz zu starten, dafür müssen wir die folgenden Aufgaben ausführen .
- Projekt und Benutzer erstellen
- Benutzer dem Projekt zuweisen.
- Bild und Aromen erstellen
- Internes und externes Netzwerk definieren
- Router erstellen
- Sicherheitsregeln für virtuelle Maschine oder Instanz erstellen.
Um die obige Aufgabe auszuführen, beziehen Sie sich auf die folgende URL:
- Starten einer Instanz über das Liberty OpenStack Dashboard.
Referenz:– https://www.rdoproject.org/install/packstack/