CentOS 6.8安裝Ceph

機器規劃html

IP 主機名 角色
10.101.0.1 ceph01 mon admin mds
10.101.0.2 ceph02 ods
10.101.0.3 ceph03 ods
10.101.0.4 ceph04 ods
10.101.0.5 client client(掛載點)

 

考慮到高可用性,生產集羣應該至少有 3 個監視器。ssh

在每臺機添加hoststcp

10.101.0.1 ceph01
10.101.0.2 ceph02
10.101.0.3 ceph03
10.101.0.4 ceph04

關閉防火牆和SELINUXui

每一個節點上建立ceph用戶並添加sudo權限url

useradd ceph
echo "ceph ALL = (root) NOPASSWD:ALL" >/etc/sudoers.d/ceph
echo "Defaults:ceph |requiretty" >/etc/sudoers.d/ceph

在管理節點ceph01上生成ceph用戶的ssh公鑰並實現免密碼登陸其餘主機spa

1.全部機器安裝epel和ceph源

rpm -ivh https://dl.fedoraproject.org/pub/epel/epel-release-latest-6.noarch.rpm

rpm -ivh https://download.ceph.com/rpm-hammer/el6/noarch/ceph-release-1-1.el6.noarch.rpm

2.在管理節點上安裝ceph-deploy(ceph01節點)

yum install -y ceph-deploy

3.在ceph集羣安裝

部署過程當中有錯誤能夠查看日誌/var/log/ceph/.net

3.1切換到ceph用戶執行(ceph01節點)日誌

mkdir /home/ceph/ceph-cluster
cd /home/ceph/ceph-cluster

生成集羣配置文件
ceph-deploy new ceph01

#上面的命令會生成3個文件
ceph.conf    #集羣配置文件,此配置可按需修改或不修改也行
ceph.log    #日誌文件
ceph.mon.keyring #keyring文件,集羣驗證用

3.2安裝ceph(ceph01節點)code

ceph-deploy install ceph01 ceph02 ceph03 ceph04 --repo-url=https://download.ceph.com/rpm-hammer/el6/
#此命令將會按順序在3臺機上安裝ceph

3.3建立並初始化監控節點(ceph01)htm

ceph-deploy mon create-initial
#執行此命令後會初始化mon節點,ceph.conf文件中聲明瞭mon節點等信息

3.4添加數據節點(ceph02,ceph03,ceph04)

掛載好要使用的磁盤
mount /dev/sdb1 /data/osd0(另外兩個節點相似,不過是osd1,osd2。名稱可自定義)

3.5

在管理節點初始化磁盤(ceph01)

ceph-deploy disk zap ceph01:sdb ceph02:sdb ceph03:sdb

在管理節點準備OSD(ceph01)

ceph-deploy osd prepare ceph01:/data/osd0 ceph02:/data/osd1 ceph03:/data/osd2

3.6激活OSD(ceph01)

ceph-deploy osd activate ceph01:/data/osd0 ceph02:/data/osd1 ceph03:/data/osd2

3.7分發配置和密鑰
使用ceph-deploy命令將配置文件和管理密鑰複製到管理節點和你的Ceph節點。

ceph-deploy admin ceph01 ceph02 ceph03

3.8查看集羣狀態

sudo ceph health #集羣健康狀態,返回OK狀態
sudo ceph -s #
sudo ceph status #集羣狀態

4.安裝、掛載cephfs

4.1建立mds(ceph01節點)

ceph-deploy mds create ceph04 
#若是報以下錯誤
RuntimeError: config file /etc/ceph/ceph.conf exists with different content; use --overwrite-conf to overwrite
加上--overwrite-conf參數
ceph-deploy --overwrite-conf mds create ceph04

查看mds進程
netstat -tnlp | grep mds
tcp 0 0 172.16.100.5:6804 0.0.0.0:* LISTEN 12787/ceph-mds

4.2建立pool(ceph01節點)

查看pool
ceph osd lspools
新建立的ceph集羣默認只有rdb一個pool。這時咱們須要建立新的pool

建立兩個存儲池。MDS須要使用兩個pool,一個pool用來存儲數據,一個pool用來存儲元數據。

ceph osd pool create fs_data 32  #這裏的32指的是PG組
ceph osd pool create fs_metadata 32
查看pool
    rados lspools

4.3建立Cephfs(ceph01節點)

ceph fs new cephfs fs_metadata fs_data
#查看
    ceph fs ls
#查看MDS狀態
  ceph mds stat

4.4在client節點掛載cephfs(client節點)

Client掛載方式有兩種:內核kernal方式和fuse方式。(內核掛載方式須要2.6.34及其之後的版本才支持

使用fuse方式掛載(注意:此方式讀寫效率很低

安裝ceph-fuse
yum install -y ceph-fuse

複製配置文件
將ceph配置文件ceph.conf從管理節點copy到client節點
scp ceph@ceph01:/etc/ceph/ceph.conf /etc/ceph/

複製密鑰
將ceph的ceph.client.admin.keyring從管理節點copy到client節點
scp ceph@ceph01:/etc/ceph/ceph.client.admin.keyring /etc/ceph/

查看ceph受權
ceph auth list

建立掛載目錄
mkdir /cephfs

掛載到指定目錄
將ceph掛載到/cephfs
ceph-fuse -m ceph01:6789 /cephfs(能夠掛在多個mon節點保證高可用,ip:6789,ip:6789)

5.rbd塊設備映射

使用rbd塊設備方式掛載(讀寫效率高),但須要加載rbd內核模塊,2.6.34以前的版本都沒有該模塊,要把系統內核升級到2.6.34或者更新。

建立一個pool

ceph osd pool create press 100

設置pool 的pgp_num

ceph osd pool set press pgp_num 100

 查看建立的pool

ceph osd lspools

 建立一個100G 名爲 image 鏡像

rbd create -p press --size 100000 image

 查看鏡像

rbd -p press info image

 客戶端塊存儲掛載:

rbd -p press map image
mkfs.xfs /dev/rbd0
mount /dev/rbd0 /mnt/rbd

 卸載map鏡像

umount /mnt/rbd
rbd unmap /dev/rbd0

 

參考文檔:

http://www.cnblogs.com/keithtt/p/6410288.html

http://blog.csdn.net/yhao2014/article/details/51394815

http://www.javashuo.com/article/p-sroyesyi-cv.html

相關文章
相關標籤/搜索