Ubuntu14.04部署CEPH
2016-09-14 10:08
495 查看
CEPH简介
CEPH是一种已经震撼了整个存储行业的最热门的软件定义存储技术(SoftwareDefined Storage,SDS)。它是要给开源项目,为块存储、文件存储和对象存储提供了统一的软件定义解决方案。CEPH旨在提供一个扩展性强大、性能优越且无单点故障的分布式存储系统。从一开始,CEPH就被设计为能在通用商业硬件上运行,并且支持高度扩展(逼近甚至超过艾字节的数量)。
《Ceph
Cookbook》
一、环境准备
Ubuntu14.04共3台,并安装ssh服务:apt-get
installopenssh-server
192.168.0.100:node1作为部署节点和monitor节点。
192.168.0.101:node2作为osd设备
0 ,挂载一个20G的硬盘
192.168.0.102:node3作为osd设备
1 ,挂载一个20G的硬盘
二、分别修改这三台设备的源,将apt的源文件替换成如下地址,因为国内的源下载速度比较快。
root@ node1:~# cat /etc/apt/sources.list
deb http://mirrors.aliyun.com/ubuntu/ trusty mainrestricted universe multiverse
deb http://mirrors.aliyun.com/ubuntu/ trusty-securitymain restricted universe multiverse
deb http://mirrors.aliyun.com/ubuntu/ trusty-updates mainrestricted universe multiverse
deb http://mirrors.aliyun.com/ubuntu/ trusty-proposedmain restricted universe multiverse
deb http://mirrors.aliyun.com/ubuntu/ trusty-backportsmain restricted universe multiverse
deb-src http://mirrors.aliyun.com/ubuntu/ trusty mainrestricted universe multiverse
deb-src http://mirrors.aliyun.com/ubuntu/ trusty-securitymain restricted universe multiverse
deb-src http://mirrors.aliyun.com/ubuntu/ trusty-updatesmain restricted universe multiverse
deb-src http://mirrors.aliyun.com/ubuntu/ trusty-proposedmain restricted universe multiverse
deb-src http://mirrors.aliyun.com/ubuntu/trusty-backports main restricted universe multiverse
root@ node1:~# apt_get update
root@ node1:~#
三、开始部署
1、分别为每台设备创建ceph用户,添加root权限。
useradd -d /home/ceph -m ceph
passwd ceph
echo "ceph ALL = (root)NOPASSWD:ALL" | tee /etc/sudoers.d/ceph
chmod0440 /etc/sudoers.d/ceph
2、修改每个节点的主机名hostnamectlset-hostname $HOSTNAME。并修改每台机器的host文件
(做一个硬解析),修改后可以通过名字访问各个设备。
root@node1:~/ceph-cluster#cat /etc/hosts
127.0.0.1 localhost
127.0.1.1 ubuntu14
#The following lines are desirable for IPv6 capable hosts
::1 localhostip6-localhost ip6-loopback
ff02::1ip6-allnodes
ff02::2ip6-allrouters
192.168.0.100 node1
192.168.0.101 node2
192.168.0.102 node3
3. 安装ceph-deploy(只在管理节点上执行)
wget -q -O-'https://ceph.com/git/?p=ceph.git;a=blob_plain;f=keys/release.asc' | sudoapt-key add -
echo deb http://ceph.com/debian-giant/ $(lsb_release -sc) main | sudotee /etc/apt/sources.list.d/ceph.list
sudo apt-get update
sudo apt-get install ceph-deploy
安装发生意外?提示以下信息:
python-setuptoolsbut it is not going to be installed
表示当前ceph-deploy依赖于 Python-setuptools,尝试安装Python-setuptools
,使用命令:agt-get installpython-setuptools
再次发生意外提示:
python-pkg-resources(= 3.3-1ubuntu1) but 3.3-1ubuntu2 is to be installed
这次说明已经安装的Python版本出现了不支持现象,先卸载已经安装的Python,使用命令:agt-getremove
python
卸载后再次尝试安装python-setuptools,
再次使用命令:agt-getinstall python-setuptools
最后再次尝试安装ceph-deploy:
使用命令:sudoapt-get install ceph-deploy
发现这次可以成功安装ceph-deploy。
4、 用无密码的SSH连接到每个Ceph节点来配置你的ceph-deploy
管理节点.
保留密码为空。
创建密钥,提示输入的时候全部enter建。
ssh-keygen
将密钥拷贝到其他osd设备上去。
ssh-copy-id ceph@node1
ssh-copy-idceph@node2
ssh-copy-id ceph@node3
5、 修改你的ceph-deploy管理节点的~/.ssh/config
文件使它能像你创建的用户(比如,
ceph)一样记录至Ceph节点
.可能不存在 这个配置文件,但是你可以创建一个这样的配置文件。配置文件中的内容如下:
root@node1:~/ceph-cluster# cat ~/.ssh/config
Hostnode1
Userceph
Hostnode2
Userceph
Hostnode3
Userceph
6、创建一个自己的集群目录
mkdir ceph-cluster
cd ceph-cluster
7、创建一个新的集群(最后一个参数为100的hostname)
ceph-deploy new cephmon
8、修改配置文件 ceph.conf
osdpool default size = 3 -----》设置副本个数,不建议超过osd数量
osdpool default min size = 1 --->设置可写最小副本个数
osdpool default pg num = 333 ---》设置pool的pg个数
osd pool default pgp num = 333 --》设置pool的pgp_num个数
9、分别在所有的设备上安装ceph
ceph-deploy install node1 node2 node3
注意安装时可能会提示:
404 Not Found [IP: 91.189.91.14 80]
根据错误信息,定位是那一台设备除了问题,在该设备上输入命令确认:sudo apt-get install ceph,确认问题仍然是这个,需要更新apt-get,执行命令apt-get
update。执行完成后 再次使用命令sudo apt-get install ceph。完成通过,说明问题解决。
注意:如果实在安装不上,则在每个节点上分别执行以下命令:
wget -q -O-'https://ceph.com/git/?p=ceph.git;a=blob_plain;f=keys/release.asc' | sudoapt-key add -
echo debhttp://ceph.com/debian-giant/ $(lsb_release -sc) main | sudo tee/etc/apt/sources.list.d/ceph.list
sudo apt-get update
sudo apt-get install ceph
10、在100上创建监视线程,并且初始化:
ceph-deploy mon create-initial
11、修改密钥文件权限:
chmod 777ceph.client.admin.keyring
sudo chmod 777 /etc/ceph/ceph.client.admin.keyring
12、列出osd0,osd1上面可以用的磁盘:
ceph-deploy disk list node2 node3
13、格式化osd0,osd1上的磁盘为xfs,并创建线程。
ceph-deploy disk zap node1:/dev/sdb
ceph-deploy osd create
node1:/dev/sdb
ceph-deploy disk zap node2:/dev/sdb
ceph-deploy osd create
node2:/dev/sdb
14、拷贝配置文件到每一台机器上
ceph-deploy admin node1 node2 node3
sudochmod
+r /etc/ceph/ceph.client.admin.keyring
15. 查看ceph的安装状态:
ceph -s
注意:后续想添加客户机或者安装radosgw,可在此基础上进行。
CEPH是一种已经震撼了整个存储行业的最热门的软件定义存储技术(SoftwareDefined Storage,SDS)。它是要给开源项目,为块存储、文件存储和对象存储提供了统一的软件定义解决方案。CEPH旨在提供一个扩展性强大、性能优越且无单点故障的分布式存储系统。从一开始,CEPH就被设计为能在通用商业硬件上运行,并且支持高度扩展(逼近甚至超过艾字节的数量)。
《Ceph
Cookbook》
一、环境准备
Ubuntu14.04共3台,并安装ssh服务:apt-get
installopenssh-server
192.168.0.100:node1作为部署节点和monitor节点。
192.168.0.101:node2作为osd设备
0 ,挂载一个20G的硬盘
192.168.0.102:node3作为osd设备
1 ,挂载一个20G的硬盘
二、分别修改这三台设备的源,将apt的源文件替换成如下地址,因为国内的源下载速度比较快。
root@ node1:~# cat /etc/apt/sources.list
deb http://mirrors.aliyun.com/ubuntu/ trusty mainrestricted universe multiverse
deb http://mirrors.aliyun.com/ubuntu/ trusty-securitymain restricted universe multiverse
deb http://mirrors.aliyun.com/ubuntu/ trusty-updates mainrestricted universe multiverse
deb http://mirrors.aliyun.com/ubuntu/ trusty-proposedmain restricted universe multiverse
deb http://mirrors.aliyun.com/ubuntu/ trusty-backportsmain restricted universe multiverse
deb-src http://mirrors.aliyun.com/ubuntu/ trusty mainrestricted universe multiverse
deb-src http://mirrors.aliyun.com/ubuntu/ trusty-securitymain restricted universe multiverse
deb-src http://mirrors.aliyun.com/ubuntu/ trusty-updatesmain restricted universe multiverse
deb-src http://mirrors.aliyun.com/ubuntu/ trusty-proposedmain restricted universe multiverse
deb-src http://mirrors.aliyun.com/ubuntu/trusty-backports main restricted universe multiverse
root@ node1:~# apt_get update
root@ node1:~#
三、开始部署
1、分别为每台设备创建ceph用户,添加root权限。
useradd -d /home/ceph -m ceph
passwd ceph
echo "ceph ALL = (root)NOPASSWD:ALL" | tee /etc/sudoers.d/ceph
chmod0440 /etc/sudoers.d/ceph
2、修改每个节点的主机名hostnamectlset-hostname $HOSTNAME。并修改每台机器的host文件
(做一个硬解析),修改后可以通过名字访问各个设备。
root@node1:~/ceph-cluster#cat /etc/hosts
127.0.0.1 localhost
127.0.1.1 ubuntu14
#The following lines are desirable for IPv6 capable hosts
::1 localhostip6-localhost ip6-loopback
ff02::1ip6-allnodes
ff02::2ip6-allrouters
192.168.0.100 node1
192.168.0.101 node2
192.168.0.102 node3
3. 安装ceph-deploy(只在管理节点上执行)
wget -q -O-'https://ceph.com/git/?p=ceph.git;a=blob_plain;f=keys/release.asc' | sudoapt-key add -
echo deb http://ceph.com/debian-giant/ $(lsb_release -sc) main | sudotee /etc/apt/sources.list.d/ceph.list
sudo apt-get update
sudo apt-get install ceph-deploy
安装发生意外?提示以下信息:
python-setuptoolsbut it is not going to be installed
表示当前ceph-deploy依赖于 Python-setuptools,尝试安装Python-setuptools
,使用命令:agt-get installpython-setuptools
再次发生意外提示:
python-pkg-resources(= 3.3-1ubuntu1) but 3.3-1ubuntu2 is to be installed
这次说明已经安装的Python版本出现了不支持现象,先卸载已经安装的Python,使用命令:agt-getremove
python
卸载后再次尝试安装python-setuptools,
再次使用命令:agt-getinstall python-setuptools
最后再次尝试安装ceph-deploy:
使用命令:sudoapt-get install ceph-deploy
发现这次可以成功安装ceph-deploy。
4、 用无密码的SSH连接到每个Ceph节点来配置你的ceph-deploy
管理节点.
保留密码为空。
创建密钥,提示输入的时候全部enter建。
ssh-keygen
将密钥拷贝到其他osd设备上去。
ssh-copy-id ceph@node1
ssh-copy-idceph@node2
ssh-copy-id ceph@node3
5、 修改你的ceph-deploy管理节点的~/.ssh/config
文件使它能像你创建的用户(比如,
ceph)一样记录至Ceph节点
.可能不存在 这个配置文件,但是你可以创建一个这样的配置文件。配置文件中的内容如下:
root@node1:~/ceph-cluster# cat ~/.ssh/config
Hostnode1
Userceph
Hostnode2
Userceph
Hostnode3
Userceph
6、创建一个自己的集群目录
mkdir ceph-cluster
cd ceph-cluster
7、创建一个新的集群(最后一个参数为100的hostname)
ceph-deploy new cephmon
8、修改配置文件 ceph.conf
osdpool default size = 3 -----》设置副本个数,不建议超过osd数量
osdpool default min size = 1 --->设置可写最小副本个数
osdpool default pg num = 333 ---》设置pool的pg个数
osd pool default pgp num = 333 --》设置pool的pgp_num个数
9、分别在所有的设备上安装ceph
ceph-deploy install node1 node2 node3
注意安装时可能会提示:
404 Not Found [IP: 91.189.91.14 80]
根据错误信息,定位是那一台设备除了问题,在该设备上输入命令确认:sudo apt-get install ceph,确认问题仍然是这个,需要更新apt-get,执行命令apt-get
update。执行完成后 再次使用命令sudo apt-get install ceph。完成通过,说明问题解决。
注意:如果实在安装不上,则在每个节点上分别执行以下命令:
wget -q -O-'https://ceph.com/git/?p=ceph.git;a=blob_plain;f=keys/release.asc' | sudoapt-key add -
echo debhttp://ceph.com/debian-giant/ $(lsb_release -sc) main | sudo tee/etc/apt/sources.list.d/ceph.list
sudo apt-get update
sudo apt-get install ceph
10、在100上创建监视线程,并且初始化:
ceph-deploy mon create-initial
11、修改密钥文件权限:
chmod 777ceph.client.admin.keyring
sudo chmod 777 /etc/ceph/ceph.client.admin.keyring
12、列出osd0,osd1上面可以用的磁盘:
ceph-deploy disk list node2 node3
13、格式化osd0,osd1上的磁盘为xfs,并创建线程。
ceph-deploy disk zap node1:/dev/sdb
ceph-deploy osd create
node1:/dev/sdb
ceph-deploy disk zap node2:/dev/sdb
ceph-deploy osd create
node2:/dev/sdb
14、拷贝配置文件到每一台机器上
ceph-deploy admin node1 node2 node3
sudochmod
+r /etc/ceph/ceph.client.admin.keyring
15. 查看ceph的安装状态:
ceph -s
注意:后续想添加客户机或者安装radosgw,可在此基础上进行。
相关文章推荐
- Ubuntu14.04部署CEPH
- Ceph快速安装:Ceph-deploy 在Ubuntu 14.04 Server上部署三节点安装
- CEPH Jewel+Ubuntu14.04+Calamari部署之CEPH Jewel集群部署
- CEPH 分布式存储部署手册 (Ubuntu 14.04)
- Ubuntu 14.04 部署 CEPH集群
- CEPH Ubuntu14.04 集群部署
- ceph 0.87 ubuntu14.04 部署(准备篇 )
- 利用ceph-deploy在ubuntu server14.04上部署ceph并进行其它配置
- ceph 性能监控calamair在ubuntu14.04上的安装部署
- Ceph快速安装:Ceph-deploy 在Ubuntu 14.04 Server上部署三节点安装
- CEPH 分布式存储部署手册 (Ubuntu 14.04)
- Ceph 0.80 ubuntu14.04 多节点手动搭建
- Ubuntu 14.04下安装部署Qt5开发环境
- ubuntu14.04 ceph分布式集群搭建(二)
- 在Ubuntu 14.04 下部署Apache2服务器并发布Django 1.7.6 Web应用(本机)
- openstack多主机部署(ubuntu14.04)J版
- ElasticSearch安装部署,基本配置(Ubuntu14.04)
- Ubuntu 14.04+Django 1.7.1+Nginx+uwsgi部署最简记录(精简自uwsgi官网教程)
- Ubuntu 14.04+Django 1.7.1+Nginx+uwsgi部署教程
- Hadoop部署 Ubuntu14.04