centos7快速部署ceph

2021-09-20 20:31:28 字數 4488 閱讀 9005

1、機器:

10.39.3.22-26 

2.優化

tcp引數優化 

ntp時間同步配置

requiretty準備

3、ceph使用者新增

adduser  ceph -u 2000  

#必須要新增密碼,否則無法配置ssh互信

(echo "123321";sleep 1;echo "123321")|passwd ceph --stdin

增加sudo許可權

echo  "ceph all = (root) nopasswd:all"| sudo tee /etc/sudoers.d/ceph

chmod 0440 /etc/sudoers.d/ceph  

4、修改主機名:

將主機名新增到/etc/hosts檔案中

hostnamectl  set-hostname cephnode0

hostnamectl  set-hostname cephnode1

hostnamectl  set-hostname cephnode2

5、 生成金鑰檔案,預設回車即可

ssh-keygen -t rsa

cat .ssh/id_rsa.pub .ssh/authorized_keys

如果希望ssh公鑰生效需滿足至少下面兩個條件:

1) .ssh目錄的許可權必須是700 

2) .ssh/authorized_keys檔案許可權必須是600

7、為admin-node節點安裝ceph-deploy

第一步:增加 yum配置檔案

yum clean all

wget -o /etc/yum.repos.d/centos-base.repo

wget -o /etc/yum.repos.d/epel.repo

sed -i '/aliyuncs/d' /etc/yum.repos.d/centos-base.repo

sed -i '/aliyuncs/d' /etc/yum.repos.d/epel.repo

sed -i 's/$releasever/7.2.1511/g' /etc/yum.repos.d/centos-base.repo

新增163源:

vim /etc/yum.repos.d/ceph.repo

[ceph]

name=ceph

baseurl=

gpgcheck=0

[ceph-noarch]

name=cephnoarch

baseurl=

gpgcheck=0

進行yum的makecache

yum makecache

第二步:更新軟體源並安裝ceph-deploy

sudo yum update && sudo yum install ceph-deploy

開始節點安裝:

第一步:建立集群設定monitor節點

在admin節點上用ceph-deploy建立集群,new後面跟的是monitor節點的hostname,如果有多個monitor,則它們的hostname以為間隔,多個mon節點可以實現互備。

ceph-deploy  new cephnode0 cephnode1 cephnode2

第二步:利用ceph-deploy為節點安裝ceph

ceph-deploy install  cephnode0  cephnode1 cephnode2

如install未成功,亦可手動安裝:

初始化monitor節點

初始化監控節點並收集keyring:

ceph-deploy mon create-initial 

(可新增--overwrite-conf引數)

ceph-deploy admin cephnode0 cephnode0 cephnode1 cephnode2

sudo chmod 755 /etc/ceph/ceph.client.admin.keyring

第三步: osd部署

ceph-deploy osd prepare cephnode0:/data11/ceph-osd  cephnode2:/data11/ceph-osd   cephnode3:/data11/ceph-osd   cephnode4:/data11/ceph-osd   cephnode5:/data11/ceph-osd 

ceph-deploy osd activate cephnode0:/data11/ceph-osd  cephnode2:/data11/ceph-osd   cephnode3:/data11/ceph-osd   cephnode4:/data11/ceph-osd   cephnode5:/data11/ceph-osd 

(此處直接掛載的目錄,由於分割槽預設使用的ext4格式,osd日誌中會有報錯,在ceph.conf檔案中新增指定引數解決)

新增乙個元資料伺服器

ceph-deploy mds create cephnode2 cephnode3

建立ceph pg:

ceph osd pool create cephfs_data 1000

ceph osd pool create cephfs_metadata 1000

ceph -s

ceph fs new cephfs cephfs_metadata cephfs_data

建立完成後,就可以使用ceph-fuse掛載了。

#ceph rbd 客戶端部署:

客戶端需要安裝元件、 /etc/ceph/配置檔案才能訪問rbd?

yum install rbd-mirror.x86_64

報錯處理:

#############################################

[ceph@cephnode0 cluster]$ ceph -w

2017-03-24 18:58:29.832395 7fb5d6222700 -1 auth: unable to find a keyring on /etc/ceph/ceph.client.admin.keyring,/etc/ceph/ceph.keyring,/etc/ceph/keyring,/etc/ceph/keyring.bin: (2) no such file or directory

2017-03-24 18:58:29.832414 7fb5d6222700 -1 monclient(hunting): error: missing keyring, cannot use cephx for authentication

2017-03-24 18:58:29.832417 7fb5d6222700  0 librados: client.admin initialization error (2) no such file or directory

error connecting to cluster: objectnotfound

[ceph@cephnode0 cluster]$

許可權問題,修改為sudo chmod 755 /etc/ceph/ceph.client.admin.keyring

安裝不過去的時候:

yum -y install epel-release

# ** error: osd init failed: (36) file name too long

修改?/etc/ceph/ceph.conf檔案,在檔案中新增如下配置

osd max object name len = 256  

osd max object namespace len = 64  

#安裝ceph時出錯[ceph_deploy][error ] runtimeerror: nosectionerror: no section: 'ceph',是為什麼呢

yum remove ceph-release  先執行這個,把這個東西卸了,應該是這個的版本不相容 親測有效

################3

clock skew detected on mon.cephnode3 

在admin結點上,修改ceph.conf,新增:

mon_clock_drift_allowed = 5

mon_clock_drift_warn_backoff = 30

ceph-deploy --overwrite-conf admin ceph1 ceph2 ceph3

重啟monitor

systemctl restart [email protected]

osd程序過多,需要修改ceph使用者的最大檔案開啟數:

/etc/security/limits.d/20-nproc.conf  

當您執行每台主機上執行多個osd程序時(如》20)會產生很多的執行緒,特別是進行recovery和relalancing操作。

許多linux核心預設線程限最大數量比較小(例如,32k的)。

如果您遇到這方面的問題,可以考慮把kernel.pid_max設定的高一點。理論上的最大值為4,194,303

centos7快速部署ceph

1 機器 10.39.3.22 26 2.優化 tcp引數優化 ntp時間同步配置 requiretty準備 3 ceph使用者新增 adduser ceph u 2000 必須要新增密碼,否則無法配置ssh互信 echo 123321 sleep 1 echo 123321 passwd ceph...

Ceph快速部署

這裡不對ceph做介紹,由於ceph有多種部署方式,本文利用最方便得方式來部署,那麼就是ceph deploy 本文件部署全部基於centos6.6 x86 64發行版的linux,筆者的環境是在workstation上安裝的虛擬機器 hostname address role ceph admin...

CentOS7下搭建Ceph(二)

ceph用做塊裝置,建立乙個塊裝置並安裝在客戶端。此時,在admin端輸入安裝命令 ceph deploy install client ceph deploy admin client sudo chmod 644 etc ceph ceph.client.admin.keyring 建立10g的...