
07.Rook在k8s部署ceph
1.Rook介绍
Rook是一个自管理的分布式存储编排系统,可以为k8s提供便利的存储解决方案
Rook本身并不提供存储,而是在k8s和存储之间提供适配层,简化存储系统的部署和维护工作
支持:
1.Ceph
2.NFS
3.Cassandra
缺点 :不利于后期维护
2.Rook架构
基本要求:
- k8s集群1.16版本+,至少3个工作节点
- 工作节点有一块未使用的硬盘
- 仅支持Ceph Nauthus以上版本
3.k8s部署ceph
1.部署ceph集群
git clone --branch v1.7 https://github.com/rook/rook.git cd rook-release-1.7/cluster/examples/kubernetes/ceph kuebectl create -f crds.yam -f common.yaml -f operator.yaml kubectl create -f cluster.yaml2.部署工具
kubectl create -f toolbox.yaml3.部署dashboard
kubectl apply -f dashboard-external-http.yaml kubectl -n rook-ceph get svc # 获取dashboard admin密码 kubectl -n rook-ceph get secret rook-ceph-dashboard-password -o jsonpath="{['data']['password']}" | base64 -d4.RBD测试
kubectl apply -f csi/rbd/storageclass.yaml cd ../ kubectl apply -f mysql.yaml kubectl apply -f wordpress.yaml kubectl get pvc kubectl get pods.svc5.CephFS测试
kubectl apply -f filesystem.yaml kubectl apply -f csi/cephfs/storageclass.yaml.