GNU/Linux >> LINUX-Kenntnisse >  >> Ubuntu

OpenStack Liberty auf Ubuntu 14.04 LTS – Nova konfigurieren

Dieses Handbuch hilft Ihnen bei der Konfiguration des Nova (Compute)-Dienstes in einer OpenStak-Umgebung, in OpenStack hostet der Compute-Dienst (Knoten) Cloud-Computing-Systeme. OpenStack-Computing ist ein wichtiger Bestandteil von IaaS, es interagiert mit KeyStone für die Authentifizierung, den Image-Service für Festplatten und Images und das Dashboard für die Benutzer- und Verwaltungsschnittstelle.

OpenStack Compute kann auf Standardhardware horizontal skaliert werden und Bilder herunterladen, um eine Recheninstanz zu starten.

Installieren und konfigurieren Sie den Controller-Knoten:

Wir konfigurieren den Compute-Dienst auf dem Controller-Knoten und melden uns als Root-Benutzer beim MySQL-Server an.

# mysql -u root -p

Erstellen Sie die Nova-Datenbank.

CREATE DATABASE nova;

Erteilen Sie der nova-Datenbank eine ordnungsgemäße Berechtigung.

GRANT ALL PRIVILEGES ON nova.* TO 'nova'@'localhost' IDENTIFIED BY 'password';

GRANT ALL PRIVILEGES ON nova.* TO 'nova'@'%' IDENTIFIED BY 'password';

Ersetzen Sie „Passwort “ mit einem passenden Passwort. Beenden Sie MySQL.

Laden Sie Ihre Admin-Anmeldeinformationen aus dem Umgebungsskript.

# source admin-openrc.sh

Erstellen Sie den nova-Benutzer zum Erstellen von Dienstanmeldeinformationen.

# openstack user create --domain default --password-prompt nova                                                                                        
User Password:
Repeat User Password:
+-----------+----------------------------------+
| Field     | Value                            |
+-----------+----------------------------------+
| domain_id | default                          |
| enabled   | True                             |
| id        | a25d5cdc7efa4375b0907dd615eebde0 |
| name      | nova                             |
+-----------+----------------------------------+

Fügen Sie dem nova-Benutzer die Administratorrolle hinzu.

# openstack role add --project service --user nova admin

Erstellen Sie die nova-Serviceentität.

# openstack service create --name nova --description "Nova" compute
+-------------+----------------------------------+
| Field       | Value                            |
+-------------+----------------------------------+
| description | Nova                             |
| enabled     | True                             |
| id          | ad302b8a4e884decb8ed0f4fdf319ba1 |
| name        | nova                             |
| type        | compute                          |
+-------------+----------------------------------+

Erstellen Sie den nova-Service-API-Endpunkt.

# openstack endpoint create --region RegionOne compute public http://controller:8774/v2/%\(tenant_id\)s
+--------------+-----------------------------------------+
| Field        | Value                                   |
+--------------+-----------------------------------------+
| enabled      | True                                    |
| id           | 3d7bba2b7c3446e7975f8b74c0cab712        |
| interface    | public                                  |
| region       | RegionOne                               |
| region_id    | RegionOne                               |
| service_id   | ad302b8a4e884decb8ed0f4fdf319ba1        |
| service_name | nova                                    |
| service_type | compute                                 |
| url          | http://controller:8774/v2/%(tenant_id)s |
+--------------+-----------------------------------------+

# openstack endpoint create --region RegionOne compute internal http://controller:8774/v2/%\(tenant_id\)s
+--------------+-----------------------------------------+
| Field        | Value                                   |
+--------------+-----------------------------------------+
| enabled      | True                                    |
| id           | 240d4430f1c442439c3835c12abf7533        |
| interface    | internal                                |
| region       | RegionOne                               |
| region_id    | RegionOne                               |
| service_id   | ad302b8a4e884decb8ed0f4fdf319ba1        |
| service_name | nova                                    |
| service_type | compute                                 |
| url          | http://controller:8774/v2/%(tenant_id)s |
+--------------+-----------------------------------------+

# openstack endpoint create --region RegionOne compute admin http://controller:8774/v2/%\(tenant_id\)s
+--------------+-----------------------------------------+
| Field        | Value                                   |
+--------------+-----------------------------------------+
| enabled      | True                                    |
| id           | 758d41f12fff4617bc7e4c12bd4502fc        |
| interface    | admin                                   |
| region       | RegionOne                               |
| region_id    | RegionOne                               |
| service_id   | ad302b8a4e884decb8ed0f4fdf319ba1        |
| service_name | nova                                    |
| service_type | compute                                 |
| url          | http://controller:8774/v2/%(tenant_id)s |
+--------------+-----------------------------------------+

Compute-Controller-Komponenten installieren und konfigurieren:

Installieren Sie die folgenden Pakete auf dem Controller-Knoten.

# apt-get install nova-api nova-cert nova-conductor nova-consoleauth nova-novncproxy nova-scheduler python-novaclient

Bearbeiten Sie die /etc/nova/nova.conf.

# nano /etc/nova/nova.conf

Ändern Sie die folgenden Einstellungen und stellen Sie sicher, dass Sie Einträge in den richtigen Abschnitten platzieren. Wenn Sie keinen vorhandenen Abschnitt für die folgenden Einträge finden, müssen Sie möglicherweise diese bestimmten Abschnitte zur Datei hinzufügen.

[DEFAULT]
...
verbose = True
rpc_backend = rabbit
auth_strategy = keystone
## Management IP of Controller Node
my_ip = 192.168.12.21 
network_api_class = nova.network.neutronv2.api.API
security_group_api = neutron
linuxnet_interface_driver = nova.network.linux_net.NeutronLinuxBridgeInterfaceDriver
firewall_driver = nova.virt.firewall.NoopFirewallDriver
enabled_apis=osapi_compute,metadata

[vnc]
## Management IP of Controller Node
vncserver_listen = $my_ip
vncserver_proxyclient_address = $my_ip

[database]
connection = mysql+pymysql://nova:password@controller/nova

## Replace "password" with the password you chose for nova database

[oslo_messaging_rabbit]
rabbit_host = controller
rabbit_userid = openstack
rabbit_password = password

## Replace "password" with the password you chose for the openstack account in RabbitMQ.

[keystone_authtoken]
auth_uri = http://controller:5000
auth_url = http://controller:35357
auth_plugin = password
project_domain_id = default
user_domain_id = default
project_name = service
username = nova
password = password

## Replace "password" with the password you chose for nova user in the identity service

[glance]
host = controller

[oslo_concurrency]
lock_path = /var/lib/nova/tmp

Füllen Sie die Compute-Datenbank.

#  su -s /bin/sh -c "nova-manage db sync" nova

Starten Sie die Rechendienste neu.

# service nova-api restart
# service nova-cert restart
# service nova-consoleauth restart
# service nova-scheduler restart
# service nova-conductor restart
# service nova-novncproxy restart

Entfernen Sie die SQLite-Datenbankdatei.

# rm -f /var/lib/nova/nova.sqlite

Installieren und konfigurieren Sie Nova (auf dem Rechenknoten):

Jetzt installieren und konfigurieren wir den Compute-Dienst auf einem Rechenknoten. Dieser Dienst unterstützt mehrere Hypervisoren zum Bereitstellen von Instanzen (VMs). Unser Rechenknoten verwendet den QEMU-Hypervisor mit KVM-Erweiterung zur Unterstützung der hardwarebeschleunigten Virtualisierung.

Überprüfen Sie, ob Ihr Computer Hardwarevirtualisierung unterstützt.

# egrep -c '(vmx|svm)' /proc/cpuinfo
1

Wenn der Befehl den Wert 1 oder mehr zurückgibt, unterstützt Ihr Rechenknoten die Virtualisierung.

Stellen Sie sicher, dass Sie das OpenStack Kilo-Repository auf dem Rechenknoten aktiviert haben, oder befolgen Sie die nachstehenden Schritte, um es zu aktivieren.

Installieren Sie den Schlüsselbund und das Repository des Ubuntu Cloud-Archivs.

# apt-get install software-properties-common

# add-apt-repository cloud-archive:liberty

Aktualisieren Sie Ihr System.

# apt-get update && apt-get dist-upgrade

Installieren Sie die folgenden Pakete auf jedem Ihrer Compute-Knoten.

# apt-get install nova-compute sysfsutils

Bearbeiten Sie /etc/nova/nova-compute.conf, um QEMU zu aktivieren.

# vi /etc/nova/nova-compute.conf

Ändern Sie virt_type=kvm in qemu im Abschnitt libvirt.

[libvirt]
...
virt_type = qemu

Bearbeiten Sie die /etc/nova/nova.conf.

# vi /etc/nova/nova.conf

Ändern Sie die folgenden Einstellungen und stellen Sie sicher, dass Sie Einträge in den richtigen Abschnitten platzieren.

[DEFAULT]
...
verbose = True
rpc_backend = rabbit
auth_strategy = keystone
## Management IP of Compute Node
my_ip = 192.168.12.22
network_api_class = nova.network.neutronv2.api.API
security_group_api = neutron
linuxnet_interface_driver = nova.network.linux_net.NeutronLinuxBridgeInterfaceDriver
firewall_driver = nova.virt.firewall.NoopFirewallDriver
[vnc]
enabled = True
vncserver_listen = 0.0.0.0
vncserver_proxyclient_address = $my_ip
novncproxy_base_url = http://controller:6080/vnc_auto.html
[oslo_messaging_rabbit]
rabbit_host = controller
rabbit_userid = openstack
rabbit_password = password
## Replace "password" with the password you chose for the openstack account in RabbitMQ.

[keystone_authtoken]
auth_uri = http://controller:5000
auth_url = http://controller:35357
auth_plugin = password
project_domain_id = default
user_domain_id = default
project_name = service
username = nova
password = password

## Replace "password" with the password you chose for nova user in the identity service

[glance]
host = controller

## Replace controller with your controller hostname

[oslo_concurrency]
lock_path = /var/lib/nova/tmp

Starten Sie den Rechendienst neu.

# service nova-compute restart

Entfernen Sie die SQLite-Datenbankdatei.

# rm -f /var/lib/nova/nova.sqlite

Betrieb überprüfen:

Administratoranmeldeinformationen auf Controller-Knoten laden.

# source admin-openrc.sh

Listen Sie die zu überprüfenden Compute-Service-Komponenten auf und führen Sie den folgenden Befehl auf dem Controller-Knoten aus.

# nova service-list
+----+------------------+--------------------------+----------+---------+-------+----------------------------+-----------------+
| Id | Binary           | Host                     | Zone     | Status  | State | Updated_at                 | Disabled Reason |
+----+------------------+--------------------------+----------+---------+-------+----------------------------+-----------------+
| 1  | nova-consoleauth | controller.itzgeek.local | internal | enabled | up    | 2015-11-25T14:11:25.000000 | -               |
| 2  | nova-cert        | controller.itzgeek.local | internal | enabled | up    | 2015-11-25T14:11:24.000000 | -               |
| 3  | nova-conductor   | controller.itzgeek.local | internal | enabled | up    | 2015-11-25T14:11:28.000000 | -               |
| 4  | nova-scheduler   | controller.itzgeek.local | internal | enabled | up    | 2015-11-25T14:11:24.000000 | -               |
| 5  | nova-compute     | compute.itzgeek.local    | nova     | enabled | up    | 2015-11-25T14:11:30.000000 | -               |
+----+------------------+--------------------------+----------+---------+-------+----------------------------+-----------------+

Sie sollten eine Ausgabe mit vier aktivierten Dienstkomponenten auf dem Controller-Knoten und einer Dienstkomponente auf dem Rechenknoten erhalten.

Bilder im Image-Service-Katalog auflisten, um die Konnektivität zwischen Compute und Image-Service zu überprüfen.

# nova image-list
+--------------------------------------+---------------------+--------+--------+
| ID                                   | Name                | Status | Server |
+--------------------------------------+---------------------+--------+--------+
| b19c4522-df31-4331-a2e1-5992abcd4ded | Ubuntu_14.04-x86_64 | ACTIVE |        |
+--------------------------------------+---------------------+--------+--------+

Das ist alles !!!, Sie haben den Nova-Dienst erfolgreich konfiguriert. Als nächstes konfigurieren Sie OpenStack Networking (Neutron).


Ubuntu
  1. OpenStack Kilo auf Ubuntu 14.04.2 – Konfigurieren Sie Neutron #1

  2. OpenStack Kilo auf Ubuntu 14.04.2 – Nova konfigurieren

  3. OpenStack Kilo auf Ubuntu 14.04.2 – Glance konfigurieren

  4. OpenStack Kilo auf Ubuntu 14.04.2 – Konfigurieren Sie KeyStone #2

  5. OpenStack Kilo auf Ubuntu 14.04.2 – Konfigurieren Sie KeyStone #1

So konfigurieren Sie eine statische IP-Adresse in Ubuntu 22.04 LTS

OpenStack Liberty auf Ubuntu 14.04 LTS – Konfigurieren Sie KeyStone #2

OpenStack Liberty auf Ubuntu 14.04 LTS – Konfigurieren Sie KeyStone #1

Installieren Sie OpenStack Liberty auf Ubuntu 14.04 LTS

OpenStack Liberty auf Ubuntu 14.04 – Konfigurieren Sie Neutron #2

Installieren und konfigurieren Sie KVM in Ubuntu 20.04 LTS