Para poder provisionar volumes persistentes ReadWriteMany em seu ambiente genérico do vSphere Kubernetes, configure as redes, comutadores e roteadores necessários dos nós do Kubernetes para a rede de serviço de arquivo vSAN.

Como configurar a rede

Ao configurar as redes, siga estes requisitos:
  • Em cada nó do Kubernetes, você pode usar um vNIC dedicado para o tráfego de compartilhamento de arquivos vSAN. Essa opção será necessária apenas se você quiser usar um caminho de tráfego de dados seguro para seus volumes de arquivos.
  • Se você usar um vNIC dedicado, certifique-se de que o tráfego por meio do vNIC dedicado seja roteável para uma ou mais redes de serviço de arquivo vSAN.
  • Certifique-se de que somente o SO guest em cada nó do Kubernetes possa acessar diretamente o compartilhamento de arquivos vSAN por meio do endereço IP do compartilhamento de arquivos. Os pods no nó não podem executar ping ou acessar o compartilhamento de arquivos vSAN por seu endereço IP.

    O driver CNS CSI garante que somente os pods configurados para usar o volume de arquivo CNS possam acessar o compartilhamento de arquivos vSAN criando um ponto de montagem no sistema operacional convidado.

  • Evite criar um conflito de endereço IP entre as VMs do nó e os compartilhamentos de arquivos vSAN.

A ilustração a seguir é um exemplo da configuração de rede do CNS com o serviço de compartilhamento de arquivos vSAN.

A ilustração mostra a configuração da rede CNS com o compartilhamento de arquivos vSAN.

Na ilustração, o exemplo de configuração de rede segue essas diretrizes.
  • A configuração usa redes separadas para diferentes itens no ambiente do CNS.
    Rede Descrição
    vSphere rede de gerenciamento Normalmente, em um cluster Kubernetes genérico, cada nó tem acesso a essa rede.
    Rede de pod ou nó O Kubernetes usa essa rede para a comunicação nó a nó ou pod a pod.
    Rede dedicada de compartilhamento de arquivos O tráfego de dados do volume de arquivos do CNS usa essa rede.
    vSAN rede de compartilhamento de arquivos Rede em que o compartilhamento de arquivos vSAN está ativado e em que os compartilhamentos de arquivos estão disponíveis.
  • Cada nó do Kubernetes tem uma vNIC dedicada para o tráfego de arquivos. Essa vNIC é separada da vNIC usada para a comunicação nó a nó ou pod a pod. Essa configuração é usada apenas como exemplo, mas não é obrigatória.
  • Somente os aplicativos configurados para usar o compartilhamento de arquivos do CNS têm acesso a vSAN compartilhamentos de arquivos por meio do ponto de montagem no sistema operacional convidado do nó. Por exemplo, na ilustração, ocorre o seguinte:
    • Os pods App-1 e App-2 são configurados para usar um volume de arquivo e têm acesso ao compartilhamento de arquivos por meio do ponto de montagem criado pelo driver CSI.
    • App-3 e App-4 não estão configurados com um volume de arquivo e não podem acessar compartilhamentos de arquivos.
  • Os compartilhamentos de arquivos vSAN são implantados como contêineres em uma VM do dispositivo de compartilhamento de arquivos vSAN no host ESXi. Um implantador Kubernetes, que é um software ou serviço que pode configurar, implantar e gerenciar clusters Kubernetes, configura os roteadores e comutadores necessários para que o sistema operacional convidado no nó Kubernetes possa acessar os compartilhamentos de arquivos vSAN.

Limitações de segurança

Embora a vNIC dedicada evite que um pod não autorizado acesse os compartilhamentos de arquivos diretamente, existem algumas limitações de segurança:
  • A funcionalidade do arquivo CNS pressupõe que qualquer pessoa que tenha a ID de volume do arquivo CNS é um usuário autorizado do volume. Qualquer usuário que tenha o ID de volume do arquivo CNS pode acessar os dados armazenados no volume.
  • O volume de arquivo CNS suporta apenas a autenticação AUTH_SYS, que é uma autenticação baseada em ID do usuário. Para proteger o acesso aos dados no volume de arquivo CNS, você deve usar IDs de usuário apropriadas para os contêineres que acessam o volume de arquivo CNS.
  • Um volume persistente ReadWriteMany não associado que se refere a um volume de arquivo CNS pode ser associado por uma declaração de volume persistente criada por qualquer usuário do Kubernetes em qualquer namespace. Certifique-se de que apenas usuários autorizados tenham acesso ao Kubernetes para evitar problemas de segurança.

Configurando o driver CSI para acessar clusters de serviço de arquivo vSAN

Dependendo da configuração, o driver CSI pode provisionar volumes de arquivos em um ou vários clusters vSAN nos quais o serviço de arquivos está habilitado.

Você pode restringir o acesso apenas a clusters vSAN específicos em que o serviço de arquivos está ativado. Ao implantar o cluster Kubernetes, configure o driver CSI com acesso a clusters vSAN de serviço de arquivos específicos. Como resultado, o driver CSI pode provisionar os volumes de arquivos somente nesses clusters vSAN.

Na configuração padrão, o driver CSI usa qualquer cluster de serviço de arquivos vSAN disponível em vCenter Server para o provisionamento do volume de arquivos. O driver CSI não verifica qual cluster de serviço de arquivos vSAN está acessível ao provisionar volumes de arquivos.