Usa un volumen de Azure Disk
GKE en Azure implementa de forma automática
azuredisk-csi-driver
para aprovisionar y administrar los volúmenes de Azure Disk en tus clústeres.
La versión del controlador de CSI de Azure Disk de GKE en Azure está vinculada a una versión del clúster de Kubernetes. La versión del controlador suele ser la más reciente disponible en el momento en que se lanza la versión de GKE. Cuando se actualiza el clúster, los controladores se actualizan de forma automática.
Para obtener más información sobre cómo GKE en Azure proporciona almacenamiento continuo, consulta Descripción general del almacenamiento.
Clases de almacenamiento predeterminadas
GKE en Azure ofrece las siguientes opciones de StorageClass de forma predeterminada:
standard-rwo
(predeterminado): Aprovisiona discos SSD estándar de Azure con LRS.premium-rwo
: Aprovisiona discos SSD premium de Azure con LRS.
Antes de comenzar
Usa la StorageClass predeterminada
Cuando creas un PersistentVolumeClaim sin configurar el campo
spec.storageClassName
, GKE en Azure aprovisiona un
volumen SSD estándar de Azure
con la StorageClass predeterminada del controlador de CSI de Azure Disk de GKE en Azure.
El siguiente YAML crea una PersistentVolumeClaim (PVC) llamada mypvc
con un tamaño de 30 gibibytes.
apiVersion: v1
kind: PersistentVolumeClaim
metadata:
name: mypvc
spec:
accessModes:
- ReadWriteOnce
resources:
requests:
storage: 30Gi
Usa la clase de almacenamiento Premium
Cuando creas un PersistentVolumeClaim y estableces el campo
spec.storageClassName
en premium-rwo
, GKE en Azure aprovisionan un volumen
SSD premium de Azure.
El siguiente YAML crea una PersistentVolumeClaim (PVC) llamada mypvc
con un tamaño de 30 gibibytes.
apiVersion: v1
kind: PersistentVolumeClaim
metadata:
name: mypvc
spec:
storageClassName: premium-rwo
accessModes:
- ReadWriteOnce
resources:
requests:
storage: 30Gi
Haz referencia al StorageClass en un StatefulSet
Para usar la StorageClass nueva, puedes hacer referencia a ella en un volumeClaimTemplates
de StatefulSet.
Cuando haces referencia a la StorageClass en la especificación volumeClaimTemplates
de StatefulSet, Kubernetes proporciona almacenamiento estable mediante PersistentVolumes (PV).
Kubernetes llama al aprovisionador definido en la StorageClass para crear un volumen de almacenamiento nuevo. Una vez que se aprovisiona el volumen, Kubernetes crea un PV de forma automática.
El siguiente StatefulSet hace referencia a la StorageClass premium-rwo
y aprovisiona un volumen de 1 gibibyte:
apiVersion: apps/v1
kind: StatefulSet
metadata:
name: web
spec:
selector:
matchLabels:
app: nginx
template:
metadata:
labels:
app: nginx
spec:
containers:
- name: nginx
image: registry.k8s.io/nginx-slim:0.8
volumeMounts:
- name: www
mountPath: /usr/share/nginx/html
volumeClaimTemplates: # This is the specification in which you reference the StorageClass
- metadata:
name: www
spec:
accessModes: [ "ReadWriteOnce" ]
resources:
requests:
storage: 1Gi
storageClassName: premium-rwo # This field references the existing StorageClass
¿Qué sigue?
Lee la documentación del controlador CSI de Azure Disk.
Crea una clase de almacenamiento personalizada con parámetros específicos.
Obtén más información sobre los volúmenes persistentes en GKE.
Instala los controladores de almacenamiento en tu clúster de GKE en Azure.