Instalação do operador da API OpenShift para proteção de dados (OADP)
Esta seção descreve a instalação do OpenShift API for Data Protection Operator (OADP).
Pré-requisitos
-
Um cluster Red Hat OpenShift (posterior à versão 4,12) instalado em uma infraestrutura bare-metal com nós de trabalho RHCOS
-
Um cluster NetApp ONTAP integrado ao cluster usando o Trident
-
Um back-end do Trident configurado com um SVM no cluster do ONTAP
-
Um StorageClass configurado no cluster OpenShift com o Trident como provisionador
-
Classe Snapshot do Trident criada no cluster
-
Acesso de administrador de cluster ao cluster Red Hat OpenShift
-
Acesso de administrador ao cluster do NetApp ONTAP
-
Uma aplicação, por exemplo, postgresql implantado no cluster
-
Uma estação de trabalho de administração com ferramentas tridentctl e oc instaladas e adicionadas ao CAMINHO
Passos para instalar o OADP Operator
-
Vá para o Operator Hub do cluster e selecione Red Hat OADP Operator. Na página Instalar, use todas as seleções padrão e clique em instalar. Na próxima página, use novamente todos os padrões e clique em Instalar. O operador OADP será instalado no namespace openshift-adp.
Pré-requisitos para a configuração do Velero com detalhes do ONTAP S3
Após a instalação do operador ter êxito, configure a instância do Velero. O Velero pode ser configurado para utilizar o armazenamento de objetos compatível com S3. Configure o ONTAP S3 utilizando os procedimentos apresentados no "Seção Gerenciamento de storage de objetos da documentação do ONTAP". Irá necessitar das seguintes informações da configuração do ONTAP S3 para integrar com o Velero.
-
Uma interface lógica (LIF) que pode ser usada para acessar S3
-
Credenciais do usuário para acessar o S3 que inclui a chave de acesso e a chave de acesso secreta
-
Um nome de intervalo no S3 para backups com permissões de acesso para o usuário
-
Para obter acesso seguro ao armazenamento de objetos, o certificado TLS deve ser instalado no servidor armazenamento de objetos.
Pré-requisitos para a configuração do Velero com detalhes do StorageGRID S3
O Velero pode ser configurado para utilizar o armazenamento de objetos compatível com S3. Pode configurar o StorageGRID S3 utilizando os procedimentos apresentados no "Documentação do StorageGRID". Irá necessitar das seguintes informações da configuração do StorageGRID S3 para integrar com o Velero.
-
O endpoint que pode ser usado para acessar S3
-
Credenciais do usuário para acessar o S3 que inclui a chave de acesso e a chave de acesso secreta
-
Um nome de intervalo no S3 para backups com permissões de acesso para o usuário
-
Para obter acesso seguro ao armazenamento de objetos, o certificado TLS deve ser instalado no servidor armazenamento de objetos.
Passos para configurar o Velero
-
Primeiro, crie um segredo para uma credencial de usuário do ONTAP S3 ou credenciais de usuário do locatário do StorageGRID. Isto será utilizado para configurar o Velero mais tarde. Você pode criar um segredo a partir da CLI ou do console da Web. Para criar um segredo a partir da consola Web, selecione Segredos e, em seguida, clique em segredo chave/valor. Forneça os valores para o nome da credencial, chave e o valor, conforme mostrado. Certifique-se de usar o ID da chave de acesso e a chave de acesso secreta do seu usuário S3. Nomeie o segredo adequadamente. Na amostra abaixo, um segredo com as credenciais de usuário do ONTAP S3 chamadas ONTAP-S3-credentials é criado.
Para criar um segredo chamado sg-S3-credentials a partir da CLI, você pode usar o seguinte comando.
-
Em seguida, para configurar o Velero, selecione operadores instalados no item de menu em operadores, clique em operador OADP e, em seguida, selecione o separador DataProtectionApplication.
Clique em criar DataProtectionApplication. No modo de exibição de formulário, forneça um nome para o aplicativo DataProtection ou use o nome padrão.
Agora vá para a exibição YAML e substitua as informações de especificação como mostrado nos exemplos de arquivo yaml abaixo.
Exemplo de arquivo yaml para configurar o Velero com o ONTAP S3 como backupLocation
spec: backupLocations: - velero: config: insecureSkipTLSVerify: 'false' ->use this for https communication with ONTAP S3 profile: default region: us-east-1 s3ForcePathStyle: 'true' ->This allows use of IP in s3URL s3Url: 'https://10.61.181.161' ->Ensure TLS certificate for S3 is configured credential: key: cloud name: ontap-s3-credentials -> previously created secret default: true objectStorage: bucket: velero -> Your bucket name previously created in S3 for backups prefix: container-demo-backup ->The folder that will be created in the bucket caCert: <base64 encoded CA Certificate installed on ONTAP Cluster with the SVM Scope where the bucker exists> provider: aws configuration: nodeAgent: enable: true uploaderType: kopia #default Data Mover uses Kopia to move snapshots to Object Storage velero: defaultPlugins: - csi ->This plugin to use CSI snapshots - openshift - aws - kubevirt -> This plugin to use Velero with OIpenShift Virtualization
Exemplo de arquivo yaml para configurar o Velero com o StorageGRID S3 como backupLocation
spec: backupLocations: - velero: config: insecureSkipTLSVerify: 'true' profile: default region: us-east-1 ->region of your StorageGrid system s3ForcePathStyle: 'True' s3Url: 'https://172.21.254.25:10443' ->the IP used to access S3 credential: key: cloud name: sg-s3-credentials ->secret created earlier default: true objectStorage: bucket: velero prefix: demobackup provider: aws configuration: nodeAgent: enable: true uploaderType: kopia velero: defaultPlugins: - csi - openshift - aws - kubevirt
A seção de especificação no arquivo yaml deve ser configurada adequadamente para os seguintes parâmetros semelhantes ao exemplo acima
BackupLocations ONTAP S3 ou StorageGRID S3 (com suas credenciais e outras informações como mostrado no yaml) é configurado como o BackupLocation padrão para o velero.
SnapshotLocations se você usar snapshots da Container Storage Interface (CSI), não será necessário especificar um local de snapshot porque você criará um VolumeSnapshotClass CR para Registrar o driver CSI. Em nosso exemplo, você usa o Trident CSI e criou o VolumeSnapShotClass CR usando o driver Trident CSI.
Ativar plug-in CSI Adicione csi aos defaultPlugins para Velero para fazer backup de volumes persistentes com snapshots CSI. Os plug-ins do Velero CSI, para fazer backup de PVCs apoiados por CSI, escolherão o VolumeSnapshotClass no cluster que tem o rótulo velero.io/csi-volumesnapshot-class definido nele. Para isso
-
Você deve ter o VolumeSnapshotClass do Trident criado.
-
Edite o rótulo da Trident-snapshotclass e defina-o como **velero.io/csi-volumesnapshot-class como mostrado abaixo.
Certifique-se de que os instantâneos possam persistir mesmo que os objetos VolumeSnapshot sejam eliminados. Isso pode ser feito definindo a DeloitationPolicy para manter. Se não, excluir um namespace perderá completamente todos os PVCs já copiados nele.
apiVersion: snapshot.storage.k8s.io/v1 kind: VolumeSnapshotClass metadata: name: trident-snapshotclass driver: csi.trident.netapp.io deletionPolicy: Retain
Certifique-se de que o DataProtectionApplication é criado e está na condição:reconciliado.
O operador OADP criará um BackupStorageLocation correspondente. Isso será usado ao criar um backup.