搭建ceph集群(單節點)

2022-05-21 22:30:09 字數 3705 閱讀 4850

軟體環境:

- centos7 x64

ceph版本 :

- ceph-deploy v1.5.37

- ceph version 10.2.9

步驟1.修改主機名(即節點名)

1) sed -i 『/hostname/d』 /etc/sysconfig/network

echo 「hostname=主機名」 >> /etc/sysconfig/network

cat /etc/sysconfig/network

2) echo 「ip位址 主機名」 >> /etc/hosts

cat /etc/hosts

3) hostname cydb

hostname -f

重啟步驟2.配置ssh

ssh-keygen -t rsa -p 」 -f ~/.ssh/id_rsa(-t rsa用rsa加密,-p 『』空密碼,-f儲存密碼的位置)

ssh-copy-id root@主機名

步驟3.配置firewall

(開啟6789埠給mon,6800-7100埠給osd)

firewall-cmd –zone=public –add-port=6789/tcp –permanent

firewall-cmd –zone=public –add-port=6800-7100/tcp –permanent

firewall-cmd –reload

firewall-cmd –zone=public –list-all

步驟4.關閉selinux

setenforce 0

sed -i s』/selinux.*=.*enforcing/selinux=disabled』/g /etc/selinux/config

cat /etc/selinux/config

可看到selinux=disabled

步驟5.

yum install -y

步驟6.新增ceph.repo檔案(把軟體包源加入軟體倉庫)

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

寫入 [ceph-noarch]

name=ceph noarch packages

baseurl=

enabled=1

gpgcheck=1

type=rpm-md

gpgkey=

步驟7 安裝ceph-deploy(要更新軟體庫)

sudo yum update

sudo yum install ceph-deploy

檢查是否安裝成功:ceph-deploy –help

步驟8.部署cluster(集群)

mkdir /opt/ceph-cluster

cd /opt/ceph-cluster

ceph-deploy new 節點名

(這時可以ls一下當前目錄,會有乙個ceph配置檔案、乙個monitor金鑰環。乙個日誌檔案。)

echo 「osd crush chooseleaf type = 0」 >> ceph.conf

echo 「osd pool default size = 1」 >> ceph.conf

echo 「osd journal size = 100」 >> ceph.conf

cat ceph.conf

步驟9.安裝ceph

修改ceph源(外國的源總是timeout)

export ceph_deploy_repo_url=

export ceph_deploy_gpg_url=

安裝ceph

ceph-deploy install 節點名

報錯則執行yum remove -y ceph-release之後重新安裝ceph

檢查是否安裝成功:ceph –version

步驟10.部署monitor

ceph-deploy mon create-initial

檢查集群狀態:ceph -s

(顯示現在是health_err不健康狀態)

步驟11.部署兩個osd

1)準備兩個塊裝置(可以是硬碟也可以是lvm卷),這裡我們使用lvm(邏輯卷)

dd if=/dev/zero of=ceph-volumes.img bs=1m count=8192 oflag=direct

sgdisk -g –clear ceph-volumes.img

sudo vgcreate ceph-volumes $(sudo losetup –show -f ceph-volumes.img)

sudo lvcreate -l2g -nceph0 ceph-volumes

sudo lvcreate -l2g -nceph1 ceph-volumes

sudo mkfs.xfs -f /dev/ceph-volumes/ceph0

sudo mkfs.xfs -f /dev/ceph-volumes/ceph1

mkdir -p /srv/ceph/

sudo mount /dev/ceph-volumes/ceph0 /srv/ceph/osd0

sudo mount /dev/ceph-volumes/ceph1 /srv/ceph/osd1

建立了兩個虛擬磁碟ceph0和ceph1並分別掛載到/srv/ceph/osd0和/srv/ceph/osd1目錄下

2)掛載兩個osd

ceph-deploy osd prepare monster:/srv/ceph/osd0

ceph-deploy osd prepare monster:/srv/ceph/osd1

3)啟用兩個osd

ceph-deploy osd activate monster:/srv/ceph/osd0

ceph-deploy osd activate monster:/srv/ceph/osd1

報錯:runtimeerror: failed to execute command: ceph-disk -v activate –mark-init upstart –mount /srv/ceph/osd0

解決:使用命令 sudo chown ceph:ceph /srv/ceph/osd0,然後重新啟用

步驟12.複製admin金鑰到其他節點

ceph-deploy admin monster

驗證:

ceph的安裝狀態:ceph -s

ceph集群健康狀態:ceph -w

ceph monitor仲裁狀態:ceph quorum_status –format json-pretty

ceph mon stat

ceph osd stat

ceph osd tree(顯示crush圖)

ceph pg stat

ceph auth list(集群的認證密碼)

如果碰到麻煩,要從頭再來,可以用下列命令清楚配置:

ceph-deploy purgedata

ceph-deploy forgetkeys

用下列命令可以連 ceph 安裝包一起清除:

ceph-deploy purge

之後必須重新安裝 ceph

參考文章: 14.04 單機安裝 ceph

Ceph 手動搭建ceph集群

hostname ipmon id 磁碟快journal ceph1 192.168.1.1 0 dev sdb2 dev sdb1 ceph2 192.168.1.2 1 dev sdb2 dev sdb1 ceph3 192.168.1.3 2 dev sdb2 dev sdb1 使用yum來安...

Ceph基礎之搭建ceph集群

8 更新源 yum update ysetenforce 0 4 安裝ntp,在所有ceph節點上執行 2 用ceph deploy建立ceph集群mkdir etc ceph 生成乙個新的ceph集群,集群包括ceph配置檔案以及monitor的金鑰環。3 安裝ceph二進位制軟體包ceph de...

redis單節點及集群搭建

1.redis是單執行緒,高效能的key value記憶體資料,基於記憶體執行並支援持久化的nosql資料庫 2.redis主要用來做快取,但不僅僅是做快取,例如 redis的計數器生成分布式唯一主鍵,redis實現分布式鎖,佇列,會話快取 安裝單節點redis 1 安裝gcc套裝 yum inst...