K8S集群上部署Ceph
文章目录
现在都讲究云原生,Rook是一个云原生存储开源项目。基于它部署Ceph将十分简单方便
-
安装
Ceph集群。下载Rook相应的Release包,并解压。Ceph部 署支持三种模式,这里以BlockStorage为例1 2 3 4 5cd cluster/examples/kubernetes/ceph kubectl create -f common.yaml kubectl create -f operator.yaml # 前面二个直接执行,下面的文件有很多注释,在生产环境下,根据实际情况进行调整。生产当中,建议拿几台机器专门跑Ceph存储节点 kubectl create -f cluster.yaml -
准备
StorageClass1 2# 根据实际情况,修改自带的StorageClass相关属性 vim cluster/examples/kubernetes/ceph/csi/rbd/storageclass.yaml -
声明
PVC1 2 3 4 5 6 7 8 9 10 11apiVersion: v1 kind: PersistentVolumeClaim metadata: name: data-claim spec: storageClassName: rook-ceph-block accessModes: - ReadWriteOnce resources: requests: storage: 2Gi1kubectl apply -f pvc.yaml -
Deployment应用PVC1 2 3 4 5 6 7 8 9 10 11 12...... terminationMessagePath: /dev/termination-log terminationMessagePolicy: File volumeMounts: - mountPath: /data name: data-volume ...... terminationGracePeriodSeconds: 3 volumes: - name: data-volume persistentVolumeClaim: claimName: data-claim额外组件
Dashboard
默认是启用
Dashboard的,除非你禁用了。系统会创建Dashboard相关的Pod与Service。但如果要外部能访问,还是要做一点事情的.-
暴露
Service使外部可以访问1 2 3cd cluster/examples/kubernetes/ceph kubect apply -f dashboard-external-https.yaml kubectl get svc -n rook-ceph -
获取
Dashboard的密码1 2 3kubectl get secret rook-ceph-dashboard-password \ -n rook-ceph -o jsonpath="{['data']['password']}" \ | base64 --decode && echo
-
文章作者 UnknowName
上次更新 2021-03-03