Sunteți pe pagina 1din 12

GI101 – NETWORK TUNNELLING

_______________________________________________________________________________________________

GI101 – DIPLOMADO EN TECNOLOGÍAS DE CLOUD


NETWORKING

LABORATORIO NÚMERO: 02 SEMESTRE: 2018-0

TEMA: Cloud Computing con Openstack

OBJETIVOS:

 Describir los drivers que motivaron el modelo de Cloud Computing.


 Describir los tipos de servicios y despliegues de Cloud Computing.
 Comprender cómo Openstack soluciona los problemas de orquestación de máquinas
virtuales.
 Entender el funcionamiento de Openstack.
 Automatizar despliegues de máquinas virtuales sobre Openstack.
 Troubleshooting de Openstack.

ACTIVIDADES PARA REALIZAR:


Actividades Duración aproximada

1 Instalación y verificación de Keystone y Glance.

Laboratorio 01: Cloud Computing con Openstack _Rubén Córdova, Antonio Merino 1
GI101 – NETWORK TUNNELLING
_______________________________________________________________________________________________

EXPERIENCIA # 1:
Puntaje:
Tiempo de duración: min.

Guía de instalación de Keystone y Glance


1. Instalación y configuración del Identity Service (keystone)

NOTA: Realizar los siguientes pasos en el NODO DE CONTROL.

1.1 Pre-requisitos

Acceder a la base de datos como root.

$ mysql -u root -p

Crear la base de datos keystone.

mysql> CREATE DATABASE keystone;

Generar el acceso a la base de datos kyestone.

mysql> GRANT ALL PRIVILEGES ON keystone.* TO 'keystone'@'localhost'


IDENTIFIED BY ' KEYSTONE_DBPASS';
mysql> GRANT ALL PRIVILEGES ON keystone.* TO 'keystone'@'%' IDENTIFIED
BY ' KEYSTONE_DBPASS';

*KEYSTONE_DBPASS = gira

Salir de la base de datos.

1.2 Instalación y configuración de componentes

Instalación de paquetes

$ apt install keystone

Laboratorio 01: Cloud Computing con Openstack _Rubén Córdova, Antonio Merino 2
GI101 – NETWORK TUNNELLING
_______________________________________________________________________________________________

Editar el siguiente archivo: /etc/keystone/keystone.conf

Agregar lo siguiente:

# Configurar el acceso a la base de datos


# Comentar cualquier otra opción en esta seccion

[database]
connection = mysql+pymysql://keystone:KEYSTONE_DBPASS@control/keystone

# En la sección [token] y [credential], configurar el Fernet token


#provider

[token]
provider = fernet

[credential]
provider = fernet

*KEYSTONE_DBPASS = gira

Generar la base de datos de Identity service.

$ /bin/sh -c "keystone-manage db_sync" keystone

Inicializar los repositorios de Fernet.

$ keystone-manage fernet_setup --keystone-user keystone --keystone-


group keystone
$ keystone-manage credential_setup --keystone-user keystone --
keystone-group keystone

Laboratorio 01: Cloud Computing con Openstack _Rubén Córdova, Antonio Merino 3
GI101 – NETWORK TUNNELLING
_______________________________________________________________________________________________

Bootstrap the Identity service

$ keystone-manage bootstrap --bootstrap-password ADMIN_PASS --


bootstrap-admin-url http://control:35357/v3/ --bootstrap-internal-url
http://control:35357/v3/ --bootstrap-public-url
http://control:5000/v3/ --bootstrap-region-id RegionOne

*ADMIN_PASS = gira

1.3 Configurar el servidor Apache

Editar el siguiente archivo: /etc/apache2/apache2.conf

En la opción ServerName modificar:

ServerName control

1.4 Finalizar instalación

Reiniciar el servicio Apache y remover la base de datos SQLite por defecto.

$ service apache2 restart


$ rm -f /var/lib/keystone/keystone.db

1.5 Crear dominio, proyecto, usuarios y roles

Crear el archivo: admin-openrc

export OS_PROJECT_DOMAIN_NAME=Default
export OS_USER_DOMAIN_NAME=Default
export OS_PROJECT_NAME=admin
export OS_USERNAME=admin
export OS_PASSWORD=[password]
export OS_AUTH_URL=http://control:35357/v3
export OS_IDENTITY_API_VERSION=3
export OS_IMAGE_API_VERSION=2

*OS_PASSWORD = gira

Laboratorio 01: Cloud Computing con Openstack _Rubén Córdova, Antonio Merino 4
GI101 – NETWORK TUNNELLING
_______________________________________________________________________________________________

Cargar las variables de entorno

$ source admin-openrc

Crear el proyecto servicio.


$ openstack project create --domain default --description "Service
Project" service

Crear el proyecto demo.

$ openstack project create --domain default --description "Demo


Project" demo

Crear el usuario demo.

$ openstack user create --domain default --password-prompt demo

*DEMO_PASS = gira

Laboratorio 01: Cloud Computing con Openstack _Rubén Córdova, Antonio Merino 5
GI101 – NETWORK TUNNELLING
_______________________________________________________________________________________________

Crear el rol user.

$ openstack role create user

Agregar el rol user al proyecto y usuario demo.

$ openstack role add --project demo --user demo user

1.6 Verificar operación

Como usuario admin, solicitar un token de autenticación.

$ openstack --os-auth-url http://control:35357/v3 --os-project-domain-


name Default --os-user-domain-name Default --os-project-name admin --
os-username admin token issue

Como usuario demo, solicitar un token de autenticación.

$ openstack --os-auth-url http://control:5000/v3 --os-project-domain-


name Default --os-user-domain-name Default --os-project-name demo --
os-username demo token issue

Laboratorio 01: Cloud Computing con Openstack _Rubén Córdova, Antonio Merino 6
GI101 – NETWORK TUNNELLING
_______________________________________________________________________________________________

1.7 Crear Openstack environment scripts

Crear el archivo: demo-openrc

export OS_PROJECT_DOMAIN_NAME=Default
export OS_USER_DOMAIN_NAME=Default
export OS_PROJECT_NAME=demo
export OS_USERNAME=demo
export OS_PASSWORD=[password]
export OS_AUTH_URL=http://control:5000/v3
export OS_IDENTITY_API_VERSION=3
export OS_IMAGE_API_VERSION=2

*OS_PASSWORD = gira

1.8 Usar los scripts

Cargar las credenciales del usuario admin.

$ source admin-openrc

Solicitar un token de autenticación.

$ openstack token issue

Con esto se comprueba que se está usando las credenciales de admin (verificar
user_id con el que salió en 1.6)

2. Instalación y configuración del Identity Service (keystone)

NOTA: Realizar los siguientes pasos en el NODO DE CONTROL.

2.1 Pre-requisitos

Acceder a la base de datos como root.

$ mysql -u root -p

Crear la base de datos glance.

mysql> CREATE DATABASE glance;

Laboratorio 01: Cloud Computing con Openstack _Rubén Córdova, Antonio Merino 7
GI101 – NETWORK TUNNELLING
_______________________________________________________________________________________________

Generar el acceso a la base de datos glance.

mysql> GRANT ALL PRIVILEGES ON glance.* TO 'glance'@'localhost'


IDENTIFIED BY 'GLANCE_DBPASS';
mysql> GRANT ALL PRIVILEGES ON glance.* TO 'glance'@'%' IDENTIFIED BY
'GLANCE_DBPASS';

*GLANCE_DBPASS = gira

Salir de la base de datos.


Cargar las credenciales de admin.

$ source admin-openrc

Crear el usuario glance.

$ openstack user create --domain default --password-prompt glance

*GLANCE_PASS = gira

Agregar el rol admin al proyecto y usuario glance.

$ openstack role add --project service --user glance admin

Laboratorio 01: Cloud Computing con Openstack _Rubén Córdova, Antonio Merino 8
GI101 – NETWORK TUNNELLING
_______________________________________________________________________________________________

Crear la entidad glance service.

$ openstack service create --name glance --description "OpenStack


Image" image

Crear Image service API endpoints.

$ openstack endpoint create --region RegionOne image public


http://control:9292

$ openstack endpoint create --region RegionOne image internal


http://control:9292

Laboratorio 01: Cloud Computing con Openstack _Rubén Córdova, Antonio Merino 9
GI101 – NETWORK TUNNELLING
_______________________________________________________________________________________________

$ openstack endpoint create --region RegionOne image admin


http://control:9292

2.2 Instalación y configuración de componentes

Instalación de paquetes

$ apt install glance

Editar el siguiente archivo: /etc/glance/glance-api.conf

Agregar lo siguiente:

# Configurar el acceso a la base de datos

[database]
connection = mysql+pymysql://glance:GLANCE_DBPASS@control/glance

# Configurar el acceso del Identity service


# Comentar cualquier otra opción en sección [keystone_authtoken]

[keystone_authtoken]
auth_uri = http://control:5000
auth_url = http://control:35357
memcached_servers = control:11211
auth_type = password
project_domain_name = Default
user_domain_name = Default
project_name = service
username = glance
password = GLANCE_DBPASS

[paste_deploy]
flavor = keystone

# En la sección [glance_store], configurar el local file system store


y la ubicación de image files

[glance_store]
stores = file,http
default_store = file
filesystem_store_datadir = /var/lib/glance/images/

*GLANCE_DBPASS = gira

Laboratorio 01: Cloud Computing con Openstack _Rubén Córdova, Antonio Merino 10
GI101 – NETWORK TUNNELLING
_______________________________________________________________________________________________

Editar el siguiente archivo: /etc/glance/glance-registry.conf

# Configurar el acceso a la base de datos

[database]
connection = mysql+pymysql://glance:GLANCE_DBPASS@control/glance

# Configurar el acceso del Identity service


# Comentar cualquier otra opción en sección [keystone_authtoken]

[keystone_authtoken]
auth_uri = http://control:5000
auth_url = http://control:35357
memcached_servers = control:11211
auth_type = password
project_domain_name = Default
user_domain_name = Default
project_name = service
username = glance
password = GLANCE_DBPASS

[paste_deploy]
flavor = keystone

*GLANCE_DBPASS = gira

Generar la base de datos de Image service.

$ /bin/sh -c "glance-manage db_sync" glance

2.3 Finalizar instalación

Reiniciar los servicios de Image.

$ service glance-registry restart


$ service glance-api restart

2.4 Verificar operación

Cargar las credenciales de admin.

$ source admin-openrc

Laboratorio 01: Cloud Computing con Openstack _Rubén Córdova, Antonio Merino 11
GI101 – NETWORK TUNNELLING
_______________________________________________________________________________________________

Descargar la imagen.

$ wget http://download.cirros-cloud.net/0.3.4/cirros-0.3.4-x86_64-
disk.img

Subir la imagen al Image service usando formato de disco QCOW2, bare container
format y visibilidad publica, para que todos los proyectos tengan acceso a ella.

$ openstack image create "cirros" --file cirros-0.3.4-x86_64-disk.img


--disk-format qcow2 --container-format bare –-public

Confirmar que la imagen ha sido subida.

$ openstack image list

Laboratorio 01: Cloud Computing con Openstack _Rubén Córdova, Antonio Merino 12

S-ar putea să vă placă și