Configuração do NetApp ONTAP NFS
Para habilitar a integração do Trident com o sistema de armazenamento NetApp ONTAP via NFS, você deve criar um backend que permita a comunicação com o sistema de armazenamento. Configuramos um backend básico nesta solução, mas se você estiver procurando por opções mais personalizadas, visite a documentação"aqui" .
Crie um SVM no ONTAP
-
Efetue login no ONTAP System Manager, navegue até Armazenamento > VMs de armazenamento e clique em Adicionar.
-
Insira um nome para o SVM, habilite o protocolo NFS, marque a caixa de seleção Permitir acesso do cliente NFS e adicione as sub-redes em que seus nós de trabalho estão nas regras de política de exportação para permitir que os volumes sejam montados como PVs em seus clusters de carga de trabalho.
Se você estiver usando a implantação NAT de clusters de usuários ou clusters de carga de trabalho com NSX-T, será necessário adicionar a sub-rede de saída (no caso de TKGS0) ou a sub-rede de IP flutuante (no caso de TKGI) às regras de política de exportação. -
Forneça os detalhes para os LIFs de dados e os detalhes para a conta de administração do SVM e clique em Salvar.
-
Atribuir os agregados a um SVM. Navegue até Armazenamento > VMs de armazenamento, clique nas reticências ao lado da SVM recém-criada e clique em Editar. Marque a caixa de seleção Limitar criação de volume a níveis locais preferenciais e anexe os agregados necessários a ela.
-
No caso de implantações NAT de clusters de usuários ou cargas de trabalho nos quais o Trident deve ser instalado, a solicitação de montagem de armazenamento pode chegar de uma porta não padrão devido ao SNAT. Por padrão, o ONTAP só permite solicitações de montagem de volume quando originadas da porta raiz. Portanto, faça login no ONTAP CLI e modifique a configuração para permitir solicitações de montagem de portas não padrão.
ontap-01> vserver nfs modify -vserver tanzu_svm -mount-rootonly disabled
Criar backends e StorageClasses
-
Para sistemas NetApp ONTAP que atendem NFS, crie um arquivo de configuração de backend no jumphost com backendName, managementLIF, dataLIF, svm, nome de usuário, senha e outros detalhes.
{ "version": 1, "storageDriverName": "ontap-nas", "backendName": "ontap-nas+10.61.181.221", "managementLIF": "172.21.224.201", "dataLIF": "10.61.181.221", "svm": "trident_svm", "username": "admin", "password": "password" }
É uma prática recomendada definir o valor backendName personalizado como uma combinação do storageDriverName e do dataLIF que atende ao NFS para facilitar a identificação. -
Crie o backend do Trident executando o seguinte comando.
[netapp-user@rhel7]$ ./tridentctl -n trident create backend -f backend-ontap-nas.json +-------------------------+----------------+--------------------------------------+--------+---------+ | NAME | STORAGE DRIVER | UUID | STATE | VOLUMES | +-------------------------+----------------+--------------------------------------+--------+---------+ | ontap-nas+10.61.181.221 | ontap-nas | be7a619d-c81d-445c-b80c-5c87a73c5b1e | online | 0 | +-------------------------+----------------+--------------------------------------+--------+---------+
-
Com o backend criado, você deve criar uma classe de armazenamento. A definição de classe de armazenamento de exemplo a seguir destaca os campos obrigatórios e básicos. O parâmetro
backendType
deve refletir o driver de armazenamento do backend Trident recém-criado.apiVersion: storage.k8s.io/v1 kind: StorageClass metadata: name: ontap-nfs provisioner: csi.trident.netapp.io parameters: backendType: "ontap-nas"
-
Crie a classe de armazenamento executando o comando kubectl.
[netapp-user@rhel7 trident-installer]$ kubectl create -f storage-class-nfs.yaml storageclass.storage.k8s.io/ontap-nfs created
-
Com a classe de armazenamento criada, você deve criar a primeira reivindicação de volume persistente (PVC). Um exemplo de definição de PVC é fornecido abaixo. Certifique-se de que o
storageClassName
campo corresponde ao nome da classe de armazenamento recém-criada. A definição de PVC pode ser personalizada conforme necessário, dependendo da carga de trabalho a ser provisionada.kind: PersistentVolumeClaim apiVersion: v1 metadata: name: basic spec: accessModes: - ReadWriteOnce resources: requests: storage: 1Gi storageClassName: ontap-nfs
-
Crie o PVC emitindo o comando kubectl. A criação pode levar algum tempo dependendo do tamanho do volume de apoio que está sendo criado, então você pode acompanhar o processo conforme ele é concluído.
[netapp-user@rhel7 trident-installer]$ kubectl create -f pvc-basic.yaml persistentvolumeclaim/basic created [netapp-user@rhel7 trident-installer]$ kubectl get pvc NAME STATUS VOLUME CAPACITY ACCESS MODES STORAGECLASS AGE basic Bound pvc-b4370d37-0fa4-4c17-bd86-94f96c94b42d 1Gi RWO ontap-nfs 7s