一、cephadm介绍
Cephadm是一个由Ceph社区维护的工具,它用于在Ceph集群中管理和部署Ceph服务。它是一个基于容器化的工具,使用了容器技术来部署Ceph集群的不同组件。
使用Cephadm,管理员可以通过简单的命令行界面在整个Ceph集群中进行自动化部署、更新和维护。它提供了一种简单而灵活的方法来管理Ceph集群,而无需深入了解Ceph集群的内部工作原理。
Cephadm还提供了一些有用的功能,如在集群中添加新的节点、删除现有节点、进行配置更改等等。它还可以自动检测并修复一些常见的问题,例如节点故障、网络问题等等。
从ceph5开始使用cephadm代替之前的ceph-ansible作为管理整个集群生命周期的工具,包括部署,管理,监控。
cephadm引导过程在单个节点(bootstrap节点)上创建一个小型存储集群,包括一个Ceph Monitor和一个Ceph Manager,以及任何所需的依赖项。
cephadm可以登录到容器仓库来拉取ceph镜像和使用对应镜像来在对应ceph节点进行部署。ceph容器镜像对于部署ceph集群是必须的,因为被部署的ceph容器是基于那些镜像。
为了和ceph集群节点通信,cephadm使用ssh。通过使用ssh连接,cephadm可以向集群中添加主机,添加存储和监控那些主机。
该节点让集群up的软件包就是cepadm,podman或docker,python3和chrony。总之,Cephadm是一个非常强大和实用的工具,可以大大简化Ceph集群的管理和部署过程,为管理员提供了更高效和可靠的管理方式。
1、python3
yum -y install python3
2、使用docker来运行容器
安装步骤及docker学习资料可查看http://xingxingxiaowo.xyz:4000/
# 注: 自己搭建的网站,非商用
# 安装阿里云提供的docker-ce
yum install -y yum-utils device-mapper-persistent-data lvm2
yum-config-manager --add-repo https://mirrors.aliyun.com/docker-ce/linux/centos/docker-ce.repo
sudo sed -i 's/download.docker.com/mirrors.aliyun.com\/docker-ce/g' /etc/yum.repos.d/docker-ce.repo
sudo yum install docker-ce docker-ce-cli containerd.io docker-compose-plugin
systemctl enable --now docker
systemctl status docker #查看状态
# 配置镜像加速器
mkdir -p /etc/docker
tee /etc/docker/daemon.json <<-'EOF'
{
"registry-mirrors": ["https://bp1bh1ga.mirror.aliyuncs.com"]
}
EOF
sudo systemctl daemon-reload
sudo systemctl restart docker
3、时间同步(比如chrony或者NTP)
# yum install chrony -y
vi /etc/chrony.conf
# cat /etc/chrony.conf |grep -v ^# |grep -v ^$
#server 0.centos.pool.ntp.org iburst
#server 1.centos.pool.ntp.org iburst
#server 2.centos.pool.ntp.org iburst
#server 3.centos.pool.ntp.org iburst
server ntp1.aliyun.com iburst
server ntp2.aliyun.com iburst
server ntp3.aliyun.com iburst
#allow 192.168.0.0/16
allow all
local stratum 10
systemctl enable --now chronyd
systemctl status chronyd
设置时区Asia/ Shanghai
# timedatectl set-timezone Asia/Shanghai
# chronyc sources
# chronyc tracking #同步服务状态
显示当前正在访问的时间源
# chronyc sources -v
客户端
cat /etc/chrony.conf
#server 0.centos.pool.ntp.org iburst
#server 1.centos.pool.ntp.org iburst
#server 2.centos.pool.ntp.org iburst
#server 3.centos.pool.ntp.org iburst
server node1 iburst
systemctl enable --now chronyd
systemctl status chronyd