环境配置
准备环境
系统版本:Centos7.2 x86_64 server
硬件配置:5台vm,1核512mb内存、1g内存,每台node角色的机器至少挂载一块不低于5G的空闲为osd存储
环境规划
主机名 ip role
admin 192.168.43.10 admin(安装ceph-deploy)
node1 192.168.43.20 mon / mgr /osd
node2 192.168.43.30 osd
node3 192.168.43.40 osd
ceph-client 192.168.43.50
配置yum源(所有节点都需要配置)
yum -y install wget
cd /etc/yum.repos.d/
wget http://mirrors.163.com/.help/CentOS7-Base-163.repo
wget -O /etc/yum.repos.d/epel-7.repo http://mirrors.aliyun.com/repo/epel-7.repo
7.repo
yum clean all
yum makecache
修改主机名(所有节点都需要配置)
hostnamectl set-hostname admin
hostnamectl set-hostname node1
hostnamectl set-hostname node2
hostnamectl set-hostname node3
hostnamectl set-hostname ceph-client
配置hosts解析(所有节点都需要配置)
cat >>/etc/hosts<<EOF
192.168.43.10 admin
192.168.43.20 node1
192.168.43.30 node2
192.168.43.40 node3
192.168.43.50 ceph-client
EOF
关闭所有机器的防火墙和selinux(所有节点都需要配置)
setenforce 0
sed -i 's#SELINUX=enforcing#SELINUX=disabled#g' /etc/selinux/config
systemctl stop firewalld
systemctl disable firewalld
实现ssh无密码登陆(admin节点操作)
ssh-keygen
ssh-copy-id node1
ssh-copy-id node2
ssh-copy-id node3
ssh-copy-id ceph-client
添加下载源,安装ceph-deploy(admin节点)
vi /etc/yum.repos.d/ceph.repo
[ceph-noarch]
name=Ceph noarch packages
baseurl=https://download.ceph.com/rpm-luminous/el7/noarch
enabled=1
gpgcheck=1
type=rpm-md
gpgkey=https://download.ceph.com/keys/release.asc
yum makecache
yum -y install ceph-deploy
安装ntp(所有节点都需要配置)
yum -y install ntp
vi /etc/ntp.conf
server time1.aliyun.com iburst
systemctl restart ntpd
systemctl enable ntpd
部署Ceph集群
1、创建ceph操作的目录
mkdir my-cluster #之后,所有ceph-deploy命令操作必须在该目录下执行
2、创建集群
首先在这里要先下载一个包并安装,否则后面会报错
上传软件包distribute-0.7.3.zip到服务器上
unzip distribute-0.7.3.zip
cd distribute-0.7.3
python setup.py install
创建集群
ceph-deploy new node1
[root@admin my-cluster]# ls
ceph-deploy-ceph.log ceph.conf ceph.mon.keyring
3、手动不是安装三台机器分别创建:三台node节点操作相同
3.1、安装epel源
yum -y install epel-release
3.2、配置ceph源
vi /etc/yum.repos.d/ceph.repo
[Ceph]
name=Ceph packages for $basearch
baseurl=http://mirrors.aliyun.com/ceph/rpm-luminous/el7/$basearch
enabled=1
gpgcheck=0
type=rpm-md
gpgkey=https://mirrors.aliyun.com/ceph/keys/release.asc
priority=1
[Ceph-noarch]
name=Ceph noarch packages
baseurl=http://mirrors.aliyun.com/ceph/rpm-luminous/el7/noarch
enabled=1
gpgcheck=0
type=rpm-md
gpgkey=https://mirrors.aliyun.com/ceph/keys/release.asc
priority=1
[ceph-source]
name=Ceph source packages
baseurl=http://mirrors.aliyun.com/ceph/rpm-luminous/el7/SRPMS
enabled=1
gpgcheck=0
type=rpm-md
gpgkey=https://mirrors.aliyun.com/ceph/keys/release.asc
priority=1
3.3、分别在node节点上执行安装命令
yum -y install ceph ceph-radosgw
3.4、测试
ceph --version
3.5、初始化mon(admin节点操作)
ceph-deploy mon create-initial
3.6、赋予各个节点使用命令免用户名权限
ceph-deploy admin node1 node2 node3
3.7、安装ceph-mgr
ceph-deploy mgr create node1
3.7、添加osd
ceph-deploy osd create --data /dev/sdb node1
ceph-deploy osd create --data /dev/sdb node2
ceph-deploy osd create --data /dev/sdb node3
3.8、查看集群状态
ssh node1 ceph -s
dsahboard配置
1、创建管理域秘钥
[root@node1 ~]# ceph auth get-or-create mgr.node1 mon 'allow profile mgr' osd 'allow *' mds 'allow *'
[mgr.node1]
key = AQBSDzJf6HBQCRAAxFTtzlArI91hyQ0DnbBRFg==
2、开启ceph-mgr管理域
[root@node1 ~]# ceph-mgr -i node1
3、打开dashboard模块
[root@node1 ~]# ceph mgr module enable dashboard
4、绑定开启dashboard模块
[root@node1 ~]# ceph config-key set mgr/dashboard/node1/server_addr 192.168.43.20
浏览器访问node1的ip地址:7000访问web界面
客户端使用
1、配置存储池
[root@node1 ~]# ceph osd pool create rbd 128 128
pool 'rbd' created
2、初始化存储池
[root@node1 ~]# rbd pool init rbd
3、为client安装ceph
yum -y install python-setuptools
3.1、安装epel-release源
yum -y install epel-release
3.2、安装ceph源
vi /etc/yum.repos.d/ceph.repo
[Ceph]
name=Ceph packages for $basearch
baseurl=http://mirrors.aliyun.com/ceph/rpm-luminous/el7/$basearch
enabled=1
gpgcheck=0
type=rpm-md
gpgkey=https://mirrors.aliyun.com/ceph/keys/release.asc
priority=1
[Ceph-noarch]
name=Ceph noarch packages
baseurl=http://mirrors.aliyun.com/ceph/rpm-luminous/el7/noarch
enabled=1
gpgcheck=0
type=rpm-md
gpgkey=https://mirrors.aliyun.com/ceph/keys/release.asc
priority=1
[ceph-source]
name=Ceph source packages
baseurl=http://mirrors.aliyun.com/ceph/rpm-luminous/el7/SRPMS
enabled=1
gpgcheck=0
type=rpm-md
gpgkey=https://mirrors.aliyun.com/ceph/keys/release.asc
priority=1
3.3、安装服务
yum -y install ceph ceph-radosgw
3.4、升级内核
升级ceph-client内核
Centos7升级内核
更新前,内核版本为:
[root@ceph-client ~]# uname -r
3.10.0-327.el7.x86_64
升级方法:导入key:
[root@ceph-client ~]# rpm --import https://www.elrepo.org/RPM-GPG-KEY-elrepo.org
安装elrepo的yum源
[root@ceph-client ~]# rpm -Uvh http://www.elrepo.org/elrepo-release-7.0-2.el7.elrepo.noarch.rpm
查看可用的系统内核包
[root@ceph-client ~]# yum --disablerepo="*" --enablerepo="elrepo-kernel" list available
安装内核:当前内核为最新5.7,也可以按照4版本的内核
[root@ceph-client ~]# yum --enablerepo=elrepo-kernel install kernel-ml-devel kernel-ml -y
查看内核默认启动顺序
[root@ceph-client ~]# awk -F\' '$1=="menuentry " {print $2}' /etc/grub2.cfg
CentOS Linux (5.7.12-1.el7.elrepo.x86_64) 7 (Core)
CentOS Linux (3.10.0-327.el7.x86_64) 7 (Core)
CentOS Linux (0-rescue-1bbd5b6219324d96adde7c2631097c22) 7 (Core)
默认启动的顺序是从0开始,新内核是从头插入(目前位置在0,而5.7.12是在1),所以需要选择0
[root@ceph-client ~]# grub2-set-default 0
然后reboot重启,使用新的内核,下面是重启后使用的内核版本:
[root@ceph-client ~]# reboot
[root@ceph-client ~]# uname -r
5.7.12-1.el7.elrepo.x86_64
4、在admin节点赋予client使用命令免用户权限
[root@admin my-cluster]# ceph-deploy admin ceph-client
5、修改client下该文件的读权限
[root@ceph-client ~]# chmod +r /etc/ceph/ceph.client.admin.keyring
6、修改client的ceph配置文件 #这一步是为了解决映射镜像时出现错误
[root@ceph-client ~]# vi /etc/ceph/ceph.conf
rbd_default_features = 1
7、client节点创建块设备镜像:单位是M
[root@ceph-client ~]# rbd create foo --size 4096
8、client节点映射镜像到主机
[root@ceph-client ~]# rbd map foo --name client.admin
8、client节点格式化块设备
[root@ceph-client ~]# mkfs.ext4 -m 0 /dev/rbd/rbd/foo
9、client节点mount块设备
[root@ceph-client ~]# mount /dev/rbd/rbd/foo /mnt
网友评论