Infraestructura como Servicio (IaaS)
10.1. Introducción y objetivos
- La infraestructura como servicio (IaaS) proporciona recursos de computación como máquinas virtuales.
- Las máquinas virtuales incluyen recursos como:
- CPU (tipo de procesador, número de núcleos, hyperthreading) y memoria.
- Tipos admitidos, cantidad de almacenamiento y almacenamiento temporal no duradero.
- Número de interfaces de red y rendimiento.
- Recursos avanzados (GPU, mejoras de conectividad).
- IaaS ofrece procesamiento, almacenamiento, redes y otros recursos informáticos.
- Los usuarios pueden implementar y ejecutar software, incluyendo sistemas operativos y aplicaciones.
- Los usuarios controlan los sistemas operativos, el almacenamiento y las aplicaciones, pero no la infraestructura subyacente.
10.2. Beneficios y jerarquía interna de IaaS
- Beneficios de IaaS:
- Alta disponibilidad: Mayor tolerancia a fallos y redundancia.
- Escalabilidad horizontal: Capacidad de solicitar instancias de IaaS sin límite.
- Escalabilidad vertical: Aumento o reducción de recursos según la demanda.
- Alcance global: Cobertura geográfica mundial con baja latencia.
- Agilidad: Generación de recursos IaaS de forma casi instantánea.
- Estructura de costes predictiva: Modelo de costes directamente relacionado con el uso (OpEx).
- Principal inconveniente: Complejidad de la estructura de costes; cada proveedor tiene su propia estructura.
- Jerarquía interna de IaaS:
- Nodos de cómputo: Hardware ha evolucionado significativamente (ejemplo: de 32 GB de RAM y 12 núcleos en 2010 a 12 TB de memoria y 224 núcleos actualmente).
- Racks: Conjunto de nodos que comparten puntos de fallo comunes (ej: enrutador, PDU). Un rack se considera un dominio de fallo.
- Clústeres (stamps o unidades de escala): Unidades de uno a tres mil nodos idénticos administrados por un controlador y segmentados por capacidad (almacenamiento y cómputo).
- Centros de datos: Contienen cientos de miles de servidores y son del tamaño de campos de fútbol.
- Zonas de disponibilidad: Agrupan centros de datos.
- Regiones: Constan de docenas de centros de datos.
- Regiones:
- Implementadas a cientos o miles de kilómetros de distancia, en diferentes zonas geográficas.
- Evitan áreas propensas a desastres naturales.
- Buscan terrenos con buenos suministros de energía, agua y comunicaciones.
- Los proveedores de IaaS despliegan al menos dos regiones en límites geopolíticos.
- Permiten la replicación de datos entre regiones para alta disponibilidad.
- El coste de una implementación grande en una sola región es similar a implementaciones más pequeñas repartidas globalmente.
- No todos los servicios están disponibles en todas las regiones.
- Zonas geográficas:
- Agrupan regiones y conservan límites de cumplimiento y residencia de datos.
- Tolerantes a fallos completos de una región.
- Ofrecen altas disponibilidades en los SLA.
- Las regiones se ofrecen emparejadas para redundancia (ej: oeste de Europa con norte de Europa).
- Disponibilidad por SLA:
- Máquina virtual aislada: 99.9 %.
- Múltiples máquinas virtuales en una zona de disponibilidad: 99.99 %.
- Regiones pareadas: Para superar el nivel anterior.
10.3. Recursos de computación en IaaS
- Las máquinas virtuales son componentes básicos.
- Niveles de máquinas virtuales:
- Básico: Para cargas de trabajo que no son de producción (prueba/desarrollo).
- Estándar: Para cargas de trabajo de producción, con soporte para equilibrio de carga y discos SSD.
- Prioridad baja: Para servicios por lotes, con asignación según disponibilidad y reemplazo por cargas de alta prioridad (ofertas spot).
- Cada proveedor etiqueta su oferta de forma diferente (ej: Amazon EC2, Azure Virtual Machines, Google Compute Engine).
- La facturación es normalmente por horas de ejecución y tipo de máquina.
- Ofertas de computación no basadas en procesadores x86-64:
- Procesadores desarrollados por proveedores (ej: AWS Graviton, Azure Ampere Altra, Google Cloud Tau basados en ARM).
- IBM Power.
- GPU (importantes en aprendizaje de máquina para datos masivos).
10.4. Recursos de almacenamiento en IaaS
- Disco gestionado vs. disco no gestionado:
- No administrado: El usuario administra el almacenamiento.
- Administrado: El proveedor administra el almacenamiento.
- Discos no administrados:
- Utilizados en entornos de pequeña escala.
- Se cobran solo los datos almacenados.
- Discos administrados:
- Tamaños fijos (HDD estándar y SSD premium).
- Tamaños habituales: 32 GB, 64 GB, 128 GB, 256 GB, 512 GB, 1 TB, 2 TB, 4 TB.
- En soluciones de alta disponibilidad solo se admiten discos gestionados.
- Los cargos de almacenamiento son por todo el tamaño aprovisionado.
- Costes adicionales para ambos tipos de discos: transacciones de almacenamiento y transferencias de datos salientes.
- HDD vs. SDD:
- SDD: Mayor velocidad de lectura/escritura y número de operaciones de entrada salida por segundo.
- HDD: Menor coste por GB almacenado.
- Las máquinas virtuales se crean con un disco de aproximadamente 128 GB, y se debe añadir un disco para datos.
- Almacenamiento frío:
- Para datos con baja probabilidad de acceso (ej: copias de respaldo).
- Tipos de almacenamiento:
- Recuperación inmediata: Acceso inmediato (milisegundos). Asociado a discos HDD de gran densidad.
- Recuperación flexible: Recuperación en minutos u horas. Asociado a cabinas de cintas.
- Archivado frío profundo: Recuperación en 12 horas (el más económico). Asociado a cabinas de cintas de extremada densidad.
10.5. Recursos de red en IaaS
- Categorías de configuración de red:
- Sin red virtual: Instancias independientes sin interconectividad.
- Red virtual solo en la nube: Instancias se comunican entre sí, pero no hacia nubes privadas u otras nubes externas.
- Red virtual entre instancias: Permite construir una nube híbrida o una multinube.
- Conexiones directas de datos punto a punto desde la ubicación del cliente al centro de datos del proveedor (para grandes organizaciones).
10.6. Modelo de costes de IaaS
- Ventaja: Predictivo.
- Desventaja: Variabilidad entre proveedores.
- El modelo de costes varía entre proveedores, pero hay apartados comunes:
- Sistema operativo: Linux es preferible a Windows (menor precio).
- Tipo de instancia: Configuración High-Memory o High-CPU.
- Almacenamiento: gestionado/no gestionado, SSD/HDD.
- Conectividad de red.
- El modelo de descuento:
- Descuentos por tiempo de adquisición.
- Descuentos por pagos adelantados.
- Descuentos por asignación de máquinas virtuales en regiones específicas.
- Descuentos por porcentaje de uso mensual.
- Descuentos para instancias con coste superior a un valor preestablecido.
- La ubicación geográfica: El precio varía según la ubicación.
- El modelo de facturación:
- Bajo demanda: Pago por uso sin compromiso a largo plazo.
- Reservadas: Adquisición por un tiempo determinado con tarifa menor.
- Spot: Subasta por capacidad de cómputo no utilizada (ahorros de hasta 90 %).
- El período de ejecución: El precio varía según las horas pico.
- La salida de datos desde la nube (egress fee): Coste por recuperar datos de la nube.
10.7. Cuaderno de ejercicios
- Ejercicio 1: Herramienta para conexión remota a instancias en la nube
- Solución: Comando ssh (Apple Mac OS/Linux) o herramientas como Putty (Microsoft Windows).
- Ejercicio 2: Crear una máquina virtual en Azure
- Solución: Seguir los pasos indicados en el enlace para la creación de la máquina virtual.
- Ejercicio 3: Conexión a una máquina virtual en IaaS por SSH
- Solución:
- Apple Mac y Linux: Copiar el archivo .PEM a la máquina, asegurar permisos (chmod 600 ficheroclaveprivada.pem), y conectarse con el comando ssh: sshusuario@direccIP–ificheroclaveprivada.pem
- Microsoft Windows: Descargar Putty y Puttygen, usar Puttygen para convertir el archivo .PEM a .PPK, y usar Putty para conectar.
- Ejercicio 4: Comparativa de principales proveedores de IaaS
- Solución: Buscar "google cloud vs aws vs azure".
- Ejercicio 5: Datos masivos como servicio (big data as a service, BDaaS)
- Solución: Amazon EMR, Google Cloud Dataproc, Azure HDInsight, Cloudera, Databricks, HPE, Oracle y Qubole.