CentOS6.5 本地源搭建Ceph
拓扑图
OS: CentOS X86_64,desktop
-免密码登录
-修改/etc/sysconfig/network --hostname
-修改/etc/hosts/ -关闭iptables
1 ceph学习资料
- Ceph浅析(上):概况与设计思想 http://www.csdn.net/article/2014-04-01/2819090-ceph-swift-on-openstack
Ceph浅析(中):结构、工作原理及流程 http://www.csdn.net/article/2014-04-08/2819192-ceph-swift-on-openstack-m
华为章宇:如何学习开源项目及Ceph的浅析 http://www.csdn.net/article/2014-04-10/2819247-how-to-learn-opensouce-project-%26-ceph/2
- Storage Cluster Quick Start【存储集群快速入门】
2 ceph本地源下载
- 下载rpm包
163已经提供ceph源镜像,但实际搭建中通过ceph官网:https://download.ceph.com/rpm-hammer/el6/下载安装包:
[root@admin opt]# wget -c -r -np -k -L -p http://download.ceph.com/rpm-hammer/el6/
[root@admin opt]# ll download.ceph.com/rpm-hammer/
total 4
drwxr-xr-x. 6 root root 4096 May 9 20:03 el6
#本地源下载完毕
- 下载release.asc文件
[root@admin opt]# curl https://download.ceph.com/keys/release.asc
*admin为上网机
3 创建本地源
- 放置文件
[root@ceph-admin opt] cd /var/www/html
[root@ceph-admin html] mkdir keys
将上网机下载的rpm-hammer文件夹放置于/var/www/html/
将上网机下载的release.asc文件放置于/var/www/html/keys/
[root@ceph-admin html]# ls
keys rpm-hammer
- 启动httpd服务
[root@ceph-admin html]# service httpd start
Starting httpd: httpd: [ OK ]
- 生成ceph.repo
[root@ceph-admin opt] rpm -ivh ceph-release-1-0.el6.noarch.rpm
该命令会自动生成ceph.repo文件。
- 修改ceph.repo
修改/etc/yum.repos.d/ceph.repo【/etc/yum.repos.d/目录下除了ceph.repo文件,其他文件删除】
[root@ceph-admin yum.repos.d]# cat ceph.repo
-----------------------------------------------
[Ceph]
name=Ceph packages for $basearch
baseurl=http://172.16.50.34/rpm-hammer/el6/$basearch
enabled=1
gpgcheck=1
type=rpm-md
gpgkey=https://172.16.50.34/git/?p=ceph.git;a=blob_plain;f=keys/release.asc
[Ceph-noarch]
name=Ceph noarch packages
baseurl=http://172.16.50.34/rpm-hammer/el6/noarch
enabled=1
gpgcheck=1
type=rpm-md
gpgkey=https://172.16.50.34/git/?p=ceph.git;a=blob_plain;f=keys/release.asc
[ceph-source]
name=Ceph source packages
baseurl=http://172.16.50.34/rpm-hammer/el6/SRPMS
enabled=1
gpgcheck=1
type=rpm-md
gpgkey=https://172.16.50.34/git/?p=ceph.git;a=blob_plain;f=keys/release.asc
-----------------------------------------------
[root@ceph-admin opt] yum clean all && yum makecache
4 ceph-admin上安装ceph-deploy
[root@admin opt]yum install ceph-deploy
5 修改install.py文件
在通过ceph-admin安装monitor时(即ceph-deploy install
monitor),会调用ceph-deploy的install.py,而此时会使用该脚本连接网络下载rpm包,由于使用本地源,故需修改
install.py中rpm包下载的路径。
install.py位置:/usr/lib/python2.6/site-packages/ceph_deploy/hosts/centos/install.py
修改如下:
修改前
---------------------------
65 if adjust_repos:
66 if version_kind in ['stable', 'testing']:
67 #distro.packager.add_repo_gpg_key(gpg.url(key))
68
69 if version_kind == 'stable':
70 url = 'https://download.ceph.com/rpm-{version}/{repo}/'.format(
71 version=version,
72 repo=repo_part,
73 )
---------------------------
修改后
---------------------------
65 if adjust_repos:
66 if version_kind in ['stable', 'testing']:
67 #distro.packager.add_repo_gpg_key('http://172.16.50.34/keys/release.asc')
68
69 if version_kind == 'stable':
70 url = 'http://172.16.50.34/rpm-hammer/{repo}/'.format(
71 version=version,
72 repo=repo_part,
73 )
---------------------------
6 配置ceph-monitor
- 安装epel源
[root@ceph-monitor opt] rpm -ivh epel-release-6-8.noarch.rpm
[root@ceph-monitor opt] rpm -ivh yum-plugin-priorities-1.1.30-30.el6.noarch.rpm
[root@ceph-monitor opt] cd /etc/yum.repos.d/ && mv epel.repo
epel.repo.bak && mv epel-testing.repo epel-testing.repo.bak
*防止ceph-deploy install ceph-monitor时报错
- 配置ceph.repo
ceph-monitor上配置ceph源流程与ceph-admin配置ceph源相同
- 安装所需要rpm包
[root@ceph-monitor yum.repos.d] yum install python-sphinx
[root@ceph-monitor yum.repos.d] cd /opt
[root@ceph-monitor opt] rpm -ivh boost-thread-1.41.0-27.el6.x86_64.rpm
[root@ceph-monitor opt] rpm -ivh python-babel-0.9.4-5.1.el6.x86_64.rpm
[root@ceph-monitor opt] rpm -ivh python-six-1.9.0-2.el6.noarch.rpm
[root@ceph-monitor opt] rpm -ivh libbabeltrace-1.2.1-1.el6.x86_64.rpm
[root@ceph-monitor opt] rpm -ivh libunwind-1.1-3.el6.x86_64.rpm
[root@ceph-monitor opt] rpm -ivh userspace-rcu-0.7.7-1.el6.x86_64.rpm
[root@ceph-monitor opt] rpm -ivh lttng-ust-2.4.1-1.el6.x86_64.rpm
[root@ceph-monitor opt] rpm -ivh python-backports-1.0-5.el6.x86_64.rpm
*以上rpm包可以由http://rpmfind.net/linux/rpm2html/search.php下载,
如果不安装以上rpm包,在ceph-deploy上使用ceph-deploy install ceph-monitor时会报缺少包的Error。
7 使用ceph-deploy进行部署
[root@ceph-admin opt]mkdir /mycluster && cd /mycluster
[root@ceph-admin mycluster] ceph-deploy install ceph-monitor
在节点ceph-admin上使用ceph-deploy工具部署ceph-osd01、ceph-osd02步骤如ceph-monitor【配置ceph源、安装相关rpm包】
============================================================================
※※遇到问题:
使用rpm-firefly版本部署ceph时会出现包依赖的错误,在使用ceph-deploy install ceph-monitor,有关librados2和librbd1,现象如下:
Error: Package: ceph-common-0.80.10-0.el6.x86_64(Ceph)
Require: librados2 = 0.80.10-0.el6
Available: librados2-0.80.10-rc1.el6.x86_64(Ceph)
librados2 = 0.80-rc1.0.el6
..........
该问题可能是firefly版本的bug,换成hammer版本后没有遇见该问题。
CentOS6.5 本地源搭建Ceph的更多相关文章
- centos本地源搭建——iso
说明:centos源搭建比另一篇ubuntu源搭建简单些,操作也简单.思路是用iso制作一个本地源,后期需要新软件可以自己添加. 1.进入iso挂载路径,这里是虚拟机,在vm上挂载,在linux下直接 ...
- PIP本地源搭建
Wheel包制作 # pip install wheel # mkdir ~/wheels # cd < Project > # pip wheel --wheel-dir=~/wheel ...
- ubuntu 本地源搭建
1.软件包放在 deps 目录下: dpkg-scanpackages deps /dev/null |gzip > deps/Packages.gz -r 2.更新 sources.list ...
- 基于VSFTP的本地YUM源及光盘YUM源搭建
基于VSFTP的本地YUM源及光盘YUM源搭建 一.yum环境的本地源搭建(基于VSFTP): 1)安装vsftp; *********************************** ...
- Linux 本地yum源搭建和网络yum源搭建
一.本地yum源搭建 首先挂载上光盘 [root@www /]# mount /dev/cdrom /media/cdrom/ 系统默认已经安装了可使用yum的软件包,所以可以直接配置: [root@ ...
- 自建yum源解决Ceph搭建过程中从官网取包慢的问题
最近项目组需要ceph环境,第一次搭建ceph,各种不顺,装了卸,卸了装,一遍又一遍地按照官网的操作进行.最气人的是网速差,从官网取包太慢.一轮尝试就浪费一上午. 因此想到本地新建yum源. 首先,按 ...
- 搭建yum本地源_阿里云CentOS服务器初始化设置
CentOS服务器初始化设置其实不分阿里云或其它服务器了,操作配置过程与步骤也差不多一.挂载硬盘 1.磁盘分区 fdisk -l #查看设备,一般可以看到设备名为/dev/xvdb fdisk /de ...
- (转)搭建企业内部yum仓库(centos6+centos7+epel源)
搭建企业内部yum仓库(centos6+centos7+epel源) 原文:https://www.cnblogs.com/nulige/p/6081192.html https://www.linu ...
- CentOS6.5下源码安装多个MySQL实例及复制搭建
多实例安装本节是在CentOS6.5下源码安装MySQL5.6.35的基础上,在同一台机器增加一个MySQL实例.参考Centos中安装多个mysql数据的配置实例,安装目录为/usr/local/m ...
随机推荐
- Log4J简单使用
一.一般会将commons-logging和Log4j一起使用 原因:1.commons-logging功能较弱 2.log4j功能强大. 所需jar: log4j-1.2.16.ja ...
- HttpClient模拟http请求
Http协议的重要性相信不用我多说了,HttpClient相比传统JDK自带的URLConnection,增加了易用性和灵活性(具体区别,日后我们再讨论),它不仅是客户端发送Http请求变得容易,而且 ...
- sublime问题汇总
1.sunlime光标不跟随 解决方法:安装插件IMESupport 利用package control安装,步骤: 第一步 第二步
- nodejs 初入
nodejs 模块路径 1.内置模块 如果传递给require函数的是NodeJS内置模块名称,不做路径解析,直接返回内部模块的导出对象,例:require('http'). 2. nodejs 支 ...
- 当html标签不被识别时(不解析)不妨试试htmlspecialchars_decode();试试
- 学习quartz定时
学习资料: http://www.cnblogs.com/Rozdy/p/4274356.html http://www.cnblogs.com/Rozdy/p/4284339.html https: ...
- db2常用命令大全
#显示这个DB2错误的解释信息(SQLSTATE 5位数字)db2 ? 42704 #显示这个SQLCODE的解释信息(SQLCODE 四位数字) db2 ? SQL0204N ##查看数据库指定配置 ...
- iOS小技巧3
将颜色合成图片 将颜色合成图片 +(UIImage *)imageWithColor:(UIColor *)color { CGRect rect = CGRectMake(0.0f, 0.0f, 1 ...
- [译]SpringMVC自定义验证注解(SpringMVC custom validation annotations)
在基于SpringMVC框架的开发中,我们经常要对用户提交的字段进行合法性验证,比如整数类型的字段有个范围约束,我们会用@Range(min=1, max=4).在实际应用开发中,我们经常碰到一些自己 ...
- 51CTO专访淘宝清无:漫谈Nginx服务器与Lua语言
http://os.51cto.com/art/201112/307610.htm 说到Web服务器,也许你第一时间会想到Apache,也许你会想到Nginx.虽然说Apache依然是Web服务器的老 ...