Instalar drivers de armazenamento

Este tópico explica como instalar um driver de armazenamento da interface de armazenamento em contêiner (CSI, na sigla em inglês) nos seus clusters.

Visão geral

Por padrão, o GKE na AWS provisiona volumes EBS da AWS usando a StorageClass padrão. Se as cargas de trabalho precisarem usar outro tipo de volume de armazenamento, instale um driver CSI compatível para conceder acesso a ele.

O Container Storage Interface (CSI) é uma API padrão aberta que concede às cargas de trabalho do Kubernetes acesso a sistemas de armazenamento compatíveis. A CSI também permite o uso de recursos de armazenamento modernos, como redimensionamento e snapshots.

Depois de instalar um driver CSI, você precisa criar um StorageClass do Kubernetes. Defina o driver da CSI como provisionador do StorageClass. Em seguida, defina o StorageClass como padrão ou configure suas cargas de trabalho para usar o StorageClass. Para ver um exemplo de como criar um StatefulSet com um StorageClass personalizado, consulte Como usar o StorageClasses com suas cargas de trabalho.

Instale o driver CSI de um fornecedor

Os fornecedores de armazenamento são responsáveis por fornecer instruções de instalação para os drivers CSI. Confira a lista de drivers CSI na documentação do CSI.

Siga as instruções de instalação do seu driver CSI e continue com as próximas etapas nesta página.

Verificar a instalação do driver

Depois de instalar um driver CSI, é possível verificar a instalação executando os comandos a seguir.

kubectl get csinodes \
  -o jsonpath='{range .items[*]} {.metadata.name}{": "} {range .spec.drivers[*]} {.name}{"\n"} {end}{end}'

Como usar um driver CSI

Para usar um driver CSI:

  1. Crie um StorageClass personalizado que se refira ao driver no campo provisioner.

  2. Para provisionar armazenamento, é possível:

Considerações sobre o StorageClass apoiado por um driver CSI

Ao criar um StorageClass, considere o seguinte:

  • Verifique a documentação do driver CSI para parâmetros específicos do driver que você fornece à StorageClass, incluindo o nome do provisionador.

  • Nomeie o StorageClass após as propriedades dele (como fast ou highly-replicated) em vez de depois do nome do driver ou dispositivo específico. Ao nomear um StorageClass depois de suas propriedades, é possível criar StorageClasses com o mesmo nome em clusters e ambientes diferentes. Em seguida, configure as cargas de trabalho para usar o mesmo StorageClass.

A seguir