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.

Configure um backend NetApp HCI ou SolidFire.

Colaboradores netapp-aruldeepa

Aprenda como criar e usar um backend Element com sua instalação do Trident .

Detalhes do driver do elemento

A Trident fornece o solidfire-san Driver de armazenamento para comunicação com o cluster. Os modos de acesso suportados são: ReadWriteOnce (RWO), ReadOnlyMany (ROX), ReadWriteMany (RWX), ReadWriteOncePod (RWOP).

O solidfire-san O driver de armazenamento suporta os modos de volume arquivo e bloco. Para o Filesystem Com o comando volumeMode, o Trident cria um volume e um sistema de arquivos. O tipo de sistema de arquivos é especificado pela StorageClass.

Motorista Protocolo Modo de volume Modos de acesso suportados Sistemas de arquivos suportados

solidfire-san

iSCSI

Bloquear

RWO, ROX, RWX, RWOP

Sem sistema de arquivos. Dispositivo de bloco bruto.

solidfire-san

iSCSI

Sistema de arquivos

RWO, RWOP

xfs, ext3 , ext4

Antes de começar

Você precisará do seguinte antes de criar um backend Element.

  • Um sistema de armazenamento compatível que execute o software Element.

  • Credenciais de administrador de cluster NetApp HCI/ SolidFire ou de usuário locatário que possa gerenciar volumes.

  • Todos os seus nós de trabalho do Kubernetes devem ter as ferramentas iSCSI apropriadas instaladas. Consulte"Informações sobre a preparação do nó de trabalho" .

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

Sempre "solidfire-san"

backendName

Nome personalizado ou o backend de armazenamento

"solidfire_" + endereço IP de armazenamento (iSCSI)

Endpoint

MVIP para o cluster SolidFire com credenciais de locatário

SVIP

Endereço IP e porta de armazenamento (iSCSI)

labels

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

""

TenantName

Nome do locatário a ser usado (criado se não for encontrado)

InitiatorIFace

Restringir o tráfego iSCSI a uma interface de host específica

"padrão"

UseCHAP

Use CHAP para autenticar iSCSI. Trident usa CHAP.

verdadeiro

AccessGroups

Lista de IDs de grupos de acesso a serem usados

Encontra o ID de um grupo de acesso chamado "trident".

Types

Especificações de QoS

limitVolumeSize

O provisionamento falhará se o tamanho do volume solicitado for superior a este valor.

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

debugTraceFlags

Sinalizadores de depuração a serem usados na resolução de problemas. Exemplo: {"api":false, "method":true}

nulo

Aviso Não use debugTraceFlags a menos que você esteja solucionando problemas e precise de um despejo de logs detalhado.

Exemplo 1: Configuração de backend para solidfire-san driver com três tipos de volume

Este exemplo mostra um arquivo de backend que utiliza autenticação CHAP e modela três tipos de volume com garantias de QoS específicas. Muito provavelmente, você definiria classes de armazenamento para consumir cada um deles usando o IOPS parâmetro de classe de armazenamento.

---
version: 1
storageDriverName: solidfire-san
Endpoint: https://<user>:<password>@<mvip>/json-rpc/8.0
SVIP: <svip>:3260
TenantName: <tenant>
labels:
  k8scluster: dev1
  backend: dev1-element-cluster
UseCHAP: true
Types:
  - Type: Bronze
    Qos:
      minIOPS: 1000
      maxIOPS: 2000
      burstIOPS: 4000
  - Type: Silver
    Qos:
      minIOPS: 4000
      maxIOPS: 6000
      burstIOPS: 8000
  - Type: Gold
    Qos:
      minIOPS: 6000
      maxIOPS: 8000
      burstIOPS: 10000

Exemplo 2: Configuração de backend e classe de armazenamento para solidfire-san motorista com piscinas virtuais

Este exemplo mostra o arquivo de definição de backend configurado com pools virtuais, juntamente com StorageClasses que fazem referência a eles.

O Trident copia os rótulos presentes em um pool de armazenamento para o LUN de armazenamento de backend durante o provisionamento. Para maior conveniência, os administradores de armazenamento podem definir rótulos por pool virtual e agrupar volumes por rótulo.

No arquivo de definição de backend de exemplo mostrado abaixo, valores padrão específicos são definidos para todos os pools de armazenamento, que definem o type em Silver. Os pools virtuais são definidos em storage seção. Neste exemplo, alguns dos pools de armazenamento definem seu próprio tipo, e alguns pools substituem os valores padrão definidos acima.

---
version: 1
storageDriverName: solidfire-san
Endpoint: https://<user>:<password>@<mvip>/json-rpc/8.0
SVIP: <svip>:3260
TenantName: <tenant>
UseCHAP: true
Types:
  - Type: Bronze
    Qos:
      minIOPS: 1000
      maxIOPS: 2000
      burstIOPS: 4000
  - Type: Silver
    Qos:
      minIOPS: 4000
      maxIOPS: 6000
      burstIOPS: 8000
  - Type: Gold
    Qos:
      minIOPS: 6000
      maxIOPS: 8000
      burstIOPS: 10000
type: Silver
labels:
  store: solidfire
  k8scluster: dev-1-cluster
region: us-east-1
storage:
  - labels:
      performance: gold
      cost: "4"
    zone: us-east-1a
    type: Gold
  - labels:
      performance: silver
      cost: "3"
    zone: us-east-1b
    type: Silver
  - labels:
      performance: bronze
      cost: "2"
    zone: us-east-1c
    type: Bronze
  - labels:
      performance: silver
      cost: "1"
    zone: us-east-1d

As definições de StorageClass a seguir referem-se aos pools virtuais acima. Usando o parameters.selector No campo StorageClass, cada StorageClass especifica qual(is) pool(s) virtual(is) pode(m) ser usado(s) para hospedar um volume. O volume terá os aspectos definidos na piscina virtual escolhida.

A primeira StorageClass(solidfire-gold-four ) será mapeado para o primeiro pool virtual. Esta é a única piscina que oferece desempenho de ouro com um Volume Type QoS de ouro. A última StorageClass(solidfire-silver ) menciona qualquer pool de armazenamento que ofereça um desempenho prata. A Trident decidirá qual pool virtual será selecionado e garantirá que o requisito de armazenamento seja atendido.

apiVersion: storage.k8s.io/v1
kind: StorageClass
metadata:
  name: solidfire-gold-four
provisioner: csi.trident.netapp.io
parameters:
  selector: performance=gold; cost=4
  fsType: ext4

---
apiVersion: storage.k8s.io/v1
kind: StorageClass
metadata:
  name: solidfire-silver-three
provisioner: csi.trident.netapp.io
parameters:
  selector: performance=silver; cost=3
  fsType: ext4

---
apiVersion: storage.k8s.io/v1
kind: StorageClass
metadata:
  name: solidfire-bronze-two
provisioner: csi.trident.netapp.io
parameters:
  selector: performance=bronze; cost=2
  fsType: ext4

---
apiVersion: storage.k8s.io/v1
kind: StorageClass
metadata:
  name: solidfire-silver-one
provisioner: csi.trident.netapp.io
parameters:
  selector: performance=silver; cost=1
  fsType: ext4

---
apiVersion: storage.k8s.io/v1
kind: StorageClass
metadata:
  name: solidfire-silver
provisioner: csi.trident.netapp.io
parameters:
  selector: performance=silver
  fsType: ext4

Encontre mais informações