Skip to main content
O português é fornecido por meio de tradução automática para sua conveniência. O inglês precede o português em caso de inconsistências.

Opções e exemplos de configuração do ONTAP NAS

Colaboradores netapp-aruldeepa

Aprenda a criar e usar drivers ONTAP NAS com sua instalação do Trident . Esta seção fornece exemplos de configuração de backend e detalhes para mapear backends para StorageClasses.

Opções de configuração do backend

Consulte a tabela a seguir para obter as opções de configuração do backend:

Parâmetro Descrição Padrão

version

Sempre 1

storageDriverName

Nome do driver de armazenamento

ontap-nas, ontap-nas-economy , ou ontap-nas-flexgroup

backendName

Nome personalizado ou o backend de armazenamento

Nome do motorista + "_" + dataLIF

managementLIF

Endereço IP de um cluster ou LIF de gerenciamento de SVM. Um nome de domínio totalmente qualificado (FQDN) pode ser especificado. Pode ser configurado para usar endereços IPv6 se o Trident foi instalado usando a opção IPv6. Os endereços IPv6 devem ser definidos entre colchetes, como por exemplo: [28e8:d9fb:a825:b7bf:69a8:d02f:9e7b:3555] . Para uma transição perfeita para o MetroCluster , consulte oExemplo MetroCluster .

"10.0.0.1", "[2001:1234:abcd::fefe]"

dataLIF

Endereço IP do protocolo LIF. A NetApp recomenda especificar dataLIF . Caso não sejam fornecidos, o Trident obtém os dataLIFs da SVM. Você pode especificar um nome de domínio totalmente qualificado (FQDN) para ser usado nas operações de montagem NFS, permitindo criar um DNS round-robin para balancear a carga entre várias dataLIFs. Pode ser alterado após a configuração inicial. Consulte . Pode ser configurado para usar endereços IPv6 se o Trident foi instalado usando a opção IPv6. Os endereços IPv6 devem ser definidos entre colchetes, como por exemplo: [28e8:d9fb:a825:b7bf:69a8:d02f:9e7b:3555] . Omitir para Metrocluster. Veja oExemplo MetroCluster .

Endereço especificado ou derivado de SVM, caso não seja especificado (não recomendado).

svm

Máquina virtual de armazenamento a ser usada Omitir para Metrocluster. Veja oExemplo MetroCluster .

Derivado de uma SVM managementLIF é especificado

autoExportPolicy

Ativar a criação e atualização automática da política de exportação [Booleano]. Usando o autoExportPolicy e autoExportCIDRs O Trident pode gerenciar políticas de exportação automaticamente, dependendo das opções disponíveis.

falso

autoExportCIDRs

Lista de CIDRs para filtrar os IPs dos nós do Kubernetes quando autoExportPolicy está habilitado. Usando o autoExportPolicy e autoExportCIDRs O Trident pode gerenciar políticas de exportação automaticamente, dependendo das opções disponíveis.

["0.0.0.0/0", "::/0"]`

labels

Conjunto de rótulos arbitrários formatados em JSON para aplicar aos volumes

""

clientCertificate

Valor do certificado do cliente codificado em Base64. Utilizado para autenticação baseada em certificado.

""

clientPrivateKey

Valor da chave privada do cliente codificado em Base64. Utilizado para autenticação baseada em certificado.

""

trustedCACertificate

Valor codificado em Base64 do certificado da Autoridade Certificadora (CA) confiável. Opcional. Utilizado para autenticação baseada em certificado.

""

username

Nome de usuário para conectar ao cluster/SVM. Usado para autenticação baseada em credenciais. Para autenticação do Active Directory, consulte "Autenticar o Trident em um SVM de backend usando credenciais do Active Directory".

password

Senha para conectar ao cluster/SVM. Usado para autenticação baseada em credenciais. Para autenticação do Active Directory, consulte "Autenticar o Trident em um SVM de backend usando credenciais do Active Directory".

storagePrefix

Prefixo usado ao provisionar novos volumes no SVM. Não pode ser atualizado depois de configurado.

Observação Ao usar o ontap-nas-economy e um storagePrefix com 24 ou mais caracteres, as qtrees não terão o prefixo de armazenamento incorporado, embora ele esteja presente no nome do volume.

"tridente"

aggregate

Agregado para provisionamento (opcional; se definido, deve ser atribuído à SVM). Para o ontap-nas-flexgroup motorista, esta opção é ignorada. Caso não esteja atribuído, qualquer um dos agregados disponíveis pode ser usado para provisionar um volume FlexGroup .

Observação Quando o agregado é atualizado no SVM, ele é atualizado automaticamente no Trident por meio de polling no SVM, sem a necessidade de reiniciar o Controlador Trident . Quando você configura um agregado específico no Trident para provisionar volumes, se o agregado for renomeado ou movido para fora do SVM, o backend entrará em estado de falha no Trident durante a consulta ao agregado do SVM. Você deve alterar o agregado para um que esteja presente na SVM ou removê-lo completamente para que o backend volte a ficar online.

""

limitAggregateUsage

O provisionamento falhará se a utilização for superior a esta percentagem. Não se aplica ao Amazon FSx para ONTAP.

"" (não aplicado por padrão)

flexgroupAggregateList

Lista de agregados para provisionamento (opcional; se definida, deve ser atribuída à SVM). Todos os agregados atribuídos à SVM são usados ​​para provisionar um volume FlexGroup . Compatível com o driver de armazenamento ontap-nas-flexgroup.

Observação Quando a lista agregada é atualizada no SVM, a lista é atualizada automaticamente no Trident por meio de polling no SVM, sem a necessidade de reiniciar o Controlador Trident . Quando você configura uma lista de agregação específica no Trident para provisionar volumes, se a lista de agregação for renomeada ou movida para fora do SVM, o backend entrará em estado de falha no Trident durante a consulta da lista de agregação do SVM. Você deve alterar a lista agregada para uma que esteja presente na SVM ou removê-la completamente para que o backend volte a funcionar.

""

limitVolumeSize

O provisionamento falhará se o tamanho do volume solicitado for superior a este valor. Também restringe o tamanho máximo dos volumes que gerencia para qtrees, e o qtreesPerFlexvol Essa opção permite personalizar o número máximo de qtrees por FlexVol volume.

"" (não aplicado por padrão)

debugTraceFlags

Sinalizadores de depuração a serem usados na resolução de problemas. Exemplo: {"api":false, "method":true} Não use debugTraceFlags a menos que você esteja solucionando problemas e precise de um despejo de logs detalhado.

nulo

nasType

Configure a criação de volumes NFS ou SMB. As opções são nfs , smb ou nulo. Definir como nulo utiliza, por padrão, volumes NFS.

nfs

nfsMountOptions

Lista de opções de montagem NFS separadas por vírgulas. As opções de montagem para volumes persistentes do Kubernetes são normalmente especificadas nas classes de armazenamento, mas se nenhuma opção de montagem for especificada em uma classe de armazenamento, o Trident usará as opções de montagem especificadas no arquivo de configuração do backend de armazenamento. Se nenhuma opção de montagem for especificada na classe de armazenamento ou no arquivo de configuração, o Trident não definirá nenhuma opção de montagem em um volume persistente associado.

""

qtreesPerFlexvol

Número máximo de Qtrees por FlexVol, deve estar no intervalo [50, 300]

"200"

smbShare

Você pode especificar uma das seguintes opções: o nome de um compartilhamento SMB criado usando o Console de Gerenciamento da Microsoft ou a CLI do ONTAP ; um nome para permitir que o Trident crie o compartilhamento SMB; ou você pode deixar o parâmetro em branco para impedir o acesso comum aos volumes compartilhados. Este parâmetro é opcional para o ONTAP local. Este parâmetro é obrigatório para backends do Amazon FSx para ONTAP e não pode estar em branco.

smb-share

useREST

Parâmetro booleano para usar APIs REST do ONTAP . useREST`Quando definido para `true O Trident usa APIs REST do ONTAP para se comunicar com o backend; quando configurado para false O Trident utiliza chamadas ONTAPI (ZAPI) para se comunicar com o backend. Este recurso requer o ONTAP 9.11.1 e posterior. Além disso, a função de login do ONTAP utilizada deve ter acesso ao ontapi aplicativo. Isso é satisfeito pelo predefinido vsadmin e cluster-admin papéis. A partir da versão Trident 24.06 e do ONTAP 9.15.1 ou posterior, useREST está definido para true por padrão; alterar useREST para false para usar chamadas ONTAPI (ZAPI).

true`para ONTAP 9.15.1 ou posterior, caso contrário `false .

limitVolumePoolSize

Tamanho máximo de FlexVol solicitável ao usar Qtrees no backend ontap-nas-economy.

"" (não aplicado por padrão)

denyNewVolumePools

Restringe ontap-nas-economy backends da criação de novos volumes FlexVol para conter suas Qtrees. Apenas os Flexvols preexistentes são usados ​​para provisionar novos PVs.

adAdminUser

Usuário ou grupo de usuários administradores do Active Directory com acesso total aos compartilhamentos SMB. Use este parâmetro para conceder direitos de administrador ao compartilhamento SMB com controle total.

Opções de configuração de backend para provisionamento de volumes

Você pode controlar o provisionamento padrão usando essas opções em defaults seção da configuração. Para ver um exemplo, consulte os exemplos de configuração abaixo.

Parâmetro Descrição Padrão

spaceAllocation

Alocação de espaço para Qtrees

"verdadeiro"

spaceReserve

Modo de reserva de espaço; "nenhum" (fino) ou "volume" (grosso)

"nenhum"

snapshotPolicy

Política de instantâneo a ser usada

"nenhum"

qosPolicy

Grupo de políticas de QoS a ser atribuído aos volumes criados. Escolha qosPolicy ou adaptiveQosPolicy por pool de armazenamento/backend.

""

adaptiveQosPolicy

Grupo de políticas de QoS adaptativas a serem atribuídas aos volumes criados. Escolha uma das opções qosPolicy ou adaptiveQosPolicy para cada pool de armazenamento/backend. Não suportado por ontap-nas-economy.

""

snapshotReserve

Percentagem do volume reservada para instantâneos

"0" se snapshotPolicy é "nenhum", caso contrário ""

splitOnClone

Separar um clone de seu progenitor no momento da criação.

"falso"

encryption

Ative a Criptografia de Volume NetApp (NVE) no novo volume; o padrão é false . Para usar esta opção, o NVE precisa estar licenciado e habilitado no cluster. Se o NAE estiver habilitado no backend, qualquer volume provisionado no Trident terá o NAE habilitado. Para mais informações, consulte:"Como o Trident funciona com NVE e NAE" .

"falso"

tieringPolicy

Política de níveis para usar "nenhum"

unixPermissions

Modo para novos volumes

"777" para volumes NFS; vazio (não aplicável) para volumes SMB.

snapshotDir

Controla o acesso ao .snapshot diretório

"verdadeiro" para NFSv4 "falso" para NFSv3

exportPolicy

Política de exportação a ser utilizada

"padrão"

securityStyle

Estilo de segurança para novos volumes. Suporte a NFS mixed e unix estilos de segurança. Suporte para PMEs mixed e ntfs estilos de segurança.

O padrão do NFS é unix . O padrão SMB é ntfs .

nameTemplate

Modelo para criar nomes de volume personalizados.

""

Observação A utilização de grupos de políticas de QoS com o Trident requer o ONTAP 9.8 ou posterior. Você deve usar um grupo de políticas de QoS não compartilhado e garantir que o grupo de políticas seja aplicado a cada componente individualmente. Um grupo de políticas de QoS compartilhado impõe o limite máximo para a taxa de transferência total de todas as cargas de trabalho.

Exemplos de provisionamento em volume

Aqui está um exemplo com valores padrão definidos:

---
version: 1
storageDriverName: ontap-nas
backendName: customBackendName
managementLIF: 10.0.0.1
dataLIF: 10.0.0.2
labels:
  k8scluster: dev1
  backend: dev1-nasbackend
svm: trident_svm
username: cluster-admin
password: <password>
limitAggregateUsage: 80%
limitVolumeSize: 50Gi
nfsMountOptions: nfsvers=4
debugTraceFlags:
  api: false
  method: true
defaults:
  spaceReserve: volume
  qosPolicy: premium
  exportPolicy: myk8scluster
  snapshotPolicy: default
  snapshotReserve: "10"

Para ontap-nas e ontap-nas-flexgroups O Trident agora usa um novo cálculo para garantir que o FlexVol seja dimensionado corretamente com a porcentagem snapshotReserve e o PVC. Quando o usuário solicita um PVC, o Trident cria o FlexVol original com mais espaço usando o novo cálculo. Esse cálculo garante que o usuário receba o espaço gravável solicitado no PVC, e não menos espaço do que o solicitado. Antes da versão 21.07, quando o usuário solicita um PVC (por exemplo, 5 GiB), com o snapshotReserve em 50%, ele obtém apenas 2,5 GiB de espaço gravável. Isso ocorre porque o que o usuário solicitou foi o volume completo e snapshotReserve é uma porcentagem disso. Com o Trident 21.07, o que o usuário solicita é o espaço gravável e o Trident define o snapshotReserve número como porcentagem do volume total. Isso não se aplica a ontap-nas-economy . Veja o exemplo a seguir para ver como isso funciona:

O cálculo é o seguinte:

Total volume size = (PVC requested size) / (1 - (snapshotReserve percentage) / 100)

Para snapshotReserve = 50% e solicitação de PVC = 5 GiB, o tamanho total do volume é 5/.5 = 10 GiB e o tamanho disponível é 5 GiB, que é o que o usuário solicitou na solicitação de PVC O volume show O comando deve exibir resultados semelhantes a este exemplo:

Exibe a saída do comando "volume show."

Os backends existentes de instalações anteriores provisionarão volumes conforme explicado acima ao atualizar o Trident. Para volumes criados antes da atualização, você deve redimensioná-los para que a alteração seja observada. Por exemplo, um PVC de 2 GiB com snapshotReserve=50 O resultado anterior era um volume que fornecia 1 GiB de espaço gravável. Redimensionar o volume para 3 GiB, por exemplo, fornece ao aplicativo 3 GiB de espaço gravável em um volume de 6 GiB.

Exemplos de configuração mínima

Os exemplos a seguir mostram configurações básicas que deixam a maioria dos parâmetros com os valores padrão. Esta é a maneira mais fácil de definir um backend.

Observação Se você estiver usando o Amazon FSx no NetApp ONTAP com Trident, a recomendação é especificar nomes DNS para LIFs em vez de endereços IP.
Exemplo de economia ONTAP NAS
---
version: 1
storageDriverName: ontap-nas-economy
managementLIF: 10.0.0.1
dataLIF: 10.0.0.2
svm: svm_nfs
username: vsadmin
password: password
Exemplo de grupo flexível ONTAP NAS
---
version: 1
storageDriverName: ontap-nas-flexgroup
managementLIF: 10.0.0.1
dataLIF: 10.0.0.2
svm: svm_nfs
username: vsadmin
password: password
Exemplo MetroCluster

Você pode configurar o backend para evitar a necessidade de atualizar manualmente a definição do backend após a troca de modo (switchover) e o retorno ao modo anterior (switchback)."Replicação e recuperação de SVM" .

Para uma transição perfeita e um retorno perfeito, especifique a SVM usando managementLIF e omitir o dataLIF e svm parâmetros. Por exemplo:

---
version: 1
storageDriverName: ontap-nas
managementLIF: 192.168.1.66
username: vsadmin
password: password
Exemplo de volumes SMB
---
version: 1
backendName: ExampleBackend
storageDriverName: ontap-nas
managementLIF: 10.0.0.1
nasType: smb
securityStyle: ntfs
unixPermissions: ""
dataLIF: 10.0.0.2
svm: svm_nfs
username: vsadmin
password: password
Exemplo de autenticação baseada em certificado

Este é um exemplo mínimo de configuração de backend. clientCertificate , clientPrivateKey , e trustedCACertificate (opcional, se estiver usando uma CA confiável) são preenchidos em backend.json e extraem os valores codificados em base64 do certificado do cliente, da chave privada e do certificado da CA confiável, respectivamente.

---
version: 1
backendName: DefaultNASBackend
storageDriverName: ontap-nas
managementLIF: 10.0.0.1
dataLIF: 10.0.0.15
svm: nfs_svm
clientCertificate: ZXR0ZXJwYXB...ICMgJ3BhcGVyc2
clientPrivateKey: vciwKIyAgZG...0cnksIGRlc2NyaX
trustedCACertificate: zcyBbaG...b3Igb3duIGNsYXNz
storagePrefix: myPrefix_
Exemplo de política de exportação automática

Este exemplo mostra como você pode instruir o Trident a usar políticas de exportação dinâmicas para criar e gerenciar a política de exportação automaticamente. Isso funciona da mesma forma para o ontap-nas-economy e ontap-nas-flexgroup motoristas.

---
version: 1
storageDriverName: ontap-nas
managementLIF: 10.0.0.1
dataLIF: 10.0.0.2
svm: svm_nfs
labels:
  k8scluster: test-cluster-east-1a
  backend: test1-nasbackend
autoExportPolicy: true
autoExportCIDRs:
- 10.0.0.0/24
username: admin
password: password
nfsMountOptions: nfsvers=4
Exemplo de endereço IPv6

Este exemplo mostra managementLIF usando um endereço IPv6.

---
version: 1
storageDriverName: ontap-nas
backendName: nas_ipv6_backend
managementLIF: "[5c5d:5edf:8f:7657:bef8:109b:1b41:d491]"
labels:
  k8scluster: test-cluster-east-1a
  backend: test1-ontap-ipv6
svm: nas_ipv6_svm
username: vsadmin
password: password
Exemplo de uso de volumes SMB no Amazon FSx para ONTAP

O smbShare Este parâmetro é necessário para o FSx para ONTAP usando volumes SMB.

---
version: 1
backendName: SMBBackend
storageDriverName: ontap-nas
managementLIF: example.mgmt.fqdn.aws.com
nasType: smb
dataLIF: 10.0.0.15
svm: nfs_svm
smbShare: smb-share
clientCertificate: ZXR0ZXJwYXB...ICMgJ3BhcGVyc2
clientPrivateKey: vciwKIyAgZG...0cnksIGRlc2NyaX
trustedCACertificate: zcyBbaG...b3Igb3duIGNsYXNz
storagePrefix: myPrefix_
Exemplo de configuração de backend com nameTemplate
---
version: 1
storageDriverName: ontap-nas
backendName: ontap-nas-backend
managementLIF: <ip address>
svm: svm0
username: <admin>
password: <password>
defaults:
  nameTemplate: "{{.volume.Name}}_{{.labels.cluster}}_{{.volume.Namespace}}_{{.vo\
    lume.RequestName}}"
labels:
  cluster: ClusterA
  PVC: "{{.volume.Namespace}}_{{.volume.RequestName}}"

Exemplos de backends com pools virtuais

Nos arquivos de definição de backend de exemplo mostrados abaixo, valores padrão específicos são definidos para todos os pools de armazenamento, como: spaceReserve em nenhum, spaceAllocation em falso, e encryption falso. Os pools virtuais são definidos na seção de armazenamento.

O Trident define os rótulos de provisionamento no campo "Comentários". Os comentários estão definidos no FlexVol para ontap-nas ou FlexGroup para ontap-nas-flexgroup . O Trident copia todos os rótulos presentes em um pool virtual para o volume de armazenamento durante o provisionamento. Para maior conveniência, os administradores de armazenamento podem definir rótulos por pool virtual e agrupar volumes por rótulo.

Nesses exemplos, alguns dos pools de armazenamento definem seus próprios limites. spaceReserve , spaceAllocation , e encryption valores, e alguns pools substituem os valores padrão.

Exemplo de ONTAP NAS
---
version: 1
storageDriverName: ontap-nas
managementLIF: 10.0.0.1
svm: svm_nfs
username: admin
password: <password>
nfsMountOptions: nfsvers=4
defaults:
  spaceReserve: none
  encryption: "false"
  qosPolicy: standard
labels:
  store: nas_store
  k8scluster: prod-cluster-1
region: us_east_1
storage:
  - labels:
      app: msoffice
      cost: "100"
    zone: us_east_1a
    defaults:
      spaceReserve: volume
      encryption: "true"
      unixPermissions: "0755"
      adaptiveQosPolicy: adaptive-premium
  - labels:
      app: slack
      cost: "75"
    zone: us_east_1b
    defaults:
      spaceReserve: none
      encryption: "true"
      unixPermissions: "0755"
  - labels:
      department: legal
      creditpoints: "5000"
    zone: us_east_1b
    defaults:
      spaceReserve: none
      encryption: "true"
      unixPermissions: "0755"
  - labels:
      app: wordpress
      cost: "50"
    zone: us_east_1c
    defaults:
      spaceReserve: none
      encryption: "true"
      unixPermissions: "0775"
  - labels:
      app: mysqldb
      cost: "25"
    zone: us_east_1d
    defaults:
      spaceReserve: volume
      encryption: "false"
      unixPermissions: "0775"
Exemplo de FlexGroup NAS ONTAP
---
version: 1
storageDriverName: ontap-nas-flexgroup
managementLIF: 10.0.0.1
svm: svm_nfs
username: vsadmin
password: <password>
defaults:
  spaceReserve: none
  encryption: "false"
labels:
  store: flexgroup_store
  k8scluster: prod-cluster-1
region: us_east_1
storage:
  - labels:
      protection: gold
      creditpoints: "50000"
    zone: us_east_1a
    defaults:
      spaceReserve: volume
      encryption: "true"
      unixPermissions: "0755"
  - labels:
      protection: gold
      creditpoints: "30000"
    zone: us_east_1b
    defaults:
      spaceReserve: none
      encryption: "true"
      unixPermissions: "0755"
  - labels:
      protection: silver
      creditpoints: "20000"
    zone: us_east_1c
    defaults:
      spaceReserve: none
      encryption: "true"
      unixPermissions: "0775"
  - labels:
      protection: bronze
      creditpoints: "10000"
    zone: us_east_1d
    defaults:
      spaceReserve: volume
      encryption: "false"
      unixPermissions: "0775"
Exemplo de economia ONTAP NAS
---
version: 1
storageDriverName: ontap-nas-economy
managementLIF: 10.0.0.1
svm: svm_nfs
username: vsadmin
password: <password>
defaults:
  spaceReserve: none
  encryption: "false"
labels:
  store: nas_economy_store
region: us_east_1
storage:
  - labels:
      department: finance
      creditpoints: "6000"
    zone: us_east_1a
    defaults:
      spaceReserve: volume
      encryption: "true"
      unixPermissions: "0755"
  - labels:
      protection: bronze
      creditpoints: "5000"
    zone: us_east_1b
    defaults:
      spaceReserve: none
      encryption: "true"
      unixPermissions: "0755"
  - labels:
      department: engineering
      creditpoints: "3000"
    zone: us_east_1c
    defaults:
      spaceReserve: none
      encryption: "true"
      unixPermissions: "0775"
  - labels:
      department: humanresource
      creditpoints: "2000"
    zone: us_east_1d
    defaults:
      spaceReserve: volume
      encryption: "false"
      unixPermissions: "0775"

Mapear backends para StorageClasses

As seguintes definições de StorageClass referem-se aExemplos de backends com pools virtuais . Usando o parameters.selector No campo StorageClass, cada StorageClass especifica quais pools virtuais podem ser usados para hospedar um volume. O volume terá os aspectos definidos na piscina virtual escolhida.

  • O protection-gold A StorageClass será mapeada para o primeiro e o segundo pool virtual no ontap-nas-flexgroup backend. Essas são as únicas piscinas que oferecem proteção de nível ouro.

    apiVersion: storage.k8s.io/v1
    kind: StorageClass
    metadata:
      name: protection-gold
    provisioner: csi.trident.netapp.io
    parameters:
      selector: "protection=gold"
      fsType: "ext4"
  • O protection-not-gold A StorageClass será mapeada para o terceiro e quarto pool virtual no ontap-nas-flexgroup backend. Essas são as únicas pools que oferecem um nível de proteção diferente do ouro.

    apiVersion: storage.k8s.io/v1
    kind: StorageClass
    metadata:
      name: protection-not-gold
    provisioner: csi.trident.netapp.io
    parameters:
      selector: "protection!=gold"
      fsType: "ext4"
  • O app-mysqldb A classe de armazenamento será mapeada para o quarto pool virtual no ontap-nas backend. Este é o único pool que oferece configuração de pool de armazenamento para aplicativos do tipo mysqldb.

    apiVersion: storage.k8s.io/v1
    kind: StorageClass
    metadata:
      name: app-mysqldb
    provisioner: csi.trident.netapp.io
    parameters:
      selector: "app=mysqldb"
      fsType: "ext4"
  • O protection-silver-creditpoints-20k A StorageClass será mapeada para o terceiro pool virtual no ontap-nas-flexgroup backend. Este é o único pool que oferece proteção de nível prata e 20.000 pontos de crédito.

    apiVersion: storage.k8s.io/v1
    kind: StorageClass
    metadata:
      name: protection-silver-creditpoints-20k
    provisioner: csi.trident.netapp.io
    parameters:
      selector: "protection=silver; creditpoints=20000"
      fsType: "ext4"
  • O creditpoints-5k A StorageClass será mapeada para o terceiro pool virtual no ontap-nas backend e o segundo pool virtual no ontap-nas-economy backend. Essas são as únicas ofertas de piscina com 5000 pontos de crédito.

    apiVersion: storage.k8s.io/v1
    kind: StorageClass
    metadata:
      name: creditpoints-5k
    provisioner: csi.trident.netapp.io
    parameters:
      selector: "creditpoints=5000"
      fsType: "ext4"

A Trident decidirá qual pool virtual será selecionado e garantirá que o requisito de armazenamento seja atendido.

Atualizar dataLIF após a configuração inicial

Você pode alterar o dataLIF após a configuração inicial executando o seguinte comando para fornecer ao novo arquivo JSON de backend o dataLIF atualizado.

tridentctl update backend <backend-name> -f <path-to-backend-json-file-with-updated-dataLIF>
Observação Se os PVCs estiverem conectados a um ou mais pods, você deve desligar todos os pods correspondentes e, em seguida, ligá-los novamente para que o novo dataLIF entre em vigor.

Exemplos de segurança SMB

Configuração de backend com o driver ontap-nas

apiVersion: trident.netapp.io/v1
kind: TridentBackendConfig
metadata:
  name: backend-tbc-ontap-nas
  namespace: trident
spec:
  version: 1
  storageDriverName: ontap-nas
  managementLIF: 10.0.0.1
  svm: svm2
  nasType: smb
  defaults:
    adAdminUser: tridentADtest
  credentials:
    name: backend-tbc-ontap-invest-secret

Configuração de backend com o driver ontap-nas-economy

apiVersion: trident.netapp.io/v1
kind: TridentBackendConfig
metadata:
  name: backend-tbc-ontap-nas
  namespace: trident
spec:
  version: 1
  storageDriverName: ontap-nas-economy
  managementLIF: 10.0.0.1
  svm: svm2
  nasType: smb
  defaults:
    adAdminUser: tridentADtest
  credentials:
    name: backend-tbc-ontap-invest-secret

Configuração de backend com pool de armazenamento

apiVersion: trident.netapp.io/v1
kind: TridentBackendConfig
metadata:
  name: backend-tbc-ontap-nas
  namespace: trident
spec:
  version: 1
  storageDriverName: ontap-nas
  managementLIF: 10.0.0.1
  svm: svm0
  useREST: false
  storage:
  - labels:
      app: msoffice
    defaults:
      adAdminUser: tridentADuser
  nasType: smb
  credentials:
    name: backend-tbc-ontap-invest-secret

Exemplo de classe de armazenamento com o driver ontap-nas

apiVersion: storage.k8s.io/v1
kind: StorageClass
metadata:
  name: ontap-smb-sc
  annotations:
    trident.netapp.io/smbShareAdUserPermission: change
    trident.netapp.io/smbShareAdUser: tridentADtest
parameters:
  backendType: ontap-nas
  csi.storage.k8s.io/node-stage-secret-name: smbcreds
  csi.storage.k8s.io/node-stage-secret-namespace: trident
  trident.netapp.io/nasType: smb
provisioner: csi.trident.netapp.io
reclaimPolicy: Delete
volumeBindingMode: Immediate
Observação Certifique-se de adicionar annotations Para habilitar o SMB seguro. O SMB seguro não funciona sem as anotações, independentemente das configurações definidas no Backend ou no PVC.

Exemplo de classe de armazenamento com o driver ontap-nas-economy

apiVersion: storage.k8s.io/v1
kind: StorageClass
metadata:
  name: ontap-smb-sc
  annotations:
    trident.netapp.io/smbShareAdUserPermission: change
    trident.netapp.io/smbShareAdUser: tridentADuser3
parameters:
  backendType: ontap-nas-economy
  csi.storage.k8s.io/node-stage-secret-name: smbcreds
  csi.storage.k8s.io/node-stage-secret-namespace: trident
  trident.netapp.io/nasType: smb
provisioner: csi.trident.netapp.io
reclaimPolicy: Delete
volumeBindingMode: Immediate

Exemplo de PVC com um único usuário AD

apiVersion: v1
kind: PersistentVolumeClaim
metadata:
  name: my-pvc4
  namespace: trident
  annotations:
    trident.netapp.io/smbShareAccessControl: |
      change:
        - tridentADtest
      read:
        - tridentADuser
spec:
  accessModes:
    - ReadWriteOnce
  resources:
    requests:
      storage: 1Gi
  storageClassName: ontap-smb-sc

Exemplo de PVC com vários usuários de AD

apiVersion: v1
kind: PersistentVolumeClaim
metadata:
  name: my-test-pvc
  annotations:
    trident.netapp.io/smbShareAccessControl: |
      full_control:
        - tridentTestuser
        - tridentuser
        - tridentTestuser1
        - tridentuser1
      change:
        - tridentADuser
        - tridentADuser1
        - tridentADuser4
        - tridentTestuser2
      read:
        - tridentTestuser2
        - tridentTestuser3
        - tridentADuser2
        - tridentADuser3
spec:
  accessModes:
    - ReadWriteOnce
  resources:
    requests:
      storage: 1Gi