Instalación de OpenStack de múltiples nodos en CentOS 7 a través de Packstack

OpenStack es un software de nube de código abierto que proporciona infraestructura como servicio (IaaS). Se puede instalar en uno o varios nodos.

En este artículo, implementaremos openStack en tres nodos (computación + controlador + red) en CentOS 7.x usando el repositorio RDO y la utilidad packstack. Para la instalación de OpenStack de un solo nodo, consulte lo siguiente:

Cómo instalar OpenStack de un solo nodo en CentOS 7

En el artículo, estoy usando tres máquinas virtuales alojadas en VirtualBox y cada VM tiene una sola interfaz LAN. A continuación se muestran los detalles de la arquitectura:

Detalles del nodo del controlador:

  • Nombre de host = controlador.ejemplo.com
  • Dirección IP = 192.168.1.30
  • SO = CentOS 7.x
  • DNS = 192.168.1.11

Los siguientes componentes de OpenStack se instalarán en el nodo del controlador:

  1. Piedra clave
  2. Mirada
  3. rápido
  4. Ceniza
  5. Horizonte
  6. Neutrón
  7. nova novncproxy
  8. noviembre
  9. api nova
  10. Programador Nova
  11. Nova-conductor

Detalles del nodo de cálculo:

  • Nombre de host = computar.ejemplo.com
  • Dirección IP = 192.168.1.31
  • SO = CentOS 7.X
  • DNS = 192.168.1.11

Los siguientes componentes de OpenStack se instalarán en el nodo de cálculo:

  1. Cálculo de Nova
  2. Neutrón – Agente Openvswitch

Detalles del nodo de red:

  • Nombre de host = red.ejemplo.com
  • Dirección IP = 192.168.1.32
  • SO = CentOS 7.x
  • DNS = 192.168.1.11

Los siguientes componentes de OpenStack se instalarán en el nodo de red:

  1. Servidor de neutrones
  2. Agente DHCP de Neturon
  3. Neutrón- Agente Openswitch
  4. Agente neutrón L3

Realice los siguientes pasos para la instalación:

Paso: 1 Actualice los nodos usando el siguiente comando.

Use el siguiente comando en los tres nodos para actualizar todos los paquetes instalados.

# yum -y update ; reboot

Paso:2 Actualice el archivo /etc/hosts y el nombre de host

Establezca el nombre de host en los tres nodos usando el siguiente comando, en caso de que no esté configurado.

# hostnamectl set-hostname 'new_hostname'

Actualice el archivo /etc/hosts si no tiene configurado su DNS local.

192.168.1.30 controller.example.com controller
192.168.1.31 compute.example.com    compute
192.168.1.32 network.example.com    network

Paso:3 Deshabilite SELinux y Network Manager en los tres nodos.

Use el siguiente comando para deshabilitar SELinux en los tres nodos.

# setenforce 0

Deshabilitado SELinux permanentemente cambiando el parámetro ‘SELINUX=deshabilitado’ en el archivo ‘/etc/sysconfig/selinux

Utilice los siguientes comandos para deshabilitar Network Manager en los tres nodos.

# systemctl stop NetworkManager
# systemctl disable NetworkManager
# reboot

Paso:4 Establezca la autenticación sin contraseña desde el nodo del controlador hasta el nodo de computación y red.

Ejecute los siguientes comandos desde el nodo del controlador.

[[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]

Revisa ahora :

[[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] ~]#

Paso:5 Habilite el repositorio RDO e instale la utilidad Packstack

Use el siguiente comando yum para habilitar el repositorio RDO e instalar la utilidad packstack solo en el nodo del controlador.

[[email protected] ~]# yum install -y https://www.rdoproject.org/repos/rdo-release.rpm
[[email protected] ~]# yum install -y openstack-packstack

Paso:6 Generar y personalizar el archivo de respuesta

Use el siguiente comando para generar el archivo de respuesta.

[[email protected] ~]# packstack --gen-answer-file=/root/answer.txt
[[email protected] ~]#

Edite el archivo de respuesta y especifique la dirección IP del controlador, el cómputo y el nodo de red. Aparte de esto, también especifique las contraseñas de diferentes servicios y deshabilite los componentes como la versión Demo y 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>
..........................................

Nota : En caso de que no tenga un servidor NTP, puede dejar el parámetro NTP como está, pero se recomienda encarecidamente que usemos el servidor ntp para la sincronización de tiempo.

Paso:7 Inicie la instalación usando el comando packstack.

Ahora estamos listos para comenzar la instalación de openstack usando el comando packstack. Ejecute el siguiente comando desde el nodo del controlador.

[[email protected] ~]# packstack --answer-file=/root/answer.txt

Una vez que la instalación se complete con éxito nos aparecerá a continuación:

libertad-openstack-instalación-exitosa-mensaje

Después de la instalación, una nueva interfaz ‘br-ex‘ se creará en el nodo de red. Agregue la interfaz de red (enp0s3 o eth0 o puede ser otro nombre) al Abra el puente vSwitch ‘br-ex’ como puerto y asigne la dirección IP de ‘enp0s3’ a ‘br-ex’

br-ex-interfaz-red-nodo

[[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

Reinicie el servicio de red usando el siguiente comando.

[[email protected] network-scripts]# systemctl restart network
[[email protected] network-scripts]#

configurar-br-ex-network-node

Paso:8 Acceda al panel de control de Openstack.

Ahora intente acceder al panel de control de openstack desde el navegador usando a continuación.

https://192.168.1.30/tablero

Utilice el nombre de usuario como ‘admin’ y la contraseña que especifique en el archivo answer.txt.

Inicio de sesión-OpenStack-Liberty- Dashboard

Haga clic en ‘Conectar’

Uso-Resumen-OpenStack-Dashboard

Nota: en caso de que obtenga ‘Error: no se puede recuperar la información del límite de volumen’ en el tablero, esto se puede solucionar agregando lo siguiente en el cinder.conf archivo en el nodo del controlador.

[[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}
.....................................

Reinicie el servicio de Cinder.

[[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

Como podemos iniciar sesión en el tablero, podemos decir que la parte de la instalación está completa. Ahora la siguiente tarea es lanzar una instancia, para eso necesitamos realizar las siguientes tareas.

  • Crear proyecto y usuarios
  • Asignar Usuarios al Proyecto.
  • Crear imagen y sabores
  • Definir red interna y externa
  • Crear enrutador
  • Cree reglas de seguridad para máquinas virtuales o instancias.

Para realizar la tarea anterior, consulte la siguiente URL:

Referencia : – https://www.rdoproject.org/install/packstack/

Entradas relacionadas

Deja una respuesta

Tu dirección de correo electrónico no será publicada. Los campos obligatorios están marcados con *