目 录CONTENT

文章目录

ceph

xlong
2024-03-24 / 0 评论 / 0 点赞 / 60 阅读 / 3998 字 / 正在检测是否收录...

ceph

ceph安装

ceph rgw

添加rgw用户:

radosgw-admin user create --uid=aaaa  --display-name=aaaa --system --rgw-zone=default

ceph dashboard

创建dashboard用户

ceph dashboard ac-user-create abc 13245R administrator

在dashboard中管理rgw

#先创建一个系统账户(加上--system这个参数,就能看到assess_key和secret_key了)
radosgw-admin user create --uid=abc  --display-name=abc --system --rgw-zone=default --admin 
#设置access_key
ceph dashboard set-rgw-api-access-key 122455
#设置secret_key
ceph dashboard set-rgw-api-secret-key 145247
#设置ssl
ceph dashboard set-rgw-api-ssl-verify False
#设置rgw地址
ceph dashboard set-rgw-api-host 192.168.1.11
#设置端口
ceph dashboard set-rgw-api-port 18881
#设置scheme
ceph dashboard set-rgw-api-scheme http
#设置用户id
ceph dashboard set-rgw-api-user-id abc
​
#刷新web页面就能看到rgw信息了。

挂载

挂载cephfs:

mount -t ceph 10.30.25.3:6789:/ cephfs -o name=admin,secret=xxx

ceph安装错误

cephadm --image quay.mirrors.ustc.edu.cn/ceph/ceph:v17 bootstrap --mon-ip 192.168.1.5 引导的过程报错:

/usr/bin/ceph: stderr TypeError: init() missing 2 required positional arguments: 'hostname' and 'addr'

原因ssh端口不是默认的22端口,ssh报错,错误显示不明显。

解决方法: 方法一:ssh添加22端口。方法二: 修改cephadm python脚本文件,修改ssh-copy-id 添加端口参数。

无适配安装包使用cephfs文件系统

系统:uos 20 1050d系统,架构: arm64

uos官方和ceph官方都没有直接可以使用的arm64 deb包。默认情况下,客户端使用cephfs挂载文件需要安装ceph-common包。而ceph官方也只有ubuntu版本有arm64版本的包,因为依赖c和c++等高版本安装包,因此无法安装使用。

# uos ceph无法安装ceph命令、无法挂载cephfs文件系统解决方法:
# 因为使用容器可以摆脱uos系统的依赖,因此使用ubuntu focal版的源可以正常安装arm64版本cephadm,但无法安装其他包。
# 查看官方文档发现mount方式是通过/sbin/mount.ceph文件进行挂载的,通过镜像里面的文件复制到uos系统实现文件挂载。
​
docker cp cephadm-shell:/sbin/mount.ceph mount.ceph
# 查看库文件依赖发现只少了一个库文件 libceph-common.so.2 => not found
#ldd /sbin/mount.ceph
docker cp cephadm-shell:/usr/lib64/ceph/libceph-common.so.2 libceph-common.so.2
cp mount.ceph /sbin/
mkdir /usr/lib64/ceph/ && cp libceph-common.so.2 /usr/lib64/ceph/libceph-common.so.2

ceph磁盘清理

当磁盘使用过,没有清理时,ceph osd 无法将磁盘加入osd集群。这时就需要清理磁盘,清理之前请确认数据不再需要。

#清理磁盘
DISK="/dev/sdb"
​
# 将磁盘切换到全新的可用状态(zap-all 很重要,b/c MBR 必须干净)
# 您必须对所有磁盘运行此步骤。
sgdisk --zap-all $DISK
dd if=/dev/zero of="$DISK" bs=1M count=100 oflag=direct,dsync
# 这些步骤只需在每个节点上运行一次
# 如果 rook 使用 ceph-volume 设置 osd,则拆卸会留下一些锁定磁盘的映射设备。
​
ls /dev/mapper/ceph-* | xargs -I% -- dmsetup remove %
# ceph-volume 设置可以将 ceph-<UUID> 目录保留在 /dev 中(不必要的混乱)
rm -rf /dev/ceph-*


0

评论区