Condividi tramite


Che cos'è Azure Container Storage?

Azure Container Storage è un servizio di gestione, distribuzione e orchestrazione basato sul cloud creato in modo nativo per i contenitori. Si integra con Kubernetes, consentendo di eseguire dinamicamente e automaticamente il provisioning di volumi persistenti per archiviare dati per le applicazioni con stato in esecuzione nei cluster Kubernetes.

Per iniziare a usare Archiviazione contenitori di Azure, vedere Installare Archiviazione contenitori di Azure per l'uso con il servizio Kubernetes di Azure.

Importante

Questo articolo illustra le funzionalità e le capacità disponibili in Archiviazione Azure Container (versione 2.x.x), che attualmente supporta solo il disco NVMe locale come archiviazione di supporto. Per informazioni dettagliate sulle versioni precedenti, vedere la documentazione di Archiviazione contenitori di Azure (versione 1.x.x).

Perché è utile Azure Container Storage

Azure Container Storage consente ai carichi di lavoro dei container di accedere a uno storage ad alte prestazioni precedentemente disponibile solo per le macchine virtuali. Supporta dischi NVMe locali veloci, ideali per carichi di lavoro sensibili alla latenza, ad esempio PostgreSQL, e framework di intelligenza artificiale e Machine Learning a elevato utilizzo di calcolo come Ray e Kubeflow.

È possibile creare e gestire volumi di archiviazione usando gli strumenti Kubernetes standard. Non è necessario passare da un portale all'altro o configurare driver CSI autonomamente. Questa semplicità semplifica le attività di archiviazione e aiuta i team a rimanere concentrati sull'esecuzione delle app.

Azure Container Storage funziona con Azure Kubernetes Service e i cluster Kubernetes gestiti autonomamente. Poiché usa componenti open source, supporta le distribuzioni in Azure e in altri cloud, offrendo flessibilità per le configurazioni ibride e multicloud.

Vantaggi principali

  • Scalabilità senza interruzioni dei pod con stato: Azure Container Storage consente il ridimensionamento rapido montando volumi persistenti attraverso l'utilizzo di protocolli ad alte prestazioni per l'archiviazione su rete a blocchi, ad esempio NVMe-oF o iSCSI. Questo approccio garantisce operazioni di collegamento e scollegamento veloci, consentendo di aumentare o ridurre dinamicamente le risorse senza rischiare interruzioni dell'applicazione. Durante l'inizializzazione o il failover dei pod, è possibile riassegnare rapidamente i volumi permanenti nel cluster, migliorando la resilienza delle applicazioni e supportando carichi di lavoro con stato su larga scala in Kubernetes.

  • Prestazioni ottimizzate per i carichi di lavoro con stato: Azure Container Storage offre throughput di lettura elevato e velocità di scrittura su disco quasi-nativa usando NVMe-oF over TCP. Questa architettura consente prestazioni convenienti per un'ampia gamma di carichi di lavoro in contenitori, tra cui scenari di I/O di livello 1, utilizzo generico, sensibile alla velocità effettiva e scenari di sviluppo/test. Accelera le operazioni di aggiunta e rimozione dei volumi persistenti, riducendo anche i tempi di failover dei pod e migliorando la resilienza delle applicazioni.

  • Orchestrazione del volume nativo di Kubernetes: Creare facilmente classi di archiviazione e volumi permanenti, gestire il ciclo di vita completo dei volumi, tra cui provisioning, espansione, eliminazione ed esecuzione di operazioni come l'acquisizione di snapshot, tutti usando comandi familiari kubectl . Questo approccio unificato elimina la necessità di passare da strumenti o interfacce diversi, semplificando la gestione dell'archiviazione all'interno dell'ambiente Kubernetes.

  • Open source e guidato dalla community: Azure Container Storage viene sviluppato come un progetto open source. Può essere installato tramite un'estensione AKS, come descritto nel tutorial o tramite Helm usando il repository local-csi-driver. Questo approccio aperto consente agli utenti di contribuire, personalizzare e integrare con i flussi di lavoro e i modelli Kubernetes esistenti.

Tipi di archivio supportati

Archiviazione di Container Azure offre un livello di orchestrazione e gestione nativo di Kubernetes per volumi persistenti in cluster Kubernetes basati su Linux. Usa le offerte di Archiviazione di Azure esistenti come archivio dati sottostante. Attualmente, Azure Container Storage v2 supporta solo dischi NVMe locali per l'archiviazione di supporto.

Tipo di archiviazione Descrizione Carichi di lavoro Offerte Modello di provisioning
Disco NVMe locale Usa dischi NVMe locali nei nodi AKS Ideale per le applicazioni che richiedono una latenza ultra-bassa e non può tollerare alcuna durabilità dei dati o avere una replica predefinita (ad esempio, PostgreSQL). Disponibile su alcune dimensioni di macchine virtuali di Azure, ad esempio dimensioni delle macchine virtuali ottimizzate per l'archiviazione e dimensioni delle macchine virtuali con accelerazione GPU. Distribuito all'interno di un cluster Kubernetes. Individua e acquisisce automaticamente dischi NVMe locali nei nodi del cluster per la distribuzione di volumi.

Supporto delle funzionalità per tipi di archiviazione diversi

La tabella seguente elenca le funzionalità principali di Archiviazione contenitori di Azure e indica se sono supportate nei dischi NVMe locali.

Funzionalità NVMe locale
Volumi temporanei Supportato
Volumi permanenti Supportato1
Espansione/ridimensionamento PV Supportato
Snapshot Non supportate
Replica Non supportate

1 Per impostazione predefinita, Archiviazione contenitori di Azure usa volumi temporanei generici per i dischi NVMe locali, ovvero i dati non vengono conservati dopo l'eliminazione del pod. Per abilitare volumi persistenti che non sono collegati al ciclo di vita del pod, aggiungere l'appropriata annotazione al Persistent Volume Claim. Per informazioni dettagliate, vedere Creare volumi persistenti con dischi NVMe locali.

Disponibilità a livello di area

Azure Container Storage è disponibile solo per un sottoinsieme di aree di Azure:

  • (Africa) Sudafrica settentrionale
  • (Asia Pacifico) Australia orientale
  • (Asia Pacifico) Asia orientale
  • (Asia Pacifico) Giappone orientale
  • (Asia Pacifico) Corea centrale
  • (Asia Pacifico) Asia sud-orientale
  • (Asia Pacifico) India centrale
  • (Europa) Francia centrale
  • (Europa) Germania centro-occidentale
  • (Europa) Europa settentrionale
  • (Europa) Europa occidentale
  • (Europa) Regno Unito meridionale
  • (Europa) Svezia centrale
  • (Europa) Svizzera settentrionale
  • (Medio Oriente) Emirati Arabi Uniti settentrionali
  • (America del Nord) Stati Uniti orientali
  • (America del Nord) Stati Uniti orientali 2
  • (America del Nord) Stati Uniti occidentali
  • (America del Nord) Stati Uniti occidentali 2
  • (America del Nord) Stati Uniti occidentali 3
  • (America del Nord) Stati Uniti centrali
  • (America del Nord) Stati Uniti centro-settentrionali
  • (America del Nord) Stati Uniti centro-meridionali
  • (America del Nord) Stati Uniti centro-occidentali
  • (America del Nord) Canada centrale
  • (America del Nord) Canada orientale
  • (America del Sud) Brasile meridionale

Considerazioni sulla scelta di una versione principale

Archiviazione di Container Azure offre due versioni principali: v1 e v2. Scegliere la versione appropriata in base all'opzione di archiviazione sottostante.

  • Dischi NVMe locali: selezionare Archiviazione di Container Azure v2.
  • Dischi di Azure: scegliere Storage per container Azure v1. Azure Container Storage v2 non supporta ancora Azure Disks.
  • SAN di Elastic in Azure: selezionare Archiviazione di Container Azure v1. Archiviazione di Container Azure v2 non dispone ancora del supporto SAN di Elastic in Azure.

Glossario

Per esplorare meglio i concetti di Archiviazione di Azure Container e Kubernetes, acquisire familiarità con questi termini essenziali:

  • Containerizzazione

    Compressione del codice dell'applicazione con solo il sistema operativo e le dipendenze necessarie per creare un singolo eseguibile.

  • Kubernetes

    Kubernetes è un sistema open source per automatizzare la distribuzione, il ridimensionamento e la gestione delle applicazioni in contenitori.

  • Servizio Azure Kubernetes

    Il servizio Azure Kubernetes è un servizio Kubernetes ospitato che semplifica la distribuzione di un cluster Kubernetes gestito in Azure eseguendo l'offload del sovraccarico operativo in Azure. Azure gestisce le attività critiche, ad esempio la manutenzione e il monitoraggio dell'integrità.

  • Cluster

    Un cluster Kubernetes è un set di nodi di calcolo che eseguono applicazioni in contenitori. Ogni nodo viene gestito dal piano di controllo e contiene i servizi necessari per eseguire i pod.

  • Pod

    Un pod è un gruppo di uno o più contenitori con risorse di archiviazione e di rete condivise e una specifica per l'esecuzione dei contenitori. Un pod è l'unità distribuibile più piccola in un cluster Kubernetes.

  • Classe di archiviazione

    Una classe di archiviazione Kubernetes definisce la modalità di creazione dinamica di un'unità di archiviazione con un volume permanente. Per altre informazioni, vedere Classi di archiviazione di Kubernetes.

  • Volume

    Un volume Kubernetes è una directory contenente i dati accessibili ai contenitori in un determinato pod. I volumi possono essere permanenti o temporanei. Il thin provisioning dei volumi viene eseguito all'interno di un pool di archiviazione. Questi condividono le caratteristiche delle prestazioni (operazioni di I/O al secondo, larghezza di banda e capacità) del pool di archiviazione.

  • Volume permanente

    I volumi persistenti sono come dischi in una macchina virtuale. Rappresentano un dispositivo a blocchi non elaborato che è possibile usare per montare qualsiasi file system. Gli sviluppatori di applicazioni creano volumi permanenti insieme alle definizioni di applicazioni o pod e i volumi sono spesso legati al ciclo di vita dell'applicazione con stato. Per altre informazioni, vedere Volumi persistenti.

  • Attestazione di volume permanente (PVC)

    Un'attestazione di volume permanente viene usata per il provisioning automatico dell'archiviazione in una classe di archiviazione.

Passaggi successivi