3장. cephadm을 사용하여 Red Hat Ceph Storage 클러스터 업그레이드


스토리지 관리자는 cephadm Orchestrator를 사용하여 Red Hat Ceph Storage 5.0 이상을 업그레이드할 수 있습니다.

자동화된 업그레이드 프로세스는 Ceph 모범 사례를 따릅니다. 예를 들어 다음과 같습니다.

  • 업그레이드 순서는 Ceph Manager, Ceph Monitors, 기타 데몬으로 시작됩니다.
  • 각 데몬은 Ceph가 클러스터를 계속 사용할 수 있음을 나타내는 후에만 재시작됩니다.

업그레이드 중에 스토리지 클러스터 상태가 HEALTH_WARNING 으로 전환될 수 있습니다. 업그레이드가 완료되면 상태 상태가 HEALTH_OK로 다시 전환되어야 합니다.

Red Hat Ceph Storage 5에서 Red Hat Ceph Storage 7로 직접 업그레이드할 수 있습니다.

주의

Ceph Object Gateway 스토리지 클러스터(단일 사이트 또는 다중 사이트)의 Red Hat Ceph Storage 5.2로 업그레이드할 수 있지만 스토리지 클러스터를 업그레이드하기 전에 ceph 구성 세트 mgr/cephadm/no_five_one_rgw true --force 옵션을 설정해야 합니다.

자세한 내용은 Red Hat Ceph Storage 5.2 릴리스 노트의 RADOS Gateway (RGW) 업그레이드에 대한 지식 기반 문서 지원 제한 사항 섹션을 참조하십시오.

참고

현재 Red Hat Ceph Storage 5에서는 Ceph -ansible 이 지원되지 않습니다. 즉, 스토리지 클러스터를 Red Hat Ceph Storage 5로 마이그레이션했으면 cephadmcephadm-ansible 을 사용하여 후속 업데이트를 수행해야 합니다.

중요

Red Hat Enterprise Linux 9 이상에서는 cephadm-ansible 플레이북을 지원하지 않습니다.

참고

업그레이드가 완료되면 메시지가 표시되지 않습니다. ceph 버전ceph orch ps 명령을 실행하여 새 이미지 ID와 스토리지 클러스터 버전을 확인합니다.

3.1. Red Hat Ceph Storage 클러스터 업그레이드

ceph orch upgrade 명령을 사용하여 Red Hat Ceph Storage 5.0 클러스터를 업그레이드할 수 있습니다.

사전 요구 사항

  • 실행 중인 Red Hat Ceph Storage 클러스터 5.
  • Red Hat Enterprise Linux 8.4 EUS 이상.
  • 모든 노드에 대한 루트 수준 액세스입니다.
  • sudo 및 암호 없이 ssh 를 사용하는 Ansible 사용자는 스토리지 클러스터의 모든 노드에 액세스할 수 있습니다.
  • 스토리지 클러스터에 2개 이상의 Ceph Manager 노드(하나의 활성 및 대기 시간)입니다.
참고

Red Hat Ceph Storage 5에는 스토리지 클러스터의 데몬이 여러 버전의 RHCS를 실행 중인지 탐지하는 경우 DAE jenkinsfile_OLD_VERSION 경고를 반환하는 상태 점검 기능도 포함되어 있습니다. 데몬은 mon_warn_older_version_delay 옵션에 설정된 시간 값 이외의 여러 버전의 Red Hat Ceph Storage를 계속 실행할 때 트리거됩니다. 기본적으로 mon_warn_older_version_delay 옵션이 1 주로 설정됩니다. 이 설정을 사용하면 대부분의 업그레이드가 경고를 잘못 보지 않고 진행할 수 있습니다. 업그레이드 프로세스가 장기간 일시 중지되면 상태 경고를 음소거할 수 있습니다.

ceph health mute DAEMON_OLD_VERSION --sticky

업그레이드가 완료되면 상태 경고를 음소거합니다.

ceph health unmute DAEMON_OLD_VERSION

절차

  1. cephadmcephadm-ansible 패키지를 업데이트합니다.

    예제

    [root@admin ~]# dnf update cephadm
    [root@admin ~]# dnf update cephadm-ansible

  2. /usr/share/cephadm-ansible/ 디렉토리로 이동합니다.

    예제

    [root@admin ~]# cd /usr/share/cephadm-ansible

  3. 버킷이 생성되거나 num_shards = 0 인 경우 Red Hat Ceph Storage 5.3으로 업그레이드하기 전에 버킷을 수동으로 다시 정렬합니다.

    구문

    radosgw-admin bucket reshard --num-shards 11 --bucket BUCKET_NAME

    예제

    [ceph: root@host01 /]# radosgw-admin bucket reshard --num-shards 11 --bucket mybucket

  4. 스토리지 클러스터의 부트스트랩 호스트에서 upgrade_ceph_packages 매개변수가 true 로 설정된 상태에서 preflight 플레이북을 실행합니다.

    구문

    ansible-playbook -i INVENTORY_FILE cephadm-preflight.yml --extra-vars "ceph_origin=rhcs upgrade_ceph_packages=true"

    예제

    [ceph-admin@admin cephdm-ansible]$ ansible-playbook -i /etc/ansible/hosts cephadm-preflight.yml --extra-vars "ceph_origin=rhcs upgrade_ceph_packages=true"

    이 패키지는 모든 노드에서 cephadm 을 업그레이드합니다.

  5. cephadm 쉘에 로그인합니다.

    예제

    [root@host01 ~]# cephadm shell

  6. 모든 호스트가 온라인 상태인지 확인하고 스토리지 클러스터가 정상 상태인지 확인합니다.

    예제

    [ceph: root@host01 /]# ceph -s

  7. 업그레이드 중에 OSD noout,noscrub, nodeep-scrub 플래그를 설정하여 OSD가 클러스터에서 불필요한 로드를 방지합니다.

    예제

    [ceph: root@host01 /]# ceph osd set noout
    [ceph: root@host01 /]# ceph osd set noscrub
    [ceph: root@host01 /]# ceph osd set nodeep-scrub

  8. 서비스 버전 및 사용 가능한 대상 컨테이너를 확인합니다.

    구문

    ceph orch upgrade check IMAGE_NAME

    예제

    [ceph: root@host01 /]# ceph orch upgrade check registry.redhat.io/rhceph/rhceph-5-rhel8:latest

    참고

    이미지 이름은 Red Hat Enterprise Linux 8 및 Red Hat Enterprise Linux 9 모두에 적용됩니다.

  9. 스토리지 클러스터를 업그레이드합니다.

    구문

    ceph orch upgrade start IMAGE_NAME

    예제

    [ceph: root@host01 /]# ceph orch upgrade start registry.redhat.io/rhceph/rhceph-5-rhel8:latest

    참고

    태그된 업그레이드를 수행하려면 삽입된 업그레이드 수행을 참조하십시오.

    업그레이드가 진행되는 동안 ceph 상태 출력에 진행률 표시줄이 표시됩니다.

    예제

    [ceph: root@host01 /]# ceph status
    [...]
    progress:
        Upgrade to 16.2.0-146.el8cp (1s)
          [............................]

  10. Ceph 클러스터의 새로운 IMAGE_IDVERSION 을 확인합니다.

    예제

    [ceph: root@host01 /]# ceph versions
    [ceph: root@host01 /]# ceph orch ps

    참고

    Ceph 클러스터를 업그레이드한 후 cephadm-ansible 플레이북을 사용하지 않는 경우 클라이언트 노드에서 ceph-common 패키지 및 클라이언트 라이브러리를 업그레이드해야 합니다.

    예제

    [root@client01 ~] dnf update ceph-common

    최신 버전이 있는지 확인합니다.

    예제

    [root@client01 ~] ceph --version

  11. 업그레이드가 완료되면 noout,noscrub, nodeep-scrub 플래그를 설정 해제합니다.

    예제

    [ceph: root@host01 /]# ceph osd unset noout
    [ceph: root@host01 /]# ceph osd unset noscrub
    [ceph: root@host01 /]# ceph osd unset nodeep-scrub

Red Hat logoGithubRedditYoutubeTwitter

자세한 정보

평가판, 구매 및 판매

커뮤니티

Red Hat 문서 정보

Red Hat을 사용하는 고객은 신뢰할 수 있는 콘텐츠가 포함된 제품과 서비스를 통해 혁신하고 목표를 달성할 수 있습니다.

보다 포괄적 수용을 위한 오픈 소스 용어 교체

Red Hat은 코드, 문서, 웹 속성에서 문제가 있는 언어를 교체하기 위해 최선을 다하고 있습니다. 자세한 내용은 다음을 참조하세요.Red Hat 블로그.

Red Hat 소개

Red Hat은 기업이 핵심 데이터 센터에서 네트워크 에지에 이르기까지 플랫폼과 환경 전반에서 더 쉽게 작업할 수 있도록 강화된 솔루션을 제공합니다.

© 2024 Red Hat, Inc.