Ceph 은 구조적으로 Disk 결함이 발생하여도 데이터를 유실되지 않고 성능 저하 상태에서 동작할 수 있습니다. 장애가 발생한 드라이브의 데이터를 자동으로 다은 OSD에 저장된 데이터의 추가 사본을 클러스터의 다른 OSD로 자동으로 백필(backfill) 됩니다. 이러할 경우, 결함 OSD 드라이브를 교체하고 OSD를 수동으로 교체합니다.
1. Ceph 클러스터에서 OSD 제거
1.1. cephadm shell 로그인
[root@host01 ~]# cephadm shell
1.2 장애 OSD 확인
[ceph: root@host01 /]# ceph osd tree | grep -i down
ID CLASS WEIGHT TYPE NAME STATUS REWEIGHT PRI-AFF
0 hdd 0.00999 osd.0 down 1.00000 1.00000
1.3 클러스터의 해당 데이터를 재조정 할수 있도록 장애 OSD 상태 변경
[ceph: root@host01 /]# ceph osd out osd.0
marked out osd.0.
1.4 장애 OSD 가 백필(backfill) 인지 확인
[ceph: root@host01 /]# ceph -w | grep backfill
2022-05-02 04:48:03.403872 mon.0 [INF] pgmap v10293282: 431 pgs: 1 active+undersized+degraded+remapped+backfilling, 28 active+undersized+degraded, 49 active+undersized+degraded+remapped+wait_backfill, 59 stale+active+clean, 294 active+clean; 72347 MB data, 101302 MB used, 1624 GB / 1722 GB avail; 227 kB/s rd, 1358 B/s wr, 12 op/s; 10626/35917 objects degraded (29.585%); 6757/35917 objects misplaced (18.813%); 63500 kB/s, 15 objects/s recovering
2022-05-02 04:48:04.414397 mon.0 [INF] pgmap v10293283: 431 pgs: 2 active+undersized+degraded+remapped+backfilling, 75 active+undersized+degraded+remapped+wait_backfill, 59 stale+active+clean, 295 active+clean; 72347 MB data, 101398 MB used, 1623 GB / 1722 GB avail; 969 kB/s rd, 6778 B/s wr, 32 op/s; 10626/35917 objects degraded (29.585%); 10580/35917 objects misplaced (29.457%); 125 MB/s, 31 objects/s recovering
2022-05-02 04:48:00.380063 osd.1 [INF] 0.6f starting backfill to osd.0 from (0'0,0'0] MAX to 2521'166639
2022-05-02 04:48:00.380139 osd.1 [INF] 0.48 starting backfill to osd.0 from (0'0,0'0] MAX to 2513'43079
2022-05-02 04:48:00.380260 osd.1 [INF] 0.d starting backfill to osd.0 from (0'0,0'0] MAX to 2513'136847
2022-05-02 04:48:00.380849 osd.1 [INF] 0.71 starting backfill to osd.0 from (0'0,0'0] MAX to 2331'28496
2022-05-02 04:48:00.381027 osd.1 [INF] 0.51 starting backfill to osd.0 from (0'0,0'0] MAX to 2513'87544
1.5 장애 OSD 중지
[ceph: root@host01 /]# ceph orch daemon stop osd.0
1.6 클러스터에서 OSD 제거
[ceph: root@host01 /]# ceph orch osd rm 0 --replace
2. 드라이브 교체
- 드라이브가 핫스왑 가능한 경우 장애가 발생한 드라이브를 새 드라이브로 교체한다.
- 드라이브가 핫스왑 가능하지 않고 노드에 여러 개의 OSD가 있는 경우, 전체 노드를 종료하고 물리 드라이브를 교체해야 할 수 있습니다. 클러스터가 백필링되지 않도록 한다. 다음 문서를 통하여 리발란싱한다. https://www.ibm.com/docs/en/storage-ceph/7?topic=osds-stopping-starting-rebalancing
- 드라이브가 /dev/ 디렉토리 아래에 표시되면 드라이브 경로를 기록해 둔다. (교체 사용)
- OSD를 수동으로 추가하려면 OSD 드라이브를 찾아 디스크를 포맷한뒤 사용한다.
3. Ceph 클러스터에 OSD 추가
3.1 새 드라이브가 삽입된 이후, OSD를 할당
방법 #1 --unmanaged 매개변수가 설정되지 않을 경우, 자동 배치 사용
[ceph: root@host01 /]# ceph orch apply osd --all-available-devices
방법 #2 --unmanaged 매개 변수가 true 설정된 사용가능한 모든 디바이스에 배치 사용
[ceph: root@host01 /]# ceph orch apply osd --all-available-devices --unmanaged=true
방법 #3 특정 디바이스 및 호스트에 배치
[ceph: root@host01 /]# ceph orch daemon add osd host02:/dev/sdb
3.2 CRUSH 계층 구조 확인
[ceph: root@host01 /]# ceph osd tree
Original.
https://www.ibm.com/docs/en/storage-ceph/7?topic=osds-replacing-osd-drive
'Software Defined Storage' 카테고리의 다른 글
MioIO 설치 (0) | 2024.06.05 |
---|---|
IBM Ceph storage Appliance (Ready Node) (0) | 2024.05.13 |
Ceph Storage 하드웨어 최소 사양 (0) | 2024.05.02 |
Ceph Storage Block Device 성능 테스트 방법 (RBD Benchmark) (0) | 2024.04.29 |
Ceph Storage 기본 성능 테스트 방법 (Benchmark) (0) | 2024.04.25 |