珠海专业做网站制作,泰兴网站建设,龙华网网站,wordpress 功能 wordpress.org目录 一、概述
1、特点
2、组件
3、架构图
二、分布式部署
1、环境拓扑
2、实验准备 3、ceph安装
安装
初始化monitor
同步管理信息
安装mgr#xff08;管理守护进程#xff09;
安装rgw
创建mds服务
OSD安装
4、dashboard安装
开启dashboard模块
生成签名 …目录 一、概述
1、特点
2、组件
3、架构图
二、分布式部署
1、环境拓扑
2、实验准备 3、ceph安装
安装
初始化monitor
同步管理信息
安装mgr管理守护进程
安装rgw
创建mds服务
OSD安装
4、dashboard安装
开启dashboard模块
生成签名
创建目录
启动服务
设置访问地址与端口
关闭https
访问 5、ceph文件系统创建
创建存储池
查看存储池
创建文件系统
查看文件系统
查看mds状态
三、在客户端挂载 一、概述
ceph是一个统一的分布式存储系统设计初衷是提供较好的性能、可靠性和可扩展性。Ceph项目最早起源于Sage就读博士期间的工作最早的成果于2004年发表并随后贡献给开源社区。在经过了数年的发展之后目前已得到众多云计算厂商的支持并被广泛应用。RedHat及OpenStack都可与Ceph整合以支持虚拟机镜像的后端存储
1、特点 1. 统一存储 虽然 ceph 底层是一个分布式文件系统但由于在上层开发了支持对象和块的接口。所以在开源存储软件中能够一统江湖。至于能不能千秋万代就不知了。 2. 高扩展性 扩容方便、容量大。能够管理上千台服务器、EB 级的容量。 3. 可靠性强 支持多份强一致性副本EC。副本能够垮主机、机架、机房、数据中心存放。所以安全可靠。存储节点可以自动管理、自动修复。无单点故障容错性强。 4. 高性能 因为是多个副本因此在读写操作时候能够做到高度并行化。理论上节点越多整个集群的 IOPS和吞吐量越高。另外一点 ceph 客户端读写数据直接与存储设备(osd) 交互。
2、组件 1. Monitor 一个Ceph集群需要多个Monitor组成的小集群它们通过Paxos同步数据用来保存OSD的元数据。 2. OSD OSD全称Object Storage Device也就是负责响应客户端请求返回具体数据的进程。一个Ceph集群一般都有很多个OSD。 3. MDS MDS全称Ceph Metadata Server是CephFS服务依赖的元数据服务。 4. Object Ceph最底层的存储单元是Object对象每个Object包含元数据和原始数据。 5. PG PG全称Placement Grouops是一个逻辑的概念一个PG包含多个OSD。引入PG这一层其实是为了更好的分配数据和定位数据。 6. RADOS RADOS全称Reliable Autonomic Distributed Object Store是Ceph集群的精华用户实现数据分配、Failover等集群操作。 7. Libradio Librados是Rados提供库因为RADOS是协议很难直接访问因此上层的RBD、RGW和CephFS都是通过librados访问的目前提供PHP、Ruby、Java、Python、C和C支持。 8. CRUSH CRUSH是Ceph使用的数据分布算法类似一致性哈希让数据分配到预期的地方。 9. RBD RBD全称RADOS block device是Ceph对外提供的块设备服务。 10. RGW RGW全称RADOS gateway是Ceph对外提供的对象存储服务接口与S3和Swift兼容。 11. CephFS CephFS全称Ceph File System是Ceph对外提供的文件系统服务。
3、架构图 1:文件上传先将文件切片成N个object如果开启了cephFS可以使用MDS缓存 2:切片后的文件object会存入到Ceph中 3:文件存储前会经过CRUSH算法计算当前文件存储归结于哪个PG 4:PG是逻辑概念上对文件存储范围划分的索引 5:根据PG索引将文件存储到指定服务器的OSD中
二、分布式部署
1、环境拓扑
实验拓扑 centos1 192.168.115.100 monitor osdcentos2 192.168.115.101 osd centos3 192.168.115.102 osdcentos4192.168.115.103 osd Client 2、实验准备
##在所有的主机上进行如下操作systemctl stop firewalld.service
systemctl disable firewalld.service systemctl stop NetworkManager
systemctl disable NetworkManagersystemctl restart network
systemctl stop NetworkManagersetenforce 0 sed -i s/#UseDNS yes/UseDNS no/ /etc/ssh/sshd_configsystemctl restart sshd##分别修改主机名
hostnamectl set-hostname centos1 bash
hostnamectl set-hostname centos2 bash
hostnamectl set-hostname centos3 bash
hostnamectl set-hostname centos4 bash###每台主机修改hosts文件
vim /etc/hosts
192.168.115.100 centos1###添加磁盘
echo - - - /sys/class/scsi_host/host0/scanfor i in 101 102;do ssh 192.168.115.$i echo - - - /sys/class/scsi_host/host0/scan lsblk;done###格式化
mkfs.xfs /dev/sdb192.168.115.101 centos2
192.168.115.102 centos3
192.168.115.103 centos4###每台主机配置ssh免密#centos1ssh-keygenfor i in 100 101 102 103; do ssh-copy-id root192.168.115.$i;done
#centos2ssh-keygenfor i in 100 101 102 103; do ssh-copy-id root192.168.115.$i;done
#centos3ssh-keygenfor i in 100 101 102 103; do ssh-copy-id root192.168.115.$i;done
#centos4ssh-keygenfor i in 100 101 102 103; do ssh-copy-id root192.168.115.$i;done##########在centos1上设置同步时间
yum install -y ntp
vim /etc/ntp.conf
注释
#server 0.centos.pool.ntp.org iburst
#server 1.centos.pool.ntp.org iburst
#server 2.centos.pool.ntp.org iburst
#server 3.centos.pool.ntp.org iburst
插入
server 127.127.1.0 #定义时间服务器
fudge 127.127.1.0 stratum 8 #定义时间层次
############
启动
systemctl start ntpd
systemctl enable ntpd
###################
客户端对时
for i in 100 101 102;do ssh 192.168.115.$i ntpdate 192.168.115.100;done
3、ceph安装
在centos1上安装
yum install epel-release -y
yum install lttng-ust -y###添加源
vim /etc/yum.repos.d/ceph.repo
[Ceph]
nameCeph packages for $basearch
baseurlhttps://mirrors.tuna.tsinghua.edu.cn/ceph/rpm-mimic/el7/x86_64/
enabled1
gpgcheck1
typerpm-md
gpgkeyhttps://download.ceph.com/keys/release.asc
[Ceph-noarch]
nameCeph noarch packages
# 清华源
baseurlhttps://mirrors.tuna.tsinghua.edu.cn/ceph/rpm-mimic/el7/noarch/
enabled1
gpgcheck1
typerpm-md
gpgkeyhttps://download.ceph.com/keys/release.asc
[ceph-source]
nameCeph source packages
baseurlhttps://mirrors.tuna.tsinghua.edu.cn/ceph/rpm-mimic/el7/SRPMS/
enabled1
gpgcheck1
typerpm-md
gpgkeyhttps://download.ceph.com/keys/release.asc##########拷贝源
scp /etc/yum.repos.d/ceph.repo 192.168.115.101:/etc/yum.repos.d
scp /etc/yum.repos.d/ceph.repo 192.168.115.102:/etc/yum.repos.d
scp /etc/yum.repos.d/ceph.repo 192.168.115.103:/etc/yum.repos.d####安装
yum -y install ceph ceph-deploy ##创建集群目录
mkdir -p /usr/local/soft/cephcluster
cd /usr/local/soft/cephcluster##创建集群
ceph-deploy new centos1 centos2 centos3
##修改配置文件
/usr/local/soft/cephcluster/ceph.conf
插入
#对外开放网段
public network 192.168.115.0/24
# 设置pool池默认分配数量
osd pool default size 2
# 容忍更多的时钟误差
mon clock drift allowed 2
mon clock drift warn backoff 30
# 允许删除pool
mon_allow_pool_delete true
[mgr]
# 开启WEB仪表盘
mgr modules dashboard 安装
如果安装失败需要
ceph-deploy purge centos1 centos2 centos3
ceph-deploy purgedata centos1 centos2 centos3
ceph-deploy forgetkeys
将三台节点的mon信息也删除
rm -rf /var/run/ceph/
ceph-deploy install centos1 centos2 centos3 初始化monitor
ceph-deploy mon create-initial 同步管理信息
ceph-deploy admin centos1 centos2 centos3 安装mgr管理守护进程
ceph-deploy mgr create centos1 centos2 centos3 安装rgw
ceph-deploy rgw create centos1 centos2 centos3
创建mds服务
ceph-deploy mds create centos1 centos2 centos3
OSD安装
OSD服务是对象存储守护进程 负责把对象存储到本地文件系统 必须要有一块独立的磁盘作为存储。如果没有独立磁盘怎么办 可以在Linux下面创建一个虚拟磁盘进行挂载。
##创建OSD
ceph-deploy osd create --data /dev/sdb centos1ceph-deploy osd create --data /dev/sdb centos2 ceph-deploy osd create --data /dev/sdb centos3 查看集群状态 ceph -s 4、dashboard安装
只在centos1上操作
开启dashboard模块
ceph mgr module enable dashboard
生成签名
ceph dashboard create-self-signed-cert 创建目录
mkdir -p /usr/local/jx/cephcluster/mgr-dashboard
cd /usr/local/jx/cephcluster/mgr-dashboardopenssl req -new -nodes -x509 -subj /OIT/CNceph-mgr-dashboard -days 3650 -keyout dashboard.key -out dashboard.crt -extensions v3_ca 启动服务
ceph mgr module disable dashboard
ceph mgr module enable dashboard
设置访问地址与端口
ceph config set mgr mgr/dashboard/server_addr 192.168.115.100
ceph config set mgr mgr/dashboard/server_port 9001 关闭https
ceph config set mgr mgr/dashboard/ssl falseceph mgr servicesceph dashboard set-login-credentials hy123 123.com 访问
https://192.168.115.100:8443 5、ceph文件系统创建
centos1上操作
创建存储池
ceph osd pool create cephfs_data 128
ceph osd pool create cephfs_metadata 64####################
少于5个OSD可把pg_num设置为128
OSD数量在5到10可以设置pg_num为512
OSD数量在10到50可以设置pg_num为4096
OSD数量大于50需要计算pg_num的值 查看存储池 ceph osd lspools 创建文件系统
ceph fs new fs_test cephfs_metadata cephfs_data 查看文件系统
ceph fs ls 查看mds状态
ceph mds stat三、在客户端挂载
在centos1上操作
在centos1中安装ceph-deploy install centos4同步管理信息ceph-deploy admin centos4非集群节点/var/run/ceph 无内容
在centos4上操作
yum install -y ceph-fuse
查看信息
ls /etc/ceph
ceph.client.admin.keyring创建挂载目录mkdir /ceph
挂载ceph文件系统ceph-fuse -k /etc/ceph/ceph.client.admin.keyring -m 192.168.115.100:6789 /ceph