分布式存储ceph
发表于:2025-02-04 作者:千家信息网编辑
千家信息网最后更新 2025年02月04日,分布式存储ceph准备:client50、node51、node52、node53为虚拟机client50:192.168.4.50 做客户机,做成NTP服务器 ,其他主机以50为NTP
千家信息网最后更新 2025年02月04日分布式存储ceph
分布式存储ceph
准备:
client50、node51、node52、node53为虚拟机client50:192.168.4.50 做客户机,做成NTP服务器 ,其他主机以50为NTP // echo "allow 192.168.4.0/24' > /etc/chrony.confnode51:192.168.4.51 加三块10G的硬盘node52:192.168.4.52 加三块10G的硬盘node53:192.168.4.53 加三块10G的硬盘node54:192.168.4.54搭建源:真机共享mount /iso/rhcs2.0-rhosp9-20161113-x86_64.iso /var/ftp/ceph /var/ftp/ceph/rhceph-2.0-rhel-7-x86_64/MON/ /var/ftp/ceph/rhceph-2.0-rhel-7-x86_64/OSD/ /var/ftp/ceph/rhceph-2.0-rhel-7-x86_64/Tools/cat /etc/hosts //书写hosts文件,每台主机都要有这个配置 192.168.4.50 client50 192.168.4.51 node51 192.168.4.52 node52 192.168.4.53 node53# pscp.pssh node51:无密码连接 client50、node51、node52、node53ssh-keygen -f /root/.ssh/id_rsa -N '' //非交互式生成密钥对将公钥发给其他主机及自己,实现ssh无密码登陆for i in 51 52 53; do ssh-copy-id 192.168.4.$i ; done
分布式文件系统
分布式文件系统(Distributed File System)是指文件系统管理的物理存储资源不一定直接连接再本地节点上,而是通过计算机网络与节点相连分布式文件系统的设计基于客户机/服务器(C/S)模式常用分布式文件系统 Lustre,Hadoop,FastDFS,Ceph,GlusterFS
Ceph简介
有官方(付费)的和开源的 Ceph 是一个分布式文件系统 具有高扩展、高可用、高性能的特点 Ceph 可以提供对象存储、块存储、文件系统存储 Ceph 可以提供PB级别的存储空间(PB-->TB-->-->GB) 软件定义存储(Software Defined Storage)作为存储,行业的一大发展趋势 官网:http://docs.ceph.org/start/intro
Ceph 组件
OSDs :存储设备 Monitors :集群监控组件 MDSs :存放文件系统的元数据(对象存储和块存储不需要该组件) 元数据:文件的信息,大小,权限等,即如下信息 drwxr-xr-x 2 root root 6 10月 11 10:37 /root/a.sh Client :ceph客户端
实验:
使用node51作为部署主机 node51:1.安装部署软件: yum -y install ceph-deploy //安装完成后使用ceph-deploy --help帮助为部署工具创建目录,存放密钥与配置文件 mkdir /root/ceph-cluster cd /root/ceph-cluster2.创建Ceph集群创建Ceph集群配置(所有节点都为mon) ceph-deploy new node51 node52 node53给所有节点安装Ceph软件包 ceph-deploy install node51 node52 node53初始化所有节点的mon(监控程序)服务 (每一台主机上都配置有/etchosts主机名解析) ceph-deploy mon create-initial3.创建OSD- 所有节点准备磁盘分区(以node51为例,node52,node53也要这样分区)1)指定用那种分区模式 parted /dev/vdb mklabel gpt2)用这个盘的前50%的空间建一个分区,以1M为起点 parted /dev/vdb mkpart primary 1M 50%3)用这个盘的后50%的空间建一个分区 parted /dev/vdb mkpart primary 50% 100%4)将这两个分区的所有者和所有组设置为ceph,给集群ceph管理权限 chown ceph.ceph /dev/vdb1 chown ceph.ceph /dev/vdb1 echo 'chown ceph.ceph /dev/vdb*' >> /etc/rc.d/rc.local chmod +x /etc/rc.d/rc.local注:这两个分区用来做存储服务器的日志journal盘- 初始化清空磁盘数据(仅在node51上进行管理操作) cd /root/ceph-cluster/ //必须再这个目录下进行操作 ceph-deploy disk zap node51:vdc node51:vdd ceph-deploy disk zap node52:vdc node52:vdd ceph-deploy disk zap node53:vdc node53:vdd- 创建OSD存储设备(仅在node51上进行管理操作) ceph-deploy osd create node51:vdc:/dev/vdb1 node51:vdd:/dev/vdb2 >>Host node51 is now ready for osd use. ceph-deploy osd create node52:vdc:/dev/vdb1 node52:vdd:/dev/vdb2 >>Host node52 is now ready for osd use. ceph-deploy osd create node53:vdc:/dev/vdb1 node53:vdd:/dev/vdb2 >>Host node53 is now ready for osd use.
服务查看
Node51: 有关与ceph的服务
ceph-create-keys@node51.service ceph-osd@1.service ceph-mds.target ceph-osd.target ceph-mon@node51.service ceph-radosgw.target ceph-mon.target ceph.target ceph-osd@0.service
Node52: 有关与ceph的服务
ceph-create-keys@node52.service ceph-osd@2.service ceph-disk@dev-vdd1.service ceph-osd.target ceph-mds.target ceph-radosgw.target ceph-mon@node52.service ceph.target ceph-mon.target
Node53: 有关与ceph的服务
ceph-create-keys@node53.service ceph-osd@4.service ceph-disk@dev-vdd1.service ceph-osd.target ceph-mds.target ceph-radosgw.target ceph-mon@node53.service ceph.target ceph-mon.target
部署ceph集群
>>安装部署软件ceph-deploy>>创建Ceph集群>>创建OSD存储空间>>查看ceph状态,验证
块存储
单机块设备:光盘、磁盘 分布式块存储:ceph、cider Ceph块设备也叫RADOS块设备 - RADOS block device:RBD Rbd驱动已经很好的集成在了linux内核中 Rbd提供了企业功能。如快照、COW(Copy Online Write,写时复制)克隆 COW对源文件做写操作时,旧数据会被复制到快照文件里。当删除文件或者对文件进行了内容的增加或者减少,源文件发生了改变,旧的文件就会拷贝到快照里 Rbd还支持内存缓存,从而能够大大提高性能
块存储集群
镜像池大小,基本存储为60G,为node51、node52、node53做存储磁盘的和 查看存储池(默认有一个rbd池)
ceph osd lspools 0 rbd
创建镜像, ##若不指定存储池,默认属于rbd存储池
rbd create demo-image --image-feature layering --size 10G //镜像名为demo-image , --image-feature layering(创建镜像的方式) 默认在rbd默认的存储池里创建rbd create rbd/image --image-feature layering --size 10G //rbd/image 指定在rbd池里创建
查看镜像
rbd info demo-image rbd image 'demo-image': size 10240 MB in 2560 objects order 22 (4096 kB objects) block_name_prefix: rbd_data.1052238e1f29 format: 2 features: layering flags:
删除镜像
rbd remove rbd/image rbd remove demo-image //次出仅提供错误时的方法,不实际执行缩小容量 //命令解释,重置大小为1G 镜像image 允许缩小 rbd resize --size 1G image --allow-shrink 扩大容量 //将容量扩大到2G rbd resize --size 2G image
集群内通过rbd访问
1.node51本机使用,将镜像映射为本地磁盘
rbd map demo-image lsblk //查看本地磁盘 rbd0 251:0 0 10G 0 disk
2.分区、格式化(分区名为/dev/rbd0p1)、挂载,与本地磁盘无异
3.将镜像从本地磁盘中移除 //移除前需要将挂载从本机卸载掉
rbd unmap demo-image
集群外客户机clinet50:通过rbd访问
1.安装ceph-common软件包 yum -y install ceph-common.x86_64 2.拷贝配置文件(指示储存集群的位置) scp 192.168.4.51:/etc/ceph/ceph.conf /etc/ceph/ 3.拷贝连接接密钥(获取集群连接及使用的权限) scp 192.168.4.51:/etc/ceph/ceph.client.admin.keyring /etc/ceph/ 4.查看集群镜像 ` rbd list demo-image Image ` 5.镜像映射到本地磁盘 rbd map image lsblk 6.显示本地影射 rbd showmapped id pool image snap device 0 rbd image - /dev/rbd0 7.分区、格式化(分区名为/dev/rbd0p1)、挂载,与本地磁盘无异 8.撤销磁盘映射,将镜像从本地磁盘中移除 //移除前需要将挂载从本机卸载掉 rbd unmap demo-image rbd unmap /dev/rbd/rbd/demo-image //两种方法
创建镜像快照
快照使用COW技术,对大数据快照速度会很快 COW对源文件做写操作时,旧数据会被复制到快照文件里 快照:保存某一时刻的所有信息,以备以后恢复使用,创建初期不占用磁盘空间,每当源文件发生改变时, 就把快照创建时的文件数据写入快照,这时快照开始占用磁 盘空间,大小为发生改变的文件大小的和。
node51:
查看已有镜像
rbd list
查看镜像快照:
rbd snap ls image //暂时无显示
创建快照(snap)
rbd snap create image --snap image-snap1 命令解释:rbd 快照 create 镜像名 --snap类型 快照名
再次查看镜像快照
rbd snap ls image SNAPID NAME SIZE 4 image-snap1 2048 MB
使用快照恢复数据
rbd snap rollback image --snap image-snap1 客户机将镜像卸载后再重新挂载即可恢复数据
删除快照
rbd snap rm image --snap image-snap1
快照克隆
- 如果想从快照恢复出来一个新的镜像,可以做克隆
- 注意,克隆前,需要对快照进行<保护>操作
- 被保护的快照无法删除,取消保护
快照保护:rbd snap protect image --snap image-snap1
快照克隆
rbd clone image --snap image-snap1 image-clone --image-feature layering
克隆查看
rbd info image-clonerbd image 'image-clone': size 2048 MB in 512 objects order 22 (4096 kB objects) block_name_prefix: rbd_data.108a2ae8944a format: 2 features: layering flags: parent: rbd/image@image-snap1 overlap: 2048 MB
利用克隆镜像恢复数据
rbd flatten image-clone
取消保护:
rbd snap unprotect image --snap image-snap1
客户端撤销磁盘映射
1.卸载挂载点
2.查看rbd磁盘映射
Rbd showmapped
id pool image snap device
0 rbd image - /dev/rbd0
3.撤销磁盘映射
rbd unmap demo-image
rbd unmap /dev/rbd/rbd/demo-image //两种方法
快照
存储
镜像
文件
磁盘
集群
数据
系统
服务
分布式
主机
客户
空间
节点
大小
设备
软件
配置
客户机
源文件
数据库的安全要保护哪些东西
数据库安全各自的含义是什么
生产安全数据库录入
数据库的安全性及管理
数据库安全策略包含哪些
海淀数据库安全审计系统
建立农村房屋安全信息数据库
易用的数据库客户端支持安全管理
连接数据库失败ssl安全错误
数据库的锁怎样保障安全
软件开发中技学校排名
联合制定网络安全方法
上海腾宁网络技术有限公司
搬运服务器设备至机房
计算机三级网络技术dns
9.0同盟种族服务器
服务器数据安全保障说明
数据库不同的软件能兼容吗
数据库怎么入账
apex服务器换不了
如何部署svn服务器
达内网络安全费用
考研数据库考吗
软件开发销售是做什么
jdbc用什么协议连接数据库
网络安全测绘
通信和网络技术隐私问题
网警检查网络安全检查出的问题
计算机三级网络技术拿分点
服务器的金币系统怎么做
滨湖区项目软件开发预算
ACCESS数据库对外开放
前端页面怎么查后端对应的数据库
企业布署服务器和数据库
潍坊ios软件开发公司
博山财务办公软件开发价格
在线编辑器如何保存数据库
web怎么写服务器
网络安全保密视频
专科软件开发值得学吗