手机版
你好,游客 登录 注册
背景:
阅读新闻

CentOS 6.2 64位上安装Ceph 0.47.2

[日期:2013-05-31] 来源:Linux社区  作者:frank0712105003 [字体: ]

CentOS 6.2 64位的内核版本是2.6.32-220.el6.i686,ceph的客户端已经在2.6.34以后的版本集成了,很明显centos6.2中没有client客户端,由于我已经在Ubuntu 11.10 64位版本中安装了ceph0.47.2,并且UBUNTU 11.10版本的内核版本是3.0.0-12-generic所以自然包含ceph 的client客户端,为了简便所以我打算在按照如下的配置做实验。

下面的例子中mon代表监控节点,osd代表对象存储设备,mds代表元数据服务器,client代表客户端。

在mon,osd,mds上分别要装有ceph,并且按照下面的例子配置好,client端要有ceph的客户端(如上面分析,如果内核版本足够高的话就内置了)

 

位置

IP

身份

UBUNTU 11.10

本地虚拟机

192.168.10.3

mon及client

CENTOS 6.2

真实服务器

192.168.5.101

osd

CENTOS6.2

真实服务器

192.168.5.100

mds

通过ssh添加对于mon节点的信任。

#ssh-keygen

#cd ~/.ssh; cat id_dsa.pub >>authorized_keys

#复制.ssh 文件夹到其他机器用户home目录上

 

首先./autogen.sh

然后执行./configure

会提示缺少一些包

configure: error: libuuid not found

configure: error: no FUSE found (use --without-fuse to disable)

configure: error: No usable version of libedit found.

configure: error: libaio not found

比如libuuid,fuse,libaio,libedit,分别按照如下命令安装。

yum install libuuid-devel

yum install fuse-devel

yum install libedit-devel

yum install libaio-devel

然后执行./configure --without-tcmalloc --without-libatomic-ops

configure成功以后生成了makefile文件

执行make 这个过程很慢请耐心等待。

这时候会出现一个问题error: ‘INT_MAX’ was not declared in this scope

不知道为什么会出现这个问题,提醒很明显是没有声明,所以直接在它提示的.cc文件中加入如下的定义

#include<limits.h>

不知道这样做对不对,但确实能够编译通过了。

后来又出现了个问题叫做error: expat.h: No such file or directory

error: ‘XML_Parser’ does not name a type

这时候缺少包expat-devel 执行yum install expat-devel

OK,这时候就能够编译通过了,不容易啊。

然后执行make install.

没有问题,这时候就行了,可以通过配置ceph.conf文件组成ceph小集群进行测试了。

 

具体ceph.conf的配置参考http://ceph.com/docs/master/config-cluster/ceph-conf/

注意要建立一些文件参考http://ceph.com/docs/master/config-cluster/mkcephfs/

对于我这个配置来说

需要在UBUNTU 11.10 192.168.10.3

mkdir /home/xieke/mon.0

在192.168.5.101上

mkdir /home/xieke/osd.0

在192.168.5.100上

mkdir /home/xieke/mds.0

由于这些目录不会被自己创建,所以要自己创建。

另外将ceph.conf放到mon节点,osd节点和mds节点下的/etc/ceph/ceph.conf后,还要将ceph文件夹复制到/usr/local/etc/ceph中,每次更新/etc/ceph/ceph.conf后都要同时更新/usr/local/etc/ceph/ceph.conf文件

每次更新完以后,都要在mon节点上执行mkcephfs -c /etc/ceph/ceph.conf -a操作

在mon节点上执行service ceph -a start

可以通过执行ceph -s 查看各个部件的运行状态。

更多CentOS相关信息见CentOS 专题页面 http://www.linuxidc.com/topicnews.aspx?tid=14

linux
相关资讯       Ceph 
本文评论   查看全部评论 (0)
表情: 表情 姓名: 字数

       

评论声明
  • 尊重网上道德,遵守中华人民共和国的各项有关法律法规
  • 承担一切因您的行为而直接或间接导致的民事或刑事法律责任
  • 本站管理人员有权保留或删除其管辖留言中的任意内容
  • 本站有权在网站内转载或引用您的评论
  • 参与本评论即表明您已经阅读并接受上述条款