Diferencia entre revisiones de «OpenStack»

De FdIwiki SC
Saltar a: navegación, buscar
Línea 5: Línea 5:
 
Es un [[software libre]] y de código abierto distribuido bajo los términos de la licencia Apache. El proyecto está gestionado por la Fundación OpenStack, una persona jurídica sin fines de lucro creada en septiembre de 2012 para promover el software OpenStack y su comunidad.
 
Es un [[software libre]] y de código abierto distribuido bajo los términos de la licencia Apache. El proyecto está gestionado por la Fundación OpenStack, una persona jurídica sin fines de lucro creada en septiembre de 2012 para promover el software OpenStack y su comunidad.
  
==Instalación rápida de DevStack, única máquina Debian 8. (sin persistencia)==
+
==Instalación rápida de OpenStack, única máquina CentOS 7. ==
 
===Requisitos===
 
===Requisitos===
* Máquina para pruebas, con Debian 8 o Ubuntu 14
+
* Máquina para pruebas, con CentOS 7
 
* Conexión a internet
 
* Conexión a internet
 
   
 
   
<ref>[http://docs.openstack.org/developer/devstack/guides/single-machine.html |Manual Oficial de Instalación de Openstack en una única máquina  ]  </ref>'''
+
Ante nada, este tutorial es para que probemos rápidamente OpenStack. ''' Pero no es recomendable usarlo en un entorno de trabajo.''' (en realidad, necesitamos siete máquinas fisicas o virtuales, con 12GB de Ram entre todas).  
Ante nada, este tutorial es para que probemos rápidamente OpenStack. ''' Pero no es recomendable usarlo en un entorno de trabajo.''' (en realidad, necesitamos siete máquinas fisicas o virtuales, con 12GB de Ram entre todas). Además, el uso de 'sudo' es una auténtica chapuza de seguridad. así que es mejor hacer este tutorial dentro de una máquina virtual con Debian. '''ES MUY RECOMENDABLE HACERLO EN UNA MÁQUINA VIRTUAL'''
+
Además, '''la configuración se pierde si apagamos el servicio.'''
+
===Creación de Usuario===
+
Creamos un usuario llamado stack , y le ponemos una contraseña (que no sea 'stack' ni '1234' xD )
+
sudo adduser stack
+
Lo añadimos a sudoers
+
echo "stack ALL=(ALL) NOPASSWD: ALL" >> /etc/sudoers
+
===Logueo como 'stack'===
+
Nos logueamos desde terminal como usuario stack
+
sudo login
+
===Descarga del Stack===
+
Clonamos 'DevStack' (el 'Xampp' de Openstack, vaya)  y nos metemos en la carpeta
+
git clone https://git.openstack.org/openstack-dev/devstack
+
cd devstack
+
===Configuración del Stack===
+
DevStack incluye un ejemplo de fichero  de configuración en devstack/samples.local.conf
+
*FLOATING RANGE es un rango de nuestra red local, que no estamos usando. Supondré que no tenemos nada por encima de  192.168.1.224
+
*FIXED_RANGE y FIXED_NETWORK_SIZE acotan las direcciones IP internan usadas por las instancias
+
*FLAT_INTERFACE es la interfaz de nuestra máquina que nos connecta a la red local
+
*ADMIN_PASSWD contiene la contraseña de admin de todo el tinglado
+
*DATABASE_PASSWORD contiene la contraseña del bloque de BBDD de Openstack (en nuestro caso, si tenemos MYSql previamente instalado, es necesario que proporcionemos la contraseña de 'root' de MYSql que habíamos puesto en la instalación)
+
*RABBIT_PASSWORD contiene la contraseña de RabbitMQ (mensajería)
+
*SERVICE_PASSWORD contiene la contraseña común de los servicios de Openstack (Nova, Glance,etc)
+
  
Creamos el fichero de configuración
+
==Importación de imagen de router==
touch local.conf
+
Lo editamos
+
nano local.conf
+
y metemos algo parecido a esto
+
 
+
<nowiki>[[local|localrc]]</nowiki>
+
FLOATING_RANGE=192.168.1.224/27
+
FIXED_RANGE=10.11.12.0/24
+
FIXED_NETWORK_SIZE=256
+
FLAT_INTERFACE=eth0
+
ADMIN_PASSWORD=supersecret
+
DATABASE_PASSWORD=iheartdatabases
+
RABBIT_PASSWORD=flopsymopsy
+
SERVICE_PASSWORD=iheartksl
+
 
+
 
+
[[#Arranque_del_Stack |Arrancamos el Stack]] por primera vez, para que se instale..
+
La instalación tarda media hora, segun nuestra conexión a internet. nos saldrá un mensaje del estilo
+
2016-05-18 13:20:17.700 | stack.sh completed in 913 seconds
+
Una vez terminada, [[#Parada_del_Stack | Paramos el Stack]]
+
 
+
Para evitar largos chequeos cada vez que arrancamos , añadimos una línea al fichero de configuración
+
echo OFFLINE=True >> local.conf
+
 
+
===Arranque del Stack===
+
Si no queremos que dependa de una terminal, podemos usar  la utilidad 'screen '
+
 
+
Entramos en la carpeta devstack  y arrancamos devstack
+
cd /$HOME/devstack
+
./stack.sh
+
Cuando haya arrancado, (tarda unos dos minutos), nos saldrá la página de administración
+
que se encuentra en 127.0.0.1
+
 
+
[[Archivo:DevStack1.png | 300px]]
+
 
+
[[Archivo:DevStack2.png | 300px]]
+
 
+
Eso sí, si reiniciamos nuestro ordenador, hay que arrancar DevStack otra vez.
+
 
+
===Parada del Stack===
+
Para parar DevStack, hacemos
+
./unstack.sh
+
Cerramos la terminal donde se ejecuta DevStack
+
===Actualización de DevStack===
+
Para actualizar DevStack, lo debemos para primero.
+
Habilitamos Reclone
+
sed -i "s/OFFLINE=True/RECLONE=yes/g" local.conf
+
Arrancamos DevStack. y esperamos a que se instale
+
 
+
Lo paramos.
+
 
+
Deshabilitamos reclone y habilitamos offline
+
sed -i "s/RECLONE=yes/OFFLINE=True/g" local.conf
+
==Creación de Infraestructura==
+
A partir de aquí, es todo cuestión de imaginación. Como caso de ejemplo, contaré cómo se monta un router y un equipo cliente, sobre OpenStack.
+
'''Entro en la carpeta de devstack y me logueo como usuario 'stack''''  (ver apartado anterior)
+
===Crear un router===
+
Para más facilidad, instanciaré una imagen prefabricada <ref>[http://hackstack.org/x/blog/2014/08/17/openwrt-images-for-openstack/ | Cómo compatibilizar Openwrt con Openstack]</ref><ref>[https://github.com/samos123/openstack-openwrt-image | Imagen precocinada de Openwrt ]</ref> de Openwrt (aunque también nos podemos cocinar una de pfSense, p.e.)
+
====Descarga de la imagen de router====
+
Creo una carpeta temporal para descargas y entro dentro
+
mkdir temporales
+
cd temporales
+
Descargo la imagen (o la copio de otro sitio)
+
wget http://enlace-a-imagen/openwrt.img
+
Creo un fichero con los metadatos y datos de acceso a keystone <ref> [https://ask.openstack.org/en/question/9426/expecting-an-auth-url-via-either-os-auth-url-or-envos_auth_url/ | metadatos para keystone] </ref>
+
nano config_openwrt
+
y le meto algo por el estilo
+
export OS_USERNAME=admin
+
export OS_TENANT_NAME=admin
+
export OS_PASSWORD=supersecret
+
<nowiki>export OS_AUTH_URL=http://127.0.0.1:35357/v2.0/</nowiki>
+
 
+
====Importación de imagen de router====
+
 
Leo el fichero de metadatos previamente generado
 
Leo el fichero de metadatos previamente generado
 
  source config_openwrt
 
  source config_openwrt

Revisión de 17:44 26 may 2016

Fuente: [1]

OpenStack es un proyecto de computación en la nube para proporcionar una IaaS

Es un software libre y de código abierto distribuido bajo los términos de la licencia Apache. El proyecto está gestionado por la Fundación OpenStack, una persona jurídica sin fines de lucro creada en septiembre de 2012 para promover el software OpenStack y su comunidad.

Instalación rápida de OpenStack, única máquina CentOS 7.

Requisitos

  • Máquina para pruebas, con CentOS 7
  • Conexión a internet

Ante nada, este tutorial es para que probemos rápidamente OpenStack. Pero no es recomendable usarlo en un entorno de trabajo. (en realidad, necesitamos siete máquinas fisicas o virtuales, con 12GB de Ram entre todas).

Importación de imagen de router

Leo el fichero de metadatos previamente generado

source config_openwrt

E importamos la imagen

glance image-create --name='mi_primer_router' --visibility public --progress  --container-format=bare --disk-format=qcow2 < openwrt.img

Una vez terminada la importación, nos aparecerá como imagen disponible

OpenStack3.png

Importo la imagen recién descargada [2]

Lanzamiento de imagen de router

En la página de administración , pinchamos en 'Compute' -> 'Imágenes' Aparece nuestra imagen de openwrt, a la que le damos 'Lanzar'

OpenStack4.png

Vamos rellenando datos

OpenStack5.png

Aquí, escogemos m1.tiny como plantilla

OpenStack9.png

Y en 'Par de Claves', generamos un fichero .pem, para poder conectarnos por SSH a la instancia del router

OpenStack6.png

Le damos un nombre a la clave, y se nos ofrece descargar un fichero .pem, que usaremos más adelante

OpenStack5.png

Referencias

  1. | Wiki Openstack
  2. | importar imagen en OpenStack