Diferencia entre revisiones de «OpenStack»

De FdIwiki SC
Saltar a: navegación, buscar
 
(2 revisiones intermedias por el mismo usuario no mostrado)
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
+
===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
+
EN CONSTRUCCIÓN
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
+
 
+
Una vez guardado el fichero, asignamos al usuario stack los permisos de la carpeta
+
cd
+
sudo chown -R stack devstack
+
[[#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 '
+
Nos logueamos desde terminal como usuario stack
+
sudo login
+
y entramos en la carpeta devstack  y arrancamos devstack
+
cd /home/mi-usuario/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
+
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
+
 
+
[[Archivo:OpenStack3.png | 300px]]
+
 
+
Importo la imagen recién descargada <ref> [https://www.rdoproject.org/resources/image-resources/ | importar imagen en OpenStack ] </ref>
+
====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'
+
 
+
[[Archivo:OpenStack4.png | 300px]]
+
 
+
Vamos rellenando datos
+
 
+
[[Archivo:OpenStack5.png | 300px]]
+
 
+
Aquí, escogemos m1.tiny como plantilla
+
 
+
[[Archivo:OpenStack9.png | 300px]]
+
 
+
Y en 'Par de Claves', generamos un fichero .pem, para poder conectarnos por SSH a la instancia del router
+
 
+
[[Archivo:OpenStack6.png | 300px]]
+
 
+
Le damos un nombre a la clave, y se nos ofrece descargar un fichero .pem, que usaremos más adelante
+
 
+
[[Archivo:OpenStack5.png | 300px]]
+
  
 
== Referencias ==
 
== Referencias ==

Última revisión de 18:25 28 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).

EN CONSTRUCCIÓN

Referencias

  1. | Wiki Openstack