Introducción a Amazon Web Services en español parte 1


Introducción

Amazon web services es la plataforma de nube de Amazon, la cual provee diferentes servicios en la nube, en este post se mostrarán algunos de estos servicios y sus casos de uso comunes.

Infraestructura Global

La infraestructura de Amazon opera a nivel global, lo cuál significa que existen diferentes centros de datos a nivel mundial, estos centros de datos están organizados del siguiente modo.

  • Regions (regiones) :  Es una región física en el mundo, cada región contiene múltiples availability zones
  • Availability Zones (Zonas de disponibilidad) : Una zona de disponibilidad consiste en uno o más data centers (centros de datos)
  • Edge Locations: Son puntos finales de CDN, más detalles sobre este punto cuando se explique el servicio CDN.

Productos disponibles

A continuación se muestra una lista categorizada con los principales productos disponibles y una descripción breve sobre los mismos:

Compute

  • Amazon Elastic Compute Cloud (Amazon EC2)

ec2-logo-full

Servicio diseñado para crear servidores virtuales en la nube en minutos tipos de instancias prefabricadas como : Propósito general, Computo optimizado, Memoria optimizada, Computación acelerada, Almacenamiento optimizado. Puedes encontrar una lista completa de los tipos de instancia con sus descripciones en el siguiente link https://aws.amazon.com/ec2/instance-types/.

Casos de uso:

  1. Despliegue de aplicaciones
  2. Creación de entornos de desarrollo
  3. Creación de máquinas virtuales en diferentes Sistemas operativos
  • Elastic Beanstalk

elastic_beanstalk_logoEs un servicio fácil de utilizar para el despliegue de aplicaciones y servicios escalables desarrollados en : Java, .NET, PHP, Node.js, Python, Ruby, Go, y Docker. Solo tienes que subir tu código y Elastic Beanstalk manejará de forma automática el despliegue, la capacidad, balanceo de carga, auto escala y monitoreo de salud, más información en el siguiente link https://aws.amazon.com/elasticbeanstalk/.

Casos de uso:

  1. Despliegue de aplicaciones en diferentes lenguajes de programación
  • Amazon VPC

vpc-vpn-logoPermite crear una nube privada y aislada donde es posible definir las redes donde se desplegarán los recursos. Se tiene un control total sobre la VPC que se defina, es posible definir : Rangos de IP, creación de sub redes,  si se tendrá acceso o no a internet en las diferentes redes, Firewalls a nivel de sub red, una conexión con VPN corporativas, más información en el siguiente link https://aws.amazon.com/vpc/.

Casos de uso:

  1. Creación de datacenters privados
  2. Creación de sub redes públicas  (Todos los recursos dentro de esta sub red tendrán acceso a internet)
  3. Creación de sub redes privadas (Los recursos dentro de estas sub redes no  tendrán acceso a internet)
  4. Creación de firewalls a nivel de sub red (Es posible cerrar o abrir puertos para todas las máquinas dentro de la sub red, además del firewall que pueda tener el recurso)
  • AWS Lambda

lambdaLambda permite ejecutar código utilizando la arquitectura server less lo cual significa que no es necesario tener un servidor para ejecutar ese fragmento de código. De este modo solo se tiene que pagar por ejecución de código y no por tener un servidor prendido por un determinado tiempo, con esto si el código nunca se ejecuta no se hará ningún cargo si se ejecuta una vez solo se ejecutará esa ejecución, más información en el siguiente link https://aws.amazon.com/lambda/.

Casos de uso:

  1. Ejecución de código bajo demanda
  2. Ejecución de código cuando se generen eventos en recursos de AWS
  3. Ejecución de funciones bajo invocación sobre HTTPS
  4. Eventos programados
  • Auto Scaling

aws_autoscalingAuto scaling permite mantener las aplicaciones disponibles todo el tiempo con el mayor beneficio posible, esto debido a que es posible crecer o disminuir el número de equipos detrás de un balanceador de carga acuerdo a la demanda a través del uso de métricas, por ejemplo es posible decir si el uso del CPU es mayor a 70% crea una máquina nueva con la aplicación y colócala detrás del balanceador para atender las peticiones y si el uso del CPU es menor al 30% quita una de las instancias, más información en el siguiente link https://aws.amazon.com/autoscaling/.

Casos de uso:

  1. Crecer o disminuir el número de maquinas de acuerdo al uso

Storage

  • S3 (Simple Storage Service)

amazons3Amazon Simple Storage service permite hacer almacenamiento de objetos con una interfaz web simple que permite subir y descargar cantidades grandes de archivos. Esta diseñado para tener una durabilidad de 99.999999999% y una disponibilidad de 99.99%. más información en el siguiente link https://aws.amazon.com/s3/.

Casos de uso:

  1. Almacenamiento de imágenes en aplicaciones web
  2. Almacenamiento de videos
  3. Almacenamiento de archivos
  • Glacier

glacier.pngEs un durable, seguro y súper barato servicio de almacenamiento a largo plazo. Con el fin de mantener los costos bajos descargar un archivo puede tomar incluso horas. Por esto se recomienda para guardar información histórica, más información en el siguiente link https://aws.amazon.com/glacier/.

Casos de uso:

  1. Almacenamiento de datos históricos
  2. Almacenamiento de información que debe ser guardada por fines legales
  • EBS (Elastic block storage)

ebsElastic block storage provee un almacenamiento persistente para ser utilizado como volumen en instancias EC2, con Amazon EBS es posible escalar o disminuir el tamaño en solo unos minutos, más información en el siguiente link https://aws.amazon.com/ebs/.

Casos de uso:

  1. Bases de datos no soportadas por Amazon
  2. Almacenamiento

 Database

  • RDS (Relational Database Service)

aws_simple_icons_database_amazonrds-svg_-20160325070440RDS Hace simple la instalación, configuración y escalabilidad de  bases de datos relacionales en la nube.  Amazon RDS provee 6 motores de bases de datos comunes entre los que se encuentra : Amazon Aurora, PostgreSQL, MySQL, MariaDB, Oracle y Microsoft SQL server.

Es importante mencionar que para las bases de datos que requieren licencia es posible utilizarlas con BYOL (Bring your own license), lo cual significa que si ya se cuenta con una licencia puede ser utilizada en su ambiente en la nube, más información en el siguiente link https://aws.amazon.com/rds.

Casos de uso:

  1. Configuración de bases de datos relacionales en la nube
  • DynamoDB

aws-dynamodb-logo-cf7bcc577d-seeklogo-comDynamoDB es la base de datos NoSQL rápida y flexible de Amazon. Diseñada para aplicaciones que necesitan consistencia y latencia de mili segundos a cualquier escala.

Casos de uso:

  1. Configuración de bases de datos NoSQL rápidas y flexibles
  • ElasticCache

elasticcacheElasticCache es un servicio que hace fácil desplegar, operar y escalar información en cache en la nube. Este servicio mejora el performance de las aplicaciones permitiendo obtener la información de una forma rápida, administrada y almacenada en memoria. Soporta 2 motores open source  Redis y Memcached.

Casos de uso:

  1. Mantener información de acceso común en memoria para un acceso rápido

AWS Free tier (Capa gratuita de Amazon)

Amazon provee una capa gratuita para que los desarrolladores aprendan a utilizar la plataforma de AWS, los productos y los servicios. A continuación se presentan los límites de los principales productos para la capa gratuita al 30 de enero del 2017.

captura-de-pantalla-2017-01-30-a-las-2-18-44-p-m

captura-de-pantalla-2017-01-30-a-las-2-17-55-p-m

Más información sobre los límites de la capa gratuita en el siguiente link https://aws.amazon.com/free/

Siguientes pasos

En siguientes posts se explicarán otros servicios de Amazon Web services, a continuación se presenta una lista de algunos de los servicios restantes de los que se hablarán en el futuro:

  • Networking
    • CloudFront
    • Route 53
    • Direct Connect
    • Elastic Load Balancing
  • Developer Tools
    • Code commit
    • PipeLine
    • Code deploy
  • Management tools
    • Cloud watch
    • Cloud trail
    • Cloud formation
    • OpsWorks
  • Messaging
    • SQS
    • SNS
    • SES

Autor: Alejandro Agapito Bautista

Twitter: @raidentrance

Contacto:raidentrance@gmail.com

Anuncios

Responder

Introduce tus datos o haz clic en un icono para iniciar sesión:

Logo de WordPress.com

Estás comentando usando tu cuenta de WordPress.com. Cerrar sesión /  Cambiar )

Google+ photo

Estás comentando usando tu cuenta de Google+. Cerrar sesión /  Cambiar )

Imagen de Twitter

Estás comentando usando tu cuenta de Twitter. Cerrar sesión /  Cambiar )

Foto de Facebook

Estás comentando usando tu cuenta de Facebook. Cerrar sesión /  Cambiar )

Conectando a %s