CEPH做openstack存储.docx

上传人:b****3 文档编号:2168968 上传时间:2022-10-27 格式:DOCX 页数:9 大小:316.84KB
下载 相关 举报
CEPH做openstack存储.docx_第1页
第1页 / 共9页
CEPH做openstack存储.docx_第2页
第2页 / 共9页
CEPH做openstack存储.docx_第3页
第3页 / 共9页
CEPH做openstack存储.docx_第4页
第4页 / 共9页
CEPH做openstack存储.docx_第5页
第5页 / 共9页
点击查看更多>>
下载资源
资源描述

CEPH做openstack存储.docx

《CEPH做openstack存储.docx》由会员分享,可在线阅读,更多相关《CEPH做openstack存储.docx(9页珍藏版)》请在冰豆网上搜索。

CEPH做openstack存储.docx

CEPH做openstack存储

采用CEPH实现Openstack统一存储

Ceph作为LinuxPB级分布式文件系统,因其灵活智能可配置,在软件定义存储的大潮中,越来越受到IaaS方案提供商的注意。

我们知道OpenStack中围绕虚拟机主要的存储需求来自于nova中的disk,glance中的image,cinder中的虚拟硬盘,本文中,我们将全部采用ceph作为这些存储的后端,摆脱现有部署中各搞一套的现状。

本文主要是对Ceph使用的总结,因个人环境不同,可能存在各种环境与包依赖等问题。

集成逻辑图如下。

CEPH底层为RADOS块设备,提供访问RADOS的是librados库,librad的调用就是基于librados,Nova只要是通过libvirt->qemu来调用librbd,所以我们知道暂时只有libvirtDriver支持,Cinder与Glance直接调用librbd。

CEPH存储集群中的层次结构也可见上图,主要是先文件条带化为obj,obj通过hash函数映射到PG(上图中Pool就是PG的容器),PG通过CRUSH算法均匀映射到OSD,OSD基于文件系统,比如xfs,ext4等等。

本文中将只使用三个osd(官方推荐是至少两个,一个无法应对故障),三个监视器(主要负责接受数据上报,提供clustermap,至少要三个,一个不好容灾,奇数个可确保PAXOS算法能确定一批监视器里哪个版本的集群运行图是最新的),只放了一个mds, 这样的搭配基本是测试环境下最小的配置了,ceph很强调它的扩展性,所以越多越好,越能体现其优势

本文使用的系统环境:

redhat6.5四台机器规划如下:

1.mds 192.168.122.149 装一个mds 一个mon, 一个osd  

2.osd 192.168.122.169 装一个mon, 一个osd  

3.mon 192.168.122.41 装 一个mon, 一个osd  

4.client 192.168.122.104 上安装openstack all-in-one,管理节点  

三台机器组成ceph存储集群,hostname分别为mds,osd,mon,下文将都是使用这些短的hostname代表节点,其中在这三台机器上都部署monitor和对象存储osd,在mds上部署metadata服务器mds,另外一台机器作为openstackall-in-one环境节点hostname:

client

采用ceph-deploy来部署安装ceph,这个类似与我们部署openstack用的chef。

非常方便。

第一步:

 在管理节点上修改/etc/hosts,ceph-deploy后面的节点参数必须使用hostname,为了能够解析hostname,需要配置/etc/hosts,为下面粘贴部分的后四行。

1.[root@client ceph ]# cat /etc/hosts  

2.127.0.0.1 localhost localhost.localdomain localhost4 localhost4.localdomain4  

3.:

:

1 localhost localhost.localdomain localhost6 localhost6.localdomain6  

4.192.168.122.149 mds  

5.192.168.122.169 osd  

6.192.168.122.41 mon  

7.192.168.122.104 client  

第二步:

配置管理节点无密码访问其他节点,这个是方便我们使用ceph-deploy部署安装ceph

1.[root@client install]# ssh-keygen  

2.[root@client install]# ssh-copy-id mds  

3.[root@client install]# ssh-copy-id ods  

4.[root@client install]# ssh-copy-id mon  

第三步:

在client上添加yum源文件ceph.repo使用最新版本firefly,本地环境是redhat6.5,所以baseurl中用rhel6,本机为64位系统,后面的目录也使用的x86_64,如下

1.[root@client~]# cat /etc/yum.repos.d/ceph.repo  

2.[Ceph]  

3.name=Cephpackages for $basearch  

4.gpgkey=  

5.enabled=1  

6.baseurl=  

7.priority=1  

8.gpgcheck=1  

9.type=rpm-md  

10.[ceph-source]  

11.name=Cephsource packages  

12.gpgkey=  

13.enabled=1  

14.baseurl=  

15.priority=1  

16.gpgcheck=1  

17.type=rpm-md  

18.[Ceph-noarch]  

19.name=Cephnoarch packages  

20.gpgkey=  

21.enabled=1  

22.baseurl=  

23.priority=1  

24.gpgcheck=1  

25.type=rpm-md  

第四步:

安装ceph

1.[root@client~]# yum -y install ceph-deploy  

本文使用ceph-deploy来做部署,这时最好建个目录,存放一些生成文件,避免在其他目录中与已有文件交杂在一起

1.[root@client ~]# mkdir ceph  

2.[root@client ~]# cd ceph  

建立一个集群包含mdsosdmon

1.[root@client ceph]# ceph-deploy new mds mon osd # 必须使用hostname  

安装ceph在三个节点上。

1.[root@client ceph]# ceph-deploy install mds mon osd  

安装monitor

1.[root@client ceph]# ceph-deploy mon create mds mon osd  

收集keyring文件,Note:

做这个时候,这个如果mdsmonosd上防火墙开着,会收集不到,建议关掉,不然就要通过iptables设置相关rule,报的错是:

[ceph_deploy.gatherkeys][WARNIN]Unabletofind/var/lib/ceph/bootstrap-mds/ceph.keyring

1.[root@client ceph]# ceph-deploy gatherkeys mds #用其中一个节点即可  

2.[root@client ceph]# ls  

3.ceph.bootstrap-mds.keyring  ceph.bootstrap-osd.keyring  ceph.client.admin.keyring  ceph.conf  ceph.log  ceph.mon.keyring  

4.建立osd,默认是基于xfs文件系统,并激活。

  

1.[root@client ceph]# ceph-deploy osd prepare mds:

/opt/ceph mds:

/opt/cephmon:

/opt/ceph  

2.[root@client ceph]# ceph-deploy osd activate mds:

/opt/ceph mds:

/opt/cephmon:

/opt/ceph  

创建metadata服务器

1.[root@client ceph]# ceph-deploy mds create mds  

这里插一段[如果只做ceph与openstack集成,请无视它]

*如果到此位止,我们仅想把这个文件系统mount到client端,我们需要安装ceph-fuse

1.[root@client ceph]# yum -y install ceph-fuse  

2.[root@client ceph]#  

3.[root@client ceph]# ceph-fuse -m 192.168.122.169:

6789 /mnt/ceph  

4.ceph-fuse[24569]:

starting ceph client  

5.ceph-fuse[24569]:

starting fuse  

6.[root@client ceph]# df  

7.Filesystem 1K-blocks Used Available Use%Mounted on  

8./dev/mapper/vg_client-lv_root 18069936 2791420 14360604 17% /  

9.tmpfs 812188 4 812184 1%/dev/shm  

10./dev/vda1 495844 34541 435703 8% /boot  

11./etc/swift/data/drives/images/swift.img 1038336 32976 1005360 4% /etc/swift/data/drives/sdb1  

12.ceph-fuse 54304768 25591808 28712960 48%/mnt/ceph #这一行  

第五步:

整合到nova,glance和cinder的使用上

1.[root@client ceph]# yum install ceph  

2.[root@client ceph]# rados mkpool volumes  

3.[root@client ceph]# rados mkpool images  

4.[root@client ceph]# ceph osd pool set volumes size 3  

5.[root@client ceph]# ceph osd pool set images size 3   

6.[root@client ceph]# ceph osd lspools  

7.0data,1 metadata,2 rbd,4 volumes,5 images,  

keyring

1.[root@client ceph]# ceph auth get-or-create client.volumes mon 'allow r' osd 'allow c

展开阅读全文
相关资源
猜你喜欢
相关搜索

当前位置:首页 > 小学教育 > 小升初

copyright@ 2008-2022 冰豆网网站版权所有

经营许可证编号:鄂ICP备2022015515号-1