Ceph安装部署文档
目录
一:简介... 1
二:部署环境介绍... 1
三:集群配置准备工作... 2
四:安装ceph软件包... 6
五:安装ceph对象网关... 9
六、搭建ceph集群... 10
6.1、配置mon节点... 10
6.2:添加osd节点... 13
6.2.1、添加第一块osd节点... 13
6.3:添加元数据服务器... 17
6.3.1、添加第一个元数据服务器... 17
七:安装client端RBD、cephFS挂载演示... 18
7.1:客户端内核要求、安装装准备... 18
7.2、RBD方式挂载... 19
7.3、cephFS挂载... 20
八:检查ceph集群状态常用命令... 23
8.1、磁盘压力测试软件推荐... 23
九:故障排查... 23
一:简介
Ceph 生态系统架构可以划分为四部分:
1. Clients:客户端(数据用户)
2. mds:Metadata servercluster,元数据服务器(缓存和同步分布式元数据)
3. osd:Object storagecluster,对象存储集群(将数据和元数据作为对象存储,执行其它关键职能)
4. mon:Cluster monitors,集群监视器(执行监视功能)
二:部署环境介绍
主机名 |
公网IP(eth0) |
运行服务 |
cpu |
内存 |
操作系统 |
磁盘 |
备注 |
client |
172.16.4.17 |
Client |
cpu: e5520*2 |
4g*4 |
CentOS6.6 |
||
node01 |
172.16.2.27 |
mon、mds、osd |
cpu: e5520*2 |
4g*4 |
CentOS6.6 |
1T sas 7500转*4 |
|
node02 |
172.16.2.28 |
mon、mds、osd |
cpu: e5520*2 |
4g*4 |
CentOS6.6 |
1T sas 7500转*4 |
|
node03 |
172.16.2.29 |
mon、mds、osd |
cpu: e5520*2 |
4g*4 |
CentOS6.6 |
1T sas 7500转*4 |
三:集群配置准备工作
node01节点执行
3.1:创建工作文件夹,建立ip地址list,为文件传输做准备
mkdir /workspace/
[root@node01 ~]#cd /workspace/
[root@node01workspace]# vi cephlist.txt 主机列表
client
node01
node02
node03
主机ssh登陆证书
ssh-keygen
cd .ssh/
ssh-copy-id 127.1
将配置完成的证书传输到其它服务器
sync –avp * 172.17.2.27:/root/.ssh/
sync –avp * 172.17.2.28:/root/.ssh/
sync –avp * 172.17.2.29:/root/.ssh/
3.2:系统基础设置,建议整理为脚本,批量传输到所有集群主机执行
3.2.1.修改SELINUX模式
sed -i's/SELINUX=enforcing/SELINUX=disabled/' /etc/sysconfig/selinux
sed -i's/SELINUX=enforcing/SELINUX=disabled/' /etc/selinux/config
3.2.2.set max userprocesses
sed -i's/1024/102400/' /etc/security/limits.d/90-nproc.conf
echo "* -sigpending 256612" >> /etc/security/limits.d/90-nproc.conf
3.2.3.set ulimit
echo "ulimit-SHn 102400" >> /etc/rc.local
cat >>/etc/security/limits.conf << EOF
* soft nofile 102400
* hard nofile 102400
* soft nproc 102400
* - sigpending256612
* hard nproc 102400
EOF
#执行profile
3.3: 修改host文件
[root@node01 ~]# vi /etc/hosts
追加内容如下:
172.16.4.17 client
172.16.2.27 node01
172.16.2.28 node02
172.16.2.29 node03
172.16.4.240 cephNaNmind.com
将host文件传输到其它主机
for ip in $(cat/workspace/cephlist.txt);do echo -----$ip-----;rsync -avp /etc/hosts $ip:/etc/;done
3.4:安装centos的yum源软件包 =>全部节点安装
3.4.1:升级基础包
rpm -Uvhhttp://mirrors.sohu.com/centos/6.6/os/x86_64/Packages/python-iniparse-0.3.1-2.1.el6.noarch.rpm
rpm -Uvh http://mirrors.sohu.com/centos/6.6/os/x86_64/Packages/yum-metadata-parser-1.1.2-16.el6.x86_64.rpm
rpm -Uvhhttp://mirrors.sohu.com/centos/6.6/os/x86_64/Packages/yum-3.2.29-60.el6.centos.noarch.rpm
rpm -Uvhhttp://mirrors.sohu.com/centos/6.6/os/x86_64/Packages/yum-plugin-fastestmirror-1.1.30-30.el6.noarch.rpm
3.4.2:配置一个国内yum源
vi/etc/yum.repos.d/my.repo[k1]
详见批注
3.4.3:添加时间同步定时任务
vi /etc/crontab
3.4.4:时间同步,此处是我们的内部时间源
20 */1 * * * root/usr/sbin/ntpdate 172.16.5.100 && /sbin/hwclock –w
for ip in $(cat /workspace/cephlist.txt);doecho -----$ip-----;rsync -avp --delete /etc/crontab $ip:/etc/;done
4:5:传输yum源文件到其它节点服务器
--delete 删除那些DST中SRC没有的文件
for ip in $(cat/workspace/cephlist.txt);do echo -----$ip-----;rsync -avp --delete/etc/yum.repos.d $ip:/etc/;done
3.5、更新yum源 (所有节点执行)
Screen
yum clean all&&yum update –y
3.6、添加ceph yum源或者自制yum源;
在所有节点安装ceph的所有的yum源 (所有节点执行)
3.6.1、安装软件包key
(1)、release.asckey
rpm --import'https://ceph.com/git/?p=ceph.git;a=blob_plain;f=keys/release.asc'
(2)、autobuild.asckey
rpm --import'https://ceph.com/git/?p=ceph.git;a=blob_plain;f=keys/autobuild.asc'
3.6.2、安装ceph附加包源ceph-extras.repo,设置priority=2,确保新的包(如qemu)优先级比标准包的高。
vi/etc/yum.repos.d/ceph-extras.repo[k2] [k3]
详见附件
#制作私有yum源下载软件包地址
wget -S -c -r -np-L http://ceph.com/packages/ceph-extras/rpm/centos6/
3.6.3、安装ceph源
vi/etc/yum.repos.d/ceph.repo[k4] [k5]
##制作私有yum源下载软件包地址
wget -S -c -r -np -L http://ceph.com/rpm/rhel6/
3.6.4、安装ceph的apache yum源
vi/etc/yum.repos.d/ceph-apache.repo[k6]
##制作私有yum源下载软件包地址
wget -S -c -r -np-L http://gitbuilder.ceph.com/apache2-rpm-centos6-x86_64-basic/ref/master/
3.6.5、添加ceph-fastcgi.repofile to /etc/yum.repos.d
vi/etc/yum.repos.d/