1.2. Red Hat Ceph Storage 클러스터 업그레이드
ceph orch upgrade
명령을 사용하여 Red Hat Ceph Storage 클러스터를 업그레이드할 수 있습니다.
사전 요구 사항
- 실행 중인 최신 버전의 Red Hat Ceph Storage 클러스터.
- 모든 노드에 대한 루트 수준 액세스.
-
sudo 및 암호 없이
ssh
를 사용하는 Ansible 사용자는 스토리지 클러스터의 모든 노드에 액세스할 수 있습니다. - 스토리지 클러스터에 있는 두 개 이상의 Ceph Manager 노드(활성 및 대기 모드 1개)
프로세스
노드를 등록하고 메시지가 표시되면 Red Hat 고객 포털 인증 정보를 입력합니다.
구문
subscription-manager register
subscription-manager register
Copy to Clipboard Copied! CDN에서 최신 서브스크립션 데이터를 가져옵니다.
구문
subscription-manager refresh
subscription-manager refresh
Copy to Clipboard Copied! 참고Red Hat 고객은 이제 SCA(Simple Content Access)를 사용하므로 더 이상 시스템에 서브스크립션을 연결할 필요가 없습니다. 시스템을 등록하고 필요한 리포지토리를 활성화하는 것만으로 충분합니다. 자세한 내용은 Red Hat Customer Portal 에서 Red Hat Subscription-Manager를 사용하여 RHEL 시스템을 Red Hat 고객 포털에 등록하고 구독하는 방법을 참조하십시오.
Red Hat Enterprise Linux의 최신 패키지를 수신하도록 시스템을 업데이트합니다.
구문
dnf update
dnf update
Copy to Clipboard Copied! Ansible 관리 노드에서 Ceph Ansible 리포지토리를 활성화합니다.
Red Hat Enterprise Linux 9
subscription-manager repos --enable=rhceph-8-tools-for-rhel-9-x86_64-rpms
subscription-manager repos --enable=rhceph-8-tools-for-rhel-9-x86_64-rpms
Copy to Clipboard Copied! cephadm
,cephadm-ansible
및crun
패키지를 업데이트합니다.예
dnf update cephadm dnf update cephadm-ansible dnf update crun
[root@admin ~]# dnf update cephadm [root@admin ~]# dnf update cephadm-ansible [root@admin ~]# dnf update crun
Copy to Clipboard Copied! /usr/share/cephadm-ansible/
디렉토리로 이동합니다.예
cd /usr/share/cephadm-ansible
[root@admin ~]# cd /usr/share/cephadm-ansible
Copy to Clipboard Copied! 스토리지 클러스터의 부트스트랩 호스트에서
upgrade_ceph_packages
매개변수를true
로 설정하여 preflight 플레이북을 실행합니다.구문
ansible-playbook -i INVENTORY_FILE cephadm-preflight.yml --extra-vars "ceph_origin=rhcs upgrade_ceph_packages=true"
ansible-playbook -i INVENTORY_FILE cephadm-preflight.yml --extra-vars "ceph_origin=rhcs upgrade_ceph_packages=true"
Copy to Clipboard Copied! 예
ansible-playbook -i hosts cephadm-preflight.yml --extra-vars "ceph_origin=rhcs upgrade_ceph_packages=true"
[ceph-admin@admin cephadm-ansible]$ ansible-playbook -i hosts cephadm-preflight.yml --extra-vars "ceph_origin=rhcs upgrade_ceph_packages=true"
Copy to Clipboard Copied! 이 패키지는 모든 노드에서
cephadm
을 업그레이드합니다.cephadm
쉘에 로그인합니다.예
cephadm shell
[root@host01 ~]# cephadm shell
Copy to Clipboard Copied! 모든 호스트가 온라인 상태이고 스토리지 클러스터가 정상인지 확인합니다.
예
[ceph: root@host01 /]# ceph -s
[ceph: root@host01 /]# ceph -s
Copy to Clipboard Copied! 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
[ceph: root@host01 /]# ceph osd set noout [ceph: root@host01 /]# ceph osd set noscrub [ceph: root@host01 /]# ceph osd set nodeep-scrub
Copy to Clipboard Copied! 서비스 버전과 사용 가능한 대상 컨테이너를 확인합니다.
구문
ceph orch upgrade check IMAGE_NAME
ceph orch upgrade check IMAGE_NAME
Copy to Clipboard Copied! 예
[ceph: root@host01 /]# ceph orch upgrade check registry.redhat.io/rhceph/rhceph-8-rhel9:latest
[ceph: root@host01 /]# ceph orch upgrade check registry.redhat.io/rhceph/rhceph-8-rhel9:latest
Copy to Clipboard Copied! 참고이미지 이름은 Red Hat Enterprise Linux 8 및 Red Hat Enterprise Linux 9 모두에 적용됩니다.
스토리지 클러스터를 업그레이드합니다.
구문
ceph orch upgrade start IMAGE_NAME
ceph orch upgrade start IMAGE_NAME
Copy to Clipboard Copied! 예
[ceph: root@host01 /]# ceph orch upgrade start registry.redhat.io/rhceph/rhceph-8-rhel9:latest
[ceph: root@host01 /]# ceph orch upgrade start registry.redhat.io/rhceph/rhceph-8-rhel9:latest
Copy to Clipboard Copied! 참고Staggered 업그레이드를 수행하려면 스tagger ed 업그레이드 수행을 참조하십시오.
업그레이드가 진행되는 동안
ceph 상태
출력에 진행률 표시줄이 표시됩니다.예
[ceph: root@host01 /]# ceph status [...] progress: Upgrade to 18.2.0-128.el9cp (1s) [............................]
[ceph: root@host01 /]# ceph status [...] progress: Upgrade to 18.2.0-128.el9cp (1s) [............................]
Copy to Clipboard Copied! Ceph 클러스터의 새로운 IMAGE_ID 및 VERSION 을 확인합니다.
예
[ceph: root@host01 /]# ceph versions [ceph: root@host01 /]# ceph orch ps
[ceph: root@host01 /]# ceph versions [ceph: root@host01 /]# ceph orch ps
Copy to Clipboard Copied! 참고Ceph 클러스터를 업그레이드한 후
cephadm-ansible
플레이북을 사용하지 않는 경우 클라이언트 노드에서ceph-common
패키지 및 클라이언트 라이브러리를 업그레이드해야 합니다.예
[root@client01 ~] dnf update ceph-common
[root@client01 ~] dnf update ceph-common
Copy to Clipboard Copied! 최신 버전이 있는지 확인합니다.
예
[root@client01 ~] ceph --version
[root@client01 ~] ceph --version
Copy to Clipboard Copied! 업그레이드가 완료되면
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
[ceph: root@host01 /]# ceph osd unset noout [ceph: root@host01 /]# ceph osd unset noscrub [ceph: root@host01 /]# ceph osd unset nodeep-scrub
Copy to Clipboard Copied!