AWS- Amazon Web Services Logo

Logo de  Amazon Web Services (AWS)

En este artículo conoceremos sobre uno de los mayores proveedores de servicios de computación en la nube, Amazon Web Services o AWS. Exploramos sus servicios, costos, ventajas y desventajas, y cómo su amplia gama de servicios es relevante para muchas empresas de diversos sectores productivos.

Para comenzar, considero oportuno entregar una definición preliminar de un término que utilizamos comúnmente, pero del cual no necesariamente conocemos su significado y alcance: Cloud Computing.

¿Qué es Cloud Computing (computación en la nube)?

Cloud Computing es una plataforma tecnológica de infraestructura, con la cual podemos acceder de manera remota (internet) a diferentes recursos informáticos. Algunos ejemplos de recursos son: Software como servicio (SaaS), almacenamiento de archivos, procesamiento de datos, entre otros. Estos recursos son accesibles siguiendo modelos de pago, por ejemplo, un modelo de pago por uso.

De acuerdo con el NIST (National Institute of Standard and Technology), el servicio de Cloud Computing debe cumplir cinco aspectos esenciales:

  1. On-demand self-service: El usuario/consumidor puede gestionarlo por sí mismo sin tener que acudir a funcionarios del proveedor.
  2. Broad Network Access: Los servicios están disponibles a través de la red y se pueden acceder a través de múltiples plataformas (smartphones, tablets y computadoras), sin importar la localización del cliente.
  3. Resource Pooling: Los recursos pueden ser accedidos por múltiples consumidores, sin que esto genere interferencia entre ellos.
  4. Rapid Elasticity:. La capacidad de incrementar o reducir los recursos rápidamente, de acuerdo con la demanda del cliente.
  5. Measured Service: El uso de recursos se puede monitorear, controlar y reportar, proporcionando transparencia tanto para el proveedor como para el consumidor del servicio utilizado.

Usando la base de qué es la computación en la nube, podemos definir qué es Amazon Web Services (AWS).

¿Qué es AWS – Amazon Web Services?

Amazon Web Services (AWS) es un proveedor de servicios de computación en la nube, que ofrece más de 200 servicios a nivel global y atiende a más de 245 países. AWS comenzó a proporcionar servicios a empresas el año 2006, y desde entonces, ha liderado el mercado de cloud computing. Así lo ha ratificado el informe entregado por la consultora Gartner, a mediados del 2021.

Evaluación de Amazon Web Services (AWS) según cuadrante de Gartner
Ubicación de AWS en cuadrante de Gartner 2021

Con casi la mitad del mercado mundial de infraestructura de nube pública, Amazon es el líder del mercado a la fecha. El 2018, Amazon reportó ingresos de 15.400 millones de dólares, un crecimiento de un 26,8% con respecto al año anterior. Considerando hasta el 2019, Amazon reportó un crecimiento del 39% desde el primer semestre del 2018. En palabras del CTO, AWS es líder indiscutido, considerando a Google como “otros competidores”.

La propuesta de AWS se centra en facilitar bajo demanda recursos de TI a través de Internet principalmente con precios de pago por uso. Según AWS: “En lugar de comprar, poseer y mantener servidores y centros de datos físicos, puede acceder a servicios tecnológicos, como poder de cómputo, almacenamiento y bases de datos, según sea necesario“.

AWS suele mencionar que la innovación es parte de su ADN, por lo que no seria raro ver nuevos servicios cada año. Un servicio que destacan es el denominado AWS Lambda (2014), pionero en permitir a los desarrolladores correr sus códigos sin administrar servidores (serverless computing).

¿Para qué sirve AWS? ¿Qué se puede hacer con Amazon Web Services?

AWS es una plataforma que nos permite implementar soluciones de negocio a través de la ejecución de aplicaciones empresariales, servicios de cómputo, almacenamiento, base de datos, conexión en red, lagos de datos (Data Lakes), aprendizaje automático e inteligencia artificial, IoT, seguridad y mucho más.

Servicios disponibles en AWS -Amazon Web Services
Servicios disponibles en Amazon Web Services

Su amplia gama de servicios le permite ser partícipe de casi toda industria o mercado actual. Aun cuando tú no hayas hecho uso de sus servicios directamente, es un muy probable que los consumas de manera indirecta, ya que su cartera de clientes a nivel mundial es extensa. Algunos de sus clientes son: Samsung, Netflix, Disney, Nintendo, The New York Times, Pfizer, Adobe. 

Características y Servicios de AWS

La cantidad de servicios que AWS provee nos permite llevar aplicaciones existentes a la nube, y también crear nuevas aplicaciones optimizadas para funcionar en este entorno, y todo esto, de manera rápida, fácil y rentable. Para elegir las herramientas adecuadas para nuestro objetivo de negocio, necesitamos entender qué funcionalidades hay a nuestra disposición, cuáles son las más utilizadas y cómo se pueden organizar.

Principales categorias de AWS

  • Cómputo: Nos permite desarrollar, implementar, ejecutar y ajustar la escala de nuestras aplicaciones y cargas de trabajo en la nube. Ejemplos: Instancias EC2, contenedores y Serverless Computing.
  • Redes: Comprende los servicios de redes y entrega de contenido de AWS. Ejemplo: Fundamentos de red, redes de aplicaciones, redes de borde, conectividad híbrida y seguridad de la red.
  • Almacenamiento: Agrupa a aquellos servicios que nos proveen funcionalidad para almacenar, proteger, analizar datos y acceder a ellos. Ejemplos: Almacenamiento de bloques, archivos y objetos, migración de datos, transferencia de archivos y protección de datos.
  • Web y Móviles: Servicios con los que podemos crear aplicaciones móviles y web, donde encontraremos herramientas para desarrollar, entregar, probar, monitorear e interactuar con nuestras aplicaciones.
  • Base de datos: AWS ofrece más de 15 motores personalizados que admiten diversos tipos de datos. Ejemplos: Bases de datos relacionales, clave valor y columnares entre otras.
  • Internet de las cosas (IoT): Servicios para conectar y administrar dispositivos de borde (edge). Nos permiten recopilar, almacenar y analizar los datos de las cargas de trabajo industriales, de consumo, comerciales y automotrices.
  • Machine Learning: Servicios de IA previamente entrenados que proporcionan inteligencia lista para usarlas en nuestras aplicaciones. Algunos casos de uso que podemos encontrar son: Mejorar la experiencia del servicio al cliente, automatizar la extracción y el análisis de datos, identificar actividades fraudulentas en línea. 
  • Seguridad: Servicios que nos ayudan a proteger datos, administrar identidades, proteger redes y aplicaciones. Nos permiten identificar amenazas y monitorear continuamente la actividad de nuestra red y el comportamiento de nuestras cuentas dentro del entorno de la nube.
Servicios de Amazon Web Services agrupados por propósito
Servicios de AWS para deployment & management, apps y persistencia.

¿Qué ventajas podemos encontrar en el uso de AWS?

Ventajas de usar los servicios de Amazon Web Services (AWS)
Ventajas de usar Amazon Web Services

Rentable

En AWS sólo pagamos por aquellos servicios de cómputo que utilizamos y cuando los utilizamos. Además, inicialmente no nos amarramos a contratos a largo plazo con los cuales debamos cumplir obligatoriamente. Incluso podemos partir con una capa gratuita (más abajo se explica).

Escalabilidad y alto desempeño

Gracias a las características de su infraestructura y servicios a los que podemos acceder, podremos implementar aplicaciones con un excelente desempeño. Además, y en la medida que lo queramos, podremos escalar los recursos necesarios para que esta última esté siempre disponible.

Seguridad

AWS nos ofrece altos estándares de seguridad en lo que respecta a su infraestructura, esto incluye medidas de seguridad físicas, operativas y de software.

¿Qué desventajas podemos encontrar en AWS?

Requiere experiencia y preparación

Aun cuando es fácil crearnos una cuenta y acceder a su gran cantidad de servicios, es necesario que contemos con experiencia técnica, ya que somos el usuario responsable de administrar servidores, base de datos, almacenamiento, etc. Es tanta la cantidad de servicios, que nos puede resultar abrumador y confuso al inicio.

Personalización limitada

Es cierto que AWS cuenta con una gran cantidad de servicios a nuestra disposición, pero si necesitamos características específicas, puede que no siempre encontremos la solución que buscamos. Por lo tanto, puede que debamos adaptarnos al entorno que AWS nos ofrece.

Capa gratuita de Amazon

AWS ofrece una capa gratuita para adquirir experiencia
Nivel gratuito de AWS

AWS nos ofrece la posibilidad de probar los servicios de AWS sin costo hasta llegar a los límites especificados para cada servicio. La capa gratuita consta de tres tipos diferentes de ofertas:

Gratuito para siempre

Son servicios 100% gratuitos con un tope máximo de capacidad o uso. Por ejemplo, el servicio Amazon DynamoDB (Base de datos NoSQL) es siempre gratuito, mientras superemos los 25 GB de almacenamiento.

Una capa gratuita de 12 meses

Existen servicios gratuitos que se miden por horas o peticiones. Por ejemplo, podemos considerar el uso de maquinas virtuales EC2, con un máximo de 750 horas disponibles al mes.

Pruebas a corto plazo

Hay servicios que se pueden probar gratis por un plazo acotado, por ejemplo Amazon SageMaker. SageMaker es un servicio de Machine Learning que podemos probar sin costo por un periodo de 2 meses.

Nota: Para acceder a la capa gratuita de AWS, es necesario que registremos una tarjeta de crédito (o débito), sin embargo, mientras no excedamos los límites de la capa gratuita, no se realizarán cobros.

Calculadora de precios AWS

Calculadora de precios en Amazon Web Services (AWS)
Calculadora de precios de AWS

AWS cuenta con una Calculadora de Precios que nos permite obtener una estimación de costos, de acuerdo con la solución que necesitamos implementar. ¿Cómo podemos utilizarlo?

  1. Acceder al portal que provee Amazon, para que iniciemos la estimación de costos. Luego, seleccionamos uno o más servicios que deseemos consultar.
  2. El siguiente paso, consiste en configurar el servicio seleccionado, ingresamos la región (ubicación física), junto a otras características propias del servicio.
  3. Finalmente, podremos visualizar un estimado mensual del costo por servicio.

Como ejemplo, he seleccionado el servicio de Amazon EC2, con una instancia de tipo t4g.large, que cuenta con 2 vCPU y 8 GiB de Memoria.

Ejemplo de usar el servicio EC2 en Amazon Web Services
Costo mensual de instancia EC2
Costo anual de instancia EC2

Otro ejemplo de precios lo pueden encontrar en nuestro artículo sobre Data Lakes. En este artículo comparamos el costo entre AWS, Azure y GCP.

Caso de Uso: Amazon EC2, RDS, S3, Elastic Load y CodeCommit

Con el objetivo de aplicar los conceptos mencionados, supongamos que somos responsables de construir un software a medida, el cual permita controlar la emisión de permisos de circulación de automóviles. Algunos requisitos son:

  • Su objetivo principal es controlar la emisión y almacenamiento de permisos de circulación de automóviles.
  • Debe estar basado en la web, ser responsive y contar con un workflow de autorizaciones jerárquicas.
  • Permitir el acceso a distintos tipos de usuarios: internos y externos a la organización.
  • Debe contar con 2 ambientes:
    • Desarrollo: Para creación y pruebas de nuevas funcionalidades.
    • Producción: Utilizado por los clientes (internos y externos).
  • El despliege del software de ser en minutos.

Ejemplo práctico de infraestructura en Amazon Web Services

En cuanto a la arquitectura, esta se compondrá por los siguientes servicios:

Caso de uso de AWS aplicado al desarrollo de una aplicación
Caso de uso AWS: EC2, RDS, S3, ELB y CodeCommit
  • Computo: Instancias Amazon EC2 (máquinas virtuales), que actuarán como servidor de aplicaciones para el backend y frontend de nuestro sistema.
  • Base de datos: Amazon RDS for MySQL, será la base de datos para la gestión de usuarios y el almacenamiento de permisos. Al ser RDS, AWS se ocupa de las tareas de administración (como las copias de seguridad, los parches de software, el monitoreo, el escalado y la reproducción).
  • Almacenamiento: Amazon S3, como repositorio de los permisos de circulación generados y de recursos estáticos del sistema.
  • Amazon ELB (Elastic Load Balancing). Nos ayudará a distribuir de forma automática el tráfico entrante, entre varias instancias EC2 en funcionamiento.
  • AWS CodeCommit: Permitirá a nuestros desarrolladores controlar el código fuente del sistema e implementar de manera más segura, nuevas características (CI/CD).

Con los servicios mencionados, podremos desarrollar y hacer uso de un sistema web que aporte valor a nuestro negocio, y que pueda ser modificado a futuro de acuerdo con las necesidades que puedan surgir. Además, podemos cumplir con varios objetivos: Agilidad, elasticidad, ahorro de costos y despliege global en minutos.

¿Dónde aprender más sobre Amazon Web Services?

AWS cuenta con diferentes iniciativas para enseñar habilidades relacionadas con el desarrollo y uso de servicios en la nube. Entre ellas, podemos encontrar:

AWS Educate

Conecta a las empresas que buscan habilidades relacionadas con la nube con estudiantes cualificados en busca de empleo. Mas información aquí.

AWS formación y certificación

Ayuda a las personas a desarrollar y validar sus habilidades en la nube para que obtengan más de esta plataforma. De manera opcional, podemos obtener certificaciones (de pago) que AWS ofrece.

Nota: Si crees que este contenido puede ser útil para otras personas no dudes en compartirlo. Además te invitamos a seguirnos en LinkedInFacebookInstagram y Youtube. Mientras en el blog liberamos contenido más extenso, en las RRSS publicamos semanalmente tips relacionados con DW/BI, Data Science y Visualización que es justamente lo que más nos apasiona hacer en Explodat.

Referencias

  • Sitio oficial de Amazon Web Services.
  • The NIST Definition of Cloud Computing.
  • Magic Quadrant para servicios de infraestructura y plataforma en la nube.

Agregar un comentario

Su dirección de correo no se hará público.