Changes between Initial Version and Version 1 of EGIFedCloudBIFI


Ignore:
Timestamp:
May 3, 2016 1:09:39 PM (6 years ago)
Author:
carlos
Comment:

--

Legend:

Unmodified
Added
Removed
Modified
  • EGIFedCloudBIFI

    v1 v1  
     1= EGI !FedCloud =
     2
     3[[NoteBox(note, Se recomienda la lectura la [https://wiki.egi.eu/wiki/FAQ10_EGI_Federated_Cloud_User guía de usuario] antes de realizar de las prácticas.)]]
     4
     5== Práctica 1 ==
     6El objetivo de esta práctica es tomar contacto con el uso de recursos de computación cloud en EGI. Recuerde que estos comandos han de ejecutarse desde el frontend `ui.macc.unican.es`.
     7
     8* Para está práctica utilizaremos la aplicación [https://appdb.egi.eu/store/vappliance/egi.ubuntu.14.04 EGI Ubuntu 14.04] y el site `CESNET-MetaCloud`. Para ello debemos configurar una serie de variables: `ENDPOINT`, `OS_TPL`, `RES_TPL`. Estas variables se pueden obtener bien desde el apartado '''Availability & Usage''' de la aplicación indicada o con siguientes comandos:
     9
     10 *`ENDPOINT` :
     11{{{
     12#!sh
     13[user@ui ~]$ ldapsearch -x -H ldap://lcg-bdii.cern.ch:2170 -b GLUE2DomainID=CESNET-MetaCloud,GLUE2GroupID=grid,o=glue GLUE2EndpointInterfaceName=OCCI | grep GLUE2EndpointURL |  awk {'print $2'}
     14}}}
     15 *`OS_TPL` :
     16{{{
     17#!sh
     18occi --endpoint $ENDPOINT --action list --resource os_tpl --auth x509 --user-cred $X509_USER_PROXY --voms
     19}}}
     20 *`RES_TPL` :
     21{{{
     22#!sh
     23occi --endpoint $ENDPOINT --action list --resource resource_tpl --auth x509 --user-cred $X509_USER_PROXY --voms
     24}}}
     25
     26* Configuramos las variables de entorno con los siguiente valores:
     27{{{
     28#!sh
     29[user@ui ~]$ export ENDPOINT=https://carach5.ics.muni.cz:11443
     30[user@ui ~]$ export OS_TPL=http://occi.carach5.ics.muni.cz/occi/infrastructure/os_tpl#uuid_egi_ubuntu_server_14_04_lts_fedcloud_warg_131
     31[user@ui ~]$ export RES_TPL=http://fedcloud.egi.eu/occi/compute/flavour/1.0#small
     32}}}
     33
     34* Generamos un proxy válido para poder operar en la infraestructura EGI !FedCloud:
     35{{{
     36#!sh
     37[user@ui ~]$ voms-proxy-init -voms fedcloud.egi.eu --rfc
     38}}}
     39
     40* Creamos un par clave publica-privada para conectarnos a las maquinas virtuales (VM) que creemos :
     41{{{
     42#!sh
     43[user@ui ~]$ ssh-keygen -t rsa -b 2048 -f tmpfedcloud
     44}}}
     45
     46* Configuramos la VM utilizado [https://coreos.com/os/docs/latest/cloud-config.html cloud config]:
     47{{{
     48#!sh
     49[user@ui ~]$ cat > tmpfedcloud.login << EOF
     50#cloud-config
     51users:
     52  - name: cloudadm
     53    shell: /bin/bash
     54    sudo: ALL=(ALL) NOPASSWD:ALL
     55    lock-passwd: true
     56    ssh-import-id: cloudadm
     57    ssh-authorized-keys:
     58      - `cat tmpfedcloud.pub`
     59EOF
     60}}}
     61
     62* Creamos la VM :
     63{{{
     64#!sh
     65[user@ui ~]$ VM_ID=$(occi --endpoint $ENDPOINT --auth x509 --user-cred $X509_USER_PROXY --voms --action create --resource compute --attribute occi.core.title="MyFirstVM" --mixin $OS_TPL --mixin $RES_TPL --context user_data="file://$PWD/tmpfedcloud.login")
     66}}}
     67
     68* Obtenemos información de sus características como su dirección IP:
     69{{{
     70#!sh
     71[user@ui ~]$ occi --endpoint $ENDPOINT --auth x509 --user-cred $X509_USER_PROXY --voms --action describe --resource ${VM_ID}
     72}}}
     73
     74[[NoteBox(note, En este caso la IP que se obtiene es publica. Si no lo fuera\, tendríamos que ejecutar el siguiente comando para obtener una:` occi --endpoint http://cloud.recas.ba.infn.it:8787/occi/ --auth x509 --user-cred x509_fedcloud.egi.eu --voms --action link --resource ${VM_ID} --link /network/public`)]]
     75
     76* Nos conectamos a la VM por medio de `ssh` haciendo uso de la clave privada que hemos generado con anterioridad:
     77{{{
     78#!sh
     79[user@ui ~]$ ssh -i tmpfedcloud cloudadm@DIR_IP
     80}}}
     81
     82* Una vez conectados ejecutamos a la VM, ejecutamos los comandos `hostname`, `uname -a`, `cat /proc/cpuinfo`, `cat /proc/meminfo` y `ifconfig` para obtener información sobre ella.
     83
     84* Finalmente destruimos la VM:
     85{{{
     86#!sh
     87[user@ui ~]$ occi --endpoint $ENDPOINT --auth x509 --user-cred $X509_USER_PROXY --voms --action delete --resource ${VM_ID}
     88}}}