메뉴 닫기

ceph client connecting – using

CEPH의 모든 구성을 완료 하였다고 가정하고 진술.

ceph의 mgmt 즉 관리서버와 ceph client를 연결하여 실제 사용하는 예는 다음과 같다.

1. mgmt 서버에 로그인 후 ceph client node에 ceph 설치

root@ceph-client:#ceph-deploy install ceph-client

2. ceph client에 ceph.config 와 admin key copy

root@ceph-client:#ceph-deploy admin ceph-client

이로서 client를 사용하기위한 준비는 끝이다.

다음은 mgmt 에서 현재 구성되어 있는 pool을 확인후 이름이 중복되지 않게 pool을 만들어 client에서 사용할 것이다.

현재 pool 확인.

[하단의 내용은 mgmt 서버에서]
root@ceph-client:# rados lspools
(아무것도 만든 적이 없다면 기본 적으로 rbd 만 출력될 것이다.)

이제 client에서 사용하기 위한 pool을 생성한다.

root@ceph-client:#ceph osd pool create [pool_name] [pg_num] [pgp_num]

root@ceph-client:# rbd create [pool_name] /[image_name] –size [- – – – Mb]

mgmt에서 pool을 생성하였으니 client에서 위의 정보가 정상적으로 불러오는지 확인.

[하단의 내용은 client 서버에서]

root@ceph-client:# rbd info [pool_name] /[image_name]

예) root@ceph-client:# rbd info [pool_name] /[image_name]
rbd image [image_name]’:
size 40000 GB in 10240000 objects
order 22 (4096 kB objects)
block_name_prefix: rbd_data.1489s876ds78f
format: 2
features: layering
flags:
위와 같이 mgmt에서 만들어준 pool의 정보가 확인됨을 볼 수 있다.

확인된 정보로 clinet에서 사용하고자 마운트를 해보자. 방법은 아래와 같음.

root@ceph-client:# rbd map [pool_name] /[image_name]

진행시 ” /dev/rbd1 ” 이 출력됨을 확인.

더 정확히 알아보기위해 client 시스템에 그 값을 확인.

root@ceph-client:# rbd showmapped
id pool image snap device
1 [pool_name] [image_name] – /dev/rbd1 (하나의 장치가 생성됨을 확인)

위에서 확인한 이 장치를 사용하기위에 임이의 디랙토리( DirectoryA) 를 생성한 후 마운트.

root@ceph-client:#mount /dev/rbd1 /DirectoryA
.
.
.
.
mount: you must specify the filesystem type
root@ceph-client:#

( *mount 되지 않음………)

이는 말 그대로 파일시스템의 문제로 인해 마운트 되지 않은 것. 이유는 다음과 같다.

ceph 구성시 osd 노드는 xfs의 파일시스템으로 본시스템의 기본 파일시스템의 ext4는 아니기 때문.

이에 rbd1을 xfs로 포멧을 해주면 간단히 해결할 수 있다.

root@ceph-client::# mkfs.xfs /dev/rbd1
log stripe unit (4194304 bytes) is too large (maximum is 256KiB)
log stripe unit adjusted to 32KiB
meta-data=/dev/rbd1 isize=256 agcount=40, agsize=268433408 blks
= sectsz=512 attr=2, projid32bit=0
data = bsize=4096 blocks=10485760000, imaxpct=5
= sunit=1024 swidth=1024 blks
naming =version 2 bsize=4096 ascii-ci=0
log =internal log bsize=4096 blocks=521728, version=2
= sectsz=512 sunit=8 blks, lazy-count=1
realtime =none extsz=4096 blocks=0, rtextents=0

이제 다시 mount 진행.

root@ceph-client:#mount /dev/rbd1 /DirectoryA

root@ceph-client:# df
Filesystem 1K-blocks Used Available Use% Mounted on
.
.

/dev/rbd1 41940953088 34080 41940919008 1% /DirectoryA
.
.
root@ceph-client:#

– 이제 해당경로의 공간을 사용할 계정과 데몬을 연결 해주면 사용을 하기 위한 준비는 완료.

예) 대표적으로는 ftp등이 있으며, 이를 사용시 ftp 의 사용자 홈드렉토리를 /DirectoryA 으로 지정하여 사용한다.

답글 남기기

이메일 주소는 공개되지 않습니다. 필수 항목은 *(으)로 표시합니다