8장. rbd 커널 모듈
스토리지 관리자는 rbd
커널 모듈을 통해 Ceph 블록 장치에 액세스할 수 있습니다. 블록 장치를 매핑 및 매핑 해제하고 해당 매핑을 표시할 수 있습니다. rbd
커널 모듈을 통해 이미지 목록을 가져올 수도 있습니다.
RHEL(Red Hat Enterprise Linux) 이외의 Linux 배포판의 커널 클라이언트는 허용되지만 지원되지 않습니다. 이러한 커널 클라이언트를 사용할 때 스토리지 클러스터에서 문제가 발견되면 Red Hat은 이를 해결하지만 근본 원인이 커널 클라이언트 측에 있는 것으로 확인되면 소프트웨어 벤더가 문제를 해결해야 합니다.
사전 요구 사항
- 실행 중인 Red Hat Ceph Storage 클러스터.
8.1. Ceph 블록 장치를 만들고 Linux 커널 모듈 클라이언트에서 사용합니다.
스토리지 관리자는 Red Hat Ceph Storage 대시보드에서 Linux 커널 모듈 클라이언트용 Ceph 블록 장치를 생성할 수 있습니다. 시스템 관리자는 명령줄을 사용하여 Linux 클라이언트에서 해당 블록 장치를 매핑하고 분할, 포맷 및 마운트할 수 있습니다. 이 경우 파일을 읽고 쓸 수 있습니다.
사전 요구 사항
- 실행 중인 Red Hat Ceph Storage 클러스터.
- Red Hat Enterprise Linux 클라이언트.
8.1.1. 대시보드를 사용하여 Linux 커널 모듈 클라이언트용 Ceph 블록 장치 생성
지원하는 기능만 활성화하여 대시보드 웹 인터페이스를 사용하여 Linux 커널 모듈 클라이언트에 대해 Ceph 블록 장치를 생성할 수 있습니다.
커널 모듈 클라이언트는 Deep flatten, Layering, Exclusive lock, Object map, Fast diff와 같은 기능을 지원합니다.
사전 요구 사항
- 실행 중인 Red Hat Ceph Storage 클러스터.
- 복제된 RBD 풀이 생성 및 활성화되어 있습니다.
프로세스
- Block 드롭다운 메뉴에서 Images 를 선택합니다.
- 생성을 클릭합니다.
RBD 만들기 창에서 이미지 이름을 입력하고 RBD가 활성화된 풀을 선택하고 지원되는 기능을 선택합니다.
- RBD 만들기를 클릭합니다.
검증
- 이미지가 성공적으로 생성되었음을 알리는 알림이 표시됩니다.
추가 리소스
- 자세한 내용은 Red Hat Ceph Storage 블록 장치 가이드의 명령줄을 사용하여 Linux에 Ceph 블록 장치 매핑 및 마운트 를 참조하십시오.
- 자세한 내용은 Red Hat Ceph Storage 대시보드 가이드를 참조하십시오.
8.1.2. 명령줄을 사용하여 Linux에서 Ceph 블록 장치 매핑 및 마운트
Linux rbd
커널 모듈을 사용하여 Red Hat Enterprise Linux 클라이언트에서 Ceph Block Device를 매핑할 수 있습니다. 매핑한 후 파일을 분할, 포맷 및 마운트할 수 있으므로 파일을 작성할 수 있습니다.
사전 요구 사항
- 실행 중인 Red Hat Ceph Storage 클러스터.
- 대시보드를 사용하는 Linux 커널 모듈 클라이언트의 Ceph 블록 장치가 생성됩니다.
- Red Hat Enterprise Linux 클라이언트.
프로세스
Red Hat Enterprise Linux 클라이언트 노드에서 Red Hat Ceph Storage 8 툴 리포지토리를 활성화합니다.
[root@rbd-client ~]# subscription-manager repos --enable=rhceph-8-tools-for-rhel-9-x86_64-rpms
ceph-common
RPM 패키지를 설치합니다.[root@rbd-client ~]# dnf install ceph-common
Monitor 노드에서 클라이언트 노드로 Ceph 구성 파일을 복사합니다.
구문
scp root@MONITOR_NODE:/etc/ceph/ceph.conf /etc/ceph/ceph.conf
예제
[root@rbd-client ~]# scp root@cluster1-node2:/etc/ceph/ceph.conf /etc/ceph/ceph.conf root@192.168.0.32's password: ceph.conf 100% 497 724.9KB/s 00:00 [root@client1 ~]#
Monitor 노드에서 Client 노드로 키 파일을 복사합니다.
구문
scp root@MONITOR_NODE:/etc/ceph/ceph.client.admin.keyring /etc/ceph/ceph.client.admin.keyring
예제
[root@rbd-client ~]# scp root@cluster1-node2:/etc/ceph/ceph.client.admin.keyring /etc/ceph/ceph.client.admin.keyring root@192.168.0.32's password: ceph.client.admin.keyring 100% 151 265.0KB/s 00:00 [root@client1 ~]#
이미지를 매핑합니다.
구문
rbd map --pool POOL_NAME IMAGE_NAME --id admin
예제
[root@rbd-client ~]# rbd map --pool block-device-pool image1 --id admin /dev/rbd0 [root@client1 ~]#
블록 장치에 파티션 테이블을 만듭니다.
구문
parted /dev/MAPPED_BLOCK_DEVICE mklabel msdos
예제
[root@rbd-client ~]# parted /dev/rbd0 mklabel msdos Information: You may need to update /etc/fstab.
XFS 파일 시스템의 파티션을 만듭니다.
구문
parted /dev/MAPPED_BLOCK_DEVICE mkpart primary xfs 0% 100%
예제
[root@rbd-client ~]# parted /dev/rbd0 mkpart primary xfs 0% 100% Information: You may need to update /etc/fstab.
파티션을 포맷합니다.
구문
mkfs.xfs /dev/MAPPED_BLOCK_DEVICE_WITH_PARTITION_NUMBER
예제
[root@rbd-client ~]# mkfs.xfs /dev/rbd0p1 meta-data=/dev/rbd0p1 isize=512 agcount=16, agsize=163824 blks = sectsz=512 attr=2, projid32bit=1 = crc=1 finobt=1, sparse=1, rmapbt=0 = reflink=1 data = bsize=4096 blocks=2621184, imaxpct=25 = sunit=16 swidth=16 blks naming =version 2 bsize=4096 ascii-ci=0, ftype=1 log =internal log bsize=4096 blocks=2560, version=2 = sectsz=512 sunit=16 blks, lazy-count=1 realtime =none extsz=4096 blocks=0, rtextents=0
새 파일 시스템을 마운트할 디렉토리를 만듭니다.
구문
mkdir PATH_TO_DIRECTORY
예제
[root@rbd-client ~]# mkdir /mnt/ceph
파일 시스템을 마운트합니다.
구문
mount /dev/MAPPED_BLOCK_DEVICE_WITH_PARTITION_NUMBER PATH_TO_DIRECTORY
예제
[root@rbd-client ~]# mount /dev/rbd0p1 /mnt/ceph/
파일 시스템이 마운트되어 올바른 크기를 표시하는지 확인합니다.
구문
df -h PATH_TO_DIRECTORY
예제
[root@rbd-client ~]# df -h /mnt/ceph/ Filesystem Size Used Avail Use% Mounted on /dev/rbd0p1 10G 105M 9.9G 2% /mnt/ceph
추가 리소스
- 자세한 내용은 대시보드를 사용하여 Linux 커널 모듈 클라이언트의 Ceph 블록 장치 생성을 참조하십시오.
- 자세한 내용은 Red Hat Enterprise Linux 8의 파일 시스템 관리를 참조하십시오.
- 자세한 내용은 Red Hat Enterprise Linux 7용 스토리지 관리 가이드를 참조하십시오.