Galaxy CloudMan AmazonEC2 Guide

33
Escuela de Ingeniería de Sistemas y Computación Maestría en Ingeniería – Énfasis en Ingeniería de Sistemas y Computación Fundamentos de Sistemas Distribuidos Despliegue de Plataforma Galaxy para Bioinformática en Ambiente Cloud Amazon EC2 Mediante CloudMan y CloudBioLinux Guía de Implementación Héctor Fabio Espitia Navarro [email protected] – 1204387 Junio de 2013 Contenido 1 Introducción ....................................................................................................................... 2 2 Herramientas ...................................................................................................................... 3 2.1 Galaxy ......................................................................................................................... 3 2.2 CloudMan .................................................................................................................... 3 2.3 Cloud BioLinux ........................................................................................................... 4 3 Procedimiento .................................................................................................................... 5 3.1 Requisitos .................................................................................................................... 5 3.2 Despliegue manual en Amazon EC2 ............................................................................ 5 3.3 Despliegue automático mediante BioCloudCentral .................................................... 21 4 Conclusiones ..................................................................................................................... 31 Referencias .............................................................................................................................. 32

Transcript of Galaxy CloudMan AmazonEC2 Guide

Escuela de Ingeniería de Sistemas y Computación Maestría en Ingeniería – Énfasis en Ingeniería de Sistemas y Computación Fundamentos de Sistemas Distribuidos

Despliegue de Plataforma Galaxy para

Bioinformática en Ambiente Cloud Amazon EC2

Mediante CloudMan y CloudBioLinux

Guía de Implementación

Héctor Fabio Espitia Navarro

[email protected] – 1204387

Junio de 2013

Contenido

1 Introducción ....................................................................................................................... 2

2 Herramientas ...................................................................................................................... 3

2.1 Galaxy ......................................................................................................................... 3

2.2 CloudMan .................................................................................................................... 3

2.3 Cloud BioLinux ........................................................................................................... 4

3 Procedimiento .................................................................................................................... 5

3.1 Requisitos .................................................................................................................... 5

3.2 Despliegue manual en Amazon EC2 ............................................................................ 5

3.3 Despliegue automático mediante BioCloudCentral .................................................... 21

4 Conclusiones ..................................................................................................................... 31

Referencias .............................................................................................................................. 32

EISC – Fundamentos de Sistemas Distribuidos H. F. Espitia – Junio de 2013

2

1 Introducción

Con el advenimiento de las tecnologías NGS o de secuenciación de alto rendimiento, la

rápida producción de datos genómicos se ha incrementado a niveles que eran impensables

una década atrás y a costos razonables [1]. Sin embargo, el análisis eficiente y con

reproducibilidad de las grandes cantidades de datos producidas por estas tecnologías

necesita herramientas de software especializadas y capacidades de cómputo y

almacenamiento a gran escala y flexibles. Una alternativa a la creación y administración de

una infraestructura local para suplir estas necesidades es el entorno de Computación en la

Nube (Cloud Computing) el cual provee acceso por demanda a infraestructuras de cómputo

flexibles y de alta capacidad. No obstante, la configuración y administración de ambientes

Cloud para análisis sobre datos genómicos no es fácil y se escapa a las habilidades de la

mayoría de científicos del área de la genómica.

La plataforma Galaxy [2] viene a suplir las necesidades de reproducibilidad de los análisis

sobre datos genómicos por medio de un entorno integrado de fácil uso con múltiples

herramientas de software especializadas en bioinformática. Por otro lado el sistema de

administración de recursos CloudMan [3] permite el despliegue y administración de Galaxy

en infraestructuras Cloud de altas capacidades computacionales a través del servicio EC2

de Amazon usando imágenes de máquinas virtuales (VM por Virtual Machine) Cloud

BioLinux especialmente creadas para entornos de bioinformática. Con la combinación de

estas herramientas se logra suplir las necesidades de poder computacional de gran escala y

flexibles para el análisis de grandes cantidades de datos genómicos.

El presente documento es una guía que presenta el proceso de despliegue de la plataforma

Galaxy en el ambiente Cloud Amazon EC2 usando Cloud BioLinux y CloudMan. Se

muestran dos formas de despliegue: la manual, que comprende todos los pasos de

configuración de los servicios de Amazon para la puesta en marcha de la plataforma, y la

automática, la cual pone en funcionamiento la plataforma Galaxy en Cloud con mínimo

esfuerzo de configuración.

El documento se organiza de la siguiente manera. En la Sección 2 se describen de manera

general las herramientas involucradas en la implementación de la plataforma Galaxy en la

infraestructura Cloud. La Sección 3 presenta el procedimiento de despliegue de la

plataforma en sus dos formas, la manual y la automática. Finalmente se presentan en la

Sección 4 las conclusiones del trabajo.

EISC – Fundamentos de Sistemas Distribuidos H. F. Espitia – Junio de 2013

3

2 Herramientas

En la implementación de la plataforma Galaxy en ambiente Cloud se involucran

básicamente cuatro herramientas: la infraestructura Cloud proveída a través del servicio

EC2 de Amazon, la plataforma Galaxy, y CloudMan, el administrador del ambiente Cloud

específico para Galaxy. A continuación se presenta una breve descripción de cada una de

estas herramientas.

2.1 Galaxy

Galaxy (http://galaxyproject.org/) es una herramienta de entorno Web para trabajo en

bioinformática, especialmente concebida para análisis computacional de datos genómicos.

Es una completa plataforma de flujos de trabajo científicos (scientific workflows) y de

análisis e integración de datos que permite adelantar diversos análisis sobre datos

genómicos. Aunque se encuentra disponible para su uso mediante un servicio público en la

Web (https://main.g2.bx.psu.edu/), también es posible descargarlo para realizar

instalaciones locales personalizadas. La característica más importante de Galaxy es que

permite al usuario realizar análisis sobre datos genómicos sin necesidad de tener

conocimientos avanzados de programación o informática pues provee un entorno gráfico

Web que facilita la ejecución de distintas herramientas de análisis computacional [2]. Esta

plataforma goza actualmente de mucha popularidad por su facilidad de uso, gran capacidad

y por ser también un entorno colaborativo que permite desarrollar y compartir entre la

comunidad de usuarios, flujos de trabajo que encapsulan complejos análisis de datos con

reproducibilidad transparencia.

Galaxy ofrece diversas utilidades tanto genéricas como por ejemplo para el procesamiento

de texto y archivos de secuencias biológicas de distintos formatos, como también utilidades

más complejas como por ejemplo todo el conjunto de aplicaciones para análisis de datos

provenientes de las tecnologías de secuenciación de segunda generación (NGS por Next-

Generation Sequencing) que tanto auge han tomado en los últimos años y que requieren

alto poder computacional para su análisis.

2.2 CloudMan

CloudMan, creado por el Proyecto Galaxy (http://galaxyproject.org/), es un sistema que

permite la creación y administración de clusters en la infraestructura Cloud EC2 de

Amazon para la ejecución de la plataforma Galaxy. La siguiente es la descripción

presentada por Afgan, et al. en [3]:

EISC – Fundamentos de Sistemas Distribuidos H. F. Espitia – Junio de 2013

4

“CloudMan es una solución integrada que aprovecha herramientas existentes y paquetes

proveyendo un método genérico para la utilización de estas herramientas en recursos Cloud y

abstrayendo detalles informáticos de bajo nivel. Esta solución se encarga de todos los

complejidades de la adquisición de recursos, configuración y escalamiento de la Computación

en la Nube, para entregar un cluster de cómputo personal en cuestión de minutos. Toda la

interacción con CloudMan y la administración del cluster Cloud asociada, es ejecutada a

través de una interfaz de usuario basada en Web que no requiere experticia computacional.

Los clusters desplegados vienen preconfigurados con todos los paquetes de bioiformática

disponibles en la distribución NERC Bio-Linux workstation (versión 6) [4], así como un

amplia gama de herramientas para datos NGS disponibles dentro de la plataforma Galaxy. Por

otro lado, el proceso de despliegue de la herramientas es completamente automatizado y

desacoplado de la imagen base de la máquina, haciendo posible agregar muy fácilmente

herramientas adicionales a una instancia de cluster Cloud.”

2.3 Cloud BioLinux

CloudBioLinux (http://cloudbiolinux.org/) es un proyecto que crea y mantiene máquinas

virtuales basadas en la distribución Linux NERC Bio-Linux

(http://nebc.nerc.ac.uk/tools/bio-linux), la cual ha sido concebida especialmente para

tareas de bioinformática usando como base la distribución Ubuntu. En [5] se describe Cloud

BioLinux como sigue:

“Cloud BioLinux es una Máquina Virtual (VM) accesible de manera pública que le permite a

los científicos la rápida provisión de infraestructuras por demanda para cómputo de alto

desempeño en bioinformática usando plataformas Cloud. Los usuarios tienen acceso

instantáneo a un rango de aplicaciones de software preconfiguradas de línea de comandos e

interfaz gráfica, incluyendo una interfaz de escritorio completa, documentación y más de 135

paquetes de aplicaciones bioinformáticas, incluyendo alineamiento de secuencias,

agrupamiento, ensamblaje, visualización, edición y filogenética.”

Las VMs Cloud BioLinux pueden ser ejecutadas en entornos Cloud como Amazon EC2 y

Eucalyptus, este último mediante imágenes de VirtualBox.

Galaxy es una de las herramientas de software que vienen preconfiguradas en las VMs de

Cloud BioLinux por lo que CloudMan se vale de esta característica para proveer el

despliegue y administración de Galaxy en entornos Amazon EC2. Eta guía en particular

muestra el despliegue usando

EISC – Fundamentos de Sistemas Distribuidos H. F. Espitia – Junio de 2013

5

3 Procedimiento

Existen dos posibilidades para la despliegue de Galaxy en la infraestructura Cloud de

Amazon EC2. La primera forma consiste en realizar de manera manual toda la

configuración de la instancia Cloud mediante la consola de administración de Amazon EC2.

La segunda consiste en poner en funcionamiento la plataforma con configuración mínima

usando el sitio Web BioCloudCentral.

A continuación se describen cada una de las formas para poner en funcionamiento la

plataforma Galaxy en el entorno Cloud de Amazon EC2.

3.1 Requisitos

Son necesarios los siguientes requisitos para la ejecución de los procedimientos que se

describen más adelante:

Computador con acceso a Internet y un navegador Web actualizado tal como

Firefox, Chrome, Safari o Internet Explorer.

Una cuenta AWS con los servicios activos Elastic Compute Cloud (EC2) y Simple

Storage Service (S3). Para obtener una cuenta visite http://aws.amazon.com y siga

el vínculo Inscríbase. En este sitio encontrará también toda la información a cerca

de estos y otros servicios ofrecidos por Amazon.

3.2 Despliegue manual en Amazon EC2

Aunque este tipo de despliegue requiere la ejecución de múltiples pasos de configuración,

representa la mejor opción para el control total de las instancias EC2 y sus servicios

relacionados como por ejemplo el de almacenamiento. En general el proceso consiste en la

ejecución de una instancia EC2 de una VM Cloud BioLinux que permite la ejecución de

CloudMan para administrar la plataforma Galaxy en Cloud. El procedimiento incluye la

creación de usuario de acceso a la instancia EC2, generación de claves de autenticación,

configuración de firewall y configuración y ejecución de la instancia EC2. Se a continuación

presenta el despliegue manual de la plataforma Galaxy en ambiente Cloud de acuerdo con

el procedimiento descrito en [6].

1. Una vez autenticado en la cuenta AWS, asegúrese de seleccionar la región N. Virginia

(US East) dado que Galaxy Cloud solo está soportado de manera completa en esta

región. Para esto vaya a la parte superior del panel de la cuenta y seccione la región

mencionada.

EISC – Fundamentos de Sistemas Distribuidos H. F. Espitia – Junio de 2013

6

2. Se debe crear un usuario para garantizar el acceso a la instancia EC2 que usará la

utilidad CloudMan para administrar Galaxy. Los usuarios se crean en la sección Users

de la consola de administración AWS (menú izquierdo). Para ello vaya a la opción del

menú superior de configuración de la cuenta My Accout/Console > AWS Management

console > IAM > Users y luego haga clic en Create New Users. Con la creación del

nuevo usuario, se crean también las credenciales para el acceso Acces Key ID y Secret

Access Key. Es necesario que descargue (Download Credentials) y guarde el archivo de

credenciales para su posterior uso.

3. Acceda ahora la consola de administración del servicio EC2 para crear un par de

claves para el acceso al servicio EC2 de manera remota. Para esto vaya al menú

superior izquierdo Services > EC2 y a continuación en el menú izquierdo NETWORK

EISC – Fundamentos de Sistemas Distribuidos H. F. Espitia – Junio de 2013

7

& SECURITY > Key Pairs y luego clic en Create Key Pair

4. Cree un nuevo grupo de seguridad para proporcionar el acceso seguro a la instancia.

En la sección NETWORK & SECURITY seleccione Security Groups y luego Create

Security Group. Elija un nombre, por ejemplo galaxyWeb

EISC – Fundamentos de Sistemas Distribuidos H. F. Espitia – Junio de 2013

8

5. Seleccione el grupo creado (galaxyWeb) y adicione las siguientes reglas de acceso en la

sección Inbound en el panel inferior. Note que en todas las direcciones de origen se usa

por defecto 0.0.0.0/0; use esta dirección a menos que desee restringir el acceso por IP.

Protocol Port range Source Función de la regla

HTTP 0.0.0.0/0 Permite el acceso por HTTP

SSH 0.0.0.0/0 Permite el acceso por SSH

Custom TCP

rule

42284 0.0.0.0/0 Abre un Puerto en la instancia remota permitiendo el

acceso a la interface web del controlador del Cloud

Custom TCP

rule

20-21 0.0.0.0/0 Abre los puertos requeridos para transferencia FTP

Custom TCP

rule

30000-30100 0.0.0.0/0 Abre los puertos requeridos para transferencia FTP

pasiva

EISC – Fundamentos de Sistemas Distribuidos H. F. Espitia – Junio de 2013

9

Protocol Port range Source Función de la regla

All TCP galaxyWeb Permite que múltiples instancias dentro de este grupo

se comuniquen con otras instancias en la red interna

de Amazon EC2

Haga clic en Apply Rule Changes. La configuración debe lucir de la siguiente manera:

6. Es hora de crear y ejecutar una nueva instancia EC2 por medio del asistente.

a) Primero se debe encontrar una imagen de una máquina virtual para usarla en la

instancia Cloud EC2. Amazon usa un formato propio denominado Amazon Image

Machine (AMI). En el menú izquierdo vaya a IMAGES y seleccione la opción AMIs.

Ahora filtre las AMIs disponibles seleccionando la opción Public Images, introduzca el

término de búsqueda “CloudBioLinux” y ejecute el filtro (tecla Enter):

Verá ahora el listado de AMIs que corresponden con la búsqueda. Seleccione la AMI

con nombre “CloudBioLinux Ubuntu 12.04 2012062” (con AMI ID ami-46d4792f ) y

luego haga clic en Launch en la parte superior:

EISC – Fundamentos de Sistemas Distribuidos H. F. Espitia – Junio de 2013

10

b) Ahora empieza la configuración de la nueva instancia EC2 por medio del asistente. Se

debe especificar primero el tipo de instancia que se desea lanzar.

Es posible usar una instancia T1 Micro la cual es gratuita durante un año a partir de

la apertura de la cuenta AWS. Sin embargo, con este tipo de instancia no se pueden

lanzar tareas de análisis en la plataforma Galaxy, por lo que solo se usa para efectos

de prueba de del cluster CloudMan con EC2. Por esta razón en esta guía se usará M1

Large (m1.large 7.5 GiB) la cual está concebida para trabajo moderado y cuenta con 4

unidades informáticas EC2 (2 núcleos virtuales con dos unidades informáticas EC2

cada una), 7.5 GB de memoria y 840 GB de almacenamiento de instancias.

NOTA: Tenga en cuenta que la ejecución de una instancia M1 Large (m1.large 7.5 GiB)

generará costos en su cuenta AWS. Para calcular los costos totales puede usar la

herramienta Simple Monthly Calculator de AWS. Debe tener en cuenta también en los

cálculos el almacenamiento en unidades EBS (Elastic Block Storage) dado que CloudMan

configura por defecto dos EBS, una de 10 GB para las herramientas de Galaxy y otra de 700

GB para datos genómicos predefinidos de referencia. Cabe anotar que el costo de las unidades

EBS actualmente es de USD $0.1 por cada GB proveído al mes, de esta manera el costo

aproximado para la EBS de 700 GB en un día entero sería de USD $2.33 (700 GB × USD$

0.1 × 1 día/30). Puede encontrar la información completa acerca de los precios de los

servicios EC2 y EBS en http://aws.amazon.com/ec2/pricing/ y

http://aws.amazon.com/pricing/ebs/ respectivamente.

Asegúrese de ingresar en el campo Number of Instances el número 1 y seleccionar M1

Large (m1.large 7.5 GiB) en Instance Type.

EISC – Fundamentos de Sistemas Distribuidos H. F. Espitia – Junio de 2013

11

c) Ahora es necesario proveer los datos de usuario para acceso a la instancia por medio

de CloudMan. En el campo User Data ingrese los datos de usuario en el siguiente

formato:

cluster_name: <DESIRED CLUSTER NAME>

password: <DESIRED Galaxy CloudMan WEB UI PASSWORD>

access_key: <YOUR AWS ACCESS KEY>

secret_key: <YOUR AWS SECRET KEY>

Reemplace los datos en cada línea con los que correspondan a su usuario. En

acces_key y secret_key debe proveer los valores que se encuentran en el archivo de

credenciales que descargó en el paso 2.

EISC – Fundamentos de Sistemas Distribuidos H. F. Espitia – Junio de 2013

12

Haga clic en Continue. Ahora se presenta la configuración de almacenamiento de la

instancia. Deje los valores por defecto y haga clic en Continue.

Se presenta ahora la pantalla para entrada de tags para la instancia las cuales

permiten nombrar recursos de la instancia. En el campo Value frente a la clave Name

ingrese la palabra Galaxy y haga clic en Continue.

EISC – Fundamentos de Sistemas Distribuidos H. F. Espitia – Junio de 2013

13

d) Ahora hay que proveer las claves para acceso a la instancia. Puede crear pares de

claves nuevos o usar pares creados previamente. Seleccione el par de claves creado en

el paso 3 (cloudman_key_pair) y haga clic en Continue.

e) Ahora se configura el Firewall asignando grupos de seguridad. Puede crear grupos

nuevos o usar grupos creados previamente. Asegúrese se seleccionar los grupos default

EISC – Fundamentos de Sistemas Distribuidos H. F. Espitia – Junio de 2013

14

y galaxyWeb creado en el paso 4 (mantenga presionada la tecla Ctrl mientras hace clic

en cada grupo de la lista) y haga clic en Continue.

f) Finalmente se presenta el resumen de la configuración de la instancia creada. En caso

de ser necesario, se pueden editar los valores de cada sección de la configuración.

Ahora puede ejecutar la instancia presionando Launch.

EISC – Fundamentos de Sistemas Distribuidos H. F. Espitia – Junio de 2013

15

En esta parte el asistente le confirma la ejecución de la instancia. Presione Close para

continuar.

Ahora podrá verificar el estado y las propiedades de la instancia creada en la consola

de administración de EC2 en la sección Instances

En el panel de propiedades inferior podrá ver el campo Public DNS el cual le informa

la el DNS por medio del cual podrá acceder al panel CloudMan de administración del

entorno Cloud para Galaxy

EISC – Fundamentos de Sistemas Distribuidos H. F. Espitia – Junio de 2013

16

Copie este DNS y a continuación acceda a él por medio del navegador Web. Ahora

podrá ver la pantalla de bienvenida a CloudMan.

7. Ahora se puede iniciar la configuración del entorno Cloud de Galaxy mediante

CloudMan. Haga clic en el vínculo CloudMan Console en la parte inferior. CloudMan

le solicitará autenticarse para ingresar a la consola. Ingrese con el usuario ubuntu y el

password que proporcionó en los datos de usuario en el paso 6.c.

Aparecerá ahora la pantalla de configuración inicial del cluster. Seleccione la opción

Galaxy Cluster y asigne 10 GB como capacidad de almacenamiento inicial. A

continuación haga clic en Choose CloudMan Paltform.

EISC – Fundamentos de Sistemas Distribuidos H. F. Espitia – Junio de 2013

17

Finalmente se presenta la consola CloudMan de Galaxy en Cloud.

EISC – Fundamentos de Sistemas Distribuidos H. F. Espitia – Junio de 2013

18

Ahora puede verificar en la consola EC2 el estado de las unidades EBS asociadas con

el entorno Cloud de Galaxy. Vaya a la sección ELASTIC BLOCK STORAGE >

Volumes del menú izquierdo. Como verá existen cuatro unidades en uso actualmente:

EISC – Fundamentos de Sistemas Distribuidos H. F. Espitia – Junio de 2013

19

8. Regrese a la consola CloudMan. Mediante la pantalla de administración es posible

iniciar o detener los servicios relacionados con Galaxy. Vaya al menú superior y

seleccione la opción Admin. Verá ahora una interfaz que le permite adicionar usuarios

a Galaxy mediante un archivo CSV, actualizar Galaxy desde un repositorio

especificando la URL y controlar la ejecución de los servicios de la plataforma:

Galaxy, la base de datos PostgreSQL, SGE (Sun Grid Engine) y el sistema de

archivos. Una vez el estado de los servicios sea Running, podrá ejecutar Galaxy en el

entorno Cloud.

Regrese a la interfaz inicial de CloudMan haciendo clic en el encabezado CloudMan

from Galaxy.

EISC – Fundamentos de Sistemas Distribuidos H. F. Espitia – Junio de 2013

20

La interfaz principal de CloudMan permite manejar al cluster Cloud y además acceder

a Galaxy para su uso.

Desde aquí es posible adicionar y remover nodos al cluster, monitorear el estado de los

servicios del cluster, y administrar características del cluster como el auto-

escalamiento (auto-scaling) y compartir instancias. La siguiente es una captura del

menú para adicionar nodos al entorno Cloud.

9. Finalmente puede empezar a usar la plataforma Galaxy accediendo mediante la opción

Access Galaxy

EISC – Fundamentos de Sistemas Distribuidos H. F. Espitia – Junio de 2013

21

Verá la interfaz de la plataforma Galaxy funcionando en el entorno Cloud de EC2.

Ahora podrá realizar desde aquí los análisis sobre datos genómicos que desee.

3.3 Despliegue automático mediante BioCloudCentral

Afgan et al. presentan en [7] el proceso de despliegue automático de Galaxy en la

infraestructura EC2. El proceso consiste, de manera general, en la ejecución y acceso a una

instancia privada de una imagen de VM Cloud BioLinux en AWS. El proceso se inicia a

través de portal Web BioCloudCentral.org que simplifica el proceso de ejecución de la

instancia gracias a que automatiza muchos de los pasos requeridos en la configuración

manual como por ejemplo la creación de reglas de firewall, la generación de claves de

EISC – Fundamentos de Sistemas Distribuidos H. F. Espitia – Junio de 2013

22

autenticación y configuración de datos de usuario. A continuación se presenta el

procedimiento de acuerdo con lo descrito en [7].

1. Si ya cuenta con un usuario en AWS y sus correspondientes claves de autenticación,

recupere los datos de las claves y salte las siguientes instrucciones, de lo contrario,

proceda con ellas.

Se debe crear un usuario para garantizar el acceso a la instancia EC2 que usará la

utilidad CloudMan para administrar Galaxy. Los usuarios se crean en la sección

Users de la consola de administración AWS (menú izquierdo). Para ello vaya a la

opción del menú superior de configuración de la cuenta My Accout/Console > AWS

Management console > IAM > Users y luego haga clic en Create New Users. Con la

creación del nuevo usuario, se crean también las credenciales para el acceso Acces

Key ID y Secret Access Key. Es necesario que descargue (Download Credentials) y

guarde el archivo de credenciales para su posterior uso.

2. En el navegador Web ingrese al sitio de BioCloudCentral.org

(http://biocloudcentral.org). Ingrese los datos requeridos en el formulario. En los

campos Acces key y Secret key, proporcione los valores de las claves de acceso creadas

anteriormente. Seleccione en Instance type la opción Large (4 ECUs / 7.5GB RAM).

EISC – Fundamentos de Sistemas Distribuidos H. F. Espitia – Junio de 2013

23

Es posible usar una instancia Micro (2 ECUs / 613MB RAM) la cual es gratuita

durante un año a partir de la apertura de la cuenta AWS. Sin embargo, con este tipo

de instancia no se pueden lanzar tareas de análisis en la plataforma Galaxy, por lo

que solo se usa para efectos de prueba de del cluster CloudMan con EC2. Por esta

razón en esta guía se usará Large (4 ECUs / 7.5GB RAM) la cual está concebida para

trabajo moderado y cuenta con 4 unidades informáticas EC2 (2 núcleos virtuales con

dos unidades informáticas EC2 cada una), 7.5 GB de memoria y 840 GB de

almacenamiento de instancias.

NOTA: Tenga en cuenta que la ejecución de una instancia Large (4 ECUs / 7.5GB RAM),

que corresponde con la instancia M1 Large (m1.large 7.5 GiB) de EC2 de Amazon, generará

costos en su cuenta AWS. Para calcular los costos totales puede usar la herramienta

Simple Monthly Calculator de AWS. Debe tener en cuenta también en los cálculos el

almacenamiento en unidades EBS (Elastic Block Storage) dado que CloudMan configura por

defecto dos EBS, una de 10 GB para las herramientas de Galaxy y otra de 700 GB para datos

genómicos predefinidos de referencia. Cabe anotar que el costo de las unidades EBS

actualmente es de USD $0.1 por cada GB proveído al mes, de esta manera el costo

aproximado para la EBS de 700 GB en un día entero sería de USD $2.33 (700 GB × USD$

0.1 × 1 día/30). Puede encontrar la información completa acerca de los precios de los

servicios EC2 y EBS en http://aws.amazon.com/ec2/pricing/ y

http://aws.amazon.com/pricing/ebs/ respectivamente.

EISC – Fundamentos de Sistemas Distribuidos H. F. Espitia – Junio de 2013

24

Cuando haya ingresado los datos haga clic en Start Instantace. Ahora verá una nueva

página que le los detalles de la instancia creada. Podrá observar el estado de la

instancia en la parte superior (Instance state) el cual estará en pending justo después

de ejecutar la instancia. Una vez la instancia se haya iniciado, verá el estado en

running, lo cual le indica que la plataforma está lista para ser usada. En este punto,

también podrá ver el IP público –PublicIP (CloudMan Console) por medio del cual

puede ingresar a la consola CloudMan.

EISC – Fundamentos de Sistemas Distribuidos H. F. Espitia – Junio de 2013

25

Se recomienda descargar los datos de usuario mediante el botón Download user-data,

los cuales le permitirán iniciar posteriormente el entorno directamente desde la

consola de AWS o incluso a través de su API.

3. Ingrese a la consola CloudMan mediante el vínculo al IP público mostrado en

pantalla. CloudMan le solicitará autenticarse para ingresar a la consola. Ingrese con

el usuario ubuntu y el password que proporcionó en el formulario del paso 2.

Aparecerá ahora la pantalla de configuración inicial del cluster. Seleccione la opción

Galaxy Cluster y asigne 10 GB como capacidad de almacenamiento inicial. A

EISC – Fundamentos de Sistemas Distribuidos H. F. Espitia – Junio de 2013

26

continuación haga clic en Choose CloudMan Paltform.

Ahora se presenta la consola CloudMan de Galaxy en Cloud.

EISC – Fundamentos de Sistemas Distribuidos H. F. Espitia – Junio de 2013

27

Ingresando a su cuenta AWS, puede verificar en la consola EC2 el estado de las

unidades EBS asociadas con el entorno Cloud de Galaxy. Vaya a la sección ELASTIC

BLOCK STORAGE > Volumes del menú izquierdo. Como verá existen cuatro unidades

en uso actualmente:

EISC – Fundamentos de Sistemas Distribuidos H. F. Espitia – Junio de 2013

28

4. Regrese a la consola CloudMan. Mediante la pantalla de administración es posible

iniciar o detener los servicios relacionados con Galaxy. Vaya al menú superior y

seleccione la opción Admin. Verá ahora una interfaz que le permite adicionar

usuarios a Galaxy mediante un archivo CSV, actualizar Galaxy desde un repositorio

especificando la URL y controlar la ejecución de los servicios de la plataforma:

Galaxy, la base de datos PostgreSQL, SGE (Sun Grid Engine) y el sistema de

archivos. Una vez el estado de los servicios sea Running, podrá ejecutar Galaxy en el

entorno Cloud.

EISC – Fundamentos de Sistemas Distribuidos H. F. Espitia – Junio de 2013

29

Regrese a la interfaz inicial de CloudMan haciendo clic en el encabezado CloudMan

from Galaxy.

EISC – Fundamentos de Sistemas Distribuidos H. F. Espitia – Junio de 2013

30

La interfaz principal de CloudMan permite manejar al cluster Cloud y además

acceder a Galaxy para su uso.

Desde aquí es posible adicionar y remover nodos al cluster, monitorear el estado de

los servicios del cluster, y administrar características del cluster como el auto-

escalamiento (auto-scaling) y compartir instancias. La siguiente es una captura del

menú para adicionar nodos al entorno Cloud.

5. Finalmente puede empezar a usar la plataforma Galaxy accediendo mediante la

opción Access Galaxy

EISC – Fundamentos de Sistemas Distribuidos H. F. Espitia – Junio de 2013

31

Verá la interfaz de la plataforma Galaxy funcionando en el entorno Cloud de EC2.

Ahora podrá realizar desde aquí los análisis sobre datos genómicos que desee.

4 Conclusiones

Se presentó el procedimiento para despliegue de la plataforma Galaxy para bioinformática

en la infraestructura Cloud EC2 de Amazon dos formas, una automática y otra manual.

Aunque la automática facilita el proceso de despliegue, la manual brinda mayores

posibilidades en este aspecto pues permite mayor control de la configuración.

EISC – Fundamentos de Sistemas Distribuidos H. F. Espitia – Junio de 2013

32

Si bien la administración de las soluciones AWS no es del todo complicada, la herramienta

CloudMan permite una fácil utilización del modelo de Computación en la Nube en el área

bioinformática encapsulando todos los detalles de bajo nivel de la administración del

entorno EC2.

La integración de las herramientas Galaxy, CloudMan y Cloud BioLinux, ofrece enormes

ventajas a los investigadores del área de la biología computacional pues ponen a su

disposición el modelo de Computación en la Nube, con su gran beneficio del uso por

demanda y a precios razonables de infraestructuras computacionales flexibles de alto

rendimiento. Lo anterior sin olvidar que esto es posible gracias a soluciones versátiles,

seguras y flexibles como AWS.

Referencias

[1] M. L. Metzker, “Sequencing technologies - the next generation.,” Nature reviews.

Genetics, vol. 11, no. 1, pp. 31–46, Jan. 2010.

[2] J. Goecks, A. Nekrutenko, and J. Taylor, “Galaxy: a comprehensive approach for

supporting accessible, reproducible, and transparent computational research in the

life sciences.,” Genome biology, vol. 11, no. 8, p. R86, Jan. 2010.

[3] E. Afgan, D. Baker, N. Coraor, B. Chapman, A. Nekrutenko, and J. Taylor, “Galaxy

CloudMan: delivering cloud compute clusters.,” BMC bioinformatics, vol. 11 Suppl 1,

no. Suppl 12, p. S4, Jan. 2010.

[4] D. Field, B. Tiwari, T. Booth, S. Houten, D. Swan, N. Bertrand, and M. Thurston,

“Open software for biologists: from famine to feast.,” Nature biotechnology, vol. 24,

no. 7, pp. 801–3, Jul. 2006.

[5] K. Krampis, T. Booth, B. Chapman, B. Tiwari, M. Bicak, D. Field, and K. E.

Nelson, “Cloud BioLinux: pre-configured and on-demand bioinformatics computing

for the genomics community.,” BMC bioinformatics, vol. 13, no. 1, p. 42, Jan. 2012.

[6] Galaxy Project, “CloudMan - Galaxy Wiki,” 2013. [Online]. Available:

http://wiki.galaxyproject.org/CloudMan. [Accessed: 03-Jun-2013].

[7] E. Afgan, B. Chapman, M. Jadan, V. Franke, and J. Taylor, “Using cloud computing

infrastructure with CloudBioLinux, CloudMan, and Galaxy.,” Current protocols in

EISC – Fundamentos de Sistemas Distribuidos H. F. Espitia – Junio de 2013

33

bioinformatics / editoral board, Andreas D. Baxevanis ... [et al.], vol. Chapter 11, p.

Unit11.9, Jun. 2012.