O vSphere with Tanzu usa vários componentes para se integrar ao armazenamento do vSphere.
- Cloud Native Storage (CNS) em vCenter Server
- O componente CNS reside em vCenter Server. É uma extensão do gerenciamento de vCenter Server que implementa operações de ciclo de vida e provisionamento para volumes persistentes.
- Disco de primeira classe (FCD)
-
Também chamado de Disco Virtual Aprimorado. É um disco virtual nomeado não associado a uma VM. Esses discos residem em um armazenamento de dados VMFS, NFS ou vSAN e em volumes persistentes ReadWriteOnce.
A tecnologia FCD executa operações de ciclo de vida relacionadas a volumes persistentes fora de um ciclo de vida de uma VM ou pod.
Ao usar FCDs, tenha em mente o seguinte:- Os FCDs não oferecem suporte a protocolos NFS 4.x. Em vez disso, use o NFS 3.
- vCenter Server não serializa operações no mesmo FCD. Como resultado, os aplicativos não podem realizar operações simultaneamente no mesmo FCD. Realizar operações como clonar, realocar, excluir, recuperar e assim por diante simultaneamente a partir de diferentes threads causa resultados imprevisíveis. Para evitar problemas, os aplicativos devem realizar operações no mesmo FCD em uma ordem sequencial.
- O FCD não é um objeto gerenciado e não oferece suporte a um bloqueio global que protege várias gravações em um único FCD. Como resultado, o FCD não oferece suporte a várias instâncias de vCenter Server que gerenciam o mesmo FCD. Se você precisar usar várias instâncias de vCenter Server com FCDs, terá as seguintes opções:
- Várias instâncias de vCenter Server podem gerenciar diferentes armazenamentos de dados.
- Várias instâncias de vCenter Server não operam no mesmo FCD.
- Gerenciamento baseado em políticas de armazenamento
- O Gerenciamento Baseado em Políticas de Armazenamento é um serviço do vCenter Server que oferece suporte ao provisionamento de volumes persistentes e seus discos virtuais de suporte de acordo com os requisitos de armazenamento descritos em uma política de armazenamento. Após o provisionamento, o serviço monitora a conformidade do volume com as características da política de armazenamento. Para obter mais informações sobre o gerenciamento baseado em políticas de armazenamento, consulte Gerenciamento baseado em políticas de armazenamento .
- vSphere CNS-CSI
- O componente vSphere CNS-CSI está em conformidade com a especificação da Container Storage Interface (CSI), um padrão do setor projetado para fornecer uma interface que os orquestradores de contêineres como o Kubernetes usam para provisionar armazenamento persistente. O driver CNS-CSI é executado no Supervisor Cluster e conecta o armazenamento do vSphere ao ambiente do Kubernetes em um vSphere Namespace. O vSphere CNS-CSI se comunica diretamente com o plano de controle do CNS para todas as solicitações de provisionamento de armazenamento que vêm de vSphere Pods e pods que são executados em um cluster Tanzu Kubernetes no namespace.
- CSI Paravirtual (pvCSI)
- O pvCSI é a versão do driver vSphere CNS-CSI modificado para clusters Tanzu Kubernetes. O pvCSI reside no cluster Tanzu Kubernetes e é responsável por todas as solicitações relacionadas ao armazenamento originadas do cluster Tanzu Kubernetes. As solicitações são entregues ao CNS-CSI, que as propaga para o CNS em vCenter Server. Como resultado, o pvCSI não tem comunicação direta com o componente CNS, mas, em vez disso, depende do CNS-CSI para quaisquer operações de provisionamento de armazenamento.
O exemplo a seguir ilustra como diferentes componentes interagem quando um engenheiro de DevOps executa uma operação relacionada ao armazenamento no cluster Tanzu Kubernetes, por exemplo, cria uma declaração de volume persistente (PVC).
O engenheiro de DevOps cria um PVC usando a linha de comando no cluster Tanzu Kubernetes. Esta ação gera um PVC correspondente no cluster supervisor e dispara o CNS-CSI. O CNS-CSI invoca a API de criação de volume do CNS.
Após a criação bem-sucedida de um volume, a operação se propaga de volta através do cluster supervisor para o cluster Tanzu Kubernetes. Como resultado dessa propagação, os usuários podem ver o volume persistente e a declaração de volume persistente no estado vinculado no cluster do supervisor. E eles também veem o volume persistente e a declaração de volume persistente no estado vinculado no cluster Tanzu Kubernetes.