引言Librbd(RB"/>

Rancher如何对接Ceph-RBD块存储

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了Rancher如何对接Ceph-RBD块存储相关的知识,希望对你有一定的参考价值。

概要


演示环境说明


整个测试环境由以下2台本地虚拟机组成,相关信息说明如下:


技术分享


引言


Librbd(RBD)是Ceph提供的块存储库,其利用Rados提供的API实现对卷的管理和操作。就目前而言,在Ceph支持的三种接口Posix(CephFS)、块存储(Librbd)和对象存储(RadosGW)接口中,块存储是目前最稳定且达到生产环境要求的接口。Ceph 块设备是精简配置的、大小可调且将数据条带化存储到集群内多个OSD 。Ceph 块设备利用 RADOS 的多种能力,如快照、复制和一致性。Ceph 的 RADOS 块设备(RBD)使用内核模块或 librbd 库与 OSD 交互。


Rancher-RBD安装


Ceph 服务端安装


如果没有Ceph 服务器,可以通过容器运行一个Ceph 服务器 DEMO环境:

docker run -d --net=host -v /etc/ceph:/etc/ceph -e MON_IP=192.168.1.11  -e
CEPH_PUBLIC_NETWORK=192.168.1.0/24 ceph/demo:tag-build-master-jewel-ubuntu-16.04

IP地址根据实际情况修改。


通过scp命令,把Ceph 服务容器所在宿主机/etc/ceph路径下所有文件复制到Rancher 环境下所有节点的相同路径下。


Ceph-RBD驱动插件安装


添加自定义应用商店


进入 系统管理|系统设置 添加一个名为Ceph的自定义商店


技术分享


名称:Ceph

地址:https://github.com/niusmallnan/rancher-rbd-catalog.git

分支:master


RBD驱动安装


进入应用商店,搜索RBD进行安装。安装完成后:


技术分享


再进 系统架构|存储 查看,显示两个节点:


技术分享


安装测试应用


应用安装


新建一个名为myapp的空应用栈并添加myapp服务:


技术分享技术分享


红色线框为配置重点:


使用驱动卷插件与使用本地卷驱动有所区别, 使用本地卷驱动添加卷时应该写 /AA/BB:/CC/DD,前后都要为路径; 使用驱动卷插件时应该写为 A:/BB/CC 。这个的A为一个卷名,不能是路径。


因为是Ceph存储,这里需要填卷驱动为:rancher-rbd 。部署好之后如图:


技术分享技术分享


查看 基础架构|存储,容器卷卷名为:myapp 


技术分享


数据存储测试


此时我们看到容器是运行在 :node1上,容器名为:myapp-myapp-1。


技术分享


通过执行命令登录容器,并向/root下写入test文件。


技术分享技术分享


接着把这个服务容器删除,删除后myapp应用栈为空:


技术分享


在空应用栈中再添加一个服务,为了易于区分,重新命名为myapp2,并手动调度容器运行到node2上。


PS:新建的服务,参数中的卷名与卷映射路径必须相同,卷驱动也要相同。


技术分享技术分享


点击创建,服务成功运行在node2上。


技术分享技术分享


查看  基础架构|存储,容器卷卷名还为:myapp


技术分享


进入容器的/root目录查看创建的文件


技术分享


文件依然存在。此时容器是在node2上,说明文件并非保存在节点本地,证明Ceph存储对接成功。


原文来源:Rancher Labs

本文出自 “12452495” 博客,请务必保留此出处http://12462495.blog.51cto.com/12452495/1953516

以上是关于Rancher如何对接Ceph-RBD块存储的主要内容,如果未能解决你的问题,请参考以下文章

ceph-rbd kvm 删除数据后集群空间不释放

Rancher与OpenLDAP对接

Rancher与OpenLDAP对接

Rancher2.6 Monitoring Grafana 对接 LDAP

Rancher2.6 Monitoring Grafana 对接 LDAP

Rancher 2.0 里程碑版本:支持添加自定义节点!