Ceph分布式存储学习指南2.1 使用VirtualBox创建沙箱环境

  

第2章

Ceph实战部署

本章将涵盖以下主题:

使用VirtualBox创建沙箱环境

从零开始部署你的第一个Ceph集群

扩展你的Ceph集群—增加monitor和OSD

2.1 使用VirtualBox创建沙箱环境


我们可以使用Oracle VirtualBox虚拟机创建沙箱环境来进行Ceph部署实验。这个虚拟环境可以帮助我们发现和执行Ceph存储集群实验,就好像我们在真实环境中一样。由于Ceph是开源的软件定义存储软件,它可以部署在生产环境的商用硬件之上,因此出于测试目的,我们可以在虚拟机中模仿一个全功能的Ceph环境。

Oracle VirtualBox是一个免费的软件,在其官网http://www.virtualbox.org上可以下载Windows、Mac OS X和Linux版本。我们在安装VirtualBox时必须满足其系统要求,以便它在我们的测试过程中能够正常工作。在本书余下的章节中,我们将会使用到这个VirtualBox虚拟机中创建的Ceph测试环境。我们假定你的主机操作系统是UNIX变种;对于Microsoft Windows,主机需要绝对路径来运行VBoxManage命令,默认命令是 c:\Program Files\Oracle\VirtualBox\VBoxManage.exe.。

VirtualBox的系统要求依赖于要在物理主机上运行的虚拟机个数以及它们的配置。你的虚拟机或许需要一个x86类型的处理器(Intel或者AMD),几十亿字节的内存(用于运行三个Ceph虚拟机),还有几十亿字节的硬盘空间。我们首先需要从http://www.virtualbox.org/下载VirtualBox,然后根据安装步骤进行安装。我们也需要从http://vault.centos.org/6.4/isos/下载CentOS 6.4 Server ISO镜像。

为了搭建沙箱环境,需要创建至少三个虚拟机;可以根据自己的物理主机配置情况创建更多的虚拟机用于Ceph集群。首先创建第一个VM,并安装OS;然后将其克隆两次。这样可以节省大量时间,提高生产效率。下面我们开始执行下列步骤,创建第一个虚拟机。

本演示中使用的VirtualBox主机操作系统是Mac OS X,这是一个类UNIX系统。如果你在非UNIX主机(比如Windows)上执行这些步骤,则需要注意virtualbox hostonly adapter的名字可能会类似于VirtualBox Host-Only Ethernet Adapter #<adapter number>。在运行这些命令时请注意使用正确的适配器名称。在Windows主机上,可以通过Oracle VM VirtualBox管理器中的File| VirtualBox Settings| Network|Host-only Networks查看VirtualBox网络选项。

1)VirtualBox软件安装完成后,可以使用默认创建的网络适配器,或者可以创建一个新的适配器并指定其IP。

对于UNIX类VirtualBox主机,命令如下。

 

对于Windows VirtualBox主机,命令如下。

 

2)VirtualBox自带GUI管理器。如果你的主机运行的是Linux操作系统,那么它应该已经安装X-desktop环境(Gnome或者KDE)。打开Oracle VM VirtualBox管理器,并按照以下配置创建一个新的虚拟机。可以使用GUI上的New Virtual Machine Wizard,或者使用每个步骤最后部分列出的CLI命令创建虚拟机:

1 CPU

1024 MB内存。

10 GB X 4硬盘(一个OS的驱动器,三个Ceph OSD的驱动器)

两个网络适配器

挂载到VM的CentOS 6.4 ISO

以下是使用CLI命令创建虚拟机的步骤:

①创建你的第一个虚拟机。

 

 

对于Windows VirtualBox主机使用以下命令,则:

 

②创建CD驱动器并挂载CentOS ISO镜像到第一个虚拟机上:

 

确保你在CentOS ISO镜像文件所在的目录执行上述命令,否则你需要指定它的存储目录。

③创建SATA接口的磁盘,并挂载到VM中,用于安装OS;创建VM磁盘时需要确保VirtualBox主机有足够的磁盘空间。否则,需要选择主机中其他有足够空间的磁盘。

 

 

④创建Ceph的第一个SATA磁盘并挂载到VM中:

 

⑤创建Ceph的第二个SATA磁盘并挂载到VM中:

 

⑥创建Ceph的第二个SATA磁盘并挂载到VM中:

 

3)至此,我们已经做好了启动ceph-node1 VM的准备。可以通过点击Oracle VM VirtualBox管理器上Ceph-node1 VM的Start按钮启动它,或者通过运行下面的命令启动它:

 

4)VM启动时它应该从ISO镜像引导。之后,你就应当在VM中安装CentOS。如果你不熟悉Linux OS的安装,可以参考https://access.redhat.com/site/documentation/en-US/Red_Hat_Enterprise_Linux/6/html/Installation_Guide/index.html中的文档。

5)成功安装操作系统之后,编辑该机器的网络配置文件。

编辑/etc/sysconfig/network文件,修改hostname参数HOSTNAME=ceph-node1。

编辑/etc/sysconfig/network-scripts/ifcfg-eth0文件,添加:

 

编辑/etc/sysconfig/network-scripts/ifcfg-eth1文件,添加:

 

编辑/etc/hosts文件,添加:

 

6)完成网络配置之后,重启VM,并从你的物理主机通过SSH登录VM。然后测试VM的Internet连接是否正常,因为我们需要下载Ceph软件包。

 

7)网络正确配置之后,你应该关闭第一个VM,以便我们可以从它克隆其他两个VM。如果你不关闭第一个VM,则克隆操作可能会失败。

①从ceph-node1克隆出ceph-node2:

 

②从ceph-node1克隆出ceph-node3

 

8)克隆操作完成之后就可以启动三个VM了:

 

9)设置VM ceph-node2的主机名和网络。

编辑/etc/sysconfig/network,修改hostname参数:

 

编辑/etc/sysconfig/network-scripts/ifcfg-<first interface name>文件,添加:

 

编辑/etc/sysconfig/network-scripts/ifcfg-<second interface name>文件,添加:

 

编辑/etc/hosts文件,添加:

 

完成这些修改之后,应该重启虚拟机,以便新的主机名和网络配置生效。

10)设置VM ceph-node3的主机名和网络。

编辑/etc/sysconfig/network,修改hostname参数:

 

编辑/etc/sysconfig/network-scripts/ifcfg-<first interface name>文件,添加:

 

编辑/etc/sysconfig/network-scripts/ifcfg-<second interface name>文件,添加:

 

编辑/etc/hosts文件,添加:

 

完成这些修改之后,应该重启虚拟机,以便新的主机名和网络配置生效。

至此,我们已经准备好三台虚拟机并确保每个虚拟机之间都可以通信。它们同时也可以访问因特网以便安装Ceph软件包。

时间: 2024-07-29 07:28:56

Ceph分布式存储学习指南2.1 使用VirtualBox创建沙箱环境的相关文章

《 Ceph分布式存储学习指南》导读

本节书摘来自华章出版社< Ceph分布式存储学习指南>一书中,作者Richard Banfield 著 易艺 译   目录 第1章 Ceph存储介绍 1.1 概要 1.2 Ceph的历史和发展 1.3 Ceph和存储的未来 1.4 兼容性组合 1.5 Ceph块存储 1.6 Ceph文件系统 1.7 Ceph对象存储 1.8 Ceph与其他存储解决方案 1.9 GPFS 1.10 iRODS 1.11 HDFS 1.12 Lustre 1.13 Gluster 1.14 Ceph 总结 第2章

Ceph分布式存储学习指南2.2 从零开始部署你的第一个Ceph集群

2.2 从零开始部署你的第一个Ceph集群 要部署第一个Ceph集群,我们将在三台虚拟机中使用ceph-deploy工具来安装和配置Ceph.ceph-deploy工具是Ceph软件定义存储的一部分,它可以使得你能够更容易地部署和管理Ceph存储集群. 由于我们已经创建了三台运行CentOS 6.4的虚拟机,并且它们都能访问因特网,也能通过私网相互通信.我们将如下图所示把这些虚拟机配置成Ceph存储集群.   1)将ceph-node1配置成可以免SSH密码登录其他节点.在ceph-node1上

Ceph分布式存储学习指南1.6 Ceph文件系统

1.6 Ceph文件系统 Ceph文件系统(也就是CephFS)是一个兼容POSIX的文件系统,它利用Ceph存储集群来保存用户数据.Linux内核驱动程序支持CephFS,这也使得CephFS高度适用于各大Linux操作系统发行版.CephFS将数据和元数据分开存储,为上层的应用程序提供较高的性能以及可靠性. 在Cpeh集群内部,Ceph文件系统库(libcephfs)运行在RADOS库(librados)之上,后者是Ceph存储集群协议,由文件.块和对象存储共用.要使用CephFS,你的集群

Ceph分布式存储学习指南1.4 兼容性组合

1.4 兼容性组合 Ceph是一个完备的企业级存储系统,它支持多种协议以及访问方式.这个统一的存储系统支持块.文件和对象存储.然而,截至本书创作期间,Ceph的块和对象存储已经可以推荐生产环境中使用,而Ceph文件系统则还处在QA测试中,很快就能完成.下面简要讨论它们.

Ceph分布式存储学习指南1.3 Ceph和存储的未来

1.3 Ceph和存储的未来 企业存储需求最近几年暴发性增长.研究表明,大企业的数据年增长率为40%-60%,而且许多公司的数据占用空间每年翻一番.IDC分析师估计2000年全世界数据量大约是54.4EB.2007年这个数字达到295EB,而到2014年年底,预计会达到8591EB. 所有存储系统的要求都是统一.分布式.可靠.高性能,最重要的是,能够大规模扩展至艾字节,甚至更高级别.Ceph存储系统是一个真正的解决方案,它可以应对这个星球上爆炸式增长的数据.Ceph能够闪电式兴起的原因在于它活跃

Ceph分布式存储学习指南2.3 纵向扩展Ceph集群—添加monitor和OSD

2.3 纵向扩展Ceph集群-添加monitor和OSD 现在,我们有了一个单节点的Ceph集群.我们应该扩展它,让它成为一个分布式的.可靠的存储集群.要纵向扩展这个Ceph集群,我们应该添加更多的monitor节点和OSD.根据前面的计划,我们将把ceph-node2和ceph-node3机器同时作为monitor和OSD节点加入到集群中. 2.3.1 添加Ceph monitor Ceph存储集群需要最少一个monitor处于运行状态.要提供高可用性,则需要大于1的奇数个monitor,例如

Ceph分布式存储学习指南3.1 Ceph存储架构

第3章 Ceph架构和组件 本章将涵盖以下几大主题: Ceph存储架构 Ceph RADOS Ceph对象存储设备(OSD) Ceph monitor(MON) librados Ceph块存储 Ceph对象网关 Ceph MDS和CephFS 3.1 Ceph存储架构 Ceph存储集群由几个不同的软件守护进程组成,每个守护进程负责Ceph的一个独特功能并将值添加到相应的组件中.每个守护进程是彼此独立的.这是保持Ceph存储集群比黑匣子似的商业存储系统更加便宜的诸多特性中的一个. 下图简要阐述了

Ceph分布式存储学习指南3.5 Ceph文件系统

3.5 Ceph文件系统 CephFS在RADOS层之上提供了一个兼容POSIX的文件系统.它使用MDS作为守护进程,负责管理其元数据并将它和其他数据分开,这有助于降低复杂性并提高可靠性.CephFS继承了RADOS的特性并为数据提供了动态再平衡.   libcephfs库在支持多客户端实现方面扮演着重要角色.它拥有本地Linux内核驱动程序支持,因此客户可以使用mount命令来实现本机文件系统挂载.它和SAMBA紧密集成,支持CIFS和SMB.CephFS使用cephfuse模块(FUSE)扩

Ceph分布式存储学习指南1.1 概要

第1章 Ceph存储介绍 本章将讲述以下主题: Ceph概要 Ceph的历史和发展 Ceph和存储的未来 兼容性组合 Ceph与其他存储方案 1.1 概要 Ceph是一个开源项目,它提供软件定义的.统一的存储解决方案.Ceph是一个可大规模扩展.高性能并且无单点故障的分布式存储系统.从一开始它就运行在通用商用硬件上,具有高度可伸缩性,容量可扩展至EB级别,甚至更大. Ceph因为其开放.可扩展.分布式的本质在存储领域引起了强烈反响.如今,公有云.私有云以及混合云模型是提供大规模基础设施的主流方案