¿Qué es Azure Container Storage? Vista previa

Azure Container Storage es un servicio de administración, implementación y orquestación de volúmenes basado en la nube creado de forma nativa para contenedores. Se integra con Kubernetes, lo que le permite aprovisionar volúmenes persistentes de forma dinámica y automática para almacenar datos para aplicaciones con estado que se ejecutan en clústeres de Kubernetes.

Importante

Azure Container Storage está actualmente en versión preliminar pública y no está disponible en todas las regiones de Azure. Consulte disponibilidad general. Esta versión preliminar se ofrece sin un contrato de nivel de servicio y no se recomienda usarla para cargas de trabajo de producción. Es posible que algunas características no sean compatibles o que tengan sus funcionalidades limitadas. Para más información, consulte Términos de uso complementarios de las Versiones Preliminares de Microsoft Azure.

Para empezar a usar Azure Container Storage, consulte el Uso de Azure Container Storage con Azure Kubernetes Service o vea el vídeo.

Nos gustaría saber cómo planea usar Azure Container Storage. Complete esta breve encuesta.

En este vídeo se proporciona una introducción a Azure Container Storage, un servicio de administración y orquestación de almacenamiento de un extremo a otro para aplicaciones con estado. Vea lo sencillo que es crear y administrar volúmenes para aplicaciones de contenedor con estado a escala de producción. Obtenga información sobre cómo optimizar el rendimiento de las cargas de trabajo con estado en Azure Kubernetes Service (AKS) para escalar de forma eficaz entre servicios de almacenamiento a la vez que proporciona una experiencia nativa de contenedor rentable.

Tipos de almacenamiento compatibles

Azure Container Storage utiliza ofertas de Azure Storage existentes para el almacenamiento de datos real y ofrece una solución de orquestación y administración de volúmenes creada específicamente para contenedores. Puede elegir cualquiera de las opciones de almacenamiento de respaldo admitidas para crear un grupo de almacenamiento para los volúmenes persistentes.

Azure Container Storage ofrece compatibilidad con volúmenes persistentes con el modo de acceso ReadWriteOnce a los clústeres de Azure Kubernetes Service (AKS)basados en Linux. Entre las opciones de almacenamiento de respaldo admitidas solo se incluyen ofertas de almacenamiento en bloques: Discos de Azure, Discos efímeros (NVMe local o SSD temporal) y Azure Elastic SAN. En la tabla siguiente se resumen los tipos de almacenamiento admitidos, las cargas de trabajo recomendadas y los modelos de aprovisionamiento.

Tipo de almacenamiento Descripción Cargas de trabajo Ofertas Modelo de aprovisionamiento
Azure Elastic SAN Aprovisionar a petición, recurso totalmente administrado Bases de datos de uso general, servicios de streaming y mensajería, entornos CD/CI y otras cargas de trabajo de nivel 1/2. Azure Elastic SAN Aprovisionado a petición por volumen e instantánea de volumen creados. Varios clústeres pueden acceder simultáneamente a una sola SAN, pero los volúmenes persistentes solo se pueden adjuntar por un consumidor a la vez.
Azure Disks Control granular de las SKU de almacenamiento y las configuraciones Azure Disks es una buena opción para bases de datos de uso general y de nivel 1, como MySQL, MongoDB y PostgreSQL. SSD prémium, SSD prémium v2, SSD estándar, Disco Ultra Aprovisionado por tamaño de bloque de almacenamiento de contenedor de destino y tamaño máximo de volumen.
Disco efímero Utiliza recursos de almacenamiento local en nodos de AKS (NVMe o SSD temporal) El disco efímero es extremadamente sensible a la latencia (latencia baja de menos de un ms), por lo que es mejor para aplicaciones sin requisitos de durabilidad de datos o con compatibilidad integrada de replicación de datos, como Cassandra. NVMe está disponible en SKU de máquina virtual optimizadas para almacenamiento Implementado como parte de las máquinas virtuales que hospedan un clúster de AKS. AKS detecta el almacenamiento efímero disponible en los nodos de AKS y los adquiere para la implementación de volúmenes.

Compatibilidad de características con diferentes tipos de almacenamiento

La compatibilidad con características depende de la opción de almacenamiento de respaldo que seleccione. En la tabla siguiente se enumeran las características clave de Azure Container Storage e indica qué opciones de almacenamiento las admiten.

Característica NVMe local SSD local Azure Disks Azure Elastic SAN
Expansión o cambio de tamaño del bloque de almacenamiento Compatible Admitido No compatible No compatible
Replicación Compatible No compatible Compatible de forma nativa Compatible de forma nativa
Consumo de recursos Compatible Admitido Compatible Vista previa
SSE/CMK No compatible No compatible Compatible Vista previa
Opción Exponer ZRS N/D N/D Compatible Compatible
Volúmenes persistentes Compatible Se admite1 Compatible Vista previa
Volúmenes efímeros Compatible Admitido Compatible Vista previa
Instantáneas Compatible2 Compatible Admitido No compatible

1 Con anotación explícita que los datos no son persistentes.

2 Solo con replica_count de 1. No se admite con mayores recuentos de réplicas.

Disponibilidad regional

Azure Container Storage solo está disponible para un subconjunto de regiones de Azure:

  • (África) Norte de Sudáfrica
  • (Asia Pacífico) Este de Australia
  • (Asia Pacífico) Este de Asia
  • (Asia Pacífico) Este de Japón
  • (Asia Pacífico) Centro de Corea del Sur
  • (Asia Pacífico) Sudeste de Asia
  • (Asia Pacífico) Centro de la India
  • (Europa) Centro de Francia
  • (Europa) Norte de Europa
  • (Europa) Oeste de Europa
  • (Europa) Sur de Reino Unido
  • (Europa) Centro de Suecia
  • (Europa) Norte de Suiza
  • (Oriente Medio) Norte de Emiratos Árabes Unidos
  • (Norteamérica) Este de EE. UU.
  • (Norteamérica) Este de EE. UU. 2
  • (Norteamérica) Oeste de EE. UU.
  • (Norteamérica) Oeste de EE. UU. 2
  • (Norteamérica) Oeste de EE. UU. 3
  • (Norteamérica) Centro de EE. UU.
  • (Norteamérica) Centro-norte de EE. UU.
  • (Norteamérica) Centro-sur de EE. UU.
  • (Norteamérica) Centro-oeste de EE. UU.
  • (Norteamérica) Centro de Canadá
  • (Norteamérica) Este de Canadá
  • (Sudamérica) Sur de Brasil

Novedades de Azure Container Storage

En función de los comentarios de los clientes, hemos incluido las siguientes funcionalidades con la actualización de versión preliminar más reciente:

Para obtener más información sobre estas características, envíe un correo electrónico al equipo de Azure Container Storage a azcontainerstorage@microsoft.com.

Por qué Azure Container Storage es útil

Hasta ahora, proporcionar almacenamiento en la nube para contenedores requería utilizar controladores de Container Storage Interface (CSI) individuales para utilizar servicios de almacenamiento destinados a cargas de trabajo centradas en IaaS y hacer que funcionaran para contenedores. Esto genera sobrecarga operativa y aumenta el riesgo de problemas de disponibilidad, escalabilidad, rendimiento, facilidad de uso y coste de las aplicaciones.

Azure Container Storage se deriva de OpenEBS, una solución de código abierto que proporciona funcionalidades de almacenamiento de contenedores para Kubernetes. Al ofrecer una solución de orquestación de volúmenes administrada a través de controladores de almacenamiento basados en microservicios en un entorno de Kubernetes, Azure Container Storage habilita el almacenamiento nativo de contenedor verdadero.

Puede usar Azure Container Storage para:

  • Acelerar las iniciativas de VM a contenedores: Azure Container Storage pone a disposición de los contenedores toda la gama de ofertas de almacenamiento en bloque de Azure que antes solo estaban disponibles para máquinas virtuales. Esto incluye un disco efímero que proporciona una latencia extremadamente baja para cargas de trabajo como Cassandra, así como Azure Elastic SAN que proporciona destinos aprovisionados compartidos e iSCSI nativos.

  • Simplificar la administración de volúmenes con Kubernetes: Al proporcionar la orquestación de volúmenes a través del plano de control de Kubernetes, Azure Container Storage facilita la implementación y la administración de volúmenes dentro de Kubernetes, sin necesidad de moverse entre diferentes planos de control.

  • Reducir el costo total de propiedad (TCO): Mejore la rentabilidad aumentando la escala de volúmenes persistentes admitidos por pod o nodo. Reduzca los recursos de almacenamiento necesarios para el aprovisionamiento mediante el uso compartido dinámico de recursos de almacenamiento. Tenga en cuenta que no se admite la compatibilidad con el escalado vertical para el propio bloque de almacenamiento.

Ventajas principales

  • Escalado horizontal rápido de pods con estado: Azure Container Storage monta los volúmenes persistentes a través de los protocolos de almacenamiento en bloques de red (NVMe-oF o iSCSI), lo que ofrece una asociación y desasociación rápida de volúmenes persistentes. Puede empezar poco a poco e ir implementando recursos a medida que los vaya necesitando, a la vez que se asegura de que sus aplicaciones no estén inactivas o interrumpidas, ya sea durante la inicialización o en producción. La resistencia de las aplicaciones se mejora con la regeneración (respawns) de pods en todo el clúster, lo que requiere un movimiento rápido de los volúmenes persistentes. Aprovechando los protocolos de red remotos, Azure Container Storage se acopla estrechamente con el ciclo de vida de los pods para admitir aplicaciones con estado de alta resiliencia y a gran escala en AKS.

  • Rendimiento mejorado para cargas de trabajo con estado: Azure Container Storage permite un rendimiento de lectura superior y proporciona un rendimiento de escritura parecido al de un disco utilizando NVMe-oF sobre RDMA. Esto permite a los clientes responder de forma rentable a los requisitos de rendimiento de las distintas cargas de trabajo de los contenedores, incluidas las de nivel 1, intensivas en E/S, de uso general, sensibles al rendimiento y de desarrollo/prueba. Acorte el tiempo de asociación o desasociación de volúmenes persistentes y reduzca el tiempo de conmutación por error de pods.

  • Orquestación de volúmenes nativa de Kubernetes: Cree grupos de almacenamiento y volúmenes persistentes, capture instantáneas y administre todo el ciclo de vida de los volúmenes mediante comandos kubectl sin cambiar entre conjuntos de herramientas para diferentes operaciones del plano de control.

Glosario

Resulta útil comprender algunos términos clave relacionados con Azure Container Storage y Kubernetes:

  • Inclusión en contenedores

    Empaquetar código de aplicación solo con el sistema operativo y las dependencias necesarias para crear un único ejecutable.

  • Kubernetes

    Kubernetes es un sistema de código abierto para automatizar la implementación, el escalado y la administración de aplicaciones en contenedores. Un clúster Kubernetes es un conjunto de nodos que ejecutan aplicaciones contenedorizadas.

  • Azure Kubernetes Service (AKS)

    Azure Kubernetes Service es un servicio de Kubernetes hospedado que simplifica la implementación de un clúster de Kubernetes administrado en Azure, ya que descarga la sobrecarga operativa en Azure. Azure controla tareas críticas, como el mantenimiento y la supervisión del estado.

  • Grupo de almacenamiento

    La pila de Azure Container Storage intenta unificar el modelo de objetos entre los recursos propiedad del clúster y las abstracciones de la plataforma. Para lograr la representación unificada, la capacidad de almacenamiento disponible se agrega en un objeto de grupo de almacenamiento. La capacidad de almacenamiento dentro de un grupo de almacenamiento se considera homogénea. Un clúster de AKS puede tener varios grupos de almacenamiento. Los grupos de almacenamiento también sirven de límite de autenticación y aprovisionamiento. Proporcionan una construcción lógica para que los operadores administren la infraestructura de almacenamiento a la vez que simplifican la creación y administración de volúmenes para los desarrolladores de aplicaciones.

  • Clase de almacenamiento

    Una clase de almacenamiento de Kubernetes define cómo se crea dinámicamente una unidad de almacenamiento con un volumen persistente. Para más información, consulte Clases de almacenamiento de Kubernetes.

  • El volumen-persistente.

    Los volúmenes persistentes son como los discos de una máquina virtual. Representan un dispositivo de bloques sin procesar que puede usar para montar cualquier sistema de archivos. Los volúmenes se aprovisionan de forma fina dentro de un bloque de almacenamiento y comparten las características de rendimiento (IOPS, ancho de banda y capacidad) del bloque de almacenamiento. Los desarrolladores de aplicaciones crean volúmenes persistentes junto con sus definiciones de pods o aplicaciones, y los volúmenes a menudo están vinculados al ciclo de vida de la aplicación con estado. Para más información, consulte Volúmenes persistentes.

  • Notificación de volumen persistente (PVC)

    Una notificación de volumen persistente se usa para aprovisionar automáticamente el almacenamiento en función de una clase de almacenamiento.

Pasos siguientes