Use um volume de disco do Azure
O GKE no Azure implementa automaticamente o
azuredisk-csi-driver
para aprovisionar e gerir volumes de disco do Azure nos seus clusters.
A versão do controlador CSI do disco do Azure do GKE no Azure está associada a uma versão do cluster do Kubernetes. Normalmente, a versão do controlador é a mais recente disponível quando a versão do GKE é lançada. Quando o cluster é atualizado, os controladores são atualizados automaticamente.
Para mais informações sobre como o GKE no Azure oferece armazenamento persistente, consulte o artigo Vista geral do armazenamento.
Classes de armazenamento predefinidas
Por predefinição, o GKE no Azure oferece as seguintes opções de StorageClass:
standard-rwo
(predefinição): aprovisiona discos Azure SSD padrão com LRSpremium-rwo
: aprovisiona discos Azure SSD premium com LRS
Antes de começar
Use a StorageClass predefinida
Quando cria um PersistentVolumeClaim sem definir o campo spec.storageClassName
, o GKE no Azure aprovisiona um volume de SSD padrão do Azure
através da StorageClass do controlador CSI do Azure Disk do GKE no Azure predefinida.
O YAML seguinte cria um PersistentVolumeClaim (PVC) denominado mypvc
com um tamanho de 30 gibibytes.
apiVersion: v1
kind: PersistentVolumeClaim
metadata:
name: mypvc
spec:
accessModes:
- ReadWriteOnce
resources:
requests:
storage: 30Gi
Use a classe de armazenamento premium
Quando cria um PersistentVolumeClaim e define o campo spec.storageClassName
como premium-rwo
, o GKE no Azure aprovisiona um volume de SSD premium do Azure.
O YAML seguinte cria um PersistentVolumeClaim (PVC) denominado mypvc
com um tamanho de 30 gibibytes.
apiVersion: v1
kind: PersistentVolumeClaim
metadata:
name: mypvc
spec:
storageClassName: premium-rwo
accessModes:
- ReadWriteOnce
resources:
requests:
storage: 30Gi
Referencie a StorageClass num StatefulSet
Para usar a nova StorageClass, pode referenciá-la no volumeClaimTemplates
de um StatefulSet.
Quando faz referência a uma StorageClass na especificação de um StatefulSet, o Kubernetes fornece armazenamento estável através de PersistentVolumes (PVs).volumeClaimTemplates
O Kubernetes chama o aprovisionador definido na StorageClass para criar um novo volume de armazenamento. Depois de o volume ser aprovisionado, o Kubernetes cria automaticamente um PV.
O StatefulSet seguinte faz referência à premium-rwo
StorageClass e
aprovisiona um volume 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
O que se segue?
Leia a documentação do controlador CSI do disco do Azure.
Crie uma classe de armazenamento personalizada com parâmetros específicos.
Saiba mais sobre os volumes persistentes no GKE.
Instale controladores de armazenamento no cluster do GKE no Azure.