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@direccIPificheroclaveprivada.pemssh usuario@direcc_IP –i ficheroclaveprivada.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.