這篇文章將為大家詳細講解有關如何手動編譯配置ceph,文章內容質量較高,因此小編分享給大家做個參考,希望大家閱讀完這篇文章后對相關知識有一定的了解。
一、手工編譯ceph源代碼。
1、下載ceph源代碼。
從阿里云開源鏡像網站下載當前最新版本的ceph源代碼,具體下載地址如下:http://mirrors.aliyun.com/ceph/tarballs/ceph_10.2.1.orig.tar.gz
2、編譯ceph源代碼。
1)編譯運行環境說明。
使用的編譯和運行環境是ubuntu16.04-server-amd64,安裝完ubuntu鏡像后更新運行環境到最新。
#apt-get update
#apt-get upgrade
2)解壓縮源代碼。
#mkdir -p /root/src
#tar -xf ceph_10.2.1.orig.tar.gz -C/root/src
3)安裝編譯依賴包。
A)執行ceph源代碼目錄下的install_deps.sh腳本來安裝必要的依賴(該腳本并不能完全安裝編譯ceph源代碼所有的依賴)
#cd ceph-10.2.1
#./install-deps.sh
B)安裝額外的依賴包。
#apt-get install libtool automake pkg-config cython libsnappy-dev libleveldb-dev libblkid-dev libudev-dev libkeyutils-dev libcryto++-dev libfuse-dev libatomic-ops-dev libaio-dev xfslibs-dev libboost-dev libboost-iostreams-dev libboost-random-dev libboost-program-options-dev libldap2-dev virtualenv python-pip zlib1g-dev libcurl4-nss-dev libfcgi-dev libssl-dev
4)配置ceph源代碼。
#cd ceph-10.2.1
#./autogen.sh
#./configure --prefix=/usr --libexecdir=/usr/lib --sysconfdir=/etc --with-radosgw --with-rados --with-rbd --with-cephfs --with-debug --with-nss --without-libcryptopp
5)編譯ceph源代碼。
#make -j32
3、安裝ceph源代碼。
編譯成功后,執行make install安裝ceph到本地運行。
#make install
二、配置ceph運行環境。
1、ceph運行環境硬件說明。
ceph使用的硬件運行環境是華為服務器,其中CPU是Xeon E5-2650 v2,內存128GB,一共有4塊600GB的SAS盤,其中一塊作為系統盤,其余三塊作為ceph存儲節點。
2、配置monitor節點。
1)檢查/etc/ceph目錄是否存在,若不存在則手動創建一個。一般來說,在執行make install后回自動生成/etc/ceph目錄;
2)創建/etc/ceph/ceph.conf配置文件;
#vim /etc/ceph/ceph.conf
3)創建unique ID;
#uuidgen
4)將創建的unique ID值寫入到ceph.conf配置文件中;
fsid = xxxx-yyyy-zzzz
5)在ceph.conf中填寫monitor節點成員名稱和ip地址;
mon initial members = B-79-5
mon host = 192.168.250.93
6)創建monitor keyring;
#ceph-authtool —create-keyring /tmp/ceph.mon.keyring —gen-key -n mon. —cap mon ‘allow *'
7)創建client.admin keyring;
#ceph-authtool —create-keyring /etc/ceph/ceph.client.admin.keyring —gen-key -n client.admin —set-uid=0 —cap mon ‘allow *’ osd ‘allow *’ mds ‘allow'
8)將client.admin的key添加到monitor的keyring中;
#ceph-authtool /tmp/ceph.mon.keyring —import-keying /etc/ceph/ceph.client.admin.keyring
9)初始化monmap;
#monmaptool —create —add B-79-5 192.168.250.93 —fsid xxxx-yyyy-zzzz /tmp/monmap
10)創建monitor工作目錄;
#mkdir -p /var/lib/ceph/mon/ceph-B-79-5
11)使用monmap和monitor keyring初始化monitor進程;
#su - ceph ceph-mon —mkfs -i B-79-5 —monmap /tmp/monmap —keyring /tmp/ceph.mon.keyring
12)設置monitor工作目錄所有者為ceph用戶;
#chown -R ceph:ceph /var/lib/ceph/mon/ceph-B-79-5
13)標識monitor節點初始化完成且可以啟動;
#touch /var/lib/ceph/mon/ceph-B-79-5/done
14)創建ceph asok使用的目錄;
#mkdir -p /var/run/ceph
#chown -R ceph:ceph /var/run/ceph
14)啟動monitor進程;
#systemctl start ceph-mon@B-79-5
15)查看當前ceph的狀態;
#ceph -s
3、配置osd節點。
1)為OSD節點生成unique ID;
#uuidgen #該命令返回unqiue ID字符串aaaa-bbbb-cccc
2)創建OSD節點;
#ceph osd create aaaa-bbbb-cccc #該命令會返回創建的OSD節點編號{id}
3)創建OSD節點工作目錄;
#mkdir -p /var/lib/ceph/osd/ceph-{id}
4)創建OSD磁盤且掛載該磁盤到OSD節點工作目錄;
#mkfs.xfs /dev/sdb1
#mount /dev/sdb1 /var/lib/ceph/osd/ceph-{id}
5)初始化OSD節點工作目錄;
#ceph-osd -i {id} —mkfs —mkkey —osd-uuid aaaa-bbbb-cccc
6)注冊OSD節點認證key;
#ceph auth add osd.{id} osd ‘allow *’ mon ‘allow profile osd’ -i /var/lib/ceph/osd/ceph-{id}/keyring
7)OSD節點添加到CrushMap;
#ceph osd crush add-bucket virtual-node{id} host
#ceph osd crush move virtual-node{id} root=default
#ceph osd crush add osd.{id} 1.0 host=virtual-node{id}
8)設置OSD節點工作目錄所有者為ceph;
#chown -R ceph:ceph /var/lib/ceph/osd/ceph-{id}
9)啟動OSD進程;
#systemctl start ceph-osd@{id}
10)查看ceph狀態;
#ceph -s
以相同的方式添加剩余兩個OSDs節點。
三、注意事項。
1、注意/tmp/ceph.mon.keyring和/tmp/monmap的訪問權限,最好設置成0644;
2、注意monitor和OSD節點工作目錄的所有者和訪問權限,即:所有者是ceph,訪問權限最好設置成0644;
3、基本的ceph.conf文件內容如下:
/etc/ceph/ceph.conf
[global]
fsid = a7f64266-0894-4f1e-a635-d0aeaca0e993
mon initial members = B-79-5
mon host = 192.168.250.93
public network = 192.168.250.0/24
auth cluster required = cephx
auth service required = cephx
auth client required = cephx
關于如何手動編譯配置ceph就分享到這里了,希望以上內容可以對大家有一定的幫助,可以學到更多知識。如果覺得文章不錯,可以把它分享出去讓更多的人看到。
免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。