Ceph インストール記録#
一、準備作業#
マシンリスト:
ceph0 192.168.100.40
ceph1 192.168.100.41
ceph2 192.168.100.42
# 三台マシンすべてを設定する必要があります
# ファイアウォールを停止
systemctl stop firewalld
systemctl disable firewalld
# SELinuxを無効にする
setenforce 0
# グラフィカルネットワークマネージャを停止
systemctl stop NetworkManager
systemctl disable NetworkManager
# ホスト名を設定
hostnamectl set-hostname ceph0
# hostsを修正(他のノードにscpで同期)
vim /etc/hosts
192.168.100.40 ceph0
192.168.100.41 ceph1
192.168.100.42 ceph2
# sshのパスワードなしログインを設定
ssh-keygen
ssh-copy-id ceph0
ssh-copy-id ceph1
ssh-copy-id ceph2
yum リポジトリを設定し、他のノードに同期
vim /etc/yum.repos.d/ceph.repo
[Ceph]
name=Ceph packages for $basearch
baseurl=https://mirrors.tuna.tsinghua.edu.cn/ceph/rpm-nautilus/el7/x86_64/
enabled=1
gpgcheck=1
type=rpm-md
gpgkey=https://download.ceph.com/keys/release.asc
priority=1
[Ceph-noarch]
name=Ceph noarch packages
baseurl=https://mirrors.tuna.tsinghua.edu.cn/ceph/rpm-nautilus/el7/noarch/
enabled=1
gpgcheck=1
type=rpm-md
gpgkey=https://download.ceph.com/keys/release.asc
priority=1
[ceph-source]
name=Ceph source packages
baseurl=https://mirrors.tuna.tsinghua.edu.cn/ceph/rpm-nautilus/el7/SRPMS/
enabled=1
gpgcheck=1
type=rpm-md
gpgkey=https://download.ceph.com/keys/release.asc
priority=1
二、クラスターの作成#
1. クラスター設定ディレクトリの作成#
mkdir /etc/ceph
2.ceph-deploy デプロイツールのインストール#
yum -y install ceph-deploy
3.ceph クラスターの作成#
ceph-deploy new ceph0 ceph1 ceph2
# ls
# 説明:
# ceph.conf クラスター設定ファイル
# ceph-deploy-ceph.log ceph-deployによるデプロイのログ記録
# ceph.mon.keyring 認証keyファイル
4. 設定ファイルの修正#
[global]
fsid = 913835ff-cc9b-45d7-a243-f3978d3e0c53
mon_initial_members = ceph0, ceph1, ceph2
mon_host = 192.168.100.40,192.168.100.41,192.168.100.42
auth_cluster_required = cephx
auth_service_required = cephx
auth_client_required = cephx
# 外部に開放するネットワークセグメント
public network = 192.168.100.0/24
[mgr]
# WEBダッシュボードを有効にする
mgr modules = dashboard
5.ceph のインストール#
ceph-deploy install ceph0 ceph1 ceph2
# 補足説明:ネットワークが悪い場合は手動でcephとceph-radosgwをインストールできます。良い場合はceph-deploy install ceph0 ceph1 ceph2コマンドを使用してインストールできます。ceph-deployコマンドは自動的に公的な公式リポジトリからインストールします。
yum install ceph ceph-radosgw -y
6. モニターの初期化#
ceph-deploy mon create-initial
7. 管理情報の同期#
設定ファイル情報をすべての ceph クラスターノードに同期
ceph-deploy admin ceph0 ceph1 ceph2
8.mgr のインストール#
管理デーモン。このコンポーネントの主な役割は、モニターの一部機能を分担し、拡張し、モニターの負担を軽減し、ceph ストレージシステムをより良く管理することです。ceph dashboard のグラフィカル管理も mgr を使用します。
ceph-deploy mgr create ceph0 ceph1 ceph2
9.rgw のインストール#
ceph-deploy rgw create ceph0 ceph1 ceph2
10.mds サービスの作成#
ceph-deploy mds create ceph0 ceph1 ceph2
11.zap コマンドを使用してディスク情報を消去し、osd の作成準備をする#
ceph-deploy disk zap ceph0 /dev/vdb
ceph-deploy disk zap ceph1 /dev/vdb
ceph-deploy disk zap ceph2 /dev/vdb
12.OSD ディスクの作成#
ceph-deploy osd create --data /dev/sdb ceph0
ceph-deploy osd create --data /dev/sdb ceph1
ceph-deploy osd create --data /dev/sdb ceph2
13. 検証#
ceph -s
[root@ceph0 ceph]# ceph -s
cluster:
id: 913835ff-cc9b-45d7-a243-f3978d3e0c53
health: HEALTH_OK
services:
mon: 3 daemons, quorum ceph0,ceph1,ceph2 (age 18h)
mgr: ceph0(active, since 17h), standbys: ceph2, ceph1
mds: cephfs:1 {0=ceph1=up:active} 2 up:standby
osd: 3 osds: 3 up (since 18h), 3 in (since 18h)
data:
pools: 2 pools, 192 pgs
objects: 106 objects, 335 MiB
usage: 4.0 GiB used, 26 GiB / 30 GiB avail
pgs: 192 active+clean
三、ダッシュボードの有効化#
1、ダッシュボードモジュールの有効化#
ceph mgr module enable dashboard
エラー:
Error ENOENT: all mgr daemons do not support module 'dashboard', pass --force to force enablement
解決策:yum -y install ceph-mgr-dashboard
これは ceph-mgr-dashboard がインストールされていないためで、mgr ノードにインストールすればよいです。
2、署名の生成#
ceph dashboard create-self-signed-cert
3. 証明書の生成#
openssl req -new -nodes -x509 -subj "/O=IT/CN=ceph-mgr-dashboard" -days 3650 -keyout dashboard.key -out dashboard.crt -extensions v3_ca
4. サービスの起動#
ceph mgr module disable dashboard
ceph mgr module enable dashboard
5. アクセスアドレスとポートの設定#
ceph config set mgr mgr/dashboard/server_addr 192.168.100.40
ceph config set mgr mgr/dashboard/server_port 9001
6.https を無効にする#
ceph config set mgr mgr/dashboard/ssl false
7. デーモンの確認#
ceph mgr services
8. 管理パネルのログイン資格情報を設定#
echo "1234567890" >> ceph-password.txt
ceph dashboard set-login-credentials admin -i ceph-password.txt
# http://192.168.100.40:9001/でアクセス
四、Ceph の使用#
1、ストレージプールの作成#
ceph osd pool create cephfs_data 128
ceph osd pool create cephfs_metadata 64
rbd pool init cephfs_data # RBD プールの初期化
rbd pool init cephfs_metadata
2、ストレージプールの確認#
ceph osd lspools
3、ファイルシステムの作成#
ceph fs new fs_test cephfs_metadata cephfs_data
4、ファイルシステムの確認#
ceph fs ls
5、mds の状態を確認#
ceph mds stat
五、マウントテスト#
yum install ceph-fuse
cat ceph.client.admin.keyring
echo “ABCrM7lkDYZ8GxAA7SkHF7gcZIsFMR47LA8bsB==” >> admin.key
mount -t ceph ceph2:6789:/ /mnt -o name=admin,secretfile=/root/admin.key