使用ceph-deploy搭建三節點ceph集羣

本文參照臧學雪園老師的Ceph基礎篇視頻教程加以歸納整理,再次感謝臧雪園老師。
基礎環境的準備

實驗拓撲圖:
使用ceph-deploy搭建三節點ceph集羣

首先準備基礎環境,因爲我的筆記本電腦內存只有4G,所以三臺虛擬機全部使用最小安裝。

ceph1:192.168.6.145   每臺主機準備四塊磁盤,sda作爲系統盤,其它三塊作爲ceph的OSD服務磁盤使用
ceph2:192.168.6.146
ceph3:192.168.6.147

systemctl stop firewalld           
systemctl disable firewalld     //關閉防火牆並設置開機不啓動
vim /etc/selimux/config
selinux=disabled                //更改selinux的模式  
hostnamectl set-hostname ceph1   //三臺主機名分別設置爲ceph1-3,注意這裏使用短主機名

然後準備安裝ceph集羣的環境變量

vim /openrc                  //編輯一個文本
export username="ceph-admin"     //安裝時使用ceph-admin一般用戶安裝,這裏設置一個變量方便後面調用    
export passwd="ceph-admin"         
export node1="ceph1"                   //設置主機名的環境變量
export node2="ceph2"
export node3="ceph3"
export node1_ip="192.168.6.145"   //設置主機ip地址的環境變量
export node2_ip="192.168.6.146"
export node3_ip="192.168.6.147"
下載ceph的rpm源
wget -O /etc/yum.repos.d/ceph.repo https://raw.githubusercontent.com/aishangwei/ceph-demo/master/ceph-deploy/ceph.repo
配置ntp
yum install -y ntp ntpdate
ntpdate cn.ntp.org.cn
systemctl restart ntpd
systemctl enable ntpd
systemctl enable ntpdate
創建部署用戶
useradd  ${username}       //創建ceph-admin用戶,用於集羣部署
echo "${passwd}"  | passwd --stdin ${username}
echo "${username} ALL = (root) NOPASSWD:ALL"  | sudo tee /etc/sudoers.d/ceph-admin  //設置ceph-admin執行特殊命令時的sudo權限
chmod 0440  /etc/sudoers.d/ceph-admin   更該文件權限
配置三臺主機的主機名解析
vim /etc/hosts
192.168.6.145    ceph1                 
192.168.6.146    ceph2
192.168.6.147    ceph3

配置三臺主機的ssh免密鑰登錄

su - ceph-admin
ssh-keygen
ssh-copy-id ceph-admin@ceph1
ssh-copy-id ceph-admin@ceph2
ssh-copy-id ceph-admin@ceph3

使用ceph-deploy部署集羣

安裝ceph-deploy
sudo yum install -y ceph-deploy python-pip //注意python-pip需要使用epel源,提前將epel源配置好
mkdir  my-cluster      //創建安裝目錄
cd my-cluster
進行節點部署
ceph-deploy new ceph1 ceph2 ceph3    //這裏務必要保證三臺主機的網絡是互通的
安裝完之後my-cluster目錄下面會生成三個文件
ceph.conf
ceph-deploy-ceph.log
ceph.mon.keyring
編輯ceph.conf配置文件,在最後添加一下信息
sudo vim  ~/my-cluster/ceph.conf
public network = 192.168.6.0/24
cluster network = 192.168.6.0/24
安裝ceph包
sudo  yum install -y ceph ceph-radosgw         //三個節點上都要安裝,這兩個包需要使用epel源,兩外兩個節點需要配置好epel源
配置初始的monitor並收集所有密鑰:
ceph-deploy admin ceph1 ceph2 ceph3 
配置osd
使用for循環語句執行(也可以寫到文本中做成腳本執行)
for dev in /dev/sdb  /dev/sdc /dev/sdd         //注意磁盤名稱,可以使用lsblk命令進行查看
do
        ceph-deploy disk zap ceph1 $dev
        ceph-deploy osd create ceph1 --data  $dev
        ceph-deploy disk zap ceph2 $dev
        ceph-deploy osd create ceph2 --data  $dev
        ceph-deploy disk zap ceph3 $dev
        ceph-deploy osd create ceph3 --data  $dev
done
配置完OSD之後,部署mgr用於監控整個集羣
ceph-deploy mgr create ceph1 ceph2 ceph3 
開啓dashboard模塊,啓用瀏覽器界面
在開啓dashboard模塊之前要注意,因爲我們是使用ceph-admin一般用戶進行安裝,所有無法調用/etc/ceph/下面的文件,將/etc/ceph目錄下面的文件屬主屬組全部更改爲ceph-admin
sudo chown -R ceph-admin /etc/ceph
然後加載dashboard模塊
ceph mgr module enable dashboard 
加載完模塊之後查看7000號端口號是否正常監聽
ss -ntl 
打開瀏覽器輸入192.168.6.145:7000查看ceph存儲集羣整體狀況

此時使用ceph-deploy部署三節點集羣配置完畢

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章