Amazon Elastic Compute Cloud ( EC2 ) es parte de la plataforma de computación en la nube de Amazon.com , Amazon Web Services (AWS), que permite a los usuarios alquilar computadoras virtuales en las que ejecutar sus propias aplicaciones informáticas. EC2 fomenta la implementación escalable de aplicaciones al proporcionar un servicio web a través del cual un usuario puede iniciar una imagen de máquina de Amazon (AMI) para configurar una máquina virtual , que Amazon llama una "instancia", que contiene cualquier software deseado. Un usuario puede crear, iniciar y finalizar instancias de servidor según sea necesario, pagando por segundo por los servidores activos, de ahí el término "elástico". EC2 proporciona a los usuarios control sobre la ubicación geográfica de las instancias, lo que permite la optimización de la latencia y altos niveles de redundancia . [2] En noviembre de 2010, Amazon cambió su propia plataforma de sitio web minorista a EC2 y AWS. [3]
Amazon anunció una prueba beta pública limitada de EC2 el 25 de agosto de 2006, [4] que ofrece acceso por orden de llegada. Amazon agregó dos nuevos tipos de instancias (Grande y Extragrande) el 16 de octubre de 2007. [5] El 29 de mayo de 2008, se agregaron dos tipos más, Mediano con CPU alta y Extra grande con CPU alta. [6] Había doce tipos de instancias disponibles. [7]
Amazon agregó tres características nuevas el 27 de marzo de 2008, [8] direcciones IP estáticas, zonas de disponibilidad y núcleos seleccionables por el usuario. El 20 de agosto de 2008, Amazon agregó Elastic Block Store (EBS) [9] , que proporciona almacenamiento persistente, una característica que faltaba desde que se introdujo el servicio.
Amazon EC2 entró en plena producción cuando eliminó la etiqueta beta el 23 de octubre de 2008. El mismo día, Amazon anunció las siguientes características: [10]
Estas características se agregaron posteriormente el 18 de mayo de 2009. [11]
Amazon EC2 fue desarrollado principalmente por un equipo de Ciudad del Cabo, Sudáfrica, dirigido por Chris Pinkham. [12] [13] Pinkham proporcionó la guía de arquitectura inicial para EC2 y luego formó el equipo y dirigió el desarrollo del proyecto junto con Willem van Biljon .
Inicialmente, EC2 utilizaba exclusivamente la virtualización Xen . [14] Sin embargo, el 6 de noviembre de 2017, Amazon anunció [15] la nueva familia de instancias C5 que se basaban en una arquitectura personalizada en torno al hipervisor KVM , llamada Nitro. [16] [17] Cada máquina virtual, denominada "instancia", funciona como un servidor privado virtual . Amazon dimensiona las instancias en función de "Unidades de cómputo elásticas". El rendimiento de máquinas virtuales idénticas puede variar. [18] El 28 de noviembre de 2017, AWS anunció una instancia básica, un cambio en la oferta exclusiva de tipos de instancias virtualizadas. [19]
En enero de 2019, se ofrecían los siguientes tipos de instancias: [20]
A abril de 2018 [update]se ofrecían los siguientes métodos de pago por instancia: [21]
En abril de 2018 [update], Amazon cobraba alrededor de 0,0058 dólares por hora (4,176 dólares al mes) por la máquina virtual "Nano Instancia" (t2.nano) más pequeña que ejecuta Linux o Windows. Las instancias optimizadas para almacenamiento cuestan hasta 4,992 dólares por hora (i3.16xlarge). Las instancias "reservadas" pueden costar tan solo $2,50 por mes para un plan prepago de tres años. [a] [24] [25] El cargo por transferencia de datos varía desde gratis hasta $0,12 por gigabyte, dependiendo de la dirección y el volumen mensual (la transferencia de datos entrantes es gratuita en todos los servicios de AWS [26] ).
Los costos de EC2 se pueden analizar utilizando el Informe de uso y costos de Amazon. Hay muchas categorías de costos diferentes para EC2, que incluyen: cargos de instancia por hora, transferencia de datos, volúmenes de EBS, instantáneas de volúmenes de EBS y Nat Gateway. [27]
En diciembre de 2010, [update]Amazon ofreció [28] un paquete de créditos de recursos gratuitos a los nuevos titulares de cuentas. Los créditos están diseñados para ejecutar un servidor, almacenamiento (EBS) y ancho de banda de tamaño "micro" durante un año. [29] Los créditos no utilizados no pueden transferirse de un mes a otro. [30]
Las instancias reservadas permiten a los usuarios de servicios EC2 o RDS reservar una instancia por uno o tres años. La tarifa por hora correspondiente que cobra Amazon para operar la instancia es entre un 35 y un 75 % más baja que la tarifa que se cobra por las instancias bajo demanda. [31] Las instancias reservadas se pueden comprar con tres opciones de pago diferentes: todo por adelantado, pago inicial parcial y sin pago inicial. Las diferentes opciones de compra permiten estructurar diferentes modelos de pago, con un mayor descuento para los clientes que pagan su reserva por adelantado. [32]
Las instancias reservadas se compran en función de un compromiso de recursos. Estas reservas se realizan en función de un tipo de instancia y un recuento de ese tipo de instancia. Por ejemplo, podría reservar 100 instancias i3.large por un período de 3 años.
En septiembre de 2016, AWS anunció varias mejoras en las instancias reservadas, introduciendo una nueva característica llamada alcance y un nuevo tipo de reserva llamado Convertible. [33] En octubre de 2017, AWS anunció la posibilidad de subdividir las instancias compradas para mayor flexibilidad [34]
Los proveedores de nube mantienen grandes cantidades de capacidad excedente que tienen que vender o corren el riesgo de sufrir pérdidas. [35] Las instancias spot de Amazon EC2 son capacidad informática adicional en la nube de AWS disponible con hasta un 90 % de descuento en comparación con los precios bajo demanda. [23] Como compensación, AWS no ofrece ningún SLA en estas instancias y los clientes corren el riesgo de que se pueda interrumpir con solo dos minutos de notificación cuando Amazon necesita recuperar la capacidad. Investigadores del Instituto Israelí de Tecnología descubrieron que "las instancias Spot generalmente se generan aleatoriamente dentro de un intervalo de precios ajustado a través de un precio de reserva oculto dinámico". [35] Algunas empresas, como Spotinst, están utilizando el aprendizaje automático para predecir interrupciones puntuales con hasta 15 minutos de antelación. [36] [37]
En noviembre de 2019, Amazon anunció Planes de Ahorro. [38] Los planes de ahorro son una alternativa a las instancias reservadas [39] que vienen en dos tipos de planes diferentes: planes de ahorro informático y planes de ahorro de instancias EC2. Los Compute Savings Plans permiten a una organización comprometerse con el uso de EC2 y Fargate con la libertad de cambiar la región, la familia, el tamaño, la zona de disponibilidad, el sistema operativo y el arrendamiento dentro de la vida útil del compromiso. Los planes EC2 Instance Savings ofrecen un descuento mayor que los Compute Savings Plans, pero son menos flexibles, lo que significa que un usuario debe comprometerse con familias de instancias individuales dentro de una región para aprovechar, pero con la libertad de cambiar instancias dentro de la familia en esa región. [40]
AWS utiliza Cost Explorer para calcular automáticamente recomendaciones para los compromisos que debe asumir y cómo se verá ese compromiso como un cargo mensual en su factura de AWS. [41] Los planes de ahorro de AWS se compran en función del compromiso de gasto por hora. Este compromiso por horas se realiza utilizando el precio con descuento del plan de ahorro que está comprando. Por ejemplo, podría comprometerse a gastar $5 por hora, en un Compute Savings Plan, por un período de 3 años. [42]
Cuando se lanzó en agosto de 2006, el servicio EC2 ofrecía Linux y más tarde OpenSolaris y Solaris Express Community Edition de Sun Microsystems . En octubre de 2008, EC2 agregó los sistemas operativos Windows Server 2003 y Windows Server 2008 a la lista de sistemas operativos disponibles . [43] [44] En marzo de 2011, las AMI de NetBSD estuvieron disponibles. [45] En noviembre de 2012, se agregó soporte para Windows Server 2012 . [46]
Desde 2006, Colin Percival , desarrollador de FreeBSD y responsable de seguridad, solicitó a Amazon que añadiera FreeBSD. [47] En noviembre de 2012, Amazon admitió oficialmente la ejecución de FreeBSD en EC2. [48] [49] [50] La plataforma FreeBSD/EC2 es mantenida por Percival [51], quien también desarrolló el servicio de copia de seguridad basado en la nube de Amazon S3 con deduplicación segura , Tarsnap . [52]
Amazon tiene su propia distribución de Linux basada en Fedora y Red Hat Enterprise Linux como una oferta de bajo costo conocida como Amazon Linux AMI . La versión 2013.03 incluye: kernel de Linux , entorno de ejecución Java OpenJDK y colección de compiladores GNU . [53]
El 30 de noviembre de 2020, Amazon anunció que agregaría macOS al servicio EC2. Se anunció soporte inicial para macOS Mojave y macOS Catalina ejecutándose en Mac Mini . [1]
Amazon Elastic Container Registry (ECR) es un servicio de registro Docker para que instancias Amazon EC2 accedan a repositorios e imágenes. [54]
Amazon Elastic Kubernetes Service (EKS), un servicio de Kubernetes administrado que se ejecuta sobre EC2 sin necesidad de aprovisionar ni administrar instancias. [54]
Se puede iniciar una instancia EC2 con la opción de dos tipos de almacenamiento para su disco de arranque o "dispositivo raíz". La primera opción es un disco local de "almacenamiento de instancias" como dispositivo raíz (originalmente la única opción). La segunda opción es utilizar un volumen de EBS como dispositivo raíz. Los volúmenes de almacén de instancias son almacenamiento temporal que sobrevive al reinicio de una instancia EC2, pero cuando la instancia se detiene o finaliza (por ejemplo, por una llamada API o debido a una falla), este almacén se pierde.
Amazon Elastic Block Store (EBS) proporciona dispositivos de bloques sin formato que se pueden conectar a instancias de Amazon EC2. Estos dispositivos de bloque se pueden utilizar como cualquier dispositivo de bloque sin formato. En un caso de uso típico, esto incluiría formatear el dispositivo con un sistema de archivos y montarlo . Además, EBS admite una serie de funciones de almacenamiento avanzadas, incluidas la creación de instantáneas y la clonación. Los volúmenes de EBS pueden tener un tamaño de hasta 16 TB. Los volúmenes de EBS se basan en almacenamiento replicado, de modo que la falla de un solo componente no provocará la pérdida de datos. Amazon presentó EBS al público en general en agosto de 2008. [9]
Los volúmenes de EBS proporcionan almacenamiento persistente independientemente de la vida útil de la instancia EC2 y actúan de manera muy similar a los discos duros de un servidor real. Más precisamente, aparecen como dispositivos de bloque para el sistema operativo respaldados por matrices de discos de Amazon. El sistema operativo es libre de utilizar el dispositivo como quiera. En el caso más común, se carga un sistema de archivos y el volumen actúa como un disco duro. Otro uso posible es la creación de matrices RAID combinando dos o más volúmenes EBS. RAID permite aumentos de velocidad y/o confiabilidad de EBS. Los usuarios pueden configurar y administrar volúmenes de almacenamiento de tamaños desde 1 GB hasta 16 TB. Los volúmenes admiten instantáneas, que se pueden tomar desde una herramienta GUI o API. Los volúmenes de EBS se pueden adjuntar o desconectar de las instancias mientras se están ejecutando y mover de una instancia a otra. [55]
Simple Storage Service (S3) es un sistema de almacenamiento en el que las instancias EC2 pueden acceder a los datos o directamente a través de la red para las personas que llaman adecuadamente autenticadas (toda la comunicación se realiza a través de HTTP). Amazon no cobra por el ancho de banda para las comunicaciones entre instancias EC2 y almacenamiento S3 "en la misma región". El acceso a datos de S3 almacenados en una región diferente (por ejemplo, datos almacenados en Europa desde una instancia EC2 de la costa este de EE. UU.) se facturará según las tarifas normales de Amazon.
El precio del almacenamiento basado en S3 es por gigabyte al mes. Las aplicaciones acceden a S3 a través de una API. Por ejemplo, Apache Hadoop admite un sistema de archivos s3: especial para admitir la lectura y escritura en el almacenamiento S3 durante un trabajo de MapReduce . También existen sistemas de archivos S3 para Linux, que montan un almacén de archivos S3 remoto en una imagen EC2, como si fuera un almacenamiento local. Como S3 no es un sistema de archivos POSIX completo , es posible que las cosas no se comporten igual que en un disco local (por ejemplo, sin soporte de bloqueo).
La función de dirección IP elástica de Amazon es similar a la dirección IP estática de los centros de datos tradicionales, con una diferencia clave. Un usuario puede asignar mediante programación una dirección IP elástica a cualquier instancia de máquina virtual sin la ayuda de un administrador de red y sin tener que esperar a que DNS propague el enlace. En este sentido una dirección IP elástica pertenece a la cuenta y no a una instancia de máquina virtual. Existe hasta que se elimina explícitamente y permanece asociado con la cuenta incluso aunque no esté asociado con ninguna instancia. [56]
Amazon CloudWatch es un servicio web que proporciona monitoreo en tiempo real a los clientes EC2 de Amazon sobre su utilización de recursos, como CPU, disco, red y retraso de réplicas de bases de datos RDS. [57] CloudWatch no proporciona memoria, espacio en disco ni métricas de carga promedio sin ejecutar software adicional en la instancia. Desde diciembre de 2017, Amazon proporciona un agente CloudWatch para los sistemas operativos Windows y Linux que incluye disco e información de memoria que antes no estaba disponible; [58] anteriormente, Amazon proporcionó scripts de ejemplo para instancias de Linux para recopilar información del sistema operativo. [59] [60] Los datos se agregan y se proporcionan a través de la consola de administración de AWS. También se puede acceder a él a través de herramientas de línea de comandos y API web, [61] si el cliente desea monitorear sus recursos EC2 a través de su software de monitoreo empresarial. Amazon proporciona una API que permite a los clientes operar con alarmas de CloudWatch. [62]
Las métricas recopiladas por Amazon CloudWatch permiten que la función de escalado automático agregue o elimine dinámicamente instancias EC2. [63] A los clientes se les cobra según el número de instancias de monitoreo.
Desde mayo de 2011, Amazon CloudWatch acepta métricas personalizadas [64] que pueden enviarse mediante programación a través de la API de servicios web y luego monitorearse de la misma manera que todas las demás métricas internas, incluida la configuración de alarmas para ellas, y desde julio de 2014 el servicio Cloudwatch Logs también está disponible. disponible. [sesenta y cinco]
Amazon CloudWatch básico está incluido en el servicio de capa gratuita de Amazon.
La función de escalado automático de EC2 de Amazon le permite adaptar automáticamente la capacidad informática al tráfico del sitio. [66] Los mecanismos de escalado automático basados en programación (por ejemplo, la hora del día) y basados en reglas (por ejemplo, umbrales de utilización de CPU) son fáciles de usar y eficientes para aplicaciones simples. Sin embargo, un problema potencial es que las máquinas virtuales pueden tardar varios minutos en estar listas para su uso, lo que no es adecuado para aplicaciones en las que el tiempo es crítico. El tiempo de inicio de la VM depende del tamaño de la imagen, el tipo de VM, las ubicaciones del centro de datos, etc. [67] La conveniencia de usar EC2 le permite aumentar dinámicamente la capacidad de acuerdo con la demanda y acceder a los recursos rápidamente. [68]
NOTA: los ejemplos, cifras y cuadros comparativos de este apartado son del año 2018 en el mejor de los casos; Tenga esto en cuenta, ya que la situación ha cambiado mucho desde entonces.
Las instancias On Demand EC2 tienen un precio por hora. Un ejemplo de este precio sería $0,096 por hora para una instancia EC2 de Linux, m5.large, en la región us-east-1. El precio variará según el tipo de instancia, la región y el sistema operativo de la instancia. Los precios públicos bajo demanda para EC2 se pueden encontrar en el sitio web de AWS.
Los otros modelos de precios para EC2 tienen modelos de precios diferentes.
Las instancias puntuales también tienen un costo por hora de instancia, pero el costo cambiará periódicamente según el suministro de capacidad puntual de EC2.
Los planes de instancias reservadas y Compute Savings tienen un precio por hora. Cada una de estas herramientas de reserva tiene su propio precio por hora según la opción de pago, plazo y producto de reserva que se utilice. Estos precios están fijados por un plazo de 1 o 3 años.
El precio de Amazon EC2 varía desde $2,5 por mes para instancias "nano" con 1 vCPU y 0,5 GB de RAM integradas hasta instancias de tipo "xlarge" con 32 vCPU y 488 GB de RAM facturadas hasta $3997,19 por mes.
Los gráficos anteriores muestran cómo se comparan los precios de Amazon EC2 con servicios de computación en la nube similares: Microsoft Azure, Google Cloud Platform, Kamatera y Vultr. [69]
Para hacer que EC2 sea más tolerante a fallas , Amazon diseñó zonas de disponibilidad diseñadas para estar aisladas de fallas en otras zonas de disponibilidad. Las zonas de disponibilidad no comparten la misma infraestructura. Las aplicaciones que se ejecutan en más de una zona de disponibilidad pueden lograr una mayor disponibilidad. [70]
EC2 proporciona a los usuarios control sobre la ubicación geográfica de las instancias, lo que permite la optimización de la latencia y altos niveles de redundancia. Por ejemplo, para minimizar el tiempo de inactividad, un usuario puede configurar instancias de servidor en múltiples zonas que estén aisladas entre sí para la mayoría de las causas de falla, de modo que una respalde a la otra.
Los servicios de bases de datos de mayor disponibilidad, como Amazon Relational Database Service, se ejecutan por separado de las instancias EC2.
A principios de julio de 2008, las organizaciones antispam Outblaze y Spamhaus.org comenzaron a bloquear el grupo de direcciones EC2 de Amazon debido a problemas con la distribución de spam y malware . [71]
El 1 de diciembre de 2010, Amazon retiró su servicio a WikiLeaks después de sufrir presión política en Estados Unidos. [72] Assange dijo que WikiLeaks eligió a Amazon sabiendo que probablemente sería expulsado del servicio "para separar la retórica de la realidad". [73] [74] El grupo de Internet Anonymous intentó atacar a EC2 en venganza; sin embargo, Amazon no se vio afectada por el ataque. [75]
Los sitios web de Amazon estuvieron temporalmente fuera de línea el 12 de diciembre de 2010, aunque inicialmente no estaba claro si esto se debió a ataques o una falla de hardware. Un funcionario de Amazon afirmó más tarde que se debía a una falla de hardware. [76]
Poco antes de las 5 am ET del 21 de abril de 2011, comenzó una interrupción en el centro de datos de EC2 en el norte de Virginia que derribó varios sitios web, incluidos Foursquare , Springpad , Reddit , Quora y Hootsuite . [77] [78] [79] Específicamente, los intentos de utilizar los servicios de bases de datos y discos elásticos de Amazon se bloquearon, fallaron o fueron lentos. El servicio se restableció en algunas partes del centro de datos (tres de las cuatro "zonas de disponibilidad" en términos de Amazon) a última hora de la tarde, hora del Este, de ese día; [80] Los problemas para al menos algunos clientes continuaban hasta el 25 de abril. [81] También se ha perdido el 0,07% de los volúmenes de EBS en una zona; Las fallas de EBS eran parte del funcionamiento normal incluso antes de esta interrupción y eran un riesgo documentado por Amazon, [82] aunque la cantidad de fallas y la cantidad de fallas simultáneas pueden hacer que algunos usuarios de EC2 no estén preparados.
El domingo 6 de agosto de 2011, Amazon sufrió un corte de energía en una de sus zonas de disponibilidad en Irlanda. [83] Originalmente se culpó a un rayo por el apagón; sin embargo, el 11 de agosto, el proveedor de energía irlandés ESB Networks descartó esto como una causa, pero al momento de escribir este artículo no pudo confirmar cuál era la causa del problema. [84] El corte de energía generó múltiples preguntas sobre la infraestructura EBS de Amazon, lo que provocó que se expusieran varios errores en su software. Los errores provocaron que los datos de algunos clientes se eliminaran al recuperar volúmenes de EBS en una operación de escritura durante el bloqueo. [85]
El 8 de agosto de 2011 se produjo otra interrupción de la conectividad de red del centro de datos de Amazon en el norte de Virginia, que dejó fuera de servicio a empresas como Reddit, Quora, Netflix y FourSquare. [86] El corte duró alrededor de 25 minutos.
Otra interrupción del centro de datos del norte de Virginia se produjo el 22 de octubre de 2012, aproximadamente entre las 10 a. m. y las 4 p. m., hora del Pacífico. Edmodo, Airbnb, Flipboard, Reddit y otros clientes se vieron afectados. Anonymous se atribuyó la responsabilidad, pero Amazon negó esta afirmación. [87]