Entorno de pruebas para OpenStack

Devstack

Alberto Molina Coballes / @alberto_molina y José Domingo Muñoz Rodríguez / @Pledin_JD

Objetivo

DevStack es un conjunto de scripts en bash que nos permiten instalar OpenStack de forma automática. Tenemos varias formas de realizar la instalación:

  • En una máquina física
  • En una máquina virtual

Instalación en una máquina virtual

¿Qué necesito?

  • Equipo necesario: RAM 3GB y procesador VT-x/AMD-v
  • Git instalado
  • Virtualbox instalado (versión de debian wheezy 4.1.18)
  • Vagrant instalado (1.5.1)
  • Box precise64
  • Ansible instalado

; Como root
# apt-get install git

# apt-get install virtualbox

# wget https://dl.bintray.com/mitchellh/vagrant/vagrant_1.4.3_x86_64.deb
# dpkg -i vagrant_1.4.3_x86_64.deb


# apt-get install python-pip python-dev
# pip install ansible

; Como usuario sin privilegio nos bajamos el box precise64
$ vagrant box add precise64 http://files.vagrantup.com/precise64.box
		

Realizando la instalación


$ git clone https://github.com/iesgn/devstack-havana-cursocloud
$ cd devstack-havana-cursocloud/MV
$ chmod 0600 id_vagrant
$ vagrant up
		        
  • Arranca una máquina virtual Ubuntu 12.04
  • Clona el repositorio devstack dentro de la máquina
  • Instala el devstack (versión havana) en la máquina (stack.sh)

La máquina virtual tiene 4 Gb de RAM si quieres cambiarlo, antes de ejecutar la instalación, modifica el fichero Vagrantfile:

vb.customize ["modifyvm", :id, "--memory", 4096]		
		        

¡¡¡ Nos tomamos un cafe!!!

Accediendo a OpenStack

  • http://192.168.27.100
  • Usuario de prueba: demo con contraseña devstack.
  • Usuario admin con contraseña devstack.
  • El usuario demo debe trabajar en el proyecto "demo", no en uno que se llama "invisible_to_admin"

Al terminar de trabajar...

Una vez que hemos terminado de trabajar con OpenStack y antes de apagar nuestra máquina virtual, debemos detener todas las instancias.

Cuando queramos seguir trabajando, encendemos la máquina y ejecutamos:


$ cd devstack-havana-cursocloud/MV
$ vagrant up
$ vagrant ssh

$ cd devstack
$ ./reiniciar.sh
			

Y si algo falla...

Si algo no funciona, podemos reiniciar nuestro OpenStack: tardará menos que la instalación inicial y se perderán todos los datos (instancias, volúmenes, imágenes,...):


$ cd devstack-havana-cursocloud/MV
$ vagrant ssh

$ cd devstack
$ ./instalar.sh
			

Instalación en una máquina física

¿Qué necesito?

  • Equipo necesario: RAM 2Gb y procesador VT-x/AMD-v
  • Ubuntu 12.04 instalado, con los paquetes actualizados.
  • Git instalado
  • El usuario que hace la instalación debe tener privilegios sudo.

; Como root
# apt-get install git

# adduser stack
# echo "stack ALL=(ALL) NOPASSWD: ALL" >> /etc/sudoers
			

Realizando la instalación


$ git clone https://github.com/iesgn/devstack-havana-cursocloud
$ cd devstack-havana-cursocloud/MF
$ chmod 755 instalar.sh
$ ./instalar.sh
		        
  • Configura NAT para que las instancias tengan acceso a internet
  • Clona el repositorio devstack dentro de la máquina
  • Instala el devstack (versión havana) en la máquina (stack.sh)

En los ficheros instalar.sh y reiniciar.sh modifica eth0 por la interfaz de red conectada a internet (por ejemplo si tienes WIFI será wlan0).

¡¡¡ Nos tomamos un cafe!!!

Accediendo a OpenStack

  • http://localhost
  • Usuario de prueba: demo con contraseña devstack.
  • Usuario admin con contraseña devstack.
  • El usuario demo debe trabajar en el proyecto "demo", no en uno que se llama "invisible_to_admin"

Al terminar de trabajar...

Una vez que hemos terminado de trabajar con OpenStack y antes de apagar nuestra máquina, debemos detener todas las instancias.

Cuando queramos seguir trabajando, encendemos nuestra máquina y ejecutamos:


$ cd devstack
$ ./reiniciar.sh
			
  • Se configura y levanta el bridge br-ex
  • Configura NAT para que las instancias tengan acceso a internet
  • Se congifura el grupo de volumenes
  • Se levantan los servicios

Y si algo falla...

Si algo no funciona, podemos reiniciar nuestro OpenStack: tardará menos que la instalación inicial, aunque se perderán todos los datos (instancias, volúmenes, imágenes,...):


$ cd devstack-havana-cursocloud/MF
$ ./instalar.sh