Configurar o armazenamento local

Nesta página, mostramos como configurar volumes locais para o GKE em clusters Bare Metal.

O GKE em bare metal oferece duas opções para configurar PVs locais no cluster: compartilhamento de LVP e montagens de nós LVP. O compartilhamento de LVP usa diretórios em um sistema de arquivos compartilhado, enquanto as montagens de nós LVP usam discos dedicados.

Compartilhamento de LVP

Essa classe de armazenamento cria um PV local com backup em subdiretórios em um sistema de arquivos local compartilhado em cada nó do cluster. Esses subdiretórios são criados automaticamente durante a criação do cluster. As cargas de trabalho que usam essa classe de armazenamento compartilham capacidade e IOPS, porque os PVs são respaldados pelo mesmo sistema de arquivos compartilhado. Para um isolamento melhor, recomendamos configurar discos através de montagens de nós LVP.

Configurar um compartilhamento de LVP

  1. Opcional: antes da criação do cluster, monte um disco usando o caminho configurado como um ponto de montagem para que os PVs criados compartilhem a nova capacidade do disco e fiquem isolados do disco de inicialização.

  2. Especifique a seguinte resposta em lvpShare na resposta automática do cluster:

    • path: o caminho da máquina host em cada host em que os subdiretórios são criados. Um PV local é criado para cada subdiretório. O caminho padrão é /mnt/localpv-share.
    • storageClassName: a classe de armazenamento com a qual os PVs são criados durante a criação do cluster. O valor padrão é local-shared.
    • numPVUnderSharedPath: número de subdiretórios a serem criados em path. O valor padrão é 5.

    A configuração é semelhante a esta:

    apiVersion: baremetal.cluster.gke.io/v1
    kind: Cluster
    metadata:
      name: cluster1
      namespace: cluster-cluster1
    spec:
      storage:
        lvpShare:
          path: /mnt/localpv-share
          storageClassName: local-shared
          numPVUnderSharedPath: 5
    

Os PVs são criados com a classe de armazenamento especificada em storageClassName. O número total de PVs locais criados no cluster é numPVUnderSharedPath multiplicado pelo número de nós.

Montagem de nós LVP

Essa classe de armazenamento cria um PV local para cada disco montado no diretório configurado. Todos os PVs são mapeados para um disco com capacidade igual à capacidade de disco subjacente. O número total de PVs locais criados no cluster é o número de discos montados no caminho em todos os nós. Outras montagens poderão ser adicionadas após a criação do cluster.

Configurar ativações de nó LVP

  1. Em nós que tenham discos extras para PVs, formate e ative todos os discos no caminho. Isso também pode ser feito antes ou depois da criação do cluster. Veja as práticas recomendadas.

    1. Liste os discos e encontre aquele que você quer montar:

      sudo lsblk
      
    2. Formate o disco, por exemplo, com um único sistema de arquivos ext4:

      sudo mkfs.ext4 -m 0 -E lazy_itable_init=0,lazy_journal_init=0,discard /dev/DEVICE_ID
      
    3. No caminho configurado, crie um diretório como ponto de montagem para o novo disco:

      sudo mkdir -p /mnt/localpv-disk/MNT_DIR
      
    4. Monte o disco.

      sudo mount -o discard,defaults /dev/DEVICE_ID /mnt/localpv-disk/MNT_DIR &&
      sudo chmod a+w /mnt/localpv-disk/MNT_DIR
      
    5. Adicione o disco ao arquivo /etc/fstab para que o dispositivo seja montado automaticamente de novo quando a instância for reiniciada:

      # Backup of your current /etc/fstab file
      sudo cp /etc/fstab /etc/fstab.backup
      
      # Use the blkid command to find the UUID for the zonal persistent disk
      sudo blkid /dev/DEVICE_ID
      
      # Edit /etc/fstab file: create an entry that includes the UUID
      UUID=UUID_VALUE /mnt/disks/MNT_DIR ext4 discard,defaults,NOFAIL_OPTION 0 2
      
  2. Especifique a seguinte resposta em lvpNodeMounts na resposta automática do cluster:

    • path: o caminho da máquina host para cada montagem em que os discos montados são descobertos e um PV local é criado. O caminho padrão é /mnt/localpv-disk.
    • storageClassName: a classe de armazenamento com a qual os PVs são criados durante a criação do cluster. O valor padrão é local-disks.

    A configuração é semelhante a esta:

    apiVersion: baremetal.cluster.gke.io/v1
    kind: Cluster
    metadata:
      name: cluster1
      namespace: cluster-cluster1
    spec:
      storage:
        lvpNodeMounts:
          path: /mnt/localpv-disk
          storageClassName: local-disks
    

    Os PVs são criados com a classe de armazenamento especificada em storageClassName. O número total de PVs criados é o número de discos montados em path em todos os nós.

A seguir