K8S对接ceph的RBD块存储

要在Kubernetes中对接Ceph的RBD块存储,你需要使用Ceph提供的FlexVolume插件或者CSI插件。以下是使用CSI插件的一个基本示例:

1.确保你的Ceph集群允许CSI插件访问。

2.安装Ceph CSI驱动。

3.配置Kubernetes以使用CSI驱动。

4.创建一个使用RBD卷的Pod。

以下是一个简单的步骤示例:

1.安装Ceph CSI驱动。

安装Ceph CSI驱动

kubectl apply -f https://raw.githubusercontent.com/ceph/ceph-csi/master/deploy/rbd/kubernetes.yaml

2.确保Ceph集群信息在Kubernetes Secret中。

创建一个Ceph CSI的Secret

apiVersion: v1

kind: Secret

metadata:

name: csi-rbd-secret

namespace: default

stringData:

userID: admin

userKey: admin-key

3.创建一个使用RBD卷的Pod。

apiVersion: v1

kind: Pod

metadata:

name: rbd-pod

spec:

containers:

  • name: test-container

image: busybox

volumeMounts:

  • name: rbd-pvc

mountPath: /mnt/rbd

volumes:

  • name: rbd-pvc

persistentVolumeClaim:

claimName: rbd-pvc

4.创建一个PersistentVolumeClaim使用RBD卷。

apiVersion: v1

kind: PersistentVolumeClaim

metadata:

name: rbd-pvc

spec:

accessModes:

  • ReadWriteOnce

resources:

requests:

storage: 1Gi

volumeMode: Block

storageClassName: csi-rbd-sc

5.创建一个StorageClass。

apiVersion: storage.k8s.io/v1

kind: StorageClass

metadata:

name: csi-rbd-sc

provisioner: rbd.csi.ceph.com

parameters:

pool: rbd

imageFormat: "2"

imageFeatures: layering

确保你已经根据Ceph集群的实际配置调整了上述配置文件中的参数,如Ceph的用户ID、用户密钥、存储池名称等。

这个示例只是一个基础的指导。根据你的实际环境,你可能需要进行额外的配置,比如安全上下文、资源配额管理等。

相关推荐
马达加斯加D11 小时前
k8s --- Intro
云原生·容器·kubernetes
梁正雄14 小时前
16、Docker swarm-3
运维·docker·容器
爱吃糖的小秦同学15 小时前
Docker爆红且安装非C盘处理方案
运维·docker·容器
!chen15 小时前
k8s-应用部署和组件及常用命令
云原生·容器·kubernetes
亿牛云爬虫专家17 小时前
用 Playwright + 容器化做分布式浏览器栈:调度、会话管理与资源回收
分布式·docker·容器·浏览器·爬虫代理·新闻网站·playwright
tnan252217 小时前
基于阿里云效实现cicd记录
阿里云·ci/cd·docker·容器·自动化
lijun_xiao200918 小时前
DevOps(devops/k8s/docker/Linux)学习笔记-4
docker·kubernetes·devops
坚持的小马19 小时前
k8s中执行脚本如果提示etcd找不到,可以做如下的操作
容器·kubernetes·etcd
easy_coder19 小时前
从HDFS NN报错看Flink+K8s+HDFS:基础、架构与问题关联
hdfs·flink·kubernetes
回忆是昨天里的海21 小时前
k8s-部署springboot容器化应用
java·容器·kubernetes