GNU/Linux >> Tutoriales Linux >  >> Cent OS

Implementación de OpenStack usando Devstack en el sistema CentOS 7 / RHEL 7

Devstack es una colección de scripts que implementan la última versión del entorno openstack en una máquina virtual, una computadora portátil personal o una computadora de escritorio. Como su nombre indica, se utiliza para entorno de desarrollo y se puede usar para las pruebas funcionales de Openstack Project y, en ocasiones, el entorno openstack implementado por devstack también se puede usar con fines de demostración y para algunos PoC básicos.

En este artículo, demostraré cómo instalar Openstack en el sistema CentOS 7 / RHEL 7 usando Devstack. Los siguientes son los requisitos mínimos del sistema,

  • Procesador de doble núcleo
  • Mínimo 8 GB de RAM
  • Disco duro de 60 GB
  • Conexión a Internet

Los siguientes son  los detalles de mi configuración de laboratorio para la implementación de Openstack usando devstack

  • Instalación mínima de CentOS 7/RHEL 7 (VM)
  • Nombre de host:devstack-linuxtechi
  • Dirección IP:169.144.104.230
  • 10 CPU virtuales
  • 14 GB de RAM
  • Disco duro de 60 GB

Comencemos con los pasos de implementación, inicie sesión en su sistema CentOS 7 o RHEL 7

Paso:1 Actualice su sistema y establezca el nombre de host

Ejecute el siguiente comando yum para aplicar las últimas actualizaciones al sistema y luego reinicie. Además, después de reiniciar, configure el nombre de host

~]# yum update -y && reboot
~]# hostnamectl set-hostname "devstack-linuxtechi"
~]# exec bash

Paso:2) Cree un usuario de Stack y asígnele derechos sudo

Todos los pasos de instalación deben ser realizados por un nombre de usuario "stack “, consulte los siguientes comandos para crear y asignar derechos sudo.

[[email protected] ~]# useradd -s /bin/bash -d /opt/stack -m stack
[[email protected] ~]# echo "stack ALL=(ALL) NOPASSWD: ALL" | sudo tee /etc/sudoers.d/stack
stack ALL=(ALL) NOPASSWD: ALL
[[email protected] ~]#

Paso:3) Instalar git y descargar devstack

Cambie al usuario de pila e instale el paquete git usando el comando yum

[[email protected] ~]# su - stack
[[email protected] ~]$ sudo yum install git -y

Descargue devstack usando el siguiente comando git,

[[email protected] ~]$ git clone https://git.openstack.org/openstack-dev/devstack
Cloning into 'devstack'...
remote: Counting objects: 42729, done.
remote: Compressing objects: 100% (21438/21438), done.
remote: Total 42729 (delta 30283), reused 32549 (delta 20625)
Receiving objects: 100% (42729/42729), 8.93 MiB | 3.77 MiB/s, done.
Resolving deltas: 100% (30283/30283), done.
[[email protected] ~]$

Paso:4) Cree el archivo local.conf e inicie la instalación openstack

Para comenzar la instalación de openstack usando el script devstack (stack.sh), primero debemos preparar el archivo local.conf que se adapte a nuestra configuración.

Cambie a la carpeta devstack y cree un archivo local.conf con los siguientes contenidos

[[email protected] ~]$ cd devstack/
[[email protected] devstack]$ vi local.conf
[[local|localrc]]
#Specify the IP Address of your VM / Server in front of HOST_IP Parameter
HOST_IP=169.144.104.230

#Specify the name of interface of your Server or VM in front of FLAT_INTERFACE
FLAT_INTERFACE=eth0

#Specify the Tenants Private Network and its Size
FIXED_RANGE=10.4.128.0/20
FIXED_NETWORK_SIZE=4096

#Specify the range of external IPs that will be used in Openstack for floating IPs
FLOATING_RANGE=172.24.10.0/24

#Number Host on which Openstack will be deployed
MULTI_HOST=1

#Installation Logs file
LOGFILE=/opt/stack/logs/stack.sh.log

#KeyStone Admin Password / Database / RabbitMQ / Service Password
ADMIN_PASSWORD=openstack
DATABASE_PASSWORD=db-secret
RABBIT_PASSWORD=rb-secret
SERVICE_PASSWORD=sr-secret

#Additionally installing Heat Service
enable_plugin heat https://git.openstack.org/openstack/heat master
enable_service h-eng h-api h-api-cfn h-api-cw

Guarde y salga del archivo.

Establecer los permisos en /opt/stack

[[email protected] devstack]$  sudo chmod 755 /opt/stack

Ahora comience la implementación o instalación ejecutando el script (stack.sh)

[[email protected] devstack]$ ./stack.sh

Tomará entre 30 y 45 minutos dependiendo de su conexión a Internet.

Mientras ejecuta el comando anterior, si tiene los siguientes errores

+functions-common:git_timed:607            timeout -s SIGINT 0 git clone git://git.openstack.org/openstack/requirements.git /opt/stack/requirements --branch master
fatal: unable to connect to git.openstack.org:
git.openstack.org[0: 104.130.246.85]: errno=Connection timed out
git.openstack.org[1: 2001:4800:7819:103:be76:4eff:fe04:77e6]: errno=Network is unreachable
Cloning into '/opt/stack/requirements'...
+functions-common:git_timed:610            [[ 128 -ne 124 ]]
+functions-common:git_timed:611            die 611 'git call failed: [git clone' git://git.openstack.org/openstack/requirements.git /opt/stack/requirements --branch 'master]'
+functions-common:die:195                  local exitcode=0
[Call Trace]
./stack.sh:758:git_clone
/opt/stack/devstack/functions-common:547:git_timed
/opt/stack/devstack/functions-common:611:die
[ERROR] /opt/stack/devstack/functions-common:611 git call failed: [git clone git://git.openstack.org/openstack/requirements.git /opt/stack/requirements --branch master]
Error on exit
/bin/sh: brctl: command not found
[[email protected] devstack]$

Para resolver estos errores, realice los siguientes pasos

Instalar puente-utils paquete y cambie el parámetro de “GIT_BASE=${GIT_BASE:-git://git.openstack.org} ” a “GIT_BASE=${GIT_BASE:-https://www.github.com} ” en el archivo stackrc

[[email protected] devstack]$ sudo yum install bridge-utils -y
[[email protected] devstack]$ vi stackrc
……
#GIT_BASE=${GIT_BASE:-git://git.openstack.org}
GIT_BASE=${GIT_BASE:-https://www.github.com}
……

Ahora vuelva a ejecutar el script stack.sh,

[[email protected] devstack]$ ./stack.sh

Una vez que la secuencia de comandos se ejecute con éxito, obtendremos un resultado similar al siguiente:

Esto confirma que openstack se ha implementado con éxito,

Paso:5 Acceda a OpenStack a través de Openstack CLI o Horizon Dashboard

si desea realizar cualquier tarea desde openstack cli, debe primero abrir el archivo fuente openrc, que contiene las credenciales de administrador.

[[email protected] devstack]$ source openrc
WARNING: setting legacy OS_TENANT_NAME to support cli tools.
[[email protected] devstack]$ openstack network list
+--------------------------------------+---------+----------------------------------------------------------------------------+
| ID                                   | Name    | Subnets                                                                    |
+--------------------------------------+---------+----------------------------------------------------------------------------+
| 5ae5a9e3-01ac-4cd2-86e3-83d079753457 | private | 9caa54cc-f5a4-4763-a79e-6927999db1a1, a5028df6-4208-45f3-8044-a7476c6cf3e7 |
| f9354f80-4d38-42fc-a51e-d3e6386b0c4c | public  | 0202c2f3-f6fd-4eae-8aa6-9bd784f7b27d, 18050a8c-41e5-4bae-8ab8-b500bc694f0c |
+--------------------------------------+---------+----------------------------------------------------------------------------+
[[email protected] devstack]$ openstack image list
+--------------------------------------+--------------------------+--------+
| ID                                   | Name                     | Status |
+--------------------------------------+--------------------------+--------+
| 5197ed8e-39d2-4eca-b36a-d38381b57adc | cirros-0.3.6-x86_64-disk | active |
+--------------------------------------+--------------------------+--------+
[[email protected] devstack]$

Ahora intente acceder al panel de Horizon, los detalles de la URL y las credenciales ya están allí en la salida del comando de pila.

http://{Dirección-IP-de-Su-Servidor}/panel

Eliminar/desinstalar OpenStack usando scripts devstack

Si ha terminado con las pruebas y demostraciones y desea eliminar OpenStack de su sistema, ejecute los siguientes scripts a través del usuario de Stack,

[[email protected] ~]$ cd devstack
[[email protected] devstack]$ ./clean.sh
[[email protected] devstack]$ ./unstack.sh
[[email protected] devstack]$ rm -rf /opt/stack/
[[email protected] ~]$ sudo rm -rf devstack
[[email protected] ~]$ sudo rm -rf /usr/local/bin/

Eso es todo de este tutorial, si te gustan los pasos, comparte tus valiosos comentarios y opiniones.


Cent OS
  1. Deshabilite el reinicio usando las teclas Ctrl-Alt-Del en RHEL / CentOS

  2. Modo de usuario único en CentOS 7 / RHEL 7

  3. Instale PartKeepr (Sistema de gestión de inventario) en CentOS y RHEL

  4. Cómo instalar Ruby 2.0.0 en CentOS y RHEL 6 usando RVM

  5. Cómo restablecer una contraseña de root olvidada RHEL / CentOS 7

OpenStack Pike:instalación de OpenStack de nodo único en CentOS 7/RHEL 7

Configure el servidor FreeIPA en CentOS 7 / RHEL 7:un sistema de gestión de identidad

Cómo instalar Flameshot en RHEL/CentOS usando Snapcraft

CentOS / RHEL 7:proceso de arranque

Cómo configurar el objetivo iSCSI usando targetcli en CentOS / RHEL 7

CentOS / RHEL 7:Cómo configurar kdump usando GUI