基础环境
CentOS 7.9
设置服务器信息
# 设置HOST
hostnamectl set-hostname ceph && bash
cat > /etc/hosts << EOF
192.168.6.95 ceph
127.0.0.1 localhost localhost.localdomain localhost4 localhost4.localdomain4
::1 localhost localhost.localdomain localhost6 localhost6.localdomain6
EOF
# 关闭SELINUX
setenforce 0;sed -i 's/^SELINUX=enforcing$/SELINUX=disabled/' /etc/selinux/config;
echo "ulimit -HSn 9999999" >> /etc/profile
ceph YUM 仓库
# 按照命令编辑 vi /etc/yum.repo.d/ceph.repo,写入如下内容:
[ceph]
name=Ceph packages for $basearch baseurl=https://mirrors.aliyun.com/ceph/rpm-octopus/el7/$basearch enabled=1 gpgcheck=1
type=rpm-md
gpgkey=https://mirrors.aliyun.com/ceph/keys/release.asc
yum makecache
sudo yum install -y epel-release
sudo yum install -y lttng-ust
## 解决docker 依赖
sudo yum install -y container-selinux
sudo yum install -y fuse-overlayfs slirp4netns
sudo yum update -y
yum install ceph-common radosgw
镜像拉取
- 国内快速拉镜像加速方式:dockerproxy.com
docker pull quay.dockerproxy.com/ceph/ceph:v15
docker tag quay.dockerproxy.com/ceph/ceph:v15 quay.io/ceph/ceph:v15
安装cephadm
wget https://raw.githubusercontent.com/ceph/ceph/octopus/src/cephadm/cephadm
chmod +x ./cephadm
\cp -r ./cephadm /usr/local/bin/
初始化ceph
cephadm bootstrap --mon-ip 192.168.6.95 --allow-overwrite
设置服务
前置要求
A storage device is considered available if all of the following conditions are met:
The device must have no partitions.
The device must not have any LVM state.
The device must not be mounted.
The device must not contain a file system.
The device must not contain a Ceph BlueStore OSD.
The device must be larger than 5 GB.
进入ceph终端
cephadm shell
自动添加OSD
# 查看设备是否可用
ceph orch device ls
ceph orch apply osd --all-available-devices
# 设置日志
ceph config set global log_to_file true
ceph config set global log_file /var/log/ceph/ceph.log
# 修改pg存储副本为1,防止集群状态WARN
for i in `ceph osd pool ls`;do ceph osd pool set $i size 1 ;done
# 忽略警告 ,需要重启,systemctl restart ceph.target
ceph config set global mon_warn_on_pool_no_redundancy false
# 设置默认osd pool
ceph config set global osd_pool_default_size 1
开启RGW
# 检查RGW服务是否已经启动
ceph orch ps --daemon-type rgw
# 查看RGW服务有没有启动
ceph orch ls --service-type rgw
radosgw-admin realm create --rgw-realm=testenv --default
radosgw-admin zonegroup create --rgw-zonegroup=test --master --default
radosgw-admin zone create --rgw-zonegroup=test --rgw-zone=room1 --master --default
ceph orch apply rgw testenv test-1 --placement="*"
radosgw-admin user create --uid=dashboard --display-name=dashboard --system
# 设置dashboard 访问key和secret
ceph dashboard set-rgw-api-access-key -i access-key
ceph dashboard set-rgw-api-secret-key -i secret-key
卸载ceph
# fsid 是必须参数
cephadm rm-cluster --fsid d71b7880-0dbb-11ef-92c3-525400c71988 --force
# 恢复硬盘为块设备
ceph-volume lvm zap /dev/sdb --destroy
ceph-volume lvm zap /dev/sdc --destroy
ceph-volume lvm zap /dev/sdd --destroy
ceph-volume lvm zap /dev/sde --destroy
wipefs -a /dev/sdb
wipefs -a /dev/sdc
wipefs -a /dev/sdd
wipefs -a /dev/sde