运维训练营第十课作业
1.熟练管理存储池(创建存储池、删除存储池)、掌握 pg 与 pgp 的基本分配方法
脚本详见:https://github.com/jianywu/cloud_learn/blob/main/ceph/ceph_install/10_code_pool.sh
创建用 osd pool create 命令即可,删除用 delete 命令,要写两次。
pg 与 pgp 的分配方法:在创建 pool 的时候,就指定 pg 和 pgp,第一个参数是 pg,第二个是 pgp,注意需要为 2 的 N 次方。否则系统会提示 is not a power of two。
查看 pg 和 pgp 的映射关系:
2.熟练 ceph 的用户管理及授权
脚本详见:https://github.com/jianywu/cloud_learn/blob/main/ceph/ceph_install/12_compress_auth.sh
查看某个用户的授权,比如 admin。
新增 key 的方式修改用户权限,也可以用于获得用户的 key。
配置 caps 的方式修改用户权限。
ceph auth import -i ceph.client.user1.keyring
可以导入某个用户的授权。
3.使用普通客户挂载块存储
脚本详见:https://github.com/jianywu/cloud_learn/blob/main/ceph/ceph_install/13_rbd.sh
先在主机上查看 rbd 的配置,rbd-data1 的 pool 里,建了 2 个 img,data-img1 和 data-img2。
然后在其它主机上,建普通用户,安装 ceph-common,来访问集群。
把/dev/rbd1 格式化为 xfs 文件系统。
然后挂载到目录。
可以尝试把 mysql 安装到这个/data/rbd_test0 目录。
测试 mysql 的访问。
ceph 可以使用普通用户挂载。
把镜像拉伸到 7G 大小。
4.使用普通用户挂载 cephfs(可以通过 secret 或者 secretfile 的形式多主机同时挂载)
脚本详见:https://github.com/jianywu/cloud_learn/blob/main/ceph/ceph_install/8_cephfs.sh
在其它主机挂载之后,就可以看到有 2 个 clients 了。
可以通过 secret=,或者 secretfile=的方式挂载。
5.实现 MDS 服务的多主一备高可用架构
脚本详见:https://github.com/jianywu/cloud_learn/blob/main/ceph/ceph_install/14_mds.sh
ceph-deploy mds create mds1
ceph-deploy mds create mds2
ceph fs get mycephfs
ceph fs set mycephfs max_mds 2
# 分配 ceph 的 mon 和 mgr
ceph-deploy --overwrite-conf config push ceph-mon3
ceph-deploy --overwrite-conf config push ceph-mon2
ceph-deploy --overwrite-conf config push ceph-mgr1
systemctl restart ceph-mds@ceph-mon3.service
systemctl restart ceph-mds@ceph-mon2.service
systemctl restart ceph-mds@ceph-mgr1.service
执行命令,可以创建额外的 mds。
评论