




已阅读5页,还剩3页未读, 继续免费阅读
版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
Ceph环境配置文档1. 整体说明本文档适用于特定版本的ceph源码,对于不同版本可能有不同的依赖库,或配置步骤可能略有不同。Ceph配置分为client和其他(monitor,mds,osd)两部分,其中client已经集成在2.6.34及其以后的内核版本中,故只需下载新内核版本编译内核即可;其他部分则用到了ceph源码包(从官网获得),其中有些依赖库,详细步骤见第二节。Ceph集群简介:v Clientv MonitorMonitor线程处理集中的集群管理,配置和状态监控。他们是相对来说较轻的线程,用到的数据保存在本地文件系统。需要注意的是,监控线程必须有奇数个。v MdsCeph中的元数据服务器(mds)本质上就是一个满足一致性的分布式元数据缓存,所有的元数据都保存在存储节点上。元数据服务器(线程)能根据需要任意地加入到集群中,负载会自动的在这些服务器间进行平衡。例如可以先启动1到2个,然后根据需要再增加。配置文件中max mds参数控制最多有多少活动线程,额外的线程处于standby状态,如果有活动线程出故障了则standby状态的线程取代之。v OsdOsd是存储数据和元数据的实际存储节点,最好运行两个osd,其中一个作为另一个的备份。每个osd其实就是一个线程,提供访问本地磁盘的服务。Osd端本地的文件系统最好用BTRFS,但是其他文件系统如ext3也可以。2. 配置步骤u 除client以外其他节点的配置1) 下载ceph源码(/download/)这里选择较早版本 ceph-0.20.tar.gz为了涉及尽量少的依赖库。2) 安装libedit_devel库,命令如下:rpm -Uvh /centos/5/testing/x86_64/RPMS/libedit-3.0-2.20090905cvs.el5.centos.x86_64.rpmrpm -Uvh /centos/5/testing/x86_64/RPMS/libedit-devel-3.0-2.20090905cvs.el5.centos.x86_64.rpm注:这里可以直接运行上述命令,前提是机器能上网,如果不能的话可以自己下载两个rpm包然后手动安装。3) 解压源码Tar -zvxf ceph-0.20.tar.gz4) 进入源码目录并执行如下操作(蓝色部分为命令)# ./autogen.sh# CXXFLAGS=-g -O2 ./configure -prefix=/usr -sbindir=/sbin -localstatedir=/var -sysconfdir=/etc# make & make install注意: 在第二步configure过程,可能遇到有些依赖库没装的情况,报哪个没装就安装哪个吧,我遇到了libboost-dev没装的情况,结果在网上下载安装包,只有手动安装咯。安装步骤 下载源码包( /projects/boost/files/boost/1.42.0/boost_1_42_0.tar.gz/download) ./bootstrap.sh ./bjam install 在第三步make install的过程中遇到了一个问题(ca24):libtool: install: error: cannot install libhadoopcephfs.la to a directory not ending in /usr/local/lib通过将configure 的-prefix=/usr 选项改成-prefix=/usr/local解决。这个问题并不是每台机器都会出现,可能是由于机器的配置不同而导致仅仅指定到/usr使得有些机器configure的时候不能确定lib的安装目录。结果安装后启动过程又出现了错误,由于24,23两台osd的可执行文件不在同一个目录下,23在/usr/bin下,24在/usr/local/bin下,然后又将24上/usr/local/bin/下的可执行文件拷贝到了/usr/bin下,终于解决问题,长舒一口气!u Client端的配置1) 客户端集成在了34内核以后的版本中,所以只需下载新版本内核进行编译即可2) 编译34内核过程遇到了些问题另有文档说明3) 编译时选上支持ceph的选项即可3. 配置ceph环境u 设计集群在我的测试环境中,使用4台机制来搭建,1个客户端,monitor/mds在一个节点上;另外两个节点各作一个osd,配置如下。HOSTNAMEIP_AttrROLECa1979clientCa2080MonitorCa2282MDSCa2383OSDCa2484OSD修改各自的/etc/hosts,允许互相访问。确保除client外的所有节点都能互相无密码ssh访问,命令举例如下(使得ca23能无密码访问,在ca23上执行下列命令):ssh-keygen -dca24:cat /root/.ssh/id_dsa.pub | ssh rootca24 cat - /root/.ssh/authorized_keysu Ceph.conf配置这个文件位于/etc/ceph下面,可以在一台机器上配置好了其它机器共享。注意:存储节点用的是ext3系统,所以配置文件中osd的配置部分要注释掉“btrfs devs = /dev/sda1”这一行,而且要将osd data指定的目录上挂载一个单独的分区,因为启动ceph时会执行rm -rf命令,而且挂载该分区的时候要指定-o user_xattr 参数否则运行ceph时会报错。v配置样例如下; globalglobal ; enable secure authentication ; auth supported = cephx; monitors; You need at least one. You need at least three if you want to; tolerate any node failures. Always create an odd number.mon mon data = /data/mon$id ; some minimal logging (just message traffic) to aid debugging debug ms = 1mon0 host = ca20 mon addr = 80:6789; mds; You need at least one. Define two to get a standby.mds ; where the mds keeps its secret encryption keys keyring = /data/keyring.$namemds.0 host = ca22; osd; You need at least one. Two if you want data to be replicated.; Define as many as you like.osd ; This is where the btrfs volume will be mounted. osd data = /data/ (注意这个最后的“/”不能有,否则报错v) osd journal = /data/journal osd journal size = 512osd0 host = ca23osd1 host = ca24u Fetch_config文件在监控节点配置了ceph.conf文件,然后在除client外的其他节点配置该脚本文件,这是在运行时动态向监控节点获取配置文件用滴!#!/bin/shconf=$1# fetch ceph.conf from some remote location and save it to $conf.# make sure this script is executable (chmod +x fetch_config)# examples:# from a locally accessible file# cp /path/to/ceph.conf $conf# from a URL:# wget -q -O $conf /some/ceph.conf # via scp scp rootca20:/ect/ceph/ceph.conf $conf4. 运行ceph文件系统注意:在运行系统之前,需要在mds,osd和monitor上创建记录日志文件的目录,命令如下:mkdir /var/log/ceph,否则启动系统时报错。u 初始化系统(在monitor上执行)mkcephfs -c /etc/ceph/ceph.conf -allhosts -k /etc/ceph/keyring.bin根据配置文件,自动在各个节点上进行相应的配置。这个只在首次配置时执行一次就可以啦!u 启动系统(在monitor上执行)注意:在启动ceph之前,确定好osd端已将一个设备或一个分区挂载到配置文件中osd部分指定的目录,而且确保设备或分区中没有重要信息,因为启动时要rm * -rf的哦!Init.d脚本在源文件的src目录下即init-ceph,安装时会自动放在/etc/init.d/ceph下,如果没有自动放在这个目录下,可以自己拷贝过去的哦(注意名字v)!命令基本格式:/etc/init.d/ceph options (start|stop|.) whatservice ceph options (start|stop|.) whatoptions-v-verbose Be verbose-valgrind Run daemons through valgrind-a-allhosts Start/stop daemons on _all_ hosts defined in cluster.conf, not just the local host.-restart-norestart Do/do not automatically restart a daemon if it core dumps-c foo-conf foo Use cluster conf file foo (instead of the default /etc/ceph/ceph.conf).(commands)start|stop - start or stop the daemon(s)forcestop - force stop (kill -9)killall - kill all instance of daemon type on the host (useful is pid file is wrong or missing)cleanlogs - clean out log directorycleanalllogs - clean out _everything_ from log directorywhatIf you specify nothing after the command, by default everything on the current host in the ceph.conf is started/stopped/whatever.If you specify a daemon type (e.g. mon), all daemons of that type are selected.If you specify a specific daemon (e.g. osd0), only that daemon is selected.Examples$ service ceph start # start all daemons on current host$ service ceph -a start /启动整个系统# start all daemons on for the entire cluster (assumes you can ssh as root into other hosts)$ service ceph restart mon # restart all monitors on the current host$ service ceph stop osd12 # stop osd12 on the current hostu 挂载客户端加载ceph模块,一般编译时选上支持ceph文件系统后,用modprobe ceph.ko命令即可,可是我编译后却不行,不知为什么,只好自己手动加载啦!insmod /lib/modules/2.6.34/kernel/fs/ceph
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 混凝土高温环境施工技术方案
- 供热管网及设施更新改造工程建设工程方案
- 石油伴生气回收综合利用项目建设工程方案
- 离婚协议书中精神损害赔偿协议范本
- 民用建筑租赁合同模板(含装修改造限制)
- 2025年脑血管介入考试题及答案
- 离婚财产分割及子女教育费用分担合同范本
- 离婚复婚再离婚复杂子女抚养权变更协议
- 离婚财产分割合同:女方继承全部家庭资产
- 2025年开学编程考试试题及答案
- 部编版二年级语文上册《植物妈妈有办法》教学课件2篇21
- 职业本科《大学英语》课程标准
- 中译版 欧洲规范8 结构抗震设计 第二部分 桥梁
- 《陆上风电场工程概算定额》NBT 31010-2019
- 水平四初中羽毛球大单元教学教案(18课时)
- 酒店住宿抵款协议书
- 《班会课件:如何做好一名班干部》
- 青岛版二年级下册万以内数的加减法竖式计算300题及答案
- 2024年天津港集团有限公司招聘笔试参考题库附带答案详解
- 配电箱安全专项教育培训课件
- 智慧医保监管一体化平台建设方案
评论
0/150
提交评论