OpenShift Recuperação de desastres regional do Data Foundation em clusters Red Hat OpenShift on IBM Cloud

Virtual Private Cloud 4.17 and later

O Regional Disaster Recovery garante a continuidade dos negócios durante a indisponibilidade de uma região geográfica. Você pode usar o Gerenciamento Avançado de Clusters (ACM) d Red Hat para configurar as soluções de recuperação de desastres regionais para clusters do Data Foundation (ODF) d OpenShift.

Cada etapa está identificada para indicar em qual cluster deve ser executada. Use a legenda a seguir como referência.

Legenda das etiquetas de agrupamento
Marcar Agrupamento
Hub cluster Etapas a serem realizadas no cluster do hub (o cluster onde o ACM está instalado).
Managed cluster Etapas a serem realizadas em cada cluster gerenciado (os clusters ODF primário e secundário).

Aqui estão as etapas de alto nível dessa solução:

  1. Crie o cluster de hubs.
  2. Crie um perfil confiável para o cluster de hubs.
  3. Crie os clusters gerenciados.
  4. Instale o complemento ACM no cluster do hub.
  5. Importe os clusters gerenciados para o ACM.
  6. Instale o Submariner nos clusters gerenciados para estabelecer conectividade entre eles.
  7. Instale o ODF nos clusters gerenciados.
  8. Configure a política de recuperação de desastres regional.

Com essa configuração, o cluster de hub no qual você instalou o ACM gerencia os clusters ODF. Se o seu cluster ODF primário ficar indisponível, o cluster hub transfere os aplicativos e os dados do cluster ODF primário para o cluster ODF secundário.

O ODF Regional Disaster Recovery oferece suporte a aplicativos baseados em assinatura, descobertos por meio do ApplicationSet-based, e baseados no VM. Para obter todos os detalhes, consulte “Aplicativos e cargas de trabalho compatíveis” na parte inferior desta página.

Antes de Iniciar

Antes de criar os clusters, reúna os detalhes da VPC e do Cloud Object Storage necessários para preencher os comandos de criação do cluster.

  1. Recupere seus IDs de VPC. Anote o ID da VPC que você deseja usar para cada cluster.

    ibmcloud is vpcs
    
  2. Recuperar os detalhes da sub-rede de uma VPC específica. Anote os IDs das sub-redes que você deseja usar para cada cluster.

    ibmcloud is subnets --vpc VPC_ID
    
  3. Liste suas instâncias do Cloud Object Storage.

    ibmcloud resource service-instances --service-name cloud-object-storage
    
  4. Recupere o CRN da instância que você deseja usar. Anote o valor no campo “ ID ”.

    ibmcloud resource service-instance SERVICE_INSTANCE
    

Etapa 1. Criar o cluster de hubs

Hub cluster

Este é o cluster no qual você instala o ACM para gerenciar os clusters ODF primário e secundário. Certifique-se de que seu cluster de hubs tenha, no mínimo, uma capacidade de computaçã 16 vCPU x 64 GB e disponível.

Para cada cluster, certifique-se de permitir o tráfego de saída incluindo o parâmetro --disable-outbound-traffic-protection na CLI ou selecionando a opção para desativar a proteção do tráfego de saída na interface do usuário.

  1. Crie um cluster VPC em us-east para instalar o ACM. Esse é o cluster de hub que você pode usar para gerenciar seus clusters ODF. Certifique-se de que seu cluster de hub tenha pelo menos 3 nós de trabalho que executem o RHCOS, capacidade computacional disponível de pelo menos 16 vCPU e 64 GB, tráfego de saída desativado e que atenda a todos os pré-requisitos para o ACM. O comando de exemplo a seguir cria um cluster para o ACM em us-east.

    ibmcloud ks cluster create vpc-gen2 --flavor bx2.16x64 --name acm-hub-cluster-dr-odf --subnet-id SUBNET_ID --vpc-id VPC_ID --zone us-east-2 --version 4.21.31_openshift --workers 3 --cos-instance COS_CRN --disable-outbound-traffic-protection --cni OVNKubernetes
    
  2. Anote o ID do cluster na saída. Você vai precisar disso em uma etapa posterior.

Etapa 2. Criar um perfil confiável para o cluster de hubs

Hub cluster

  1. Crie o perfil confiável.

    ibmcloud iam trusted-profile-create acm-operator-profile
    
  2. Crie a regra de confiança do recurso de computação, com escopo restrito ao namespace kube-system nos recursos de computação Red Hat OpenShift.

    ibmcloud iam trusted-profile-rule-create acm-operator-profile \
      --name kube-system-rule \
      --type Profile-CR \
      --conditions claim:namespace,operator:EQUALS,value:kube-system \
      --cr-type ROKS_SA
    
  3. Atribua a política de acesso do IAM ao perfil. Substitua CLUSTER_ID pelo ID do seu cluster de hubs.

    ibmcloud iam trusted-profile-policy-create acm-operator-profile \
      --roles Reader,Viewer,Operator,Editor \
      --service-name containers-kubernetes \
      --service-instance CLUSTER_ID
    
  4. Atribua o perfil confiável ao cluster de hubs. Depois de atribuir um perfil confiável a um cluster, ele não poderá ser removido.

    ibmcloud oc experimental trusted-profile set --cluster CLUSTER_NAME_OR_ID --trusted-profile TRUSTED_PROFILE_ID
    
  5. Verifique se o segredo do perfil confiável foi criado no cluster. Esse comando pode levar até 10 minutos para ser executado. Aguarde até que o segredo seja exibido antes de prosseguir com a instalação do complemento ACM. Se você continuar antes que o segredo seja criado, a instalação do complemento ACM falhará.

    oc get secrets -n kube-system | grep ibm-cloud-credentials
    
  6. Se você estiver usando a versão 4.21 do ODF ou posterior, instale o operador OpenShift GitOps no cluster do hub.

    1. Na perspectiva da plataforma Core do console web do cluster hub OpenShift, acesse Ecossistema > Catálogo de Software e pesquise Red Hat OpenShift GitOps.

    2. Clique no Red Hat OpenShift GitOps bloco.

    3. Na página “Operador de instalação ”, selecione um canal de atualização e uma versão do GitOps para instalar.

    4. Escolha um namespace instalado. O namespace de instalação padrão é openshift-gitops-operator.

      Para a versão do GitOps 1.10 e versões posteriores, o namespace padrão mudou de openshift-operators para openshift-gitops-operator.

    5. Marque a caixa de seleção “Ativar o monitoramento de cluster recomendado pelo operador neste namespace” para ativar o monitoramento do cluster.

    6. Clique em Instalar. Red Hat OpenShift GitOps está instalado em todos os namespaces do cluster.

    7. Verifique se o operador “ Red Hat OpenShift ” ( GitOps ) está listado em Operadores > Operadores instalados e se o Status indica “Concluído com sucesso ”.

    Após a instalação, o OpenShift GitOps configura automaticamente uma instância do Argo CD pronta para uso no namespace openshift-gitops, e um ícone do Argo CD é exibido na barra de ferramentas do console.

Etapa 3. Criar os clusters gerenciados

Managed cluster

  1. Crie um cluster VPC no us-east com pelo menos 3 nós de trabalho que executem o RHCOS, capacidade computacional disponível de pelo menos 16 vCPU e 64 GB, e a proteção contra tráfego de saída desativada. Esse será o cluster ODF gerenciado primário. O comando de exemplo a seguir cria um cluster em us-east.

    ibmcloud ks cluster create vpc-gen2 --flavor bx2.16x64 --name managed-cluster-1-dr-odf --subnet-id SUBNET_ID --vpc-id VPC_ID --zone us-east-2 --version 4.21.31_openshift --workers 3 --cos-instance COS_CRN --disable-outbound-traffic-protection --cni OVNKubernetes
    
  2. Crie um cluster VPC no jp-tok com pelo menos 3 nós de trabalho que executem o RHCOS, capacidade computacional disponível de pelo menos 16 vCPU e 64 GB, e a proteção contra tráfego de saída desativada. Esse será o cluster ODF gerenciado secundário. Para obter alta disponibilidade, certifique-se de que a rede do cluster secundário não se sobreponha à rede do cluster primário. O comando de exemplo a seguir cria um cluster em jp-tok.

    ibmcloud ks cluster create vpc-gen2 --flavor bx2.16x64 --name managed-cluster-2-dr-odf --subnet-id SUBNET_ID --vpc-id VPC_ID --zone jp-tok --version 4.21.31_openshift --workers 3 --cos-instance COS_CRN --disable-outbound-traffic-protection --cni OVNKubernetes
    

Etapa 4. Instale o complemento ACM no cluster do hub

Hub cluster

Use a CLI para instalar o complemento ACM no cluster do hub.

  1. Descubra qual é a versão padrão do complemento ACM.

    ibmcloud oc cluster addon versions
    
  2. Analise as opções de complementos do ACM. No comando, especifique a versão padrão identificada na etapa anterior. Anote todas as opções que você deseja incluir ao instalar o complemento.

    ibmcloud oc cluster addon options --addon acm --version DEFAULT_VERSION
    
  3. Execute o comando para ativar o complemento. Certifique-se de especificar os parâmetros billingPlan e isLicenseAccepted.

    ibmcloud oc cluster addon enable acm --cluster HUB_CLUSTER_ID --param 'billingPlan=PLAN' --param 'isLicenseAccepted=BOOLEAN'
    

    Parâmetros de comando. Veja o comando de exemplo abaixo para conhecer um exemplo de cada tipo de parâmetro.

    --cluster
    Obrigatório. O ID do cluster de hubs no qual o complemento ACM será instalado.
    --param 'billingPlan='
    Obrigatório. O plano de cobrança que você deseja selecionar para o ACM. Especifique “ KUBERNETES ” para o plano ACM para “ Kubernetes ”.
    --param 'isLicenseAccepted='
    Obrigatório. Defina esta opção como “ true ” para aceitar o contrato de licença do plano de cobrança selecionado. O complemento não será instalado corretamente a menos que a licença seja aceita. Ao aceitar esta licença, você concorda com os termos e condições aplicáveis e confirma que compreende os serviços incluídos no plano selecionado.

    Exemplo de comando para instalar o complemento ACM com o plano de cobrança “ACM para Kubernetes ”.

    ibmcloud oc cluster addon enable acm --cluster a5bcde982dfer2nwxq73 --param 'billingPlan=KUBERNETES' --param 'isLicenseAccepted=true'
    
  4. Verifique se o complemento foi instalado. Pode levar alguns minutos para que o complemento apareça nos resultados a seguir.

    1. No cluster de hubs, verifique se o recurso acmhub foi criado.
        oc get acmhub
        ```
        Exemplo de saída.
    
        ```sh {: screen}
            NAME       AGE
            acm-auto   1h
        ```
    1. No cluster de hubs, verifique o status do serviço “ `acmhub` ”.
    
    ```sh {: pre}
        oc describe acmhub
        ```
        Exemplo de saída.
    
        ```sh {: screen}
        Status
            Message: ACM installed successfully
        ```
    

Etapa 5. Importar os clusters gerenciados para o ACM

Hub cluster Managed cluster

Importe os dois clusters gerenciados para o ACM, para que o cluster central possa gerenciá-los.

  1. Abra o console da web OpenShift do cluster de hubs.

  2. Na seção “Gerenciamento de frota ”, clique em “Importar cluster ”.

  3. Digite o nome do primeiro cluster gerenciado, selecione um conjunto de clusters, se for o caso, e insira rótulos adicionais, se for o caso.

  4. No modo Importação, selecione “Executar comandos de importação manualmente ” e clique em “Avançar ”.

  5. Opcionalmente, selecione um modelo de automação e clique em “Avançar ”.

  6. Verifique os detalhes e clique em “Gerar comando ”. Copie o comando exibido.

  7. Faça login no primeiro cluster gerenciado e execute o comando copiado com o parâmetro kubectl configurado para esse cluster.

  8. Repita as etapas 2 a 7 para o segundo cluster gerenciado.

  9. Na perspectiva de Gerenciamento de Frota, verifique se ambos os clusters gerenciados estão listados e apresentam o status “Pronto” antes de prosseguir.

Etapa 6. Configurar o complemento Submariner

Hub cluster Managed cluster

Configure o complemento Submariner para estabelecer uma conexão de rede entre os dois clusters gerenciados. Escolha uma das opções a seguir, de acordo com sua infraestrutura e os tipos de cluster:

  • Opção 1: Transit Gateway (preferida) — Compatível tanto com clusters do Red Hat OpenShift on IBM Cloud quanto com clusters do Red Hat OpenShift Virtualization Service (ROVS) que utilizem instâncias de servidor virtual (VSI) e nós de trabalho bare metal.
  • Opção 2: Balanceador de Carga de Rede (NLB) — Compatível apenas com clusters do tipo “ Red Hat OpenShift on IBM Cloud ” que possuam nós de trabalho VSI.

Opção 1: Use o serviço “ IBM Cloud Transit Gateway ” para conectar VPCs (recomendado)

Hub cluster

Utilize o IBM Cloud Transit Gateway para comunicação direta entre VPCs de alto desempenho. Essa opção oferece suporte a clusters do Serviço de Virtualização do Red Hat OpenShift on IBM Cloud e do Red Hat OpenShift tanto em infraestruturas VSI quanto em infraestruturas bare metal.

  1. Identifique as VPCs utilizadas pelos seus clusters gerenciados:

    • Para Red Hat OpenShift on IBM Cloud: Acesse o console do IBM Cloud > Menu de Navegação > Contêineres > Clusters > selecione seu cluster > anote a VPC.
    • Para o serviço de virtualização “ Red Hat OpenShift ”: Acesse o console do IBM Cloud > Menu de navegação > Infraestrutura > Virtualização “ OpenShift ” > selecione seu cluster > anote a VPC.
  2. Crie um Transit Gateway e adicione conexões às duas VPCs do cluster gerenciado:

    1. No console do IBM Cloud, acesse Infraestrutura > Rede > Transit Gateway.
    2. Clique em Criar.
    3. Digite um nome de Transit Gateway e selecione seu grupo de recursos.
    4. Selecione a rota:
      • Roteamento local: Escolha esta opção se ambos os clusters gerenciados estiverem localizados na mesma região.
      • Roteamento global: Escolha esta opção se seus clusters gerenciados estiverem implantados em diferentes regiões.
    5. Na seção “Conexões”, adicione conexões para ambas as VPCs:
      • Conexão 1: Selecione a VPC para a conexão de rede, escolha a região do Cluster 1 e selecione a VPC do Cluster 1.
      • Conexão 2: Selecione a VPC para a conexão de rede, escolha a região do Cluster 2 e selecione a VPC do Cluster 2.
    6. Clique em Criar.
  3. Crie um recurso ClusterSet no cluster central e adicione seus clusters gerenciados:

    1. No console da ACM do seu cluster de hubs, acesse Gerenciamento de Frota > Infraestrutura > Clusters > ClusterSet.
    2. Clique em “Criar conjunto de clusters” e forneça um nome para o conjunto de clusters (por exemplo, <CLUSTERSET>).
    3. Clique em “Gerenciar Atribuições de Clusters” e adicione os dois clusters gerenciados ao conjunto de clusters.
  4. No cluster do hub, crie o arquivo de configuração do Submariner Broker submariner-broker.yaml.

    apiVersion: submariner.io/v1alpha1
    kind: Broker
    metadata:
      name: submariner-broker
      namespace: <CLUSTERSET>-broker
      labels:
        cluster.open-cluster-management.io/backup: submariner
    spec:
      globalnetEnabled: true
    

    Defina globalnetEnabled: true se os clusters gerenciados tiverem redes sobrepostas (CIDRs de pods e serviços). Se seus clusters gerenciados não tiverem CIDRs sobrepostos, defina globalnetEnabled: false``.

  5. Aplique a configuração do Broker ao cluster de hubs.

    oc apply -f submariner-broker.yaml
    
  6. No cluster do hub, crie o arquivo de recurso personalizado SubmarinerConfig SubmarinerConfig-mc1.yaml para o cluster gerenciado 1.

    apiVersion: submarineraddon.open-cluster-management.io/v1alpha1
    kind: SubmarinerConfig
    metadata:
      name: submariner
      namespace: <MANAGED_CLUSTER1>
    spec:
      cableDriver: libreswan
      forceUDPEncaps: true
      gatewayConfig:
        gateways: 2
      NATTEnable: false
    
  7. No cluster do hub, crie o arquivo de recurso personalizado “ SubmarinerConfig ” ( SubmarinerConfig-mc2.yaml ) para o cluster gerenciado 2.

    apiVersion: submarineraddon.open-cluster-management.io/v1alpha1
    kind: SubmarinerConfig
    metadata:
      name: submariner
      namespace: <MANAGED_CLUSTER2>
    spec:
      cableDriver: libreswan
      forceUDPEncaps: true
      gatewayConfig:
        gateways: 2
      NATTEnable: false
    
  8. Aplique os dois recursos “ SubmarinerConfig ” no cluster do hub.

    oc apply -f SubmarinerConfig-mc1.yaml
    oc apply -f SubmarinerConfig-mc2.yaml
    
  9. No cluster do hub, crie o arquivo de recurso personalizado ManagedClusterAddOn ManagedClusterAddOn-mc1.yaml para o cluster gerenciado 1.

    apiVersion: addon.open-cluster-management.io/v1alpha1
    kind: ManagedClusterAddOn
    metadata:
      name: submariner
      namespace: <MANAGED_CLUSTER1>
    spec:
      installNamespace: submariner-operator
    
  10. No cluster do hub, crie o arquivo de recurso personalizado “ ManagedClusterAddOn ” ( ManagedClusterAddOn-mc2.yaml ) para o cluster gerenciado 2.

    apiVersion: addon.open-cluster-management.io/v1alpha1
    kind: ManagedClusterAddOn
    metadata:
      name: submariner
      namespace: <MANAGED_CLUSTER2>
    spec:
      installNamespace: submariner-operator
    
  11. Aplique os dois recursos “ ManagedClusterAddOn ” no cluster do hub.

    oc apply -f ManagedClusterAddOn-mc1.yaml
    oc apply -f ManagedClusterAddOn-mc2.yaml
    
  12. Verifique se o status do complemento Submariner aparece como “normal” no console do ACM.

    1. Acesse Gestão de frotas > Infraestrutura > Agrupamentos > ClusterSet.
    2. Selecione seu conjunto de clusters e clique em “Submariner Add-on ”.
    3. Verifique se o “Status da conexão” aparece como “Normal”, com uma marca de seleção verde.
  13. (Opcional) Execute testes adicionais de conectividade e diagnóstico do Submariner usando a CLI do subctl:

    1. Instale a ferramenta CLI do subctl no seu sistema local:
       curl -Ls https://get.submariner.io | bash
       export PATH=$PATH:~/.local/bin
       echo export PATH=\$PATH:~/.local/bin >> ~/.profile
    
    1. Verifique as conexões do gateway e do agente de rota no cluster gerenciado 1:
       subctl diagnose connections --kubeconfig ./<MANAGED_CLUSTER1_KUBECONFIG>.yaml
    
    1. Verifique as conexões do gateway e do agente de roteamento no cluster gerenciado 2:
       subctl diagnose connections --kubeconfig ./<MANAGED_CLUSTER2_KUBECONFIG>.yaml
    
    1. Execute o conjunto de testes de conectividade de ponta a ponta entre os clusters:
       subctl verify --context <MANAGED_CLUSTER1_CONTEXT> --tocontext <MANAGED_CLUSTER2_CONTEXT> --only connectivity --verbose --image-override=submariner-nettest=quay.io/submariner/nettest:0.24.1
    

Opção 2: Usar balanceadores de carga de rede para conectar VPCs

Hub cluster

Siga estas etapas para instalar e configurar o complemento Submariner por meio do console do ACM, utilizando os Equilibradores de Carga de Rede. Essa opção é compatível apenas com clusters do Red Hat OpenShift on IBM Cloud que possuam nós de trabalho VSI. Para obter informações mais detalhadas, consulte a seção “Implantação do Submariner usando o console” na documentação do Red Hat.

  1. Acesse o console do ACM no seu cluster de hubs. Clique em “Gerenciamento de frota ” > “Clusters ” > “Conjuntos de clusters ”.
  2. Clique em “Criar conjunto de clusters ”. Siga os prompts para adicionar seus dois clusters gerenciados ao conjunto de clusters.
  3. Clique na opção para instalar o complemento Submariner no conjunto de clusters.
  4. Selecione os clusters gerenciados como clusters de destino para a instalação do complemento.
  5. Ao revisar a configuração de ambos os clusters, altere as seguintes configurações conforme mostrado e mantenha o restante como padrão:
    • globalnetEnabled: true (marcado)
    • gateways: 2
    • NATTEnable: false (Desmarcado)
    • cableDriver: vxlan
  6. Clique em Instalar.
  7. Aguarde até que o status do complemento do Submariner apareça como “em bom estado” (marca de seleção verde). Isso pode levar até 20 minutos.

Etapa 7. Instalar e configurar o OpenShift Data Foundation

Managed cluster

Instale e configure o ODF em seus dois clusters gerenciados. Certifique-se de concluir essas etapas no cluster gerenciado primário e secundário.

Antes de executar qualquer comando do oc nesta seção, certifique-se de que seu contexto esteja definido para o cluster gerenciado que você está configurando. Execute ibmcloud oc cluster config --cluster MANAGED_CLUSTER_NAME_OR_ID --admin para alternar entre contextos e, em seguida, verifique com oc config current-context``.

  1. Para cada cluster gerenciado, instale o complemento “ OpenShift Data Foundation” a partir do console IBM Cloud.

    1. Acesse a página “Visão geral ” do seu cluster e role a página para baixo até a seção “Complementos ”.
    2. Na seção “OpenShift Data Foundation ”, clique em “Instalar ”.
    3. Marque a caixa de seleção “Implantar o Gateway de Objetos Multinuvem d NooBaa ”.
    4. Clique em “Instalar ” novamente para confirmar.
    5. Aguarde até que o status do complemento ODF mude de “Ativando” para “Normal” (marca de seleção verde) antes de prosseguir.
  2. Verifique se o ODF foi instalado corretamente. Na saída, verifique se o status é Ready.

    O status “Normal” na interface do usuário indica que o complemento foi implantado, mas o operador ODF ainda pode levar alguns minutos para concluir a inicialização e o registro de seus recursos.

    oc get storagecluster -n openshift-storage ocs-storagecluster -o jsonpath='{.status.phase}{"\n"}'
    

As etapas a seguir devem ser realizadas em cada cluster gerenciado. Mude seu contexto para o primeiro cluster gerenciado usando ibmcloud oc cluster config --cluster MANAGED_CLUSTER_NAME_OR_ID --admin, conclua todas as etapas até o final desta seção e, em seguida, mude para o segundo cluster gerenciado e repita o procedimento.

  1. Execute o comando para atualizar o arquivo ACM Managed Cluster Name na seção multiClusterService do recurso storageCluster . Isso permite que o ODF use o site GlobalNet. Para obter mais informações, consulte Criação de um cluster do OpenShift Data Foundation em clusters gerenciados.

    Substitua MANAGED_CLUSTER_NAME pelo nome do cluster para o qual seu contexto está apontando no momento.

    kubectl patch storagecluster -n openshift-storage ocs-storagecluster --type merge -p'{"spec":{"network":{"multiClusterService":{"clusterID":"MANAGED_CLUSTER_NAME","enabled":true}}}}'
    

    Exemplo de saída.

    storagecluster.ocs.openshift.io/ocs-storagecluster patched
    
  2. Verifique as exportações de serviços. Isso pode levar alguns minutos para ser exibido na saída.

    oc get serviceexport -n openshift-storage
    

    Saída de exemplo:

    NAME              AGE
    rook-ceph-mon-d   4d14h
    rook-ceph-mon-e   4d14h
    rook-ceph-mon-f   4d14h
    rook-ceph-osd-0   4d14h
    rook-ceph-osd-1   4d14h
    rook-ceph-osd-2   4d14h
    
  3. Crie uma exportação de serviço para ocs-provider-server.

    oc apply -f - <<EOF
    apiVersion: multicluster.x-k8s.io/v1alpha1
    kind: ServiceExport
    metadata:
      name: ocs-provider-server
      namespace: openshift-storage
    EOF
    

    Exemplo de saída.

    serviceexport.multicluster.x-k8s.io/ocs-provider-server created
    
  4. Execute o comando para atualizar o recurso storageCluster para usar a exportação do serviço ocs-provider-server que você criou.

    oc annotate storagecluster ocs-storagecluster -n openshift-storage ocs.openshift.io/api-server-exported-address=MANAGED_CLUSTER_NAME.ocs-provider-server.openshift-storage.svc.clusterset.local:50051.
    

    Exemplo de saída.

    storagecluster.ocs.openshift.io/ocs-storagecluster annotated
    
  5. Verifique se o recurso storageCluster está pronto.

    oc get storagecluster -n openshift-storage
    

    Exemplo de saída.

    NAME                    PHASE  
    ocs-storagecluster      Ready   
    

Etapa 8. Configurar a política de recuperação de desastres regional

Hub cluster

Instale o ODF Multicluster Orchestrator no seu cluster hub e crie a política de recuperação de desastres (DR) que permite o espelhamento entre os seus dois clusters gerenciados.

  1. Instale o ODF Multicluster Orchestrator no cluster hub.

    1. Instale o operador “ OpenShift ” GitOps no cluster do hub, caso ainda não o tenha feito. Para conhecer as etapas de instalação, consulte o final da seção “ , Etapa 2”. Crie um perfil confiável para o cluster de hubs.
    2. Na perspectiva da plataforma Core do console web do cluster hub ( OpenShift ), acesse Ecossistema > Catálogo de Software e procure por ODF Multicluster Orchestrator.
    3. Clique no bloco “ODF Multicluster Orchestrator ”. Certifique-se de selecionar o mesmo número de versão que o da versão do ODF que você instalou nos clusters gerenciados na seção anterior. Mantenha todas as demais configurações padrão e clique em Instalar.
    4. Certifique-se de que os recursos do operador estejam instalados no projeto openshift-operators e estejam disponíveis para todos os namespaces. Clique em “Instalar ” novamente para confirmar.

    O ODF Multicluster Orchestrator também instala o Operador do DR Hub do OpenShift no cluster hub como uma dependência.

  2. Verifique a instalação, verificando se os pods do operador estão funcionando. Certifique-se de que o contexto da CLI esteja definido para o cluster do hub antes de executar este comando.

    oc get pods -n openshift-operators
    

    Exemplo de saída.

    NAME                                        READY   STATUS       RESTARTS    AGE
    odf-multicluster-console-6845b795b9-blxrn   1/1     Running      0           4d20h
    odfmo-controller-manager-f9d9dfb59-jbrsd    1/1     Running      0           4d20h
    ramen-hub-operator-6fb887f885-fss4w         2/2     Running      0           4d20h
    
  3. No cluster do hub, crie uma política de recuperação de desastres (DR) com um intervalo de sincronização de 5 minutos e especifique cada cluster gerenciado nos parâmetros. Isso cria buckets de objetos d NooBaa, tanto nos clusters gerenciados quanto nos ODF, e habilita o espelhamento do pool de blocos do Ceph para replicação de volumes.

    1. Na seção “Gerenciamento de frota ” do console web do cluster de hubs OpenShift, acesse Serviços de dados > Recuperação de desastres > Políticas > Criar DRPolicy.

    2. Crie uma política de DR que inclua os seguintes parâmetros.

      • Clusters conectados: PRIMARY_MANAGED_CLUSTER_NAME, SECONDARY_MANAGED_CLUSTER_NAME
      • Política de replicação: Assíncrona
      • Intervalo de replicação: 5m
      • Se for o caso, selecione “Ativar suporte à recuperação de desastres para instâncias restauradas e clonadas do PersistentVolumeClaims (apenas para Data Foundation) ” em “Configurações avançadas ”.

      Red Hat afirma explicitamente que essa opção só deve ser usada com aplicativos detectados e em ambientes nos quais volumes RBD clonados/restaurados sejam ativamente compatíveis.

  4. No conjunto de hubs, execute os seguintes comandos para verificar se a política de DR foi criada e aplicada aos clusters gerenciados. Certifique-se de que o contexto da CLI esteja definido para o cluster hub antes de executar esses comandos.

    ibmcloud oc cluster config --cluster HUB_CLUSTER_NAME --admin
    
    oc get drpolicy DRPOLICY_NAME -o jsonpath='{.status.conditions[].reason}{"\n"}'
    

    Exemplo de saída.

    Succeeded
    
    oc get drclusters
    

    Exemplo de saída.

    NAME               AGE
    managed-cluster1   4m42s
    managed-cluster2   4m42s
    
  5. Em cada cluster gerenciado, verifique se a política de recuperação de desastres foi aplicada e se está em bom estado. Altere o contexto da CLI para cada cluster gerenciado antes de executar esses comandos.

    ibmcloud oc cluster config --cluster MANAGED_CLUSTER_NAME --admin
    
    oc get csv,pod -n openshift-dr-system
    

    Exemplo de saída.

    NAME                                                                          DISPLAY                         VERSION        REPLACES   PHASE
    clusterserviceversion.operators.coreos.com/odr-cluster-operator.v4.15.0       Openshift DR Cluster Operator   4.15.0                    Succeeded
    clusterserviceversion.operators.coreos.com/volsync-product.v0.8.0             VolSync                         0.8.0                     Succeeded
    NAME                                             READY   STATUS    RESTARTS   AGE
    pod/ramen-dr-cluster-operator-6467cf5d4c-cc8kz   2/2     Running   0          3d12h
    
    oc get cephblockpool ocs-storagecluster-cephblockpool -n openshift-storage -o jsonpath='{.status.mirroringStatus.summary}{"\n"}'
    

    Exemplo de saída.

    {"daemon_health":"OK","health":"OK","image_health":"OK","states":{}}
    
  6. Opcional: Analise os operadores que você pode instalar para aprimorar os recursos do ODF Regional Disaster Recovery.

  7. Opcional: Teste sua configuração de recuperação de desastres.

Operadores opcionais para a recuperação de desastres regionais da ODF

Analise os operadores opcionais que você pode instalar no hub ACM ou nos clusters gerenciados para aprimorar os recursos do ODF Regional Disaster Recovery. Observe que o site IBM não é responsável pelo gerenciamento dessas operadoras.

Você é responsável pelo gerenciamento desses operadores, incluindo, entre outros, a atualização, o monitoramento, a recuperação e a reinstalação.

Operadores opcionais para a recuperação regional de desastres da ODF
Operador Descrição Informações Adicionais
OpenShift API para proteção de dados ( OADP ) Operador
  • Use para criar APIs de backup e restauração para clusters OpenShift.
  • Instale em clusters gerenciados.
Introdução à API OpenShift para proteção de dados

Teste de sua configuração de recuperação de desastres

Crie um aplicativo de amostra para testar sua solução de recuperação de desastres. Para obter mais informações, consulte Criar aplicativo de amostra para testar o aplicativo de recuperação de desastres.

  1. Implemente um aplicativo baseado em assinatura a partir do console ACM. A guia de topologia do aplicativo é exibida em verde quando todos os recursos do aplicativo são implantados com êxito.

  2. Na página do aplicativo, vá para Ações > Gerenciar política de dados.

  3. Atribua a política de DR criada anteriormente a esse aplicativo.

  4. Verifique se os pods de aplicativos estão sendo executados no cluster primário.

  5. Na página do aplicativo, vá para Ações > Aplicativo de failover. Selecione seu cluster ODF secundário como o cluster de destino. Clique em Initiate (Iniciar ).

  6. Verifique se os pods de aplicativos foram movidos para o cluster secundário.

  7. Na página do aplicativo, vá para Ações > Realocar aplicativo. Selecione seu cluster ODF primário como o cluster de destino. Clique em Initiate (Iniciar ).

  8. Verifique se os pods de aplicativos foram movidos de volta para o cluster primário.

Atualização do seu ambiente regional de recuperação de desastres do ODF

Para obter informações sobre quando e como atualizar os componentes do seu ambiente ODF-RDR, consulte “Atualização do seu ambiente ODF de recuperação de desastres regional ”.

Resolução de problemas

Caso encontre problemas com a configuração de recuperação de desastres regional do ODF, consulte “Verificando a configuração de recuperação de desastres regional da Data Foundation do OpenShift ” para verificar o estado de cada componente da sua configuração.

Aplicativos e cargas de trabalho compatíveis

Analise os tipos de aplicativos e cargas de trabalho aos quais você pode aplicar a Recuperação de Desastres Regional após concluir a configuração.

Baseado em assinatura
Um aplicativo é implantado a partir de uma fonte externa, como GitHub,, um repositório Helm ou Object Storage.
Para obter mais informações, consulte Criação de um aplicativo de amostra baseado em assinatura na documentação do site Red Hat.
ApplicationSet-based
Um aplicativo é implantado a partir de um repositório do GitHub usando o operador GitOps, que gerencia a entrega contínua. Isso inclui dois subtipos:
  • GitOps Modelo Pull ( ArgoCD pull): Um cluster gerenciado extrai o aplicativo de GitHub usando o operador GitOps.
  • GitOps Modelo Push ( ArgoCD push): O operador do GitOps envia o aplicativo para o cluster gerenciado durante as implantações e atualizações.
Para obter mais informações, consulte Criação de aplicativos baseados em conjuntos de aplicativos na documentação do site Red Hat.
Para obter mais informações sobre os subtipos do GitOps, consulte Implantação do Argo CD com o modelo Push e Pull na documentação do Red Hat.
Aplicativos descobertos
Um aplicativo foi pré-implantado em um cluster gerenciado sem usar o ACM. Nesse caso, você pode usar a descoberta ACM para o aplicativo pré-instalado e ainda configurar a política de DR.
Para obter mais informações, consulte Proteção de recuperação de desastres para aplicativos descobertos na documentação Red Hat.
Aplicativos que incluem implementações em VM
Um aplicativo baseado em VM é implementado no cluster gerenciado a partir do console do ACM. Esses aplicativos VM podem ser baseados em assinatura, ApplicationSet-based, ou descobertos, conforme descrito anteriormente. Opções para iniciar, parar, pausar e excluir operações d VM estão disponíveis no console do ACM para esses tipos de aplicativos.
Para obter mais informações, consulte Red Hat Advanced Cluster Management for Virtualization na documentação Red Hat.