kubernetes连接ceph rbd存储

  1. 为kubernetes创建一个存储池
    ceph osd pool create k8s 128

2.为ceph添加一个kubernetes secret
[root@k8s-master1 ceph]# echo "$(ceph auth get-key client.admin)"|base64
QVFCTk9DZGNlWXM4TEJBQTJ4YTROcGh5WUhaN2FBWGNRV1VFVHc9PQo=

[root@k8s-master1 ceph]# cat ceph-secret.yaml
apiVersion: v1
kind: Secret
metadata:
name: ceph-secret
namespace: kube-system
type: "kubernetes.io/rbd"
data:
key: "QVFCTk9DZGNlWXM4TEJBQTJ4YTROcGh5WUhaN2FBWGNRV1VFVHc9PQo="

[root@k8s-master1 ceph]kubectl create -f ceph-secret.yaml

  1. 创建一个StorageClass
    ceph-rbd-storageclass.yaml

[root@k8s-master1 ceph]# cat ceph-secret.yaml
apiVersion: v1
kind: Secret
metadata:
name: ceph-secret
namespace: kube-system
type: "kubernetes.io/rbd"
data:
key: "QVFCTk9DZGNlWXM4TEJBQTJ4YTROcGh5WUhaN2FBWGNRV1VFVHc9PQo="
[root@k8s-master1 ceph]# cat ceph-
ceph-pvc.json ceph-rbd-storageclass.yaml ceph-secret.yaml
[root@k8s-master1 ceph]# cat ceph-rbd-storageclass.yaml
apiVersion: storage.k8s.io/v1beta1
kind: StorageClass
metadata:
name: fast
provisioner: kubernetes.io/rbd
parameters:
monitors: 192.168.1.86:6789,192.168.1.87:6789,192.168.1.88:6789
adminId: admin
adminSecretName: ceph-secret
adminSecretNamespace: kube-system
pool: k8s
userId: admin
userSecretName: ceph-secret

[root@k8s-master1 ceph]kubectl create -f ceph-rbd-storageclass.yaml
[root@k8s-master1 ceph]kubectl get storageclass

4.测试
ceph-pvc.json
{
"kind": "PersistentVolumeClaim",
"apiVersion": "v1",
"metadata": {
"name": "claim1",
"annotations": {
"volume.beta.kubernetes.io/storage-class": "fast"
}
},
"spec": {
"accessModes": [
"ReadWriteOnce"
],
"resources": {
"requests": {
"storage": "3Gi"
}
}
}
}

转载于:https://blog.51cto.com/7032661/2339177

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值