Desde hace mucho tiempo llevo trabajando en servicios de hosting, viendo la evolución de los productos que ofrecen los distintos proveedores de alojamiento. También he ido viendo las tendencias en los modelos de alojamiento: desde los hostings compartidos en España que valían una pasta larga por tener 20 MB en web, una base de datos Mysql y 5 cuentas de correo, hasta los potentes servicios de Hosting dedicado en los que había que invertir un buen capital, tanto en la contratación del servicio como en el personal para su administración y el consumo de recursos adicionales (red, backup…) que exigía mensualmente.
Desde hace ya unos años, el hosting se ha ido globalizando y extendiendo, y los precios han caído dramáticamente. Hoy en día se puede tener un hosting para una web estática por un par de dolares mensuales con espacio para aburrir y con un montón de cuentas de correo (aunque no las necesites).
También el hosting dedicado ha caído en picado, y hoy en día se puede tener un hosting dedicado básico por unos 50$ al mes. Para los que no tengan conocimientos o no necesiten potencia sigue estando los planes compartidos. Para los avanzados están los planes dedicados.
Hoy en día tendemos al hosting en cloud, como ya hablamos en el post de Gigas de hace un par de semanas. El cloud permite crear maquinas dedicadas en tiempo record y construir auténticas granjas de servicios con una complejidad extrema en días, cuando no hace mucho se tardaban meses. Desde el dimensionamiento de la plataforma, el pedido de servidores, la instalación de todas las maquinas, y finalmente construcción del servicio a ofrecer. Mucho tiempo y mucho dinero en recursos que hoy en día se realiza prácticamente en 4 clicks de ratón.
Y para poner un ejemplo hoy os dejo un manual de creación de una maquina virtual con Amazon AWS EC2. El servicio EC2 (Elastic Compute Cloud) permite crear maquinas virtuales dedicadas de múltiples tamaños y desde coste cero €.
Amazon nos permite crear instancias de servidores dedicados con una carga muy pequeña para aprender a manejar el servicio sin coste. Por mi parte os enseño con este tutorial como conseguirlo desde crear la instancia hasta arrancar el servidor dedicado y empezar su administración.
1º Conectar a la consola de AWS
Nos logeamos a la consola de Amazon desde https://console.aws.amazon.com/s3/home con nuestro usuario y contraseña (damos por sentado que ya nos hemos creado una cuenta de AWS). Una vez ingresados los datos de usuario y contraseña, observamos un marco con múltiples pestañas con todos los servicios que facilita AWS. Para poder crear maquinas virtuales, tenemos que irnos a la pestaña EC2.
2º Selección de zona de despliegue
El Cloud de Amazon permite seleccionar el “edge” o zona del mundo en donde desplegar tus maquinas. Esto es útil si tu servicio se va a ofrecer en una zona del mundo concreta, ya que los tiempos de latencia de red se incrementan si el cliente y el servidor están a mucha distancia. en nuestro caso tenemos una zona en Irlanda para dar cobertura a toda Europa que nos viene muy bien para nuestro propósito.
3º Creación de Instancia de Maquina Virtual
Si pulsamos el botón Launch instance empezamos a crear el servidor virtual con los parámetros que nosotros queramos:

Seleccionamos el Sistema Operativo y el tipo de procesador 32/64 Bits. Los indicados con una estrella se pueden usar como una instancia gratuita de tamaño Micro.

El sistema permite usar un tipo de Kernel y de Memoria determinado previamente para otra instalación. Normalmente se dejara por defecto que el sistema decida cual es la mejor opción.

Añadimos etiquetas al servidor para poder distinguirlo en el futuro. Si tenemos una sola maquina no es problema. Si manejamos 100 es importante poder distinguir que hace cada una de ellas.

En esta parte creamos un par de claves RSA para poder acceder al servidor una vez arrancado. Después de crear la clave nos descargamos la private key que usaremos para acceder al terminal Linux por SSH. La clave publica se sitúa dentro del servidor en /root/.ssh/authorized_keys

En este paso debemos de indicar la política de acceso al servidor para poder tanto manejarlo como dar servicio a aplicaciones. Lo mas critico es darle acceso al puerto 22 si es un servidor linux desde tu dirección ip origen si la sabes, o desde 0.0.0.0 (cualquier IP de internet) si no te la sabes o quieres acceder desde cualquier parte.

Una vez configurados los pasos anteriores, llegamos al resumen antes de arrancar la maquina. Si todo es correcto, finalizamos el asistente. Podemos editar todas las opciones si hemos configurado mal alguna de ellas.

Ya podemos ver en la lista de maquinas virtuales que se esta configurando la nueva instancia. En un par de minutos la maquina ya es accesible
4º Configuración de red del servidor creado
Ya solo nos queda acceder a él, y para ello necesitamos una dirección ip. En la sección Network & Security tenemos la opción de Elastic IP. Seleccionamos la opción “Allocate New Address”, seleccionamos EC2 para poder asignarla a una maquina virtual y ya tenemos la ip lista para usar.

Una vez creada la IP en "Elastic IP" seleccionamos "Associate Address" y obtenemos una lista de los servidores a los que le podemos asociar la dirección IP. Una vez seleccionado y confirmado con el botón correspondiente, el servidor es accesible a través de la ip que ha generado el sistema.
5º Listo para acceder al servidor recién creado!
El servidor ya esta listo para acceder. Suponemos que si has llegado hasta aquí y necesitas usar una maquina dedicada linux, es porque tienes al menos unos conocimientos básicos de sistemas. Sino ahí van unos consejos:
Para conectar por SSH al servidor se usa un cliente de SSH, por ejemplo el mas universal es Putty. El puerto por defecto para acceder al servidor por SSH es el 22. Es interesante cambiarlo ya que los ataques de fuerza bruta usan puertos por defecto para intentar asaltar maquinas. El acceso inicial se hace como usuario root, aunque si eres muy osado y creas tu maquina con otras AMI distinta de la que yo he usado, puede que tenga otro usuario distinto de root para el acceso inicial. Si aun así el acceso es con root, es importante filtrar el demonio SSH para que no se permita el acceso de root directo sino a través de un usuario sin privilegios, ademas de que no se permita el inicio de sesión interactiva ni a cualquier usuario del sistema.
Página de inicio de Amazon AWS
Calculadora de Costes, por si quieres montar algo mas potente.
Cliente de SSH Putty



abril 5th, 2012 on 10:03 am
Hola,
He visto tu post en http://poets.scripting.com/#comment-486202753 y me he pasado por aquí. Muchas gracias nunca está de mal tener info en la lengua materna. No todo tiene que ser en inglés, verdad ?
Un saludo y adelante.
agosto 7th, 2012 on 7:12 am
Hola muy buena la info pero hay algo que me queda rodando en la cabeza esto configurado supuestamente es gratis porque??? o será que me lo cobrarán de mi tarjeta no entiendo bien como es de sus precios puedes explicarme como es esto algo asi como para niños
Gracias nuevamente
diciembre 27th, 2012 on 10:30 pm
Que tal Daniel, al contratar los servicios de Amazon, el primer año no te cobran nada cuando creas servidores en micro instancias o EC2(marcadas como free tier), su teoría es que si lo pruebas ya no puedes dejarlos, y es correcta es una maravilla.
marzo 4th, 2013 on 2:59 pm
Hola Alberto
Con el tema de las maquinas virtuales, es posible configurar una versión diferente PHP?? Por ejemplo en la maquinaVirtual1 = PHP 5.2.x y maquinaVirtual = PHP 5.4.x o ya te viene instalado la última versión??
Un saludo cordial y gracias por tu atención.
marzo 11th, 2013 on 9:09 am
Hola Miguel:
AWS EC2 es un sistema que te permite crear maquinas virtuales. Esto quiere decir que lo que estas contratando es un servidor completo. Lo puedes montar con lo que tu quieras, siempre que tengas el conocimiento para ello. Puedes poner la version de S.O. que quieras y despues instalar las versiones de las aplicaciones que creas conveniente. Cuando lanzas una instancia (un servidor nuevo a todos los efectos) decides que Sistema Operativo vas a usar, y en base a eso podras automatizar mas o menos las versiones del software que incluya este S.O.
Un ejemplo: Si usas Ubuntu 8.04 la version mas moderna de php sera 5.2.4. Si usas debian Squeeze, que va por su version 6.0.7 el php sera de version 5.3.3-7
Saludos
marzo 11th, 2013 on 4:50 pm
Muchas gracias, después de preguntarte me di cuenta que era factible
GRACIAS bilbo bolson
marzo 9th, 2013 on 5:13 am
Consulta, ok el primer año no te cobraran, pero cuando lo hagan cuanto sera el costo?
marzo 11th, 2013 on 10:44 am
Hola Fredy:
El precio de la instancia micro despues del primer año de uso gratuito es de 14,64$ por mes en el edge de Europa. Aparte tienes que contar el resto de los recursos que usa cada instancia (trafico entrante, saliente e IP’s que uses para tu servicio.
marzo 19th, 2013 on 5:19 pm
Segun la calculadora http://calculator.s3.amazonaws.com/calc5.html
El costo de una sola instancia micro es US$ 2.01 en la zona de Virginia.
Mi parametros son:
- Compute: Amazon EC2 On-Demand Instances:
Usage:100%;
Instance Type: micro;
OS: Micro;
- Storage: Amazon EBS Volumes:
Volumes: 1
Type: Standard
Storage: 50 GB
Snapshot: 1 GB-month of Storage
Data Transfer Out: 2 GB/Month
Data Transfer In: 1 GB/Month
En la zona Europea veo que el costo es mas… un costo de US 10.48.
Algunas sugerencias para saber usar bien la calculadora?
tengo 4 instancias micro, cual es mi costo real?
marzo 19th, 2013 on 5:22 pm
Mi parámetros correctos son :
- Compute: Amazon EC2 On-Demand Instances:
Usage: 100%;
Instance Type: Micro;
OS: WinSrv 2008R2SP1-x64;
- Storage: Amazon EBS Volumes:
Volumes: 1
Type: Standard
Storage: 50 GB
Snapshot: 1 GB-month of Storage
Data Transfer Out: 2 GB/Month
Data Transfer In: 1 GB/Month
marzo 19th, 2013 on 5:38 pm
Hola Juan trato de contestarte a lo que me preguntas:
La capa de uso gratuito viene explicada aqui:
http://aws.amazon.com/es/free/
Quiere decir que tienes 750 horas de uso gratuito al mes durante 1 año.
Si tienes una instancia no pagas nada (o casi nada) ya que incluye 15 Gb de trafico y 30 GB de disco.
Si tienes 4 instancias solo pagaras por 3 de ellas ya que la capa free de Amazon no cinluye todas las instancias de tipo micro que quieras sino que incluye 1 completamente gratis al mes.
El coste no es el mismo en una zona que en otra por eso al cambiarte de zona varian los precios.
Si lo que vas a alojar son pruebas y no te importa en donde esta la instancia, busca la mas barata.
Si quieres poner algo en produccion y tus visitantes son europeos, usa una instancia en esta zona.
Si tienes mas dudas, por aqui andamos.
marzo 21st, 2013 on 12:49 pm
Hola,
Estoy utilizando una instancia micro gratuita.
En la actividad de cuenta aparece:
AWS Service Charges
Amazon EC2 EBS
$0.10 per 1 million I/O requests 1,198,308 IOs 0.12$
Me gustaría saber como puedo utilizar la instancia micro gratuita sin superar el máximo límite gratuito (2 million I/O).
Actualmente llevo varios días sin utilizarla y el número de I/O y su respectivo coste no para de aumentar y no sé a que puede ser debido.
Muchas gracias de antemano.
marzo 21st, 2013 on 1:13 pm
Hola Tom:
Si la maquina esta encendida entonces consume consultas a disco. Estas consultas es lo que se computa como I/O requests (peticiones de lectura/escritura a disco).
Si la maquina esta encencida, el propio funcionamiento de S.O. consume este tipo de peticiones.
Lo que me pides acerca de no superar el numero de peticiones implicaria parar la maquina en el momento en que llegue a los 2M de I/O request incluidos en la instancia gratuita. Desde el panel no hay ninguna heeramienta gratuita para poder hacerlo.
Probablemente desde la API o con el ClouWatch (de pago) se pueda implantar dicha solucion para no gastar dinero.
marzo 21st, 2013 on 1:36 pm
Hola Alberto,
Muchas gracias por la rápida respuesta.
En la página web de amazon aparece:
Comience con AWS de forma gratuita
Inscríbase ahora »
La capa gratuita de AWS incluye 750 horas de microinstancias de Windows o Linux al mes durante un año. Para no superar la capa gratuita, utilice solo las microinstancias de EC2.
Entiendo que 750 horas/mes son más horas de las que tiene un més. Por lo tanto según la oferta no habría que pagar nada durante un año siempre y cuando se utilice una microinstancia de EC2, incluso sin apagar la máquina.
¿Hay alguna manera de utlizar la microinstancia de EC2 gratuita 24 horas/día/més como dice en la oferta sin tener que pagar?.
Muchas gracias de antemano.
abril 10th, 2013 on 5:01 pm
todo perfecto, pero si llegara a poner un war en un tomcat por ejemplo, como accedo a la url sin el archivo nombre.pem ?
saludos y gracias por el tutorial
abril 10th, 2013 on 8:17 pm
Puedes hacerlo de 2 maneras. Cuando arrancas una instancia EC2 el servicio te da un nombre de host que es publico y que corresponde con la maquina que acabas de levantar. Si quieres una ip fija debes de crear una elastic ip. Una vez asignada la ip a la maquina ya puedes acceder a traves de la url habitual de tomcat: http://la-ip-que-sea:8080/context-del-war/
Habitualmente el context que genera tomcat cuando autodespliegas un war es el mismo que el del fichero war que despliegas pero sin la extension.
abril 11th, 2013 on 8:09 pm
Gracias alberto, de un proncipio lo realizé de esa forma, pero no llego a la URL de otra maquina con la ip fija, asumo que es por acceso denegado porque tampoco llego con el comando ping, a diferencia que con ssh me conecto sin problema ( obviamente utilizando el archivo .pem) continuaré buscando.
saludos