OpenShift 데이터 파운데이션의 지역별 재해 복구 구성 확인

가상 사설 클라우드4.21 이상

OpenShift Data Foundation(ODF) 지역 재해 복구(RDR)를 설정한 후에는 스택의 각 구성 요소가 정상적으로 작동하고 올바르게 구성되어 있는지 확인하십시오. 지시된 대로 해당 클러스터, 허브 또는 관리형 환경에서 각 섹션을 차례로 진행하십시오.

허브 클러스터에서 ACM 애드온 확인

허브 클러스터

허브 클러스터에서 다음 단계를 수행하십시오.

  1. ACM 애드온이 설치되어 있고 ‘ normal ’ 상태인지 확인하십시오. 출력 결과에서 ‘ acm ’ 애드온을 찾아 상태가 ‘ Addon Ready ’로 표시되는지 확인하십시오.

    ibmcloud oc cluster addon ls --cluster HUB_CLUSTER_NAME | grep -i acm
    

    출력 예:

    acm   2.15.0   normal   Addon Ready. For more info: http://ibm.biz/addon-state (H1500)
    

    ACM 애드온이 목록에 표시되지 않으면 ACM 애드온을 설치하십시오.

  2. ACM 애드온 포드가 ‘ kube-system ’ 네임스페이스에서 실행 중인지 확인하십시오. acm-agentibm-acm-operator-controller-manager 포드를 찾아, 두 포드 모두 상태가 ‘ Running ’로 표시되는지 확인하십시오.

    oc get pods -n kube-system | grep acm
    

    출력 예:

    acm-agent-6d9d49cbf6-tsmxd                           1/1   Running   118 (107m ago)   19d
    ibm-acm-operator-controller-manager-bc7b7f969-pr9lj   1/1   Running   3 (7d17h ago)    19d
    
  3. ACM 오퍼레이터 포드와 MultiClusterHub 포드가 ‘ open-cluster-management ’ 네임스페이스에서 실행 중인지 확인하십시오.

    oc get pods -n open-cluster-management
    

    출력 예:

    multiclusterhub-operator-dcd787649-sqrcx     1/1   Running   0   14d
    console-chart-console-v2-7c8c6649cc-hmg6g    1/1   Running   0   15d
    submariner-addon-76986fdf45-v9kgm            1/1   Running   0   15d
    volsync-addon-controller-6575568dc6-6pjsb    1/1   Running   0   15d
    

    누락된 포드가 있거나 ‘ Running ’ 상태가 아닌 포드가 있다면, ‘ACM 애드온 설치’를 참조하십시오.

관리형 클러스터가 가져와졌으며 사용 가능한지 확인

허브 클러스터

허브 클러스터에서 다음 단계를 완료하십시오.

모든 관리 대상 클러스터가 성공적으로 가져오기되었는지 확인하고, ‘ JOINED ’ 및 ‘ AVAILABLE ’ 열 모두에 ‘ True ’이 표시되는지 확인하십시오.

oc get managedclusters

출력 예:

NAME             HUB ACCEPTED   MANAGED CLUSTER URLS                                 JOINED   AVAILABLE   AGE
local-cluster    true           https://c100.au-syd.containers.cloud.ibm.com:30253   True     True        14d
managedcluster1  true           https://c100.au-syd.containers.cloud.ibm.com:31003   True     True        14d
managedcluster2  true           https://c100.au-syd.containers.cloud.ibm.com:31888   True     True        14d

관리 대상 클러스터가 없거나 사용할 수 없는 경우, 해당 클러스터를 다시 가져오십시오.

서브마리너 연결 상태 확인

허브 클러스터 관리형 클러스터

Submariner는 관리 대상 클러스터 간에 네트워크 연결을 제공합니다. 지정된 클러스터에 대해 각 소절의 단계를 완료하십시오.

허브 클러스터에서 Submariner 운영자를 확인하십시오

허브 클러스터

  1. 허브 클러스터 에서 Submariner 운영자 포드가 실행 중인지 확인하십시오.

    oc get pods -n submariner-operator
    

    출력 예:

    NAME                                  READY   STATUS    RESTARTS      AGE
    submariner-operator-6bf8d56f74-7v44v  1/1     Running   3 (17h ago)   14d
    
  2. 각 관리 대상 클러스터에 Submariner 애드온이 등록되어 있는지 확인하십시오. AVAILABLE 열에 각 관리 대상 클러스터에 대해 ‘ True ’가 표시되는지 확인하십시오.

    oc get managedclusteraddon -A | grep submariner
    

    출력 예:

    managedcluster1   submariner   True   False
    managedcluster2   submariner   True   False
    
  3. Submariner 브로커가 있는지 확인하십시오.

    oc get broker -A
    

    출력 예:

    NAMESPACE                 NAME                AGE
    submariner-set1-broker    submariner-broker   12d
    

관리 대상 클러스터에서 Submariner 확인

관리형 클러스터

관리 대상 클러스터마다 다음 단계를 수행하십시오.

  1. 필요한 Submariner 포드가 실행 중인지 확인하십시오. submariner-gateway, submariner-routeagentsubmariner-globalnet 포드가 존재하며, 상태가 ‘ Running ’로 표시되는지 확인하십시오.

    oc get pods -n submariner-operator
    

    출력 예:

    NAME                                              READY   STATUS    RESTARTS      AGE
    submariner-addon-bc6bbf579-wjqhq                  1/1     Running   0             12d
    submariner-gateway-hxcbh                          1/1     Running   0             12d
    submariner-globalnet-jbmxw                        1/1     Running   3 (12d ago)   12d
    submariner-lighthouse-agent-858896855b-xghxn      1/1     Running   0             12d
    submariner-lighthouse-coredns-66d5579b66-52f6j    1/1     Running   0             12d
    submariner-lighthouse-coredns-66d5579b66-jhqkm    1/1     Running   0             12d
    submariner-metrics-proxy-65n4c                    2/2     Running   3 (12d ago)   12d
    submariner-operator-7c99f89cfb-rppth              1/1     Running   2 (17h ago)   12d
    submariner-routeagent-27p7v                       1/1     Running   0             12d
    submariner-routeagent-jjw66                       1/1     Running   0             12d
    submariner-routeagent-nt78s                       1/1     Running   0             12d
    
  2. 서브마리너 연결 상태가 정상인지 확인하십시오. 출력 결과에서 ‘ RouteAgentConnectionDegraded ’의 ‘ status ’ 값이 ‘ "False" ’인지 확인하십시오. 이는 원격 엔드포인트에 대한 모든 라우트 에이전트 연결이 설정되어 있고 정상 상태임을 확인해 줍니다.

    oc -n <managed_cluster_name> get managedclusteraddons submariner -o yaml
    

    출력 예:

    status:
      - lastTransitionTime: "2026-03-18T03:36:24Z"
        message: All RouteAgent connections to remote endpoints are established and healthy.
        reason: ConnectionsEstablished
        status: "False"
        type: RouteAgentConnectionDegraded
    

    연결 상태가 저하된 경우, ODF 지역 재해 복구 설정의 4단계를 따라 Submariner를 다시 설치하십시오.

관리 대상 클러스터에서 ODF 확인

관리형 클러스터

관리 대상 클러스터마다 다음 단계를 수행하십시오.

  1. ODF StorageCluster 가 준비되었는지, 그리고 Ceph 상태 HEALTH_OK 인지 확인하십시오. 출력 결과에서, ‘ PHASE ’ 열에 ‘ StorageCluster ’에 대해 ‘ Ready ’이 표시되고, ‘ HEALTH ’ 열에 ‘ CephCluster ’에 대해 ‘ HEALTH_OK ’이 표시되는지 확인하십시오.

    oc get storagecluster -n openshift-storage
    oc get cephcluster -n openshift-storage
    

    출력 예:

    NAME                 AGE   PHASE   EXTERNAL   CREATED AT             VERSION
    ocs-storagecluster   12d   Ready              2026-03-17T10:51:46Z   4.20.7
    NAME                              DATADIRHOSTPATH   MONCOUNT   AGE   PHASE   MESSAGE                       HEALTH      EXTERNAL   FSID
    ocs-storagecluster-cephcluster    /var/lib/rook     3          12d   Ready   Cluster created successfully  HEALTH_OK              5fb59e70-bd54-438f-9190-c09ddcf04c0c
    

    ODF를 새로 설치한 상태이고 아직 어떤 애플리케이션도 배포되지 않은 경우, ODF 설치 안내서에 따라 ODF를 다시 설치하는 것을 고려해 보십시오.

  2. 필요한 ServiceExports 파일이 있는지 확인하십시오. ocs-provider-serverrook-ceph-mon-*, rook-ceph-osd-* 항목이 목록에 포함되어 있는지 확인하십시오.

    oc get serviceexports -n openshift-storage
    

    출력 예:

    NAME                  AGE
    ocs-provider-server   12d
    rook-ceph-mon-d       12d
    rook-ceph-mon-e       12d
    rook-ceph-mon-f       12d
    rook-ceph-osd-0       12d
    rook-ceph-osd-1       12d
    rook-ceph-osd-2       12d
    

    ocs-provider-server ( ServiceExport ) 파일이 없는 경우, ODF 지역 재해 복구 설정의 5단계를 따라 해당 파일을 다시 생성하십시오.

  3. StorageCluster 에서 멀티클러스터 네트워크 구성이 올바르게 설정되었는지 확인하십시오. 출력 결과에서 multiClusterService.enabled true 인지, 그리고 clusterID 가 관리 대상 클러스터의 이름과 일치하는지 확인하십시오. 또한 ocs.openshift.io/api-server-exported-address 어노테이션이 존재하고 올바르게 설정되어 있는지 확인하십시오.

    oc get storagecluster -n openshift-storage -o yaml
    

    출력 결과에서 다음 값들을 확인하십시오:

    network:
      multiClusterService:
        clusterID: <cluster-name>
        enabled: true
    

    그리고 다음과 같은 주석이 있습니다:

    ocs.openshift.io/api-server-exported-address: <cluster-name>.ocs-provider-server.openshift-storage.svc.clusterset.local:50051
    

허브 클러스터에서 ODF 멀티클러스터 오케스트레이터 검증

허브 클러스터

허브 클러스터에서 다음 단계를 수행하십시오.

  1. OpenShift ( GitOps ) 오퍼레이터 포드가 실행 중인지 확인하십시오. ODF 멀티클러스터 오케스트레이터를 사용하려면 먼저 GitOps 를 설치해야 합니다.

    oc get pods -n openshift-gitops
    

    출력 예:

    NAME                                                           READY   STATUS    RESTARTS   AGE
    cluster-6484df7d8f-fbk9b                                       1/1     Running   0          4d12h
    gitops-plugin-8646dcfd5d-kj5mf                                 1/1     Running   0          4d12h
    openshift-gitops-application-controller-0                      1/1     Running   0          4d12h
    openshift-gitops-applicationset-controller-664645457b-8n9gj    1/1     Running   0          4d12h
    openshift-gitops-dex-server-74ddb4bb94-trxk6                   1/1     Running   0          4d12h
    openshift-gitops-redis-68469975f8-mlkrq                        1/1     Running   0          14d
    openshift-gitops-repo-server-76567d7c46-j9fjq                  1/1     Running   0          4d12h
    openshift-gitops-server-6d74f8d998-f97zx                       1/1     Running   0          4d12h
    

    GitOps 가 설치되어 있지 않은 경우, 웹 콘솔에서 ‘ Red Hat OpenShift GitOps Operator 설치’를 참조하십시오.

  2. ODF Multicluster Orchestrator 오퍼레이터 포드가 ‘ openshift-operators ’ 네임스페이스에서 실행 중인지 확인하십시오. odf-multicluster-consoleodfmo-controller-manager 포드 모두 상태가 ‘ Running ’로 표시되는지 확인하십시오.

    oc get pods -n openshift-operators | grep -i odf
    

    출력 예:

    odf-multicluster-console-cdd786658-2bdbz   1/1   Running   0             12d
    odfmo-controller-manager-8585c4bf9-mwhvf   1/1   Running   2 (16h ago)   12d
    
  3. submariner-operator 네임스페이스에서 Ramen 허브 운영자 포드가 실행 중인지 확인하십시오.

    oc get pods -n submariner-operator
    

    출력 예:

    NAME                                  READY   STATUS    RESTARTS      AGE
    submariner-operator-6bf8d56f74-7v44v  1/1     Running   3 (17h ago)   14d
    
  4. openshift-dr-system 네임스페이스 내의 각 관리 대상 클러스터 에서 Ramen DR 클러스터 오퍼레이터 포드가 실행 중인지 확인하십시오.

    oc get pods -n openshift-dr-system | grep -i ramen
    

    출력 예:

    ramen-dr-cluster-operator-785d878dbc-lbrgz   2/2   Running   0   2d15h
    

허브 클러스터에서 DR 정책 및 MirrorPeer 확인

허브 클러스터

허브 클러스터에서 다음 단계를 수행하십시오.

  1. DRPolicy가 유효한지 확인하십시오. 출력 결과에서, ‘ Validated ’ 조건의 ‘ status ’ 값이 ‘ "True" ’인지 확인하십시오.

    oc get drpolicy -A
    oc describe drpolicy <drpolicy_name>
    

    oc describe 의 출력 예시:

    status:
      conditions:
        - type: Validated
          status: "True"
    

    DRPolicy의 유효성 검사가 통과되지 않은 경우, 두 관리 대상 클러스터 모두에서 ‘ NooBaa ’ 객체 버킷이 성공적으로 생성되었는지 확인하십시오.

  2. MirrorPeer 단계가 ExchangedSecret 인지 확인하십시오. MirrorPeer 리소스를 설명하고, ‘ Phase ’ 필드를 확인하십시오.

    oc get mirrorpeers -A
    oc describe mirrorpeer <mirrorpeer_name>
    

    oc describe 의 출력 예시:

    Status:
      Phase: ExchangedSecret
    Events: <none>
    

    단계에 “ ExchangingSecret ”가 표시되면, 서브마리너 연결 상태 확인 에 안내된 대로 Submariner의 연결 상태를 확인하십시오.

관리 대상 클러스터에서 선택적 연산자 확인

관리형 클러스터

ODF RDR 설정 과정에서 선택적 연산자를 설치한 경우, 각 관리 대상 클러스터에서 해당 연산자가 실행 중인지 확인하십시오.

사용자는 선택적 운영자의 관리(업데이트, 모니터링, 복구 및 재설치 포함)에 대한 책임을 집니다.

  1. OpenShift ( GitOps ) 오퍼레이터 포드가 실행 중인지 확인하십시오. openshift-gitops-application-controller, openshift-gitops-server 및 기타 GitOps 포드가 ‘ Running ’ 상태를 표시하는지 확인하십시오.

    oc get pods -n openshift-gitops
    
  2. 데이터 보호용 OpenShift API( OADP )의 오퍼레이터 포드가 실행 중인지 확인하십시오. openshift-adp-controller-managervelero 포드 모두 상태가 ‘ Running ’로 표시되는지 확인하십시오.

    oc get pods -n openshift-adp
    

    출력 예:

    NAME                                                  READY   STATUS    RESTARTS   AGE
    openshift-adp-controller-manager-7c8fc7f964-j2jnq    1/1     Running   1          12d
    velero-9cdf64b8b-9c2kk                               1/1     Running   1          12d
    

    드라이버가 누락된 경우, 해당 설치 안내서를 참고하여 다시 설치하십시오.

꼭 수집해야 할 로그 수집

허브 클러스터 관리형 클러스터

앞서 설명한 확인 단계를 수행해도 문제를 해결할 수 없는 경우, 허브 및 관리형 클러스터에서 필수 로그를 수집하여 IBM 지원팀에 전달해 주십시오.

허브 클러스터 로그 수집

허브 클러스터

허브 클러스터에서 다음 스크립트를 실행하여 진단 정보를 수집하십시오.

#!/bin/bash
# Usage: ./hub-check.sh <cluster-name>
CLUSTER_NAME=$1
if [[ -z "$CLUSTER_NAME" ]]; then
  echo "Usage: $0 <cluster-name>"
  exit 1
fi
echo "===== Verify ACM ====="
ibmcloud oc cluster addon ls --cluster "$CLUSTER_NAME" | grep -i acm
oc get pods -n kube-system | grep acm
oc get pods -n open-cluster-management
oc get managedclusters
echo "===== Verify Submariner ====="
oc get pods -n submariner-operator
oc get managedclusteraddon -A | grep submariner
oc get managedclusteraddon -A -o yaml
oc get broker -A
echo "===== Verify Multicluster Operator ====="
oc get pods -n openshift-operators | grep -i odf
oc get drpolicy -A
oc get mirrorpeers -A
echo "===== Verify Additional Operators ====="
oc get pods -n openshift-gitops
oc get pods -n openshift-adp

관리형 클러스터 로그 수집

관리형 클러스터

진단 정보를 수집하려면 각 관리 대상 클러스터에서 다음 스크립트를 실행하십시오.

#!/bin/bash
# Usage: ./managedCluster-check.sh
echo "===== Verify Submariner ====="
oc get pods -n submariner-operator
oc get submariner -A
echo "===== Verify DR Operator ====="
oc get pods -n openshift-dr-system | grep -i ramen
echo "===== Verify ODF ====="
oc get storagecluster -n openshift-storage
oc get cephcluster -n openshift-storage
oc get serviceexports -n openshift-storage
oc get storagecluster -n openshift-storage -o yaml
echo "===== Verify Additional Operators ====="
oc get pods -n openshift-gitops
oc get pods -n openshift-adp

꼭 알아두어야 할 추가 지침은 다음 자료를 참조하십시오:

다음 단계