小型ceph集群的搭建
了解ceph
DFS(distributed file system)分布式存储系统,指文件系统管理的物理存储资源,不一定直接连接在本地节点上,而是通过计算机网络与节点相连,众多类别中,ceph是当下应用比较广泛的分布式存储系统,是典型的客户端-服务端模式.
1.ceph具有很多特点,譬如,高扩展(可以无限扩展节点),高可用(提供副本备份),高性能(crush算法,数据分布军均衡,并行度高)等;
2.ceph可以提供块存储,文件系统存储,对象存储;
3.其基本组件有OSD存储设备,monitor集群监控组件,RGW对象存储网关,MDS存放文件系统的元数据,client客户端.
关于ceph的更深层次内容,请查看官方帮助文档:http://docs.ceph.org/start/intro
下面搭建一个小型ceph集群,来做深入的研究.
总体思路: 搭建环境 -> 集群搭建 ->验证
拓扑图:
一, 环境搭建
思路: (1)创建4台虚拟机,1台做客户端,另外3台做存储集群;
(2)配置主机名,IP地址,yum源,挂载ceph光盘;
(3)配置4台主机的ssh无密码连接,实现操作同步;
(4)配置NTP时间同步;
(5)为虚拟机添加磁盘,用于后面的集群存储.
具体步骤:
//思路:先在主机node1上操作,再同步内容到其它主机上.
1)真机上创建挂载点/var/ftp/ceph,并挂载ceph10.iso光盘;
2)为4台主机设置ssh无密码连接,包括本机;
#ssh-keygen -f /root/.ssh/id_rsa -N ''
#for i in 10 11 12 13 //同步到其它主机
do
scp-copy-ip 192.168.4.$i
done
3)使用本机解析IP地址,并同步到4台主机(这里不再另外搭建DNS服务器)
#vim /etc/hosts
192.168.4.10 client
192.168.4.11 node1
192.168.4.12 node2
192.168.4.13 node3
for i in 10 11 12 13 //同步到其它主机
do
scp /etc/hosts 192.168.4.$i:/etc/
4)配置yum源,调用真机挂载点里的ceph工具
#vim /etc/yum.repos.d/ceph.repo
[mon]
name=mon
baseurl=ftp://192.168.4.254/ceph/MON
gpgcheck=0
[osd]
name=osk
baseurl=ftp://192.168.4.254/ceph/OSD
gpgcheck=0
[tools]
name=tools
baseurl=ftp://192.168.4.254/ceph/Tools
gpgcheck=0
for i in 10 11 12 13 //同步yum源到其它主机
do
scp /etc/yum.repos.d/ceph.repo 192.168.4.$i:/etc/yum.repos.d/
done
5)配置所有主机NTP与真机一致
#vim /etc/chrony.conf
server 192.168.4.254 iburst
for i in 10 11 12 13 //同步到其它主机
do
scp /etc/chrony.conf 192.168.4.$i:/etc/
done
6)真机上运行virt-manager,调出虚拟系统管理器,为每个虚拟主机添加3块磁盘vdb,vdc,vdd.
二, 集群搭建
思路: (1)安装工具ceph-deploy
(2)创建ceph集群
(3)准备日志,及磁盘分区
(4)创建OSD存储空间
(5)查看ceph状态及验证
具体步骤:
(1)安装工具,并创建目录
yum -y install ceph-deploy
mkdir ceph-cluster
(2)创建ceph集群
a. 定义monitor主机到配置文件ceph.conf里
node1 ceph-cluster]#ceph-deploy new node1 node2 node3
b. 安装ceph相关软件包到所有节点
node1 ceph-cluster]#for i in node1 node2 node3
do
ssh 192.168.4.$i "yum -y install ceph-mon ceph-osd ceph-mds ceph-radosgw"
done
c.初始化所有节点的Monitor服务,即启动mon服务
node1 ceph-cluster]# ceph-deploy mon create-initial
(3)创建OSD存储
a.将vdb分区成vdb1和vdb2来作为缓存服务器的journal缓存盘
node1 ceph-cluster]# for i in node1 node2 node3
do
ssh 192.168.4.$i "parted /dev/vdb mklabel gpt"
ssh 192.168.4.$i "parted /dev/vdb mkpart primary 1 50%"
ssh 192.168.4.$i "parted /dev/vdb mkpart primary 50% 100%"
done
b.磁盘分区为vdb1和vdb2后的默认权限,不能让ceph软件对其做读写操作,需要修改权限.
注意,4台主机都要改权限,如下以node1为例:
node1 ceph-cluster]# chown ceph.ceph /dev/vdb1 //临时修改权限
node1 ceph-cluster]# chown ceph.ceph /dev/vdb2 //临时修改权限
永久性地设置权限:
node1 deph-cluster]# vim /etc/udev/rules.d/70-vdb.rules
ENV{DEVNAME}=="/dev/vdb1",OWNER="ceph",GROUP="ceph"
ENV{DEVNAME}=="/dev/vdb2"OWNER="ceph",GROUP="ceph"
#for i in node1 node2 node3 //同步到所有主机
do
scp /etc/udev/rules.d/70-vdb.rules 192.168.4.$i:/etc/udev/rules.d/
done
c.初始化磁盘数据,即清空.
#for i in node1 node2 node3
do
ceph-deploy disk zap $i:vdc $i:vdd
done
d.创建OSD存储空间
#for i in node1 node2 node3
do
ceph-deploy osd create $i:vdc:/dev/vdb1 $i:vdd:/dev/vdb2
//创建osd存储设备,vdc提供存储空间,vdb1提供日志缓存;vdd提供存储空间,vdb2提供日志缓存.
done
三, 验证
node1~]# ceph -s //查看状态,
//如果失败,尝试重启ceph服务:# systemctl restart ceph\*.server ceph\*.target
随笔完毕.
小型ceph集群的搭建的更多相关文章
- 删除ceph集群mds
ceph集群新搭建以后是只有一个默认的存储池rbd的池 ## 创建文件接口集群 1.创建一个元数据池 [root@mytest ~]# ceph osd pool create metadata 20 ...
- ceph-deploy离线部署ceph集群及报错解决FAQ
ceph-deploy部署ceph集群 环境介绍 主机名 ip地址 操作系统 角色 备注 ceph-node1 10.153.204.13 Centos7.6 mon.osd.mds.mgr.rgw. ...
- CentOS 7 搭建 Ceph 集群(nautilus 版本)
搭建 Ceph 分布式集群( nautilus 版本 ) 一.服务器环境说明 主机名 角色 IP地址 ceph-admin ceph-deploy 192.168.92.21 ceph-node1 m ...
- ceph集群搭建
CEPH 1.组成部分 1.1 monitor admin节点安装ceph-deploy工具 admin节点安装ceph-deploy 添加源信息 rm -f /etc/yum.repos.d/* w ...
- Ceph集群搭建及Kubernetes上实现动态存储(StorageClass)
集群准备 ceph集群配置说明 节点名称 IP地址 配置 作用 ceph-moni-0 10.10.3.150 centos7.5 4C,16G,200Disk 管理节点,监视器 monitor ...
- 搭建ceph集群(单节点)
https://blog.csdn.net/Greenchess/article/details/77525786 软件环境: - Centos7 x64 CEPH版本 : - ceph-deploy ...
- centos7搭建ceph集群
一.服务器规划 主机名 主机IP 磁盘配比 角色 node1 public-ip:10.0.0.130cluster-ip:192.168.2.130 sda,sdb,sdcsda是系统盘,另外两块数 ...
- docker创建ceph集群
背景 Ceph官方现在提供两类镜像来创建集群,一种是常规的,每一种Ceph组件是单独的一个镜像,如ceph/daemon.ceph/radosgw.ceph/mon.ceph/osd等:另外一种是最新 ...
- CEPH集群操作入门--配置
参考文档:CEPH官网集群操作文档 概述 Ceph存储集群是所有Ceph部署的基础. 基于RADOS,Ceph存储集群由两种类型的守护进程组成:Ceph OSD守护进程(OSD)将数据作为对象 ...
随机推荐
- IIS的安装与配置详细图解教程
IIS是Internet Information Services(互联网信息服务)的简称,是有微软公司提供的基于在windows操作系统环境下运行的互联网服务.此处将介绍如何安装配置IIS来构架自己 ...
- node.js连接数据库登录注册,修改用户(页面的ajax请求)
首先给大家看一下目录结构,结构如下: index.html 首页(显示所有的用户信息) login.html 登录页 register.html 注册页 db.js 配置链接数据库参数 dbhelpe ...
- 移动端 AnyProxy HTTPS 配置
参考:AnyProxy HTTPS相关教程 参考教程中,说明了 Windows 和 Mac 系统的配置,这里补充一下移动端(Android.iOS)的配置 生成RootCA > 下载 rootC ...
- java 遍历list 模糊查询用
java 遍历list 模糊查询用 /** * 筛选list * @param list 要筛选的list * @param key 筛选的key * @param <T> * @retu ...
- asp实现阿里大鱼短信API接口的方法
阿里大鱼是阿里推出的产品,官方提供JAVA..NET.PHP等版本的SDK下载,不知为何,唯独不提供ASP版本的SDK. 不提供没关系,自己写就是了,参照官方提供的API写一个就是了. 本来以为无非是 ...
- scp 命令简明介绍
安全复制(英语:Secure copy,缩写SCP)是指在本地主机与远程主机或者两台远程主机之间基于Secure Shell(SSH)协议安全地传输电脑文件."SCP"通常指安全复 ...
- IDEA里面的facets和artifacts的讲解
Facets: Facets表述了在Module中使用的各种各样的框架.技术和语言.这些Facets让Intellij IDEA知道怎么对待module内容,并保证与相应的框架和语言保持一致. 使用F ...
- Pyhton学习——Day60
Form组件 - form表单(验证:保留上次内容) - - Ajax(验证:无需上次内容) - 返回HttpResponse - 前端:跳转或错误信息 1. Form组件扩展: 1.简单扩展 利用F ...
- 进入docker 容器内命令
docker exec :在运行的容器中执行命令 语法 docker exec [OPTIONS] CONTAINER COMMAND [ARG...] OPTIONS说明: -d :分离模式: 在后 ...
- POJ 2661Factstone Benchmark(斯特林公式)
链接:传送门 题意:一个人自命不凡,他从1960年开始每10年更新一次计算机的最长储存长数.1960年为4位,每10年翻一倍.给出一个年份y,问这一年计算机可以执行的n!而不溢出的最大n值 思路:如果 ...