Instalar drivers de armazenamento

Este tópico explica como instalar um driver de armazenamento CSI (Container Storage Interface) em seus clusters.

Visão geral

Por padrão, o GKE na AWS provisiona volumes do AWS EBS usando o StorageClass padrão. Se suas cargas de trabalho precisarem usar outro tipo de volume de armazenamento, você pode instalar um driver CSI compatível para fornecer acesso a ele.

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

Após instalar um driver CSI, você precisa criar uma StorageClass do Kubernetes. Defina o driver CSI como o provisionador para a StorageClass. Em seguida, você pode definir a StorageClass como padrão ou configurar suas cargas de trabalho para usar a StorageClass. Para obter um exemplo de como criar um StatefulSet com uma StorageClass personalizada, consulte Usando StorageClasses com suas cargas de trabalho .

Instalar um driver CSI do fornecedor

Os fornecedores de armazenamento são responsáveis ​​por fornecer instruções de instalação para seus drivers CSI. Consulte 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 desta página.

Verifique a instalação do driver

Depois de instalar um driver CSI, você pode verificar a instalação executando os seguintes comandos.

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 uma StorageClass personalizada que faça referência ao driver em seu campo provisioner .

  2. Para provisionar armazenamento, você pode:

Considerações sobre StorageClass apoiado por um driver CSI

Ao criar uma StorageClass, considere o seguinte:

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

  • Você deve nomear a StorageClass com base em suas propriedades (como fast ou highly-replicated ), em vez do nome do driver ou dispositivo específico por trás dela. Ao nomear uma StorageClass com base em suas propriedades, você pode criar StorageClasses com o mesmo nome em diferentes clusters e ambientes. Em seguida, configure suas cargas de trabalho para usar a mesma StorageClass.

O que vem a seguir