Paper Title (use style: paper title)

Transcripción

Paper Title (use style: paper title)
Servicios de Almacenamiento en Internet
Una Perspectiva Empresarial
Miguel Ángel Mejía
Juan Carlos Ramírez
Ingeniero de Desarrollo
Infotrack S.A.
Bogotá Colombia
[email protected]
Arquitecto de Soluciones de Software
Infotrack S.A.
Bogotá Colombia
[email protected]
II.
Resumen—Este artículo presenta los resultados de un
análisis a tres de los principales proveedores de alojamiento Web
actuales, evaluando sus aspectos relevantes y los mecanismos de
acceso a cada una de sus plataformas de cara a la publicación de
aplicativos Web construidos en plataformas .Net de Microsoft.
Plabras Claves; hosting; amazon;
Rackspace; Cloud;Server; Dotnet; .Net
azure;
Microsoft;
I. INTRODUCCIÓN
El vertiginoso ritmo de los negocios y la complejidad
competitiva que hace parte de las empresas proveedoras de
tecnología, en especial, de las empresas desarrolladoras de
software, exigen cada vez más plataformas robustas y
escalables a bajos costos y con un alto nivel de calidad.
Pensar en el alojamiento de aplicativos Web dentro de
empresas cuyo objeto de negocio no tiene nada que ver con
la infraestructura de centros de cómputo, es muy difícil, tanto
por costo, como por personal para mantenimiento. La
expansión de corporaciones de Software más allá de
Microsoft como Google o Facebook, ha puesto los ojos del
mundo tecnológico en la asombrosa capacidad de
almacenamiento y procesamiento de los centros de cómputo
necesarios para sostener a estos gigantes de la internet, dando
la perspectiva que ante el potencial crecimiento de cualquier
negocio, es necesario poder soportarlo de manera rápida y
eficiente a través del concepto de moda, cloud computing, la
consecuencia, un reluciente negocio, el alojamiento de
negocios en la nube. Como necesidad, el concepto, como
negocio, el servicio. En las siguientes secciones haremos un
recorrido por tres de los principales proveedores de servicios
de almacenamiento en la nube, a saber, Amazon, Microsoft
Azure y RackSpace, analizáremos las características
principales de estos proveedores como precios, geo
referencia de sus servidores, mecanismos de enrutamiento de
dominios a los servicios, consola de administración y
publicación de aplicaciones Web construidas en .Net. Al
finalizar haremos un breve comparativo de los tres
proveedores basándonos en ofertas para configuraciones
similares de servidores virtualizados.
AMAZON
Con una versátil apariencia y una gran variedad de
opciones, el ahora gigante de Internet nos muestra una
buena forma de proveer escalabilidad y rendimiento. Bajo
el nombre clave EC2 (Elastic Cloud Compute Cloud),
amazon se posiciona como un importante proveedor de
servicios, ofreciendo virtualización de servidores en
plataformas Linux y Windows.
Amazon ofrece instancias según la necesidad del
usuario. Estas pueden ser reservadas (Pago puntual del
servicio y únicamente se cancela el plus de los servicios que
se consuman por mes), por demanda (se cancela según el
uso que se les da, esto es dependiente de la configuración
que se le asigne a la instancia) e instancias puntuales
(dependiendo del uso que haga de estas, se hará un
descuento sobre lo que no se utilice del servicio adquirido).
Adicionalmente permite la creación de una instancia gratuita
con características mínimas para uso por un año.
A. Precios
Dependiendo del modelo de reserva de la instancia,
amazon aplica un cargo mensual basado en el uso y tráfico
del cloud server, con una opción interesante de pago por uso
y precios que pueden oscilar al mes entre USD 1 y USD
1000. Las condiciones de precios pueden visualizarse aquí.
Amazon provee una interesante calculadora para estimar
muy acertadamente el cobro por el servicio acorde a las
características de la instancia que se quiere reservar.
B. Geo Referencia de Servidores
Con opciones en latitudes diferentes de tres continentes,
amazon permite la selección de ubicación de la instancia
dentro de la calculadora mensual, en donde los precios no
varían pero si la disponibilidad de algunos tipos de
instancias.
Fig. 1. Ubicación de Servidores para Instancias Amazon
C. Mecanismos de Enrutamiento de los Servicios a
Dominios Corporativos

Amazon para cada instancia configurada ofrece una IP
elástica, que puede ser regenerada tantas veces como se
desee y un subdominio canónico, ambas desplegadas en la
consola. De tal manera que para cualquier dominio con una
consola de administración básica que permita la edición de
registros MX se pueden crear dos tipos de registros, un
registro A * que debe ser en rutado a la IP elástica y un
registro CNAME www que debe ser en rutado al sub
dominio.




Fig. 2. Configuración Dominios corporativos a servicios EC2
D. Consola de Administración
Con una consola amigable Web Enabled no comercial,
amazon permite la administración de las instancias con una
total automatización. Para nuestro caso de estudio, una vez
activada la instancia de Windows 2008, se pudo acceder vía
escritorio remoto y realizar la administración total del cloud
server.
La consola permite la gestión de instancias
asociadas a una cuenta de usuario, así como administración
de servicios adicionales dentro de los que resaltamos S3,
servicio de almacenamiento para expandir capacidades del
cloud server.



Se selecciona el sistema operativo, tamaño de
instancia, tamaño en disco y todo lo demás
necesario para configurar.
Si se posee una llave de acceso se utilizará para la
obtención de la clave, de lo contrario se asignará
una llave única que controla la funcionalidad de la
Instancia.
Luego de generada la instancia, se deberá esperar
en promedio 5-7 minutos para poder acceder vía
escritorio remoto o consola (Dependiendo el
sistema operativo).
Se deberá obtener el password, solicitándolo en el
menú de la instancia y usando la llave de acceso
conectada a la máquina.
En el panel de “Security Groups” se configurarán
los puertos y reglas de acceso para la instancia que
se encuentre asociada a ese grupo. Cabe aclarar que
se pueden tener múltiples instancias asociadas al
mismo grupo de seguridad.
Luego de acceder a la instancia vía escritorio
remoto o consola, se dispone del sistema operativo
para realizar la configuración respectiva de
componentes y del contenedor IIS.
Las bases de datos vienen dentro de la instancia (si
al momento de solicitarse estas vienen incluidas).
El modo de conexión cuando se usa el mismo
Server para la Base y el IIS, se hace apuntando a
localhost, de lo contrario se usaran las IP’s privadas
que asigna amazon automáticamente por cada
instancia.
La consola administrativa permite establecer las
direcciones por las que se puede acceder a la
instancia, así como todas las reglas de exposición
de los puertos.
F. Desventajas
Fig. 3. Consola de Administración EC2
E. Procedimientos de Publicación de Aplicativos .Net
A partir de la generación de la cuenta en amazon, el
procedimiento de publicación de un aplicativo web se
resume en los siguientes pasos:

Ingreso sobre la cuenta.

Clic sobre EC2.

Clic en Instances.

Clic sobre launch Instance, lo cual despliega un
formulario de configuración para la instancia.
Si se pierde la llave para la definición de instancias, no
se podrá acceder en caso de que se olvide la contraseña. La
llave de acceso es un archivo encriptado que se adjunta al
momento de obtener un password para ingresar a la
instancia. En caso de que el sistema crezca, la instancia no
permite su ampliación según necesidad, es necesario
reservar otra instancia para migrar las aplicaciones o la
configuración de servicios de balanceo y cargas para la
expansión, lo cual es buena idea para replicaciones y
redundancia, estos servicios también son provistos por
amazon.
Algunos de los servicios que ofrecen, requieren el uso de
API’s especiales para poder consumirlos, esto hace que el
sistema no permita la migración directa en el momento que
se quiera cambiar de proveedor.
III.
MICROSOFT WINDOWS AZURE
C. Mecanismos de Enrutamiento de los Servicios a
Dominios Corporativos
El gigante de Redmond en sus ya acostumbrados
movimientos reactivos nos ofrece sus servicios de
almacenamiento en la nube bajo una plataforma denominada
Windows Azure. Aunque con una integración algo molesta
a sus tradicionales SDKs para la utilización de los servicios,
Azure es una apuesta fuerte de transición hacia la nube del
ecosistema Microsoft.
Azure provee un subdominio canónico que puede ser
visualizado en la consola. Desde una consola de
administración básica que permita la edición de registros
MX se pueden crear un registro CNAME www que debe ser
en rutado al sub dominio.
Azure ofrece instancias con la misma variedad que sus
competidores directos, con varios colores y sabores que se
pueden configurar para obtener diferentes escalas de
servidores, extrañamente sin restricción exclusiva a
plataformas Windows ya que también se pueden
dimensionar servidores Linux. Se pueden probar los
servicios azure sin costo por 90 días.
Fig. 6. Configuración Dominios corporativos a servicios Azure
A. Precios
Bajo un esquema mucho más digerible y entendible
acerca de las dimensiones de los servidores, aunque un poco
menos flexible, azure nos presenta tres opciones de
instancias, “gratuitas”, compartidas y reservadas, en donde
para cada una se puede seleccionar tamaño de procesador,
tamaño de almacenamiento y ancho de banda. Desde la
calculadora
de precios, se pueden estimar según la
configuración de la instancia, pagos anticipados por
semestres o años, o pagos por uso, siempre con un
compromiso de compra de al menos USD 500. Los precios
al igual que sus competidores oscilan entre USD 1 y
alrededor de 1000 USD. Una detallada descripción de
precios también está disponible para garantizar el
entendimiento de sus esquemas.
D. Consola de Administración
Con una consola 100% Web, azure proporciona un
mecanismo centralizado para la administración de lo que
Microsoft llama servicios independientes, en donde no se
necesita de
una consola o escritorio remoto para
gestionarlos. Los servicios están divididos según su
funcionalidad en Web Sites, Virtual Machines, Mobiles
Services, Cloud Services, SQL Databases, Storage, etc.
Azure permiten una sencilla escalabilidad, cuenta con
gráficos que determinan cuando se está llenando el espacio,
y sin necesidad de migrar la instancia a un espacio más
grande se pueden realizar los ajustes necesarios para
expandir las capacidades del cloud server. No se necesita
tener instalado nada en el equipo, los administradores de
cada servicio son paneles Silverlight que cuentan con todo
lo necesario para cumplir con los requisitos. Al estar
separados los servicios que ofrece azure, se pueden
gestionar todos los sistemas de forma independiente.
Fig. 4. Tipos de instancias Windows Azure.
B. Geo Referencia de Servidores
Al igual que sus competidores azure ofrece diferentes
latitudes para sus servidores, igualmente permite la selección
de ubicación de la instancia, en donde los precios no varían y
todas las instancias están disponibles en todas las locaciones.
Fig. 7. Consola de Administración Windows Azure.
E. Procedimientos para la Publicación de Aplicativos
.Net
Luego de la creación de una cuenta en Windows azure,
la publicación de un aplicativo Web se realiza siguiendo
Fig. 5. Ubicación de Servidores para Instancias Azure
estos pasos bajo dos modalidades posibles, generación
directa de instancia y publicación independiente:
Generación de una instancia para publicación:

El proceso es similar al de Amazon EC2, salvo que
el password se ingresa al momento de la generación
de la instancia.

La configuración de puertos es más restrictiva que
en Amazon, ya que los puertos se configuraran
desde la propia instancia y no mediante reglas
externas.
Publicación Independiente:

Se crea una base de datos en el administrador de
base de datos.

Se crea un WebSite donde se realizará la
publicación.

Se descarga el perfil de publicación del sitio, que
luego se importará en el proyecto a publicar dentro
de Visual Studio.

Al momento de publicar, si las credenciales están
configuradas, el sitio quedará montado sobre el
punto que se configuró.
F. Desventajas
Windows Azure asegura muy bien que los aplicativos Web
sean desarrollados con herramientas Microsoft, y de hecho
requiere la utilización de SDKs para la integración con la
plataforma, tiene varias limitaciones respecto a lo que se
puede gestionar sobre los cloud servers, en donde la
orientación de los servicios es netamente para la publicación
Web. La configuración se realiza directamente sobre los
contenedores Web restringiendo así el uso de componentes
de terceros. El motor de base de datos tiene varias
limitaciones, no tiene compatibilidad directa sobre una
versión específica de SQL Server, y se requieren los
componentes del SDK para la conexión, aunque la cadena
de conexión y los objetos de acceso no cambian mucho
(Data Source=[ServerName] .database.windows.net; Initial
Catalog=[DBName];
User
ID=[User];Password=
[Password]), si lo hacen la cantidad de características,
siendo estas mucho menores a las existentes en las versiones
recientes de SQL Server. Una lista completa de limitaciones
está disponible en el msdn para azure. Aunque es posible
una conexión remota a través de SSMS, esta tiene las
limitaciones mencionadas en cuanto a características sobre
la instacia.
Fig. 8. Consola de Administración Windows Azure Database
IV.
RACKSPACE
Nuestra tercera opción de proveedores de servicios de
alojamiento Web no tiene la dimensión empresarial de los
dos anteriores competidores, tampoco su variedad de
negocios, tal vez por eso, RackSpace merece mucho
respeto, están focalizados y son especialistas en proveer
soluciones de hosting, con cuartel general en San Antonio
Texas, este pequeño gigante tiene uno de los servicios
mejores calificados tras su sugestivo lema, “Fanáticos del
soporte”, y el nada despreciable hecho que su plataforma es
soportada por OpenStack, un sistema operativo para
servidores Cloud, patrocinado entre otros por la NASA que
entre otras cosas está disponible para ser descargado e
instalado en servidores privados. Rackspace ofrece siete
tipos de instancias que se pueden configurar sobre distintos
sistemas operativos. Cada una de estas variando entre el
número de procesadores, el tamaño en disco, o la memoria
de procesamiento. Una lista de características de las
instancias está disponible en su sitio Web.
Llama la atención sus APIs Restful para el control y
monitoreo de instancias, los cuales permiten personalizar de
manera interesante aspectos como la gestión de crecimiento
o configuración de los cloud servers.
A. Precios
Con opciones entre USD 160 / Mes y USD 1204 /Mes
para instancias Windows + SQL Server Web, Rackspace no
se aleja mucho del sus competidores. Presentando propuestas
concretas de configuración de servidores en modalidades
Cloud y Managed Cloud, la diferencia es que para el
segundo, Rackspace ofrece un monitoreo directo y un
tunning realizado por el propio soporte “fanático” ofrecido,
con una diferencia de cerca de USD100 por este servicio,
algo para tener en cuenta si una empresa no cuenta con un
departamento IT que pueda estar verificando el
comportamiento de la plataforma para tomar decisiones a
tiempo, de cuando debe ser expandida. La lista de precios se
encuentra en su sitio Web.
B. Geo Referencia de Servidores
Rackspace ofrece las ubicaciones comunes para sus
centros de datos, con dos salvedades, la primera, ningún
centro de datos en Suramérica y la segunda, con un particular
centro de datos en Australia.
Fig. 9. Ubicación de Servidores para Instancias Rackspace
C. Mecanismos de Enrutamiento de los Servicios a
Dominios Corporativos
Rackspace ofrece el mismo mecanismo de configuración
para los dominios corporativos que ofrece Amazon, ofrece
una IP y un subdominio canónico, ambas visibles desde la
consola. De tal manera que para cualquier dominio con una
consola de administración básica que permita la edición de
registros MX se pueden crear dos tipos de registros, un
registro A * que debe ser enlutado a la IP y un registro
CNAME www que debe ser en rutado al sub dominio.
D. Consola de Administración
Al igual que sus competidores, rackspace ofrece una
consola Web no comercial con características similares,
desde esta se pueden gestionar las tareas relevantes para las
instancias. Adicionalmente una vez en ejecución, las
instancias pueden ser accedidas vía escritorio remoto o
consola.
E. Procedimientos de Publicación de Aplicativos .Net
La Configuración de la publicación de un aplicativo .Net
sobre RackSpace se puede realizar de dos maneras, como
Cloud Server, en donde se gestiona un servidor virtualizado
o desde Cloud Sites, en donde se publican aplicativos
directamente sobre la consola Web de administración
similar al modelo de azure:
Configuración mediante Cloud Server:

Se crea un Cloud Server que incluya SQL Server
Web.

Se asigna un tamaño de memoria el cual ya viene
con un tamaño de disco por defecto.

Al configurar la máquina, el sistema asigna un
password que posteriormente se podrá cambiar.

El manejo de puertos se realiza vía interna sobre la
máquina.

Se realiza la configuración del sitio directamente en
el server vía escritorio remoto.
Configuración mediante Cloud Sites:

Se crea un sitio de publicación asignando un
nombre de dominio. A diferencia de la
configuración por Cloud Server, si no se posee un
dominio, se podrá comprar o en su defecto
configurar para que no sea requerido un dominio.

Se presenta un panel de selección de Hosting.

Se selecciona el tamaño y número de bases de
datos que se utilizarán en el sitio, así como el
Sistema Operativo que se manejará.

Ya generado el sitio, al igual que con azure, se
procederá a hacer el despliegue desde aplicativos
de terceros o desde Visual Studio.
F. Desventajas
A pesar de ser una opción muy completa y de tener una
infraestructura muy veloz, alojar en Rackspace puede ser un
poco más costoso comparado con los otros proveedores. Al
igual que azure, el escalamiento se hace con nuevas
instancias, en donde se tendría que migrar las aplicaciones o
contratar servicios adicionales de balanceo.
V.
COMPARATIVO DE PRECIOS
Mostramos a continuación una comparación de precios
basada en una instancia grande, que cuenta con
especificaciones parecidas entre los proveedores.
TABLA I.
TABLA COMPACIÓN DE PRECIOS
Sistema Operativo Windows Server 2008 SP1, Base
de datos SQL Server 2008 Web Edition, Memoria
RAM : 7.5 GB, Núcleos de procesamiento: 4
Fig. 10. Consola de Administración Rackspace
Amazon
USD 366 / Mes
Windows Azure
USD 230 / Mes
Rackspace
USD 467 / Mes
VI.
CONCLUSIONES
Este vínculo presenta un comparativo complementario
acerca de otras características para cada uno de los
proveedores evaluados anteriormente. Se contemplan
aspectos que van desde la seguridad, hasta la persistencia
sobre información y Servicios ofrecidos. Los tres son
opciones interesantes con infraestructuras robustas y con
tiempos de respuesta adecuados, sin embargo por facilidad
de implementación y flexibilidad de opciones, nuestra
recomendación se inclina por amazon y rackspace.
La configuración inicial de la instancia de Windows Azure
requiere más tiempo respecto a amazon y a rackspace, ya
que temas como puertos, requieren que el usuario ingrese a
la máquina y defina sus propias reglas.
La diferencia de precios se da debido a que azure ofrece
servicios independientes con el fin de que la administración
sea separada según la necesidad, amazon entrega una
instancia que se puede programar como un servidor normal,
además tanto amazon como rackspace ofrecen servicios
como Ancho de Banda, Cantidad de peticiones (I/O), etc.
Otro punto importante es la cantidad de opciones que define
cada uno. Mientras azure ofrece tamaños fijos de instancias
(5 tamaños sin importar sistema operativo), amazon como se
mencionó ofrece distintas opciones, esto con el fin de que el
usuario puede elegir la instancia según lo que necesita,
rackspace provee configuraciones estándar con la
posibilidad de hacer ajustes en almacenamiento y ancho de
banda.
Los tipos de instancia que ofrece Amazon permiten
descuentos en caso de no cumplirse con la cuota de
consumo del mes, algo que Azure ni rackspace ofrecen.
Azure condiciona un costo de facturación mínimo por el uso
de la plataforma una vez adquirida, que implica la
obligación de cerca de tres meses de permanencia.
Todos ofrecen la opción de prueba de las instancias, lo que
permite hacer evaluaciones puntuales sobre aplicativos que
tengan alguna necesidad especial.
En el caso de Rackspace, las especificaciones de la instancia
son mayores en algunos aspectos a sus competidores (Mayor
memoria, menor espacio en disco).
Azure se aleja un poco de la flexibilidad de sus
competidores, y es entendible ya que es la plataforma más
joven.
REFERENCIAS
[1]
[2]
[3]
[4]
Amazon, “Amazon Elastic Compute Cloud (Amazon EC2)”,
amazon.com, http://aws.amazon.com/es/ec2/, 2013
RackSpace,
“Rack
Space
Cloud”,
rackspace.com,
http://www.rackspace.com/cloud/, 2013
Microsoft,
“Windows
Azure”,
windowsazure.com,
http://www.windowsazure.com/en-us/documentation/?fb=es-es , 2013
Frank Gens. “Microsoft vs Amazon Cloud: Cinco diferencias claves”.
itnews.ec. http://www.itnews.ec/news/001158.aspx . 2013

Documentos relacionados