|
@@ -1,15 +1,18 @@
|
|
|
-# Práctica 1 Cloud Computing
|
|
|
|
|
-## Interacción con OpenNebula
|
|
|
|
|
-#### José Luis Fernández Aguilera
|
|
|
|
|
|
|
+# Cloud Computing Servicios y Aplicaciones
|
|
|
|
|
+## Práctica 1 - Interacción con OpenNebula
|
|
|
|
|
+#### José Luis Fernández Aguilera - pylott@gmail.com
|
|
|
|
|
+##### Creación, instanciación y provisionamiento de dos máquinas virtuales en OpenNebula.
|
|
|
|
|
|
|
|
-En esta documento se van a detallar las actividades que se han realizado paso por paso
|
|
|
|
|
-durante la realización de las tareas descritas en el guión de la práctica 1.
|
|
|
|
|
|
|
+En este documento se van a detallar las actividades que se han realizado paso por paso
|
|
|
|
|
+durante la realización de las tareas descritas en el guión de la práctica 1, este documento
|
|
|
|
|
+siempre es accesible desde su [repositorio en Gogs](https://makefile.es:3000/okynos/Practica1CC2).
|
|
|
|
|
|
|
|
|
|
|
|
|
### Paso 1 - Creación de máquinas virtuales
|
|
### Paso 1 - Creación de máquinas virtuales
|
|
|
Para este paso vamos a pasar a detallar cada máquina virtual que vamos a crear en
|
|
Para este paso vamos a pasar a detallar cada máquina virtual que vamos a crear en
|
|
|
OpenNebula.
|
|
OpenNebula.
|
|
|
|
|
|
|
|
|
|
+
|
|
|
##### Creación de una máquina virtual mediante línea de órdenes
|
|
##### Creación de una máquina virtual mediante línea de órdenes
|
|
|
Vamos a detallar cómo hemos creado una instáncia de Ubuntu mediante línea de órdenes.
|
|
Vamos a detallar cómo hemos creado una instáncia de Ubuntu mediante línea de órdenes.
|
|
|
En primer lugar es necesario conectarnos mediante ssh al servidor y loguearnos en
|
|
En primer lugar es necesario conectarnos mediante ssh al servidor y loguearnos en
|
|
@@ -76,6 +79,8 @@ sólo es necesario lanzarla con el siguiente comando:
|
|
|
onetemplate instantiate 596
|
|
onetemplate instantiate 596
|
|
|
```
|
|
```
|
|
|
|
|
|
|
|
|
|
+
|
|
|
|
|
+##### Conexión a la máquina instanciada
|
|
|
Cuando el comando termina su ejecución nos devolverá un identificador de máquina
|
|
Cuando el comando termina su ejecución nos devolverá un identificador de máquina
|
|
|
virtual que en nuestro caso es 714, ya tenemos nuestra máquina desplegada vamos
|
|
virtual que en nuestro caso es 714, ya tenemos nuestra máquina desplegada vamos
|
|
|
a pasar ahora a configurar el servicio web dentro de la misma, para ello accedemos
|
|
a pasar ahora a configurar el servicio web dentro de la misma, para ello accedemos
|
|
@@ -86,6 +91,8 @@ onevm show 714
|
|
|
ssh root@192.168.10.75
|
|
ssh root@192.168.10.75
|
|
|
```
|
|
```
|
|
|
|
|
|
|
|
|
|
+
|
|
|
|
|
+##### Provisionar las máquinas y configurarlas
|
|
|
el primer comando nos retorna la información asociada a nuestra máquina virtual
|
|
el primer comando nos retorna la información asociada a nuestra máquina virtual
|
|
|
mientras que el segundo se conecta como root a la ip que hemos obtenido con el
|
|
mientras que el segundo se conecta como root a la ip que hemos obtenido con el
|
|
|
comando anterior.
|
|
comando anterior.
|
|
@@ -136,11 +143,38 @@ Guardamos el fichero y ejecutamos los siguientes comandos:
|
|
|
```
|
|
```
|
|
|
yum repolist
|
|
yum repolist
|
|
|
yum install mongodb-org
|
|
yum install mongodb-org
|
|
|
|
|
+iptables -I INPUT -p tcp -m tcp --dport 80 -j ACCEPT
|
|
|
|
|
+iptables -I INPUT -p udp -m udp --dport 80 -j ACCEPT
|
|
|
|
|
+service iptables restart
|
|
|
mongod --port 80 &
|
|
mongod --port 80 &
|
|
|
```
|
|
```
|
|
|
|
|
|
|
|
|
|
+
|
|
|
|
|
+##### Prueba y producción
|
|
|
Ya que hemos configurado y ejecutado todo vamos apasar a incorporar nuestra
|
|
Ya que hemos configurado y ejecutado todo vamos apasar a incorporar nuestra
|
|
|
aplicación web en html+php en el servidor nginx que hemos desplegado,
|
|
aplicación web en html+php en el servidor nginx que hemos desplegado,
|
|
|
para ello y ya que lo hemos subido a un repositorio de git público utilizamos
|
|
para ello y ya que lo hemos subido a un repositorio de git público utilizamos
|
|
|
el comando wget para descargarnos los ficheros, aún así nginx necesita algunas
|
|
el comando wget para descargarnos los ficheros, aún así nginx necesita algunas
|
|
|
configuraciones que se pueden consultar en la [siguiente página](http://askubuntu.com/questions/134666/what-is-the-easiest-way-to-enable-php-on-nginx)
|
|
configuraciones que se pueden consultar en la [siguiente página](http://askubuntu.com/questions/134666/what-is-the-easiest-way-to-enable-php-on-nginx)
|
|
|
|
|
+Una vez hemos realizado todas las configuraciones descargamos nuestra aplicación web
|
|
|
|
|
+sencilla en el directorio /usr/share/nginx/html en nuestro caso con el siguiente comando:
|
|
|
|
|
+
|
|
|
|
|
+```
|
|
|
|
|
+wget https://makefile.es:3000/okynos/Practica1CC2/raw/master/index.php --no-check-certificate
|
|
|
|
|
+```
|
|
|
|
|
+
|
|
|
|
|
+Nos descargará el fichero index.php directamente de mi repositorio git público.
|
|
|
|
|
+Si todo está bien configurado y conectado deberá aparecer una página como la siguiente:
|
|
|
|
|
+
|
|
|
|
|
+En la cual podemos observar los registros de la base de datos, insertar y borrar los mismos.
|
|
|
|
|
+
|
|
|
|
|
+
|
|
|
|
|
+##### Descripción y uso de la appweb
|
|
|
|
|
+La aplicación consiste en un sistema simple de consulta y edición de registros
|
|
|
|
|
+de una base de datos MongoDB, la aplicación consta de un formulario de introducción
|
|
|
|
|
+de datos muy sencillo en el que se introduce el nombre y el correo electrónico de la persona
|
|
|
|
|
+que deseemos registrar en el sistema, al pulsar el botón enviar, se almacenará en nuestra
|
|
|
|
|
+base de datos el registro asociado y se mostrará en la misma página como resultado
|
|
|
|
|
+de una consulta.
|
|
|
|
|
+La base de datos consta de una tabla llamada Test y una colección llamada elements
|
|
|
|
|
+dentro de esa colección se almacena por cada registro un identificador, un nombre y un email.
|