如何将Ceph与OpenStack集成
Posted 开源云中文社区
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了如何将Ceph与OpenStack集成相关的知识,希望对你有一定的参考价值。
Rackspace解决方案架构师Keith Tenzer讨论了为什么OpenStack和Ceph是一个了不起的组合。
在本文中,我们将讨论为什么Ceph非常适合OpenStack。
我们还将展示如何将三个重要的OpenStack用例:Cinder(块存储)、Glance(镜像)和Nova(虚拟机虚拟磁盘)与Ceph集成。
Ceph提供统一的横向扩展存储,使用带有自我修复和智能预测故障功能的商用x86硬件。它已经成为软件定义存储的事实上的标准。因为Ceph是开源的,它使许多供应商能够提供基于Ceph的软件定义存储系统。 Ceph不仅限于Red Hat、Suse、Mirantis、Ubuntu等公司。 SanDisk、富士通、惠普、戴尔、三星等公司现在也提供集成解决方案。甚至还有大规模的社区建造的环境(如CERN),为10000个虚拟机提供存储服务。
Ceph绝不局限于OpenStack,但是这是Ceph开始获得牵引力的地方。看看最新的OpenStack用户调查,Ceph是OpenStack存储的显著领导者。2016年4月OpenStack用户调查报告的第42页显示,Ceph占OpenStack存储的57%,下一个是LVM(本地存储)占28%,NetApp占9%。如果我们不看LVM,Ceph领先其他存储公司48%,令人难以置信。这是为什么?
有好几个原因,我认为以下是最重要的三个:
·Ceph是一个横向扩展的统一存储平台。OpenStack最需要的存储能力的两个方面:能够与OpenStack本身一起扩展,并且扩展时不需要考虑是块(Cinder)、文件(Manila)还是对象(Swift)。传统存储供应商需要提供两个或三个不同的存储系统来实现这一点。它们不同样扩展,并且在大多数情况下仅在永无止境的迁移周期中纵向扩展。它们的管理功能从来没有真正实现跨不同的存储用例集成。
·Ceph具有成本效益。 Ceph利用Linux作为操作系统,而不是专有的系统。你不仅可以选择找谁购买Ceph,还可以选择从哪里购买硬件。可以是同一供应商也可以是不同的。你可以购买硬件,甚至从单一供应商购买Ceph +硬件的集成解决方案。已经有针对Ceph的超融合方案出现(在计算节点上运行Ceph服务)。
·和Openstack一样,Ceph是开源项目。这允许更紧密的集成和跨项目开发。专有供应商总是在努力追赶,因为他们有秘密要保护,他们的影响力通常限于开源社区。
这里是一个架构图,显示了所有需要存储的不同OpenStack组件。它显示了这些组件如何与Ceph集成,以及Ceph如何提供一个统一的存储系统,扩展以满足所有这些用例。
如果你对与Ceph和OpenStack相关的更多主题感兴趣,推荐这个网址:http://ceph.com/category/ceph-and-openstack/。
说够了为什么Ceph和OpenStack如此伟大,该说说如何连接它们了。
如果你没有Ceph环境,可以按照这篇文章快速设置。
Glance集成
Glance是OpenStack中的映像服务。默认情况下,映像存储在本地控制器,然后在被请求时复制到计算主机。计算主机缓存镜像,但每次更新镜像时,都需要再次复制。
Ceph为Glance提供了后端,允许镜像存储在Ceph中,而不是本地存储在控制器和计算节点上。这大大减少了抓取镜像的网络流量,提高了性能,因为Ceph可以克隆镜像而不是复制镜像。此外,它使得在OpenStack部署或诸如多站点OpenStack之类的概念的迁移变得更简单。
安装Glance使用的Ceph客户端。
创建Ceph用户并将主目录设置为/ etc / ceph。
将Ceph用户添加到sudoers。
在Ceph管理节点。
为Glance镜像创建Ceph RBD池。
创建将允许Glance访问池的密钥环。
将密钥环复制到OpenStack控制器上的/ etc / ceph。
设置权限,让 Glance可以访问Ceph密钥环。
将密钥环文件添加到Ceph配置。
创建原始Glance配置的备份。
更新Glance配置。
重新启动Glance。
下载Cirros镜像并将其添加到Glance。
将QCOW2转换为RAW。 建议Ceph始终使用RAW格式。
将镜像添加到Glance。
检查Ceph中是否存在Glance图像。
Cinder集成
Cinder是OpenStack中的块存储服务。 Cinder提供了关于块存储的抽象,并允许供应商通过提供驱动程序进行集成。在Ceph中,每个存储池可以映射到不同的Cinder后端。这允许创建诸如金、银或铜的存储服务。你可以决定例如金应该是复制三次的快速SSD磁盘,银应该是复制两次,铜应该是使用较慢的擦除编码的磁盘。
为Cinder卷创建一个Ceph池。
创建一个密钥环以授予Cinder访问权限。
将密钥环复制到OpenStack控制器。
创建一个只包含OpenStack控制器上的身份验证密钥的文件。
设置密钥环文件的权限,以便Cinder可以访问。
将密钥环添加到OpenStack控制器上的Ceph配置文件中。
使KVM Hypervisor访问Ceph。
在virsh中创建一个密钥,因此KVM可以访问Ceph池的Cinder卷。
为Cinder添加一个Ceph后端。
在所有控制器上重新启动Cinder服务。
创建Cinder卷。
在Ceph中列出Cinder卷。
将Ceph与Nova计算集成
Nova是OpenStack中的计算服务。 Nova存储与默认的运行虚拟机相关联的虚拟磁盘镜像,在/ var / lib / nova / instances下的Hypervisor上。在虚拟磁盘映像的计算节点上使用本地存储有一些缺点:
·镜像存储在根文件系统下。大镜像可能导致文件系统被填满,从而导致计算节点崩溃。
·计算节点上的磁盘崩溃可能导致虚拟磁盘丢失,因此无法进行虚拟机恢复。
Ceph是可以直接与Nova集成的存储后端之一。在本节中,我们将看到如何配置。
为Nova创建验证密钥环。
将密钥环复制到OpenStack控制器。
在OpenStack控制器上创建密钥文件。
设置密钥环文件的权限,以便Nova服务可以访问。
确保安装所需的rpm软件包。
更新Ceph配置。
让KVM可以访问Ceph。
在virsh中创建一个密钥,这样KVM可以访问Cinder卷的Ceph池。
备份Nova配置。
更新Nova配置以使用Ceph后端。
重新启动Nova服务。
列表Neutron网络。
启动使用在Glance步骤中添加的Cirros镜像的临时VM实例。
等待直到VM处于活动状态。
在Ceph虚拟机池中列出镜像。我们现在应该看到镜像存储在Ceph中。
故障排除
无法删除存储在CEPH RBD中的Glance镜像。
概要
在本文中,我们讨论了OpenStack和Ceph如何完美地结合在一起。我们讨论了关于Glance、Cinder和Nova的一些用例。最后,我们完成了将Ceph与这些用例集成的步骤。希望你喜欢的文章,发现信息有用,请分享您的反馈。
快乐的Cephing!
编译:Jonathan Zhang
来源:http://superuser.openstack.org/articles/ceph-as-storage-for-openstack/
投稿邮箱:openstackcn@sina.cn
以上是关于如何将Ceph与OpenStack集成的主要内容,如果未能解决你的问题,请参考以下文章