环境
操作系统
Rocky Linux 9.2 minimal
三个节点节点名称
ipmi | pub ip | clus ip |
---|---|---|
ceph1 | 192.168.255.8 | 192.168.120.10 |
ceph2 | 192.168.255.9 | 192.168.120.20 |
ceph3 | 192.168.255.10 | 192.168.120.30 |
所有节点
yum -y install dmidecode vim wget lvm2 chrony epel-release yum-utils device-mapper-persistent-data
yum -y install podman # reef默认使用podman不再使用docker
配置chrony同步内网时钟源
以ceph1作为时钟源为例:
ceph1中的/etc/chrony.conf配置
pool ceph1 iburst
allow 192.168.255.0/24
localstratum 10
其他节点的/etc/chrony.conf配置
server ceph1 iburst
关闭防火墙和selinux
systemctl disable --now firewalld
setenforce 0; sed -i 's/SELINUX=enforcing/SELINUX=disabled/g' /etc/selinux/config
部署节点
安装release-ceph
dnf search release-ceph
dnf install --assumeyes centos-release-ceph-reef.noarch
yum -y install ceph-common
安装cephadm
dnf -y install cephadm
pub和clus网络配置SSH互信到其他节点
配置podman仓库可信
[root@ceph03 ~]# cat /etc/containers/registries.conf.d/myregistry.conf
[[registry]]
location = "reg.ankele.com"
insecure = true
完事后,可能要podman login reg.ankele.com -u admin -p Harbor12345
不需要重启podman服务
部署
# 指定镜像
export CEPHADM_IMAGE="reg.ankele.com/ceph/ceph:v18"
# 千万不要cehpadm --docker,会有问题的
cephadm bootstrap \
--mon-ip 192.168.255.8 \
--cluster-network 192.168.120.0/24 \
--log-to-file \
--initial-dashboard-user admin \
--initial-dashboard-password admin \
--allow-overwrite
复制ceph.pub到其他节点
ssh-copy-id -f -i /etc/ceph/ceph.pub root@ceph2
ssh-copy-id -f -i /etc/ceph/ceph.pub root@ceph3
添加节点
ceph orch host add ceph2
ceph orch host add ceph3
添加osd
ceph orch device ls # 这里可能会显示有的盘unavailable,因为他们有LVM或者GPT header,按照下边的方法删除标记
ceph orch host add 完后可能出现device ls看不到盘,这时可以尝试ceph orch host rm 掉这个节点再添加回来
ceph orch apply osd --all-available-devices # 添加完节点后默认30min后其上的硬盘才能available
或者一个一个添加
ceph orch daemon add osd ceph1:/dev/nvme0n1
若是添加OSD失败,
可以查看一下是否有LVM标记或者GPT header
查看wipefs -n /dev/nvme0n1
删除标记wipefs -a /dev/nvme0n1 或者 wipefs -o 0x218 /dev/nvme1n1
登录到https://192.168.120.10:8443修改密码admin为HelloWorld
修改密码:ceph dashboard ac-user-set-password admin -i ./dashboard_password.yml