Ceph Nautilus : ファイルシステムとして利用する2021/08/26 |
以下のような構成の Ceph クラスターストレージを、[dlp] クライアントから利用できるように設定します。
| +--------------------+ | | [dlp.srv.world] |10.0.0.30 | | Ceph Client +-----------+ | | | +--------------------+ | +----------------------------+----------------------------+ | | | |10.0.0.51 |10.0.0.52 |10.0.0.53 +-----------+-----------+ +-----------+-----------+ +-----------+-----------+ | [node01.srv.world] | | [node02.srv.world] | | [node03.srv.world] | | Object Storage +----+ Object Storage +----+ Object Storage | | Monitor Daemon | | | | | | Manager Daemon | | | | | +-----------------------+ +-----------------------+ +-----------------------+ |
例として、クライアント上でファイルシステムとしてマウントして利用します。
|
|
[1] | 管理ノードからクライアントホストへ必要なファイルを転送しておきます。 |
# 公開鍵転送 root@node01:~# ssh-copy-id dlp # クライアントホストに必要なパッケージをインストール root@node01:~# ssh dlp "apt -y install ceph-fuse"
# クライアントホストに必要なファイルを転送 root@node01:~# scp /etc/ceph/ceph.conf dlp:/etc/ceph/ ceph.conf 100% 195 98.1KB/s 00:00root@node01:~# scp /etc/ceph/ceph.client.admin.keyring dlp:/etc/ceph/ ceph.client.admin.keyring 100% 151 71.5KB/s 00:00root@node01:~# ssh dlp "chown ceph. /etc/ceph/ceph.*" |
[2] | 任意のノードで MDS (MetaData Server) を設定しておきます。 当例では [node01] で進めます。 |
# ディレクトリ作成 # ディレクトリ名 ⇒ (クラスター名)-(ノード名) root@node01:~# mkdir -p /var/lib/ceph/mds/ceph-node01 root@node01:~# ceph-authtool --create-keyring /var/lib/ceph/mds/ceph-node01/keyring --gen-key -n mds.node01 creating /var/lib/ceph/mds/ceph-node01/keyring root@node01:~# chown -R ceph. /var/lib/ceph/mds/ceph-node01 root@node01:~# ceph auth add mds.node01 osd "allow rwx" mds "allow" mon "allow profile mds" -i /var/lib/ceph/mds/ceph-node01/keyring added key for mds.node01 root@node01:~# systemctl enable --now ceph-mds@node01 |
[3] | 事前に、MDS を設定したノード上で、[データ] 用と [メタデータ] 用に、少なくとも二つの RADOS プールを作成しておきます。
なお、プール作成時にコマンドの末尾に指定する数値は公式ドキュメントを参照の上、決定してください。 ⇒ http://docs.ceph.com/docs/master/rados/operations/placement-groups/ |
root@node01:~# ceph osd pool create cephfs_data 16 pool 'cephfs_data' created root@node01:~# ceph osd pool create cephfs_metadata 8 pool 'cephfs_metadata' created root@node01:~# ceph fs new cephfs cephfs_metadata cephfs_data new fs with metadata pool 9 and data pool 8 root@node01:~# ceph fs ls name: cephfs, metadata pool: cephfs_metadata, data pools: [cephfs_data ] root@node01:~# ceph mds stat cephfs:1 {0=node01=up:active} root@node01:~# ceph fs status cephfs cephfs - 0 clients ====== +------+--------+--------+---------------+-------+-------+ | Rank | State | MDS | Activity | dns | inos | +------+--------+--------+---------------+-------+-------+ | 0 | active | node01 | Reqs: 0 /s | 10 | 13 | +------+--------+--------+---------------+-------+-------+ +-----------------+----------+-------+-------+ | Pool | type | used | avail | +-----------------+----------+-------+-------+ | cephfs_metadata | metadata | 1536k | 74.9G | | cephfs_data | data | 0 | 74.9G | +-----------------+----------+-------+-------+ +-------------+ | Standby MDS | +-------------+ +-------------+ MDS version: ceph version 14.2.21 (5ef401921d7a88aea18ec7558f7f9374ebd8f5a6) nautilus (stable) |
[4] | クライアントホストでの Ceph ファイルシステムのマウントです。 |
# クライアントキーを Base64 エンコード root@dlp:~# ceph-authtool -p /etc/ceph/ceph.client.admin.keyring > admin.key root@dlp:~# chmod 600 admin.key
mount -t ceph node01.srv.world:6789:/ /mnt -o name=admin,secretfile=admin.key root@dlp:~# df -hT Filesystem Type Size Used Avail Use% Mounted on udev devtmpfs 2.0G 0 2.0G 0% /dev tmpfs tmpfs 394M 516K 393M 1% /run /dev/mapper/debian--vg-root ext4 28G 1.2G 26G 5% / tmpfs tmpfs 2.0G 0 2.0G 0% /dev/shm tmpfs tmpfs 5.0M 0 5.0M 0% /run/lock /dev/vda1 ext2 470M 48M 398M 11% /boot tmpfs tmpfs 394M 0 394M 0% /run/user/0 10.0.0.51:6789:/ ceph 75G 0 75G 0% /mnt |
Sponsored Link |