Db2 Warehouse 의 버전 업그레이드 5.3.x 에서 최신 버전으로 5.3 refresh

인스턴스 관리자는 Db2 Warehouse 를 버전 5.3.x 에서 최신 버전 5.3 으로 업그레이드할 수 있습니다.

누가 이 작업을 완료해야 합니까?
누가 이 작업을 완료해야 합니까?

인스턴스 관리자 Db2 Warehouse 를 업그레이드하려면 인스턴스 관리자 권한이 있어야 합니다. 인스턴스 관리자는 다음 프로젝트의 소프트웨어를 관리할 권한이 있습니다:

인스턴스에 대한 운영자 프로젝트

Db2 Warehouse 의 이 인스턴스에 대한 연산자는 operators 프로젝트에 설치됩니다. 업그레이드 명령어에서 환경 ${PROJECT_CPD_INST_OPERATORS} 변수 `$PATH`는 운영자의 프로젝트를 가리킵니다.

인스턴스에 대한 피연산자 프로젝트

Db2 Warehousecontrol plane 용 사용자 정의 리소스는 operands 프로젝트에 설치됩니다. 업그레이드 명령어에서 환경 변수 ` ${PROJECT_CPD_INST_OPERANDS} $_`는 작업 대상 프로젝트를 가리킵니다.

이 작업을 언제까지 완료해야 합니까?

다음 옵션을 검토하여 이 작업을 완료해야 하는지 여부를 결정하십시오:

  • IBM 인스턴스 업그레이드 control planeIBM Software Hub ( Software Hub ) 문서의 절차를 따르십시오.
  • Db2 Warehouse 를 업그레이드하지 않은 경우, 이 작업을 완료하여 Db2 WarehouseIBM Software Hubcontrol plane 를 업그레이드하십시오.

    필요에 따라 반복하십시오. 여러 인스턴스를 관리하는 경우 이 작업을 반복하여 클러스터 내의 추가 Db2 WarehouseIBM Software Hub 인스턴스를 업그레이드할 수 있습니다.

이 태스크를 완료하는 데 필요한 정보

Db2 Warehouse 업그레이드 전에 다음 정보를 검토하십시오:

버전 요구사항

의 인스턴스와 연관된 모든 구성 IBM Software Hub 요소는 동일한 릴리스에서 설치되어야 합니다. 예를 들어, 가 버전 5.3.1IBM Software Hubcontrol plane 인 경우, Db2 Warehouse 를 버전 5.3.1 로 업그레이드해야 합니다.

환경 변수
이 작업의 명령어는 환경 변수를 사용하므로, 작성된 그대로 정확히 실행할 수 있습니다.
  • 환경 변수를 정의하는 스크립트가 없는 경우, 설치 환경 변수 설정을 참조하십시오.
  • 스크립트에서 환경 변수를 사용하려면, 이 작업의 명령어를 실행하기 전에 환경 변수를 소스 처리해야 합니다. 예를 들면, 다음을 실행하십시오.
    source ./cpd_vars.sh

시작하기 전에

이 작업은 다음의 전제 조건이 충족된다는 것을 가정합니다:

시스템 요구사항
이 작업은 클러스터가 Db2 Warehouse 의 최소 요구 사항을 충족한다고 가정합니다.
자세한 정보를 찾을 위치
이 작업이 완료되지 않은 경우 시스템 요구 사항을 참조하십시오.
워크스테이션
이 작업은 업그레이드를 실행할 워크스테이션이 클라이언트 워크스테이션으로 설정되어 있으며 다음 명령줄 인터페이스를 갖추고 있다고 가정합니다:
  • IBM Software Hub 명령줄 인터페이스: cpd-cli
  • OpenShift® 명령줄 인터페이스: oc
  • Helm 명령줄 인터페이스: oc
자세한 정보를 찾을 위치
이 작업이 완료되지 않은 경우, 클라이언트 워크스테이션 업데이트를 참조하십시오.
제어 플레인
이 작업은 가 IBM Software Hubcontrol plane 업그레이드된 상태를 전제로 합니다.
자세한 정보를 찾을 위치
이 작업이 완료되지 않은 경우, IBM 인스턴스 업그레이드( Software Hub )를 참조하십시오.
개인용 컨테이너 레지스트리
사용 중인 환경이 사설 컨테이너 레지스트리를 사용하는 경우(예: 클러스터가 에어갭 상태인 경우), 이 작업은 다음 작업들이 완료되었음을 전제로 합니다:
  1. Db2 Warehouse 소프트웨어 이미지는 사설 컨테이너 레지스트리에 미러링됩니다.
    자세한 정보를 찾을 위치
    이 작업이 완료되지 않은 경우, '이미지를 개인 컨테이너 레지스트리로 미러링하기'를 참조하십시오.
  2. 해당 구성은 사설 컨테이너 레지스트리에서 cpd-cli 이미지를 olm-utils-v4 가져오도록 설정되어 있습니다.
    자세한 정보를 찾을 위치
    이 작업이 완료되지 않은 경우, 개인 컨테이너 레지스트리에서 ` olm-utils-v4 ` 이미지를 가져오는 방법을 참조하십시오.
Red Hat® OpenShift AI
특정 기능을 사용하려면 Red Hat OpenShift AI 이 작업은 해당 기능이 설치되어 있음을 Red Hat OpenShift AI 전제로 합니다.
자세한 정보를 찾을 위치
이 작업이 완료되지 않은 경우, ' Red Hat OpenShift AI 설치'를 참조하십시오.
클러스터 범위 리소스
이 작업은 사용자 정의 리소스 정의, 클러스터 역할, 클러스터 역할 바인딩과 같은 클러스터 범위 리소스가 업데이트되었음을 가정합니다.
자세한 정보를 찾을 위치
이 작업이 완료되지 않은 경우, 플랫폼 및 서비스에 대한 클러스터 범위 리소스 업데이트를 참조하십시오.

프로시저

Db2 Warehouse 를 업그레이드하려면 다음 작업을 완료하십시오:

  1. 서비스 업그레이드
  2. 업그레이드 검증
  3. 기존 서비스 인스턴스 업그레이드.
  4. 서비스 인스턴스 업그레이드 확인 중입니다.
  5. 다음에 무엇을 해야 할까

서비스 업그레이드

Db2 Warehouse 업그레이드 방법:

  1. 클러스터에 Red Hat OpenShift Container Platform cpd-cli 로그인하십시오:
    ${CPDM_OC_LOGIN}
    기억하세요: CPDM_OC_LOGINcpd-cli manage login-to-ocp 명령어의 별칭입니다.
  2. Db2 Warehouse 에 대한 운영자 및 사용자 정의 리소스를 업데이트하십시오.
    cpd-cli manage install-components \
    --license_acceptance=true \
    --components=db2wh \
    --release=${VERSION} \
    --operator_ns=${PROJECT_CPD_INST_OPERATORS} \
    --instance_ns=${PROJECT_CPD_INST_OPERANDS} \
    --image_pull_prefix=${IMAGE_PULL_PREFIX} \
    --image_pull_secret=${IMAGE_PULL_SECRET} \
    --upgrade=true

업그레이드 검증

Db2 Warehouse install-components 명령이 반환될 때 업그레이드됩니다:
[SUCCESS]... The install-components command ran successfully

사용자 지정 리소스 상태가 인지 확인하려면 다음 cpd-cli manage get-cr-statusCompleted 명령을 실행할 수 있습니다:

cpd-cli manage get-cr-status \
--cpd_instance_ns=${PROJECT_CPD_INST_OPERANDS} \
--components=db2wh

기존 서비스 인스턴스 업그레이드

Db2 Warehouse 을 업그레이드한 후에는 Db2 Warehouse 와 연결된 모든 서비스 인스턴스를 반드시 업그레이드해야 합니다.

시작하기 전에

서비스 인스턴스를 업그레이드할 워크스테이션에 프로필을 생성하십시오.

프로필은 다음 권한 중 하나를 가진 사용자와 IBM Software Hub 연결되어 있어야 합니다:

  • 서비스 인스턴스 생성 (can_provision)
  • 서비스 인스턴스 관리 (manage_service_instances)

자세한 내용은 cpd-cli 관리 명령어를 사용하기 위한 프로필 만들기를 참조하십시오.

해당되는 경우 사용자 지정 패치 및 재정의 스크립트를 제거하십시오:
  1. 태스크를 완료할 수 있는 충분한 권한이 있는 사용자로 Red Hat OpenShift Container Platform에 로그인하십시오.
    oc login OpenShift_URL:port
  2. 사용자 지정 패치 및 재정의 스크립트를 제거하려면 다음 명령을 실행하십시오:
    1. Db2uCluster 사용자 정의 리소스에 대해 다음 명령을 실행하십시오:
      oc set volume statefulset/c-${DB2U_ID}-db2u -n ${PROJECT_CPD_INST_OPERANDS} --remove --name=<volume_name>
    2. Db2uInstance 사용자 정의 리소스에 대해 다음 명령어를 실행하십시오:
      1. VolumeMount 의 인덱스를 찾으세요:
        oc get db2uengine c-${DB2U_ID}-db2u -n ${PROJECT_CPD_INST_OPERANDS} -o json | jq '.spec.podTemplate.spec.containers[0].volumeMounts | to_entries[] | select(.value.name=="<volume_name>")'

        키를 다음과 같이 저장하십시오: MNT_IDX=5.

      2. 볼륨 인덱스 찾기:
        oc get db2uengine c-${DB2U_ID}-db2u -n ${PROJECT_CPD_INST_OPERANDS} -o json | jq '.spec.podTemplate.spec.volumes | to_entries[] | select(.value.name=="<volume_name>")'

        키를 다음과 같이 저장하십시오: VOL_IDX=7.

      3. 항목을 패치하여 수정하십시오:
        oc patch db2uengine c-${DB2U_ID}-db2u \
          -n ${PROJECT_CPD_INST_OPERANDS} \
          --type='json' \
          -p="[
                {\"op\":\"remove\",\"path\":\"/spec/podTemplate/spec/containers/0/volumeMounts/${MNT_IDX}\"},
                {\"op\":\"remove\",\"path\":\"/spec/podTemplate/spec/volumes/${VOL_IDX}\"}
              ]"
프로시저

서비스 인스턴스를 업그레이드하려면:

  1. Db2 Warehouse 서비스 인스턴스 목록을 가져오려면:
    cpd-cli service-instance list \
    --service-type=db2wh \
    --profile=${CPD_PROFILE_NAME}
  2. 업그레이드하려는 서비스 인스턴스의 이름을 환경 INSTANCE_NAME 변수로 설정하십시오:
    export INSTANCE_NAME="<instance-name>"
  3. Db2 Warehouse 서비스 인스턴스가 실행 중인 상태인지 확인하려면 다음 명령을 실행하십시오:
    cpd-cli service-instance status ${INSTANCE_NAME} \
    --profile=${CPD_PROFILE_NAME} \
    --service-type=db2wh
  4. 서비스 인스턴스를 업그레이드합니다:
    cpd-cli service-instance upgrade \
    --service-type=db2wh \
    --instance-name=${INSTANCE_NAME} \
    --profile=${CPD_PROFILE_NAME}
  5. Db2uCluster 또는 Db2uInstance 상태를 모니터링하여 사용자 지정 리소스 상태가 상태로 Not Ready 변경된 Ready 후 상태로 변경되는지 확인하십시오:
    • Db2uCluster 사용자 정의 리소스에 대해 다음 명령을 실행하십시오:
      oc get db2ucluster <instance_id> -o jsonpath='{.status.state} {"\n"}'
    • Db2uInstance 사용자 정의 리소스에 대해 다음 명령을 실행하십시오:
      oc get db2uinstance <instance_id> -o jsonpath='{.status.state} {"\n"}'
    사용자 지정 리소스 상태가 로 반환되는 UpgradeCheckFailed 경우, db2ckupgrade 문제 해결을 참조하십시오.
  6. 서비스 인스턴스가 업그레이드되었으며 사용 준비가 되었는지 확인하십시오.
  7. 이 인스턴스와 연결된 각 서비스 인스턴스를 IBM Software Hub업그레이드하려면 앞의 단계를 반복하십시오.

서비스 인스턴스 업그레이드 확인

명령어나 웹 콘솔을 사용하여 서비스 인스턴스가 업그레이드되었고 사용 준비가 되었는지 확인할 수 있습니다.

명령
  1. Db2uCluster 또는 Db2uInstance 상태를 확인하세요. 상태가 다음으로 변경될 Ready때까지 기다리십시오:
    • Db2uCluster 사용자 정의 리소스에 대해 다음 명령을 실행하십시오:
      oc get db2ucluster <instance_id> -o jsonpath='{.status.state} {"\n"}'
    • Db2uInstance 사용자 정의 리소스에 대해 다음 명령을 실행하십시오:
      oc get db2uinstance <instance_id> -o jsonpath='{.status.state} {"\n"}'
  2. Db2 Warehouse 서비스 인스턴스의 상태를 확인하십시오:
    cpd-cli service-instance status ${INSTANCE_NAME} \
    --profile=${CPD_PROFILE_NAME} \
    --service-type=db2wh
  3. 서비스 인스턴스가 업데이트되었는지 확인하십시오:
    cpd-cli service-instance list \
    --profile=${CPD_PROFILE_NAME}\
    --service-type=db2wh
웹 콘솔
데이터베이스 세부 정보 페이지에서 데이터베이스 버전이 변경될 때까지 기다리십시오.

다음에 수행할 작업

중요: Q Replication 배포 환경을 사용 중인 경우, 업그레이드 후 TLS 인증서를 교환해야 합니다. 자세한 내용은 대상 신뢰 및 Db2 TLS 인증서 교환을 참조하세요.

Db2 Warehouse 에 접속하려면 먼저 Db2 Warehouse 서비스에 대한 설치 후 설정을 완료해야 합니다.