查看原文
其他

精品翻译:《OpenStack HA》第七章 共享存储

2016-12-13 武楠 李世军 云技术实践

编者按


《OpenStack HA》这本书由云技术社区志愿者翻译,因为没有出版纸质书的计划,本书的翻译只会翻译重点章节。


翻译的过程是译者和作者思想沟通的过程,也是一个学习的过程,中间充满艰辛,也充满快乐,欢迎大家加入云技术社区翻译小组,一起交流、学习、提高,加入请联系群主(群主微信:xiaoli17kvm,群穿越使者北极熊微信:hadxiaer)。


在过去的几年里,云计算已经产生了重大影响,它将IT从一个小技巧转换为企业生产环境的一个关键因素。从基础设施即服务(IaaS)的角度来看,云计算比虚拟化先进很多,各种行业和网上贸易已经开始迁移测试环境、过渡环境和生产环境移到IaaS,开始用按需使用的资源模型替代传统的模型。


OpenStack是最流行的和广泛使用的开源云计算平台之一,并且它常被用来基础设施即服务解决方案。让OpenStack具备高可用性对云计算管理者和云计算工程师来说是必须的。


译者 云技术社区 首席金牌翻译 

武 楠

校审 云技术社区 金牌翻译 

李世军


了解各种故障发生的方式,以及这些故障对服务可用性和效果的影响,对于任何一个想要将云服务可用性提升一个水平的OpenStack 使用者都是一项基本技能。本章主要讲的是高可用性和故障快速恢复的基本条件。会涉及到为OpenStack 提供共享存储的多种选择,以及这些配置如何设置。

本章,我们将覆盖一下几个主题:

  • GlusterFS 介绍

  • 安装 GlusterFS

  • Ceph 介绍

  • 安装 Ceph


GlusterFS介绍

GlusterFS 是为高性能,虚拟化云环境设计的。与传统数据中心不同,云环境需要按需增长或缩减资源的多租户能力。

安装GlusterFS

OpenStack 的块存储服务是一种使用逻辑卷管理(LVM)的iSCSI 的解决方案。这种服务提供的卷一次只能被添加到一个实例上。然而,OpenStack 为使用不同供应商的不同后端存储提供多种驱动。NFS 就是一种常见的OpenStack 后端存储方式,例如GlusterFS和Ceph。

接下来,我们将会展示,GlusterFS是如何作为后端存储设置为 OpenStack 块存储的。在此,会使用到cinder卷服务来连接GlusterFS 。

配置GlusterFS 块存储

尽管OpenStack 提供大多数服务将虚拟机寄宿到它的云上,它仍然需要依赖第三方工具来支持OpenStack 后端存储提供cinder服务。

下面介绍配置GlusterFS的步骤。

安装GlusterFS

在终端上必须写入以下命令来安装GlusterFS:

| sudo apt-get install glusterfs-server

然后,使用以下命令,确保GlusterFS 被正确安装在两个节点上(controller_1和controller_2),:

| sudo glusterfs –version

安装成功后,我们会可到以下结果:

配置通讯节点

现在两个服务器要互相通信,在/etc/host目录使用以下命令:

| sudo gedit /etc/hosts

现在我们需要在两个节点上运行以下命令:

| sudo gluster peer probe gluster1

| sudo gluster peer probe gluster2

两个节点成功通信后,我们要确保 GlusterFS 节点能够互相通信。

peers的状态

现在我们要在各自节点上的检查peers状态。在服务器1上,要通过以下命令来检查:

| sudo gluster peer status

在服务器2上,要通过以下命令来检查:

| sudo gluster peer status

创建数据点

在数据点创建的第一步,需要在 /mnt/gluster 目录下创建一个叫gluster的新目录,命令为:

| sudo mkdir –p /mnt/gluster

然后必须创建一个卷,将所有其他数据装里面,这个卷就叫数据点。之后,运行以下命令:

| sudo gluster volume create datapoint replica 2 transport tcp gluster1:/mnt/gluster gluster2:/mnt/gluster

启动卷服务

通过使用以下命令来启动数据点卷服务:

| sudo gluster volume start datapont

最后,在两个节点(controller_1和controller_2)上必须运行使用PS命令来确保GlusterFS 是开启和运行的, :

| sudo ps aux | grep gluster

为保证卷高可用性,运行以下gluster命令:

| sudo gluster volume info

介绍Ceph

Ceph 是一个开源的,可扩展的软件定义对象存储系统,可以在单一平台上提供对象存储、块存储以及文件系统存储。Ceph 具有自恢复、自管理和非单点故障特性。这是一个传统存储系统的完美替代,也是云环境下对象存储和块存储的有效解决方案。

安装Ceph

安装Ceph命令如下:

| sudo apt-get update && sudo apt-get install ceph-deploy

安装Openssh

Openssh 安装命令如下:

| sudo aptitude –y install openssh-server

为ceph提供必要特权,使用以下命令:

| sudo chmod 440 /etc/sudoers.d/ceph

连接Ceph节点


创建一个ssh组,将其与ceph节点通过 | sudo ssh-keygen 无密码命令连接起来。Ssh文件的配置编辑如下:

| sudo vi ~/.ssh/config

之后 ssh 钥匙被传到ceph 节点上,如下:

使用以下命令将钥匙传到所有其他节点:

| sudo ssh-copy-id ceph02

| sudo ssh-copy-id ceph02

配置Ceph 节点


在服务器上使用以下命令完成Ceph配置:

| sudo aptitude –y install ceph-deploy ceph-common ceph-mds

配置存储节点

现在在服务器上配置存储节点。此时,我们需要在ceph01, ceph02, ceph03 节点上创建 /storage01, /storage02, 和storage03 目录:

| sudo ceph-deploy osd prepare ceph01:/storage01 ceph02:/storage02 ceph03:/storage03

| sudo ceph-deploy osd activate ceph01:/storage01 ceph02:/storage02 ceph03:/storage03

检查Ceph状态

最后,检查ceph状态:

| sudo ceph mds stat

成功运行以上命令后,得到ceph状态如下。然后在OpenStack云环境的每个可用计算节点上执行在线迁移。这样,在宿主机宕机后就能从节点故障中恢复。

总结

本章主要学习GlusterFS 和Ceph安装步骤和使用过程,包括为OpenStack提供共享存储,配置和详细设置步骤。

下一章节,将会分析不同故障场景,提出解决方案来提供简洁有效的恢复机制,达到一个正常具有可操作系统性的水平。


相关阅读:

翻译:《OpenStack HA》第一章

精品翻译:《OpenStack HA》第三章 对双激活服务的负载均衡

精品翻译:《OpenStack HA》第四章 集群、隔离以及主备服务


云技术社区 交流 分享 提升

云技术社区长期招募热爱翻译人员,参与社区翻译外文资料工作,有意加入请加微信xiaolikvm 。




您可能也对以下帖子感兴趣

文章有问题?点此查看未经处理的缓存