配置Kubernetes共享使用Ceph存储
发表于:2025-02-03 作者:千家信息网编辑
千家信息网最后更新 2025年02月03日,目录简要概述环境测试结果验证简要概述Kubernetes pod 结合Ceph rbd块设备的使用,让Docker 数据存储在Ceph,重启Docker或k8s RC重新调度pod 不会引起数据来回迁
千家信息网最后更新 2025年02月03日配置Kubernetes共享使用Ceph存储目录
简要概述
环境测试
结果验证
简要概述
Kubernetes pod 结合Ceph rbd块设备的使用,让Docker 数据存储在Ceph,重启Docker或k8s RC重新调度pod 不会引起数据来回迁移。
工作原理无非就是拿到ceph集群的key作为认证,远程rbdmap映射挂载使用。那么就要启用一个基于key的secret资源,之后k8s pod指定要用的rbd就可以了。
环境测试我的OS是ubuntu 14.04,一个master,两个minon 节点,一个镜像仓库服务,这样保证了k8s集群跑起来,这个过程就略过了。
1.内核升级
这里的ceph 版本装的是10.2.2,客户端内核过低会引起挂载失败,主要就是minion节点。
# curl -sSL https://get.docker.com | sh && service docker restart# apt-get install linux-image-4.4.0-22-generic && reboot
2.安装ceph-common,让minion调用rbd
root@minion2:~# apt-get install python-rbd ceph-common
3.保存ceph-keyring和配置文件
root@minion2:~# ll /etc/cephtotal 20drwxr-xr-x 2 root root 4096 Jun 22 2016 ./drwxr-xr-x 93 root root 4096 Nov 11 11:18 ../-rw------- 1 root root 63 Apr 25 2016 ceph.client.admin.keyring-rw-r--r-- 1 root root 249 Jun 22 2016 ceph.conf-rw-r--r-- 1 root root 92 Jun 14 2016 rbdmap
4.获取ceph keyring 的base64编码字符串
root@minion2:~# ceph auth get-key client.adminAQAmnRlX2zrqDRAAOiuOs2sIItGhAP6tNDa3Vg==root@minion2:~# root@minion2:~# grep key /etc/ceph/ceph.client.admin.keyring |awk '{printf "%s", $NF}'AQAmnRlX2zrqDRAAOiuOs2sIItGhAP6tNDa3Vg== root@minion2:~# grep key /etc/ceph/ceph.client.admin.keyring |awk '{printf "%s", $NF}'|base64QVFBbW5SbFgyenJxRFJBQU9pdU9zMnNJSXRHaEFQNnRORGEzVmc9PQ==
5.创建基于keyring 的secret资源
root@master:~# cat ceph-secret.yaml apiVersion: v1kind: Secretmetadata: name: ceph-secretdata: key: QVFBbW5SbFgyenJxRFJBQU9pdU9zMnNJSXRHaEFQNnRORGEzVmc9PQo=root@master:~# kubectl create -f ceph-secret.yamlroot@master:~# kubectl get secretNAME TYPE DATA AGEceph-secret Opaque 1 187ddefault-token-rk17v kubernetes.io/service-account-token 3 208d
6.编辑一个可用的ReplicationController 让rbdpod跑起来
# kubectl create -f rbd-rc.yaml验证结果
这样的我们在pod就跑起来了,可以看到mount挂载信息,也可以进入容器查看
root@minion2:~# docker ps | grep rbd4b8fc04501b1 nginx "nginx -g 'daemon off" 6 months ago Up 6 months k8s_rbdpod.b1ab9160_rbpod-k3yxn_default_88540575-3847-11e6-a098-0a6a7c3a684c_f8caa4bc3c9c1240b72e gcr.io/google_containers/pause:2.0 "/pause" 6 months ago Up 6 months k8s_POD.25c801ab_rbdpod-k3yxn_default_88540575-3847-11e6-a098-0a6a7c3a684c_c38f4ce7root@minion2:~# mount | grep rbd/dev/rbd0 on /var/lib/kubelet/plugins/kubernetes.io/rbd/rbd/data-image-wxq type ext4 (rw)/var/lib/kubelet/plugins/kubernetes.io/rbd/rbd/data-image-wxq on /var/lib/kubelet/pods/88540575-3847-11e6-a098-0a6a7c3a684c/volumes/kubernetes.io~rbd/rbdpd type none (rw)
这样k8s完美的结合了Ceph 块设备,它们又能愉悦的在一起玩耍了,至于有没有真感情且看未来。
内核
就是
数据
环境
简要
结果
节点
设备
资源
集群
测试
验证
存储
配置
愉悦
两个
仓库
信息
原理
字符
数据库的安全要保护哪些东西
数据库安全各自的含义是什么
生产安全数据库录入
数据库的安全性及管理
数据库安全策略包含哪些
海淀数据库安全审计系统
建立农村房屋安全信息数据库
易用的数据库客户端支持安全管理
连接数据库失败ssl安全错误
数据库的锁怎样保障安全
数据库更改字段值
高校网络安全案例
hgsvc数据库
非人学院进不了服务器怎么办
北京易联网络技术集团
郴州网络安全和信息化委员会
武汉得易互联网科技有限公司
数据库系统概念第8章课后
服务器与网络机柜一样吗
数据库11gr2
干部网络安全意识
北京余料套料软件开发商
赣州移动软件开发
现在网络安全最好的软件
金融企业软件开发
洛奇英雄传选择服务器
大唐无双手游新服务器
网络安全相关试题
云服务器最大容量
网络安全专项整治工作
兰溪扫码洗车软件开发
与华为合作的数据库
山西软件开发专升本历年分数线
网站倒入数据库很慢
数据库 一条记录多大
二手惠普服务器电源管理系统
公司信息数据库怎么手绘
罗定翔昊互联网科技有限公司
rust服务器安全组
网络安全伴我同行评语