GNU/Linux >> Tutoriels Linux >  >> Ubuntu

OpenStack Liberty sur Ubuntu 14.04 LTS - Configurer Nova

Ce guide vous aide à configurer le service Nova (calcul) sur l'environnement OpenStak, dans OpenStack, le service de calcul (nœud) héberge les systèmes de cloud computing. Le calcul OpenStack est un élément majeur de l'IaaS, il interagit avec KeyStone pour l'authentification, le service d'image pour le disque et les images, et le tableau de bord pour l'interface utilisateur et administrative.

OpenStack Compute peut évoluer horizontalement sur du matériel standard et télécharger des images pour lancer une instance informatique.

Installer et configurer le nœud du contrôleur :

Nous allons configurer le service Compute sur le nœud du contrôleur, nous connecter au serveur MySQL en tant qu'utilisateur root.

# mysql -u root -p

Créez la base de données nova.

CREATE DATABASE nova;

Accordez une autorisation appropriée à la base de données nova.

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

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

Remplacez "mot de passe ” avec un mot de passe approprié. Quittez MySQL.

Chargez vos informations d'identification d'administrateur à partir du script d'environnement.

# source admin-openrc.sh

Créez l'utilisateur nova pour créer des informations d'identification de service.

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

Ajoutez le rôle d'administrateur à l'utilisateur nova.

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

Créez l'entité de service nova.

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

Créez le point de terminaison de l'API de service nova.

# 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 |
+--------------+-----------------------------------------+

Installez et configurez les composants du contrôleur de calcul :

Installez les packages ci-dessous sur le nœud du contrôleur.

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

Modifiez le fichier /etc/nova/nova.conf.

# nano /etc/nova/nova.conf

Modifiez les paramètres ci-dessous et assurez-vous de placer une entrée dans les sections appropriées. Si vous ne trouvez pas de section existante pour les entrées ci-dessous, vous devrez peut-être ajouter ces sections particulières au fichier.

[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

Remplir la base de données Compute.

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

Redémarrez les services de calcul.

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

Supprimer le fichier de base de données SQLite.

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

Installer et configurer Nova (sur le nœud de calcul) :

Maintenant, nous allons installer et configurer le service Compute sur un nœud de calcul, ce service prend en charge plusieurs hyperviseurs pour déployer des instances (VM). Notre nœud de calcul utilise l'hyperviseur QEMU avec l'extension KVM pour prendre en charge la virtualisation accélérée par le matériel.

Vérifiez si votre ordinateur prend en charge la virtualisation matérielle.

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

Si la commande renvoie la valeur 1 ou plus, votre nœud de calcul prend en charge la virtualisation.

Assurez-vous d'avoir activé le référentiel OpenStack Kilo sur Compute Node, ou suivez les étapes ci-dessous pour l'activer.

Installez le porte-clés et le référentiel de l'archive Ubuntu Cloud.

# apt-get install software-properties-common

# add-apt-repository cloud-archive:liberty

Mettez à niveau votre système.

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

Installez les packages suivants sur chaque nœud de calcul.

# apt-get install nova-compute sysfsutils

Modifiez /etc/nova/nova-compute.conf pour activer QEMU.

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

Remplacez virt_type=kvm par qemu dans la section libvirt.

[libvirt]
...
virt_type = qemu

Modifiez le fichier /etc/nova/nova.conf.

# vi /etc/nova/nova.conf

Modifiez les paramètres ci-dessous et assurez-vous de placer une entrée dans les sections appropriées.

[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

Redémarrez le service de calcul.

# service nova-compute restart

Supprimer le fichier de base de données SQLite.

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

Vérifier l'opération :

Chargez les informations d'identification d'administrateur sur le nœud de contrôleur.

# source admin-openrc.sh

Répertoriez les composants du service de calcul à vérifier, exécutez la commande suivante sur le nœud de contrôleur.

# 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 | -               |
+----+------------------+--------------------------+----------+---------+-------+----------------------------+-----------------+

Vous devriez obtenir une sortie avec quatre composants de service activés sur le nœud de contrôleur et un composant de service sur le nœud de calcul.

Répertoriez les images dans le catalogue du service d'imagerie pour vérifier la connectivité entre le service de calcul et le service d'imagerie.

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

C'est tout !!!, vous avez configuré avec succès le service Nova. Ensuite, configurez OpenStack Networking (Neutron).


Ubuntu
  1. OpenStack Kilo sur Ubuntu 14.04.2 – Configurer Cinder #2

  2. OpenStack Kilo sur Ubuntu 14.04.2 - Configurer Cinder #1

  3. OpenStack Kilo sur Ubuntu 14.04.2 - Configurer Horizon

  4. OpenStack Kilo sur Ubuntu 14.04.2 - Configurer Neutron #3

  5. OpenStack Kilo sur Ubuntu 14.04.2 - Configurer Neutron #2

Comment configurer une adresse IP statique dans Ubuntu 22.04 LTS

OpenStack Kilo sur Ubuntu 14.04.2 - Configurer Glance

OpenStack Kilo sur Ubuntu 14.04.2 – Configurer KeyStone #2

OpenStack Kilo sur Ubuntu 14.04.2 - Configurer KeyStone #1

OpenStack Kilo sur Ubuntu 14.04.2 – Configurer Swift #1

Installer et configurer KVM dans Ubuntu 20.04 LTS