具體安裝之前對作業系統做如下限制,其它版本的作業系統不保證能夠安裝成功。
作業系統:centos 6.5
ceph版本號:hammer v10.2.3
本安裝教程假設有4臺伺服器(或者虛擬機器),1臺作為管理節點,另外3臺作為儲存節點。當然,也可以用儲存節點中的一台作為管理節點。具體位址和主機名稱如圖所示。
需要在各個伺服器上新增解析,方法是開啟hosts檔案,新增如下內容:
開啟hosts檔案的方法:
# vim /etc/hosts
192.168.1.100 ceph-u0-l0ceph-deploy是ceph的遠端部署工具,可以在管理節點實現分布式部署。192.168.1.101 ceph-u0-m0
192.168.1.102 ceph-u0-r0
192.168.1.50 admin
1. 配置ceph安裝源
使用官方yum源,在yum庫新建乙個檔案(vim /etc/yum.repos.d/ceph.repo),內容如下:
由於某些原因,官方源速度可能比較慢,可以使用國內的安裝源,比如阿里:[ceph-noarch]name=ceph noarch packages
baseurl=
enabled=1
gpgcheck=1
type=rpm-md
gpgkey=
2. 更新軟體源,並安裝ceph-deploy[ceph-x86]name=ceph noarch packages
baseurl=
enabled=1
gpgcheck=0
type=rpm-md
yum update
yum install ceph-deploy -y
安裝ntp
安裝ntp,用於集群節點的時間同步。
apt-get install ntp
確保ssh服務已被安裝
可能需要安裝ssh服務,如果已經安裝則忽略該步驟。
sudo apt-get install openssh-server
建立ceph部署賬戶
在每個儲存節點上建立ceph賬戶及ssh訪問
每個節點上建立ceph使用者
sudo useradd -d /home/cephd -m cephd
sudo passwd cephd
確保具有sudo許可權
echo "cephd all = (root) nopasswd:all" | sudo tee /etc/sudoers.d/cephd
sudo chmod 0440 /etc/sudoers.d/cephd
配置無密碼訪問
配置管理節點可以實現對其它節點的無密碼訪問,在管理節點執行如下命令。
ssh-keygen所有提示採用預設配置,直接回車。生成公鑰/私鑰對,並拷貝到其它節點
ssh-copy-id cephd@ceph-u0-m0
ssh-copy-id cephd@ceph-u0-r0
ssh-copy-id cephd@ceph-u0-l0
ssh-copy-id 將本機的公鑰複製到遠端機器的authorized_keys檔案中(~/.ssh/authorized_keys)
預設採用cephd使用者,修改(新建)/root/.ssh/config檔案,增加如下內容:
通過ssh命令測試一下,是否可以無密碼訪問。host ceph-u0-l0hostname ceph-u0-l0
user cephd
host ceph-u0-m0
hostname ceph-u0-m0
user cephd
host ceph-u0-r0
hostname ceph-u0-r0
user cephd
ssh ceph-u0-m0
建立ceph集群本集群部署情況,為ceph-u0-m0部署乙個monitor節點,同時在ceph-u0-l0和ceph-u0-r0上各部署乙個osd節點。
在管理節點的/root目錄下執行:
mkdir my-cluster如果需要(新安裝的系統通常不需要),部署之前確保ceph每個節點沒有ceph資料報(先清空之前所有的ceph資料,如果是新裝不用執行此步驟,如果是重新部署的話也執行下面的命令)cd my-cluster
[root@ceph-deploy]# ceph-deploy purge ceph-deploy ceph-u0-m0 ceph-u0-l0 ceph-u0-r0如果是乾淨環境,直接執行如下命令,該命令在my-cluster資料夾生成集群必須的檔案。[root@ceph-deploy]# ceph-deploy purgedata ceph-deploy ceph-u0-m0 ceph-u0-l0 ceph-u0-r0
[root@ceph-deploy]# ceph-deploy forgetkeys
ceph-deploy new ceph-u0-l0
修改ceph.conf配置檔案
安裝軟體包admin節點向各節點安裝ceph[global]fsid = c70a17e3-f677-46cb-8744-b628592d69d6
mon_initial_members = ceph-u0-l0
mon_host = 192.168.32.2
auth_cluster_required = cephx
auth_service_required = cephx
auth_client_required = cephx
filestore_xattr_use_omap = true
osd pool default size = 3
public network = 192.168.1.0/24
[osd]
osd journal size = 20000
ceph-deploy install ceph-u0-l0 ceph-u0-m0 ceph-u0-r0 --repo-url= --gpg-url=新增初始監控節點並收集金鑰
ceph-deploy mon create-initial此時,檢視my-cluster目錄多了下面幾個檔案
新增osd節點osd是儲存資料的單元,新建完集群後需要新增osd節點ceph.bootstrap-mds.keyringceph.bootstrap-osd.keyring
ceph.bootstrap-rgw.keyring
ceph.client.admin.keyring
ceph-deploy osd prepare ceph-u0-l0:sdb ceph-u0-m0:sdb ceph-u0-r0:sdb
ceph-deploy osd activate ceph-u0-l0:sdb1 ceph-u0-m0:sdb1 ceph-u0-r0:sdb1
複製ceph配置檔案及金鑰到mon、osd節點
ceph-deploy admin ceph-u0-l0 ceph-u0-m0 ceph-u0-r0確保有正確的ceph.client.admin.keyring許可權
sudo chmod +r /etc/ceph/ceph.client.admin.keyring檢視集群執行狀態
ceph -s狀態大致如圖所示,根據實際配置略有不同。
Ceph分布式儲存安裝 xiaoma
ceph分布式儲存安裝 前言參照官方文件中的快速安裝,結合國內環境,將相關安裝源修改為國內映象源提高安裝速度。基礎系統環境 新增阿里雲yum源mv etc yum.repos.d centos base.repo etc yum.repos.d centos base.repo.backup cur...
分布式儲存系統 Ceph
你了解ceph嗎?ceph是一種分布式儲存系統,它可以將多台伺服器組成乙個超大集群,把這些機器中的磁碟資源整合到一塊兒,形成乙個大的資源池 pb級別 然後按需分配給應用使用。那麼你知道ceph的架構嗎?ceph的底層實現是rados,rados是由c 寫的,但是它向外界暴露了呼叫介面,即librad...
分布式儲存系統 Ceph
你了解ceph嗎?ceph是一種分布式儲存系統,它可以將多台伺服器組成乙個超大集群,把這些機器中的磁碟資源整合到一塊兒,形成乙個大的資源池 pb級別 然後按需分配給應用使用。那麼你知道ceph的架構嗎?ceph的底層實現是rados,rados是由c 寫的,但是它向外界暴露了呼叫介面,即librad...