基于Flash Extractor芯片提取方案,受损Nand flash芯片数据分析,主控方案分析,TF一体盘引脚定义分析

Flash Extractor芯片分析电子取证技术2024培训报名,请发报名信息至:wd@wdsos.com
当前位置:首页 > 西数新闻 > IT技术文章 IT技术文章
GlusterFS分布式存储

GlusterFS分布式存储

目录25Dflash extractor芯片数据恢复软件 oracle extractor数据库修复软件

glusterfs简介25Dflash extractor芯片数据恢复软件 oracle extractor数据库修复软件

glusterfs部署25Dflash extractor芯片数据恢复软件 oracle extractor数据库修复软件

glustefs分布式存储优化25Dflash extractor芯片数据恢复软件 oracle extractor数据库修复软件

glusterfs在企业中应用场景25Dflash extractor芯片数据恢复软件 oracle extractor数据库修复软件

参考文章地址25Dflash extractor芯片数据恢复软件 oracle extractor数据库修复软件

 25Dflash extractor芯片数据恢复软件 oracle extractor数据库修复软件

一、glusterfs简介25Dflash extractor芯片数据恢复软件 oracle extractor数据库修复软件

Glusterfs是一个开源的分布式文件系统,是Scale存储的核心,能够处理千数量级的客户端。是整合了许多存储块(server)通过Infiniband RDMA或者 Tcp/Ip方式互联的一个并行的网络文件系统。25Dflash extractor芯片数据恢复软件 oracle extractor数据库修复软件

  特征:25Dflash extractor芯片数据恢复软件 oracle extractor数据库修复软件

  • 容量可以按比例的扩展,且性能却不会因此而降低。
  • 廉价且使用简单,完全抽象在已有的文件系统之上。
  • 扩展和容错设计的比较合理,复杂度较低
  • 适应性强,部署方便,对环境依赖低,使用,调试和维护便利

二、glusterfs安装部署25Dflash extractor芯片数据恢复软件 oracle extractor数据库修复软件

一般在企业中,采用的是分布式复制卷,因为有数据备份,数据相对安全。25Dflash extractor芯片数据恢复软件 oracle extractor数据库修复软件

 网络要求全部千兆环境,gluster 服务器至少有 2 块网卡,1 块网卡绑定供 gluster 使用,剩余一块分配管理网络 IP,用于系统管理。如果有条件购买万兆交换机,服务器配置万兆网卡,存储性能会更好。网络方面如果安全性要求较高,可以多网卡绑定。25Dflash extractor芯片数据恢复软件 oracle extractor数据库修复软件

 跨地区机房配置 Gluster,在中国网络格局下不适用。25Dflash extractor芯片数据恢复软件 oracle extractor数据库修复软件

  • 注意:GlusterFS将其动态生成的配置文件存储在/var/lib/glusterd中。如果在任何时候GlusterFS无法写入这些文件(例如,当后备文件系统已满),它至少会导致您的系统不稳定的行为; 或者更糟糕的是,让您的系统完全脱机。建议为/var/log等目录创建单独的分区,以确保不会发生这种情况。

1、安装glusterfs前的环境准备 25Dflash extractor芯片数据恢复软件 oracle extractor数据库修复软件

  1.1、服务规划:25Dflash extractor芯片数据恢复软件 oracle extractor数据库修复软件

操作系统 IP 主机名 硬盘数量(三块)
centos 7.4 10.0.0.101 node1 sdb:5G  sdc:5G  sdd:5G
centos 7.4 10.0.0.102 node2 sdb:5G  sdc:5G  sdd:5G
centos 7.4 10.0.0.103 node3 sdb:5G  sdc:5G  sdd:5G
centos 7.4 10.0.0.104 node4 sdb:5G  sdc:5G  sdd:5G
centos 7.4 10.0.0.105 node5-client sda:20G

 25Dflash extractor芯片数据恢复软件 oracle extractor数据库修复软件

   1.2、首先关闭iptables和selinux,配置hosts文件如下(全部glusterfs主机)25Dflash extractor芯片数据恢复软件 oracle extractor数据库修复软件

注:node01~node04所有的主机hosts文件均为此内容;同时全部修改为对应的主机名,centos7修改主机名方式:#hostnamectl set-hostname 主机名 (即为临时和永久生效)
可以使用#hostnamectl status   查看系统基本信息
复制代码
[root@node01 ~]# cat /etc/hosts
127.0.0.1   localhost localhost.localdomain localhost4 localhost4.localdomain4
::1         localhost localhost.localdomain localhost6 localhost6.localdomain6
10.0.0.101  node01
10.0.0.102  node02
10.0.0.103  node03
10.0.0.104  node04
[root@node01 ~]# systemctl stop firewalld.service       #停止firewalld
[root@node01 ~]# systemctl disable firewalld.service    #禁止firewalld开机自启
[root@node01 ~]# sed -i 's#SELINUX=enforcing#SELINUX=disabled#g' /etc/selinux/config   #关闭SELinux
[root@node01 ~]# setenforce 0
[root@node01 ~]# getenforce
Permissive
[root@node01 ~]# ntpdate time.windows.com   #同步时间
复制代码

   1.3、安装gluterfs源(全部glusterfs主机)25Dflash extractor芯片数据恢复软件 oracle extractor数据库修复软件

复制代码
[root@node01 ~]#wget -O /etc/yum.repos.d/epel.repo http://mirrors.aliyun.com/repo/epel-7.repo   #不是必须的
[root@node01 ~]#yum search  centos-release-gluster   #查看有哪些版本的glusterfs源    
================================================ N/S matched: centos-release-gluster =================================================
centos-release-gluster310.noarch : Gluster 3.10 (Long Term Stable) packages from the CentOS Storage SIG repository
centos-release-gluster312.noarch : Gluster 3.12 (Long Term Stable) packages from the CentOS Storage SIG repository
centos-release-gluster313.noarch : Gluster 3.13 (Short Term Stable) packages from the CentOS Storage SIG repository
centos-release-gluster36.noarch : GlusterFS 3.6 packages from the CentOS Storage SIG repository
centos-release-gluster37.noarch : GlusterFS 3.7 packages from the CentOS Storage SIG repository
centos-release-gluster38.noarch : GlusterFS 3.8 packages from the CentOS Storage SIG repository
centos-release-gluster39.noarch : Gluster 3.9 (Short Term Stable) packages from the CentOS Storage SIG repository
复制代码

     这里我们使用glusterfs的3.12版本的源25Dflash extractor芯片数据恢复软件 oracle extractor数据库修复软件

[root@node01 ~]# yum  -y  install centos-release-gluster312.noarch

   1.4、安装glusterfs(全部glusterfs主机)25Dflash extractor芯片数据恢复软件 oracle extractor数据库修复软件

在安装glusterfs的时候直接指定源为glusterfs源,由于 源[centos-gluster310-test]的enable为0,所以在指定源的时候用--enablerepo来让源生效25Dflash extractor芯片数据恢复软件 oracle extractor数据库修复软件

 cat /etc/yum.repos.d/CentOS-Gluster-3.12.repo

    安装glusterfs25Dflash extractor芯片数据恢复软件 oracle extractor数据库修复软件

[root@node01 ~]# yum -y --enablerepo=centos-gluster*-test install glusterfs-server glusterfs-cli glusterfs-geo-replication

  1.5、查看glusterfs版本并启动glusterfs服务(全部glusterfs主机)25Dflash extractor芯片数据恢复软件 oracle extractor数据库修复软件

复制代码
[root@node01 ~]# glusterfs -V
glusterfs 3.12.5

[root@node01 ~]# systemctl start glusterd.service
[root@node01 ~]# systemctl enable glusterd.service
[root@node01 ~]# systemctl status glusterd.service
[root@node01 ~]# netstat -lntup
Proto Recv-Q Send-Q Local Address           Foreign Address         State       PID/Program name    
tcp        0      0 0.0.0.0:111             0.0.0.0:*               LISTEN      1/systemd           
tcp        0      0 0.0.0.0:22              0.0.0.0:*               LISTEN      866/sshd            
tcp        0      0 127.0.0.1:25            0.0.0.0:*               LISTEN      972/master          
tcp        0      0 0.0.0.0:24007           0.0.0.0:*               LISTEN      2268/glusterd       
tcp6       0      0 :::111                  :::*                    LISTEN      1/systemd           
tcp6       0      0 :::22                   :::*                    LISTEN      866/sshd            
tcp6       0      0 ::1:25                  :::*                    LISTEN      972/master          
udp        0      0 0.0.0.0:111             0.0.0.0:*                           2266/rpcbind        
udp        0      0 0.0.0.0:745             0.0.0.0:*                           2266/rpcbind        
udp        0      0 127.0.0.1:323           0.0.0.0:*                           527/chronyd         
udp6       0      0 :::111                  :::*                                2266/rpcbind        
udp6       0      0 :::745                  :::*                                2266/rpcbind        
udp6       0      0 ::1:323                 :::*                                527/chronyd  
复制代码

   1.6、格式化磁盘(全部glusterfs主机)25Dflash extractor芯片数据恢复软件 oracle extractor数据库修复软件

  在每台主机上创建几块硬盘,做接下来的分布式存储使用25Dflash extractor芯片数据恢复软件 oracle extractor数据库修复软件

 注:创建的硬盘要用xfs格式来格式化硬盘,如果用ext4来格式化硬盘的话,对于大于16TB空间格式化就无法实现了。所以这里要用xfs格式化磁盘(centos7默认的文件格式就是xfs),并且xfs的文件格式支持PB级的数据量25Dflash extractor芯片数据恢复软件 oracle extractor数据库修复软件

 如果是centos6默认是不支持xfs的文件格式,要先安装xfs支持包25Dflash extractor芯片数据恢复软件 oracle extractor数据库修复软件

yum install xfsprogs -y

  用fdisk -l 查看磁盘设备,例如查看data-1-1的磁盘设备,这里的sdc、sdd、sde是新加的硬盘25Dflash extractor芯片数据恢复软件 oracle extractor数据库修复软件

[root@node01 ~]# fdisk -l
Disk /dev/sdb: 5368 MB, 5368709120 bytes
Disk /dev/sdc: 5368 MB, 5368709120 bytes
Disk /dev/sdd: 5368 MB, 5368709120 bytes

   特别说明:25Dflash extractor芯片数据恢复软件 oracle extractor数据库修复软件

   如果磁盘大于 2T 的话就用 parted 来分区,这里我们不用分区(可以不分区);
   做分布式文件系统的时候数据盘一般不需要做 RAID,一般系统盘会做 RAID 1;
   如果有raid卡的话,较好用上,raid卡有数据缓存功能,也能提高磁盘的iops,较好的话,用RAID 5;
   如果都不做raid的话,也是没问题的,glusterfs也是可以保证数据的安全的。

这里使用官方推荐的格盘方式:http://docs.gluster.org/en/latest/Quick-Start-Guide/Quickstart/#purpose-of-this-document
[root@node01 ~]# mkfs.xfs  -i size=512 /dev/sdb
[root@node01 ~]# mkfs.xfs  -i size=512 /dev/sdc
[root@node01 ~]# mkfs.xfs  -i size=512 /dev/sdd

  在四台机器上创建挂载块设备的目录,挂载硬盘到目录25Dflash extractor芯片数据恢复软件 oracle extractor数据库修复软件

复制代码
mkdir -p /data/brick{1..3}
echo '/dev/sdb /data/brick1 xfs defaults 0 0' >> /etc/fstab
echo '/dev/sdc /data/brick2 xfs defaults 0 0' >> /etc/fstab
echo '/dev/sdd /data/brick3 xfs defaults 0 0' >> /etc/fstab
#挂载
mount -a

[root@node01 ~]# df -h
/dev/sdc        5.0G   33M  5.0G   1% /data/brick2
/dev/sdd        5.0G   33M  5.0G   1% /data/brick3
/dev/sdb        5.0G   33M  5.0G   1% /data/brick1
复制代码

注:再次说明——以上操作均在node01-node04上同时操作25Dflash extractor芯片数据恢复软件 oracle extractor数据库修复软件

 25Dflash extractor芯片数据恢复软件 oracle extractor数据库修复软件

 2、操作25Dflash extractor芯片数据恢复软件 oracle extractor数据库修复软件

   2.1、将分布式存储主机加入到信任主机池并查看加入的主机状态25Dflash extractor芯片数据恢复软件 oracle extractor数据库修复软件

 随便在一个开启glusterfs服务的主机上将其他主机加入到一个信任的主机池里,这里选择node0125Dflash extractor芯片数据恢复软件 oracle extractor数据库修复软件

复制代码
[root@node01 ~]# gluster peer probe node02
peer probe: success. 
[root@node01 ~]# gluster peer probe node03
peer probe: success. 
[root@node01 ~]# gluster peer probe node04
peer probe: success.
复制代码

       查看主机池中主机的状态25Dflash extractor芯片数据恢复软件 oracle extractor数据库修复软件

复制代码
[root@node01 ~]# gluster peer status
Number of Peers: 3      #除本机外,还有三台主机主机池中

Hostname: node02
Uuid: 6020709d-1b46-4e2c-9cdd-c4b3bba47b4b
State: Peer in Cluster (Connected)

Hostname: node03
Uuid: 147ee557-51f1-43fe-a27f-3dae2880b5d4
State: Peer in Cluster (Connected)

Hostname: node04
Uuid: f61af299-b00d-489c-9fd9-b4f6a336a6c7
State: Peer in Cluster (Connected)
注意:一旦建立了这个池,只有受信任的成员可能会将新的服务器探测到池中。新服务器无法探测池,必须从池中探测。
复制代码

 25Dflash extractor芯片数据恢复软件 oracle extractor数据库修复软件

  2.2、创建glusterfs卷25Dflash extractor芯片数据恢复软件 oracle extractor数据库修复软件

GlusterFS 五种卷  25Dflash extractor芯片数据恢复软件 oracle extractor数据库修复软件

  • Distributed:分布式卷,文件通过 hash 算法随机分布到由 bricks 组成的卷上。
  • Replicated: 复制式卷,类似 RAID 1,replica 数必须等于 volume 中 brick 所包含的存储服务器数,可用性高。
  • Striped: 条带式卷,类似 RAID 0,stripe 数必须等于 volume 中 brick 所包含的存储服务器数,文件被分成数据块,以 Round Robin 的方式存储在 bricks 中,并发粒度是数据块,大文件性能好。
  • Distributed Striped: 分布式的条带卷,volume中 brick 所包含的存储服务器数必须是 stripe 的倍数(>=2倍),兼顾分布式和条带式的功能。
  • Distributed Replicated: 分布式的复制卷,volume 中 brick 所包含的存储服务器数必须是 replica 的倍数(>=2倍),兼顾分布式和复制式的功能。

 分布式复制卷的brick顺序决定了文件分布的位置,一般来说,先是两个brick形成一个复制关系,然后两个复制关系形成分布。25Dflash extractor芯片数据恢复软件 oracle extractor数据库修复软件

 企业一般用后两种,大部分会用分布式复制(可用容量为 总容量/复制份数),通过网络传输的话较好用万兆交换机,万兆网卡来做。这样就会优化一部分性能。它们的数据都是通过网络来传输的。25Dflash extractor芯片数据恢复软件 oracle extractor数据库修复软件

 配置分布式卷25Dflash extractor芯片数据恢复软件 oracle extractor数据库修复软件

复制代码
#在信任的主机池中任意一台设备上创建卷都可以,而且创建好后可在任意设备挂载后都可以查看
[root@node01 ~]# gluster volume create gv1 node01:/data/brick1 node02:/data/brick1 force      #创建分布式卷
volume create: gv1: success: please start the volume to access data
[root@node01 ~]# gluster volume start gv1    #启动卷gv1
volume start: gv1: success
[root@node01 ~]# gluster volume info gv1     #查看gv1的配置信息
 
Volume Name: gv1
Type: Distribute  #分布式卷
Volume ID: 85622964-4b48-47d5-b767-d6c6f1e684cc
Status: Started
Snapshot Count: 0
Number of Bricks: 2
Transport-type: tcp
Bricks:
Brick1: node01:/data/brick1
Brick2: node02:/data/brick1
Options Reconfigured:
transport.address-family: inet
nfs.disable: on
[root@node01 ~]# mount -t glusterfs 127.0.0.1:/gv1 /opt   #挂载gv1卷
[root@node01 ~]# df -h
文件系统        容量  已用  可用 已用% 挂载点/dev/sdc        5.0G   33M  5.0G    1% /data/brick2
/dev/sdd        5.0G   33M  5.0G    1% /data/brick3
/dev/sdb        5.0G   33M  5.0G    1% /data/brick1
127.0.0.1:/gv1   10G   65M   10G    1% /opt     #连个设备容量之和
[root@node01 ~]# cd /opt/
[root@node01 opt]# touch {a..f}      #创建测试文件
[root@node01 opt]# ll
总用量 0
-rw-r--r--. 1 root root 0 2月   2 23:59 a
-rw-r--r--. 1 root root 0 2月   2 23:59 b
-rw-r--r--. 1 root root 0 2月   2 23:59 c
-rw-r--r--. 1 root root 0 2月   2 23:59 d
-rw-r--r--. 1 root root 0 2月   2 23:59 e
-rw-r--r--. 1 root root 0 2月   2 23:59 f
# 在node04也可看到新创建的文件,信任存储池中的每一台主机挂载这个卷后都可以看到
[root@node04 ~]# mount -t glusterfs 127.0.0.1:/gv1 /opt
[root@node04 ~]# ll /opt/
总用量 0
-rw-r--r--. 1 root root 0 2月   2 2018 a
-rw-r--r--. 1 root root 0 2月   2 2018 b
-rw-r--r--. 1 root root 0 2月   2 2018 c
-rw-r--r--. 1 root root 0 2月   2 2018 d
-rw-r--r--. 1 root root 0 2月   2 2018 e
-rw-r--r--. 1 root root 0 2月   2 2018 f
[root@node01 opt]# ll /data/brick1/
总用量 0
-rw-r--r--. 2 root root 0 2月   2 23:59 a
-rw-r--r--. 2 root root 0 2月   2 23:59 b
-rw-r--r--. 2 root root 0 2月   2 23:59 c
-rw-r--r--. 2 root root 0 2月   2 23:59 e
[root@node02 ~]# ll /data/brick1
总用量 0
-rw-r--r--. 2 root root 0 2月   2 23:59 d
-rw-r--r--. 2 root root 0 2月   2 23:59 f
#文件实际存在位置node01和node02上的/data/brick1目录下,通过hash分别存到node01和node02上的分布式磁盘上
复制代码

 25Dflash extractor芯片数据恢复软件 oracle extractor数据库修复软件

配置复制卷25Dflash extractor芯片数据恢复软件 oracle extractor数据库修复软件

复制代码
注:复制模式,既AFR, 创建volume 时带 replica x 数量: 将文件复制到 replica x 个节点中。
这条命令的意思是使用Replicated的方式,建立一个名为gv2的卷(Volume),存储块(Brick)为2个,分别为node01:/data/brick2和node02:/data/brick2;
fore为强制创建:因为复制卷在双方主机通信有故障再恢复通信时容易发生脑裂。本次为实验环境,生产环境不建议使用。

[root@node01 ~]# gluster volume create gv2 replica 2 node01:/data/brick2 node02:/data/brick2 force  
volume create: gv2: success: please start the volume to access data
[root@node01 ~]# gluster volume start gv2    #启动gv2卷
volume start: gv2: success
[root@node01 ~]# gluster volume info gv2   #查看gv2信息
Volume Name: gv2
Type: Replicate   #复制卷
Volume ID: 9f33bd9a-7096-4749-8d91-1e6de3b50053
Status: Started
Snapshot Count: 0
Number of Bricks: 1 x 2 = 2
Transport-type: tcp
Bricks:
Brick1: node01:/data/brick2
Brick2: node02:/data/brick2
Options Reconfigured:
transport.address-family: inet
nfs.disable: on
performance.client-io-threads: off
[root@node01 ~]# mount -t glusterfs 127.0.0.1:/gv2 /mnt
[root@node01 ~]# df -h
文件系统        容量  已用  可用 已用% 挂载点
/dev/sdc        5.0G   33M  5.0G    1% /data/brick2
/dev/sdd        5.0G   33M  5.0G    1% /data/brick3
/dev/sdb        5.0G   33M  5.0G    1% /data/brick1
127.0.0.1:/gv1   10G   65M   10G    1% /opt
127.0.0.1:/gv2  5.0G   33M  5.0G    1% /mnt    #容量是总容量的一半
[root@node01 ~]# cd /mnt/
[root@node01 mnt]# touch {1..6}
[root@node01 mnt]# ll /data/brick2
总用量 0
-rw-r--r--. 2 root root 0 2月   3 01:06 1
-rw-r--r--. 2 root root 0 2月   3 01:06 2
-rw-r--r--. 2 root root 0 2月   3 01:06 3
-rw-r--r--. 2 root root 0 2月   3 01:06 4
-rw-r--r--. 2 root root 0 2月   3 01:06 5
-rw-r--r--. 2 root root 0 2月   3 01:06 6
[root@node02 ~]# ll /data/brick2
总用量 0
-rw-r--r--. 2 root root 0 2月   3 01:06 1
-rw-r--r--. 2 root root 0 2月   3 01:06 2
-rw-r--r--. 2 root root 0 2月   3 01:06 3
-rw-r--r--. 2 root root 0 2月   3 01:06 4
-rw-r--r--. 2 root root 0 2月   3 01:06 5
-rw-r--r--. 2 root root 0 2月   3 01:06 6
#创建文件的实际存在位置为node01和node02上的/data/brick2目录下,因为是复制卷,这两个目录下的内容是完全一致的。
复制代码

 25Dflash extractor芯片数据恢复软件 oracle extractor数据库修复软件

配置条带卷25Dflash extractor芯片数据恢复软件 oracle extractor数据库修复软件


 
复制代码
[root@node01 ~]# gluster volume create gv3 stripe 2 node01:/data/brick3 node02:/data/brick3 force
volume create: gv3: success: please start the volume to access data
[root@node01 ~]# gluster volume start gv3
volume start: gv3: success
[root@node01 ~]# gluster volume info gv3
 
Volume Name: gv3
Type: Stripe
Volume ID: 54c16832-6bdf-42e2-81a9-6b8d7b547c1a
Status: Started
Snapshot Count: 0
Number of Bricks: 1 x 2 = 2
Transport-type: tcp
Bricks:
Brick1: node01:/data/brick3
Brick2: node02:/data/brick3
Options Reconfigured:
transport.address-family: inet
nfs.disable: on
[root@node01 ~]# mkdir /data01
[root@node01 ~]# mount -t glusterfs 127.0.0.1:/gv3 /data01
[root@node01 ~]# df -h
文件系统        容量  已用  可用 已用% 挂载点
127.0.0.1:/gv3   10G   65M   10G    1% /data01
[root@node01 ~]# dd if=/dev/zero bs=1024 count=10000 of=/data01/10M.file
[root@node01 ~]# dd if=/dev/zero bs=1024 count=20000 of=/data01/20M.file
[root@node01 ~]# ll /data01/ -h
总用量 30M
-rw-r--r--. 1 root root 9.8M 2月   3 02:03 10M.file
-rw-r--r--. 1 root root  20M 2月   3 02:04 20M.file
*************************************************************************************
#文件的实际存放位置:
[root@node01 ~]# ll -h /data/brick3
总用量 15M
-rw-r--r--. 2 root root 4.9M 2月   3 02:03 10M.file
-rw-r--r--. 2 root root 9.8M 2月   3 02:03 20M.file
[root@node02 ~]# ll -h /data/brick3
总用量 15M
-rw-r--r--. 2 root root 4.9M 2月   3 02:03 10M.file
-rw-r--r--. 2 root root 9.8M 2月   3 02:04 20M.file
# 上面可以看到 10M 20M 的文件分别分成了 2 块(这是条带的特点),写入的时候是循环地一点一点在node01和node02的磁盘上.

#上面配置的条带卷在生产环境是很少使用的,因为它会将文件破坏,比如一个图片,它会将图片一份一份地分别存到条带卷中的brick上。
复制代码

 

 配置分布式复制卷25Dflash extractor芯片数据恢复软件 oracle extractor数据库修复软件

较少需要4台服务器才能创建,[生产场景推荐使用此种方式]25Dflash extractor芯片数据恢复软件 oracle extractor数据库修复软件

复制代码25Dflash extractor芯片数据恢复软件 oracle extractor数据库修复软件
#将原有的复制卷gv2进行扩容,使其成为分布式复制卷;25Dflash extractor芯片数据恢复软件 oracle extractor数据库修复软件
#要扩容前需停掉gv225Dflash extractor芯片数据恢复软件 oracle extractor数据库修复软件
  [root@node01 ~]# gluster volume stop gv2
[root@node01 ~]# gluster volume add-brick gv2 replica 2 node03:/data/brick1 node04:/data/brick1 force  #添加brick到gv2中
volume add-brick: success
[root@node01 ~]# gluster volume start gv2
volume start: gv2: success
[root@node01 ~]# gluster volume info gv2
 
Volume Name: gv2
Type: Distributed-Replicate    # 这里显示是分布式复制卷,是在 gv2 复制卷的基础上增加 2 块 brick 形成的
Volume ID: 9f33bd9a-7096-4749-8d91-1e6de3b50053
Status: Started
Snapshot Count: 0
Number of Bricks: 2 x 2 = 4
Transport-type: tcp
Bricks:
Brick1: node01:/data/brick2
Brick2: node02:/data/brick2
Brick3: node03:/data/brick1
Brick4: node04:/data/brick1
Options Reconfigured:
transport.address-family: inet
nfs.disable: on
performance.client-io-threads: off

注意:当你给分布式复制卷和分布式条带卷增加 bricks 时,你增加的 bricks 数目必须是复制或条带数目的倍数,
例如:你给一个分布式复制卷的 replica 为 2,你在增加 bricks 的时候数量必须为2、4、6、8等。
扩容后进行测试,发现文件都分布在扩容前的卷中。
复制代码

 25Dflash extractor芯片数据恢复软件 oracle extractor数据库修复软件

配置分布式条带卷
复制代码
#将原有的复制卷gv3进行扩容,使其成为分布式条带卷
#要扩容前需停掉gv3
[root@node01 ~]# gluster volume stop gv3
[root@node01 ~]# gluster volume add-brick gv3 stripe 2 node03:/data/brick2 node04:/data/brick2 force  #添加brick到gv3中
[root@node01 ~]# gluster volume start gv3
volume start: gv3: success
[root@node01 ~]# gluster volume info gv3
 
Volume Name: gv3
Type: Distributed-Stripe   # 这里显示是分布式条带卷,是在 gv3 条带卷的基础上增加 2 块 brick 形成的
Volume ID: 54c16832-6bdf-42e2-81a9-6b8d7b547c1a
Status: Started
Snapshot Count: 0
Number of Bricks: 2 x 2 = 4
Transport-type: tcp
Bricks:
Brick1: node01:/data/brick3
Brick2: node02:/data/brick3
Brick3: node03:/data/brick2
Brick4: node04:/data/brick2
Options Reconfigured:
transport.address-family: inet
nfs.disable: on
复制代码

 

 25Dflash extractor芯片数据恢复软件 oracle extractor数据库修复软件


 

分布式复制卷的 较佳实践:25Dflash extractor芯片数据恢复软件 oracle extractor数据库修复软件

 1)搭建条件
  - 块服务器的数量必须是复制的倍数
   - 将按块服务器的排列顺序指定相邻的块服务器成为彼此的复制
例如,8台服务器:
 - 当复制副本为2时,按照服务器列表的顺序,服务器1和2作为一个复制,3和4作为一个复制,5和6作为一个复制,7和8作为一个复制
 - 当复制副本为4时,按照服务器列表的顺序,服务器1/2/3/4作为一个复制,5/6/7/8作为一个复制
 2)创建分布式复制卷
磁盘存储的平衡
平衡布局是很有必要的,因为布局结构是静态的,当新的 bricks 加入现有卷,新创建的文件会分布到旧的 bricks 中,所以需要平衡布局结构,使新加入的 bricks 生效。布局平衡只是使新布局生效,并不会在新的布局中移动老的数据,如果你想在新布局生效后,重新平衡卷中的数据,还需要对卷中的数据进行平衡。
复制代码
#在gv2的分布式复制卷的挂载目录中创建测试文件入下
[root@node01 ~]# df -h
文件系统        容量  已用  可用 已用% 挂载点
127.0.0.1:/gv2   10G   65M   10G    1% /mnt
[root@node01 ~]# cd /mnt/
[root@node01 mnt]# touch {x..z}
#新创建的文件只在老的brick中有,在新加入的brick中是没有的
[root@node01 mnt]# ls /data/brick2
1  2  3  4  5  6  x  y  z
[root@node02 ~]# ls /data/brick2
1  2  3  4  5  6  x  y  z
[root@node03 ~]# ll -h /data/brick1
总用量 0
[root@node04 ~]# ll -h /data/brick1
总用量 0
# 从上面可以看到,新创建的文件还是在之前的 bricks 中,并没有分布中新加的 bricks 中

# 下面进行磁盘存储平衡
[root@node01 ~]# gluster volume rebalance gv2 start
[root@node01 ~]# gluster volume rebalance gv2 status  #查看平衡存储状态
# 查看磁盘存储平衡后文件在 bricks 中的分布情况
[root@node01 ~]# ls /data/brick2
1  5  y
[root@node02 ~]# ls /data/brick2
1  5  y
[root@node03 ~]# ls /data/brick1
2  3  4  6  x  z
[root@node04 ~]# ls /data/brick1
2  3  4  6  x  z
#从上面可以看出部分文件已经平衡到新加入的brick中了
每做一次扩容后都需要做一次磁盘平衡。 磁盘平衡是在万不得已的情况下再做的,一般再创建一个卷就可以了。
复制代码

 25Dflash extractor芯片数据恢复软件 oracle extractor数据库修复软件

 25Dflash extractor芯片数据恢复软件 oracle extractor数据库修复软件

移除 brick

你可能想在线缩小卷的大小,例如:当硬件损坏或网络故障的时候,你可能想在卷中移除相关的 bricks。25Dflash extractor芯片数据恢复软件 oracle extractor数据库修复软件
  注意:当你移除 bricks 的时候,你在 gluster 的挂载点将不能继续访问数据,只有配置文件中的信息移除后你才能继续访问 bricks 中的数据。当移除分布式复制卷或者分布式条带卷的时候,移除的 bricks 数目必须是 replica 或者 stripe 的倍数。25Dflash extractor芯片数据恢复软件 oracle extractor数据库修复软件


 

  但是移除brick在生产环境中基本上不做的,如果是硬盘坏掉的话,直接换个好的硬盘即可,然后再对新的硬盘设置卷标识就可以使用了,后面会演示硬件故障或系统故障的解决办法。25Dflash extractor芯片数据恢复软件 oracle extractor数据库修复软件

复制代码
[root@node01 ~]# gluster volume stop gv2
[root@node01 ~]# gluster volume remove-brick gv2 replica 2 node03:/data/brick1 node04:/data/brick1 force   #强制移除brick块
[root@node01 ~]# gluster volume info gv2    
Volume Name: gv2
Type: Replicate
Volume ID: 9f33bd9a-7096-4749-8d91-1e6de3b50053
Status: Stopped
Snapshot Count: 0
Number of Bricks: 1 x 2 = 2
Transport-type: tcp
Bricks:
Brick1: node01:/data/brick2
Brick2: node02:/data/brick2
Options Reconfigured:
transport.address-family: inet
nfs.disable: on
performance.client-io-threads: off
# 如果误操作删除了后,其实文件还在 /storage/brick1 里面的,加回来就可以了
[root@node01 ~]# gluster volume add-brick gv2 replica 2 node03:/data/brick1 node04:/data/brick1 force  
volume add-brick: success
[root@node01 ~]# gluster volume info gv2
 
Volume Name: gv2
Type: Distributed-Replicate
Volume ID: 9f33bd9a-7096-4749-8d91-1e6de3b50053
Status: Stopped
Snapshot Count: 0
Number of Bricks: 2 x 2 = 4
Transport-type: tcp
Bricks:
Brick1: node01:/data/brick2
Brick2: node02:/data/brick2
Brick3: node03:/data/brick1
Brick4: node04:/data/brick1
Options Reconfigured:
transport.address-family: inet
nfs.disable: on
performance.client-io-threads: off
复制代码
删除卷
  一般会用在命名不规范的时候才会删除 
[root@node01 ~]# gluster volume stop gv1
[root@node01 ~]# gluster volume delete gv
模拟误删除卷信息故障及解决办法
复制代码
[root@node01 ~]# ls /var/lib/glusterd/vols/
gv2  gv3
[root@node01 ~]# rm -rf /var/lib/glusterd/vols/gv3 #删除卷gv3的卷信息
[root@node01 ~]# ls /var/lib/glusterd/vols/     #再查看卷信息情况如下:gv3卷信息被删除了
gv2
[root@node01 ~]# gluster volume sync node02      #因为其他节点服务器上的卷信息是完整的,比如从node02上同步所有卷信息如下:
Sync volume may make data inaccessible while the sync is in progress. Do you want to continue? (y/n) y
volume sync: success
[root@node01 ~]# ls /var/lib/glusterd/vols/    #验证卷信息是否同步过来
gv2  gv3
复制代码

 25Dflash extractor芯片数据恢复软件 oracle extractor数据库修复软件

模拟复制卷数据不一致故障及解决办法25Dflash extractor芯片数据恢复软件 oracle extractor数据库修复软件

复制代码
[root@node01 ~]# ls /data/brick2    #复制卷的存储位置的数据
1  5  y
[root@node01 ~]# rm -f /data/brick2/y 
[root@node01 ~]# ls /data/brick2
1  5
[root@node02 ~]# ls /data/brick2
1  5  y
[root@node01 ~]# gluster start gv2   #因为之前关闭了,如果未关闭可以忽略此步。
[root@node01 ~]# cat /mnt/y     #通过访问这个复制卷的挂载点的数据来同步数据
[root@node01 ~]# ls /data/brick2/     #这时候再看复制卷的数据是否同步成功
1  5  y
复制代码

 25Dflash extractor芯片数据恢复软件 oracle extractor数据库修复软件

3、glustefs分布式存储优化25Dflash extractor芯片数据恢复软件 oracle extractor数据库修复软件

复制代码
Auth_allow  #IP访问授权;缺省值(*.allow all);合法值:Ip地址
Cluster.min-free-disk  #剩余磁盘空间阀值;缺省值(10%);合法值:百分比
Cluster.stripe-block-size  #条带大小;缺省值(128KB);合法值:字节
Network.frame-timeout  #请求等待时间;缺省值(1800s);合法值:1-1800
Network.ping-timeout  #客户端等待时间;缺省值(42s);合法值:0-42
Nfs.disabled  #关闭NFS服务;缺省值(Off);合法值:Off|on
Performance.io-thread-count  #IO线程数;缺省值(16);合法值:0-65
Performance.cache-refresh-timeout  #缓存校验时间;缺省值(1s);合法值:0-61
Performance.cache-size  #读缓存大小;缺省值(32MB);合法值:字节

Performance.quick-read: #优化读取小文件的性能
Performance.read-ahead: #用预读的方式提高读取的性能,有利于应用频繁持续性的访问文件,当应用完成当前数据块读取的时候,下一个数据块就已经准备好了。
Performance.write-behind:先写入缓存内,在写入硬盘,以提高写入的性能。
Performance.io-cache:缓存已经被读过的、
复制代码

 25Dflash extractor芯片数据恢复软件 oracle extractor数据库修复软件

 25Dflash extractor芯片数据恢复软件 oracle extractor数据库修复软件

3.1、优化参数调整方式25Dflash extractor芯片数据恢复软件 oracle extractor数据库修复软件

复制代码
命令格式:
gluster.volume set <卷><参数>


例如:
#打开预读方式访问存储
[root@node01 ~]# gluster volume set gv2 performance.read-ahead on

#调整读取缓存的大小
[root@mystorage gv2]# gluster volume set gv2 performance.cache-size 256M
复制代码

 25Dflash extractor芯片数据恢复软件 oracle extractor数据库修复软件

 25Dflash extractor芯片数据恢复软件 oracle extractor数据库修复软件

3.2、监控及日常维护25Dflash extractor芯片数据恢复软件 oracle extractor数据库修复软件

复制代码
使用zabbix自带的模板即可,CPU、内存、磁盘空间、主机运行时间、系统load。日常情况要查看服务器监控值,遇到报警要及时处理。
#看下节点有没有在线
gluster volume status nfsp

#启动完全修复
gluster volume heal gv2 full

#查看需要修复的文件
gluster volume heal gv2 info

#查看修复成功的文件
gluster volume heal gv2 info healed

#查看修复失败的文件
gluster volume heal gv2 heal-failed

#查看主机的状态
gluster peer status

#查看脑裂的文件
gluster volume heal gv2 info split-brain

#激活quota功能
gluster volume quota gv2 enable

#关闭quota功能
gulster volume quota gv2 disable

#目录限制(卷中文件夹的大小)
gluster volume quota limit-usage /data/30MB --/gv2/data

#quota信息列表
gluster volume quota gv2 list

#限制目录的quota信息
gluster volume quota gv2 list /data

#设置信息的超时时间
gluster volume set gv2 features.quota-timeout 5

#删除某个目录的quota设置
gluster volume quota gv2 remove /data

备注:quota功能,主要是对挂载点下的某个目录进行空间限额。如:/mnt/gulster/data目录,而不是对组成卷组的空间进行限制。
复制代码

 25Dflash extractor芯片数据恢复软件 oracle extractor数据库修复软件

 25Dflash extractor芯片数据恢复软件 oracle extractor数据库修复软件

3.3、Gluster日常维护及故障处理25Dflash extractor芯片数据恢复软件 oracle extractor数据库修复软件

注:给自己的提示:此处如有不详之处查看qq微云--linux-glusterfs文件夹25Dflash extractor芯片数据恢复软件 oracle extractor数据库修复软件

 1、硬盘故障25Dflash extractor芯片数据恢复软件 oracle extractor数据库修复软件

如果底层做了raid配置,有硬件故障,直接更换硬盘,会自动同步数据。
  如果没有做raid处理方法:

 25Dflash extractor芯片数据恢复软件 oracle extractor数据库修复软件

 2、一台主机故障25Dflash extractor芯片数据恢复软件 oracle extractor数据库修复软件

 25Dflash extractor芯片数据恢复软件 oracle extractor数据库修复软件

一台节点故障的情况包含以下情况:25Dflash extractor芯片数据恢复软件 oracle extractor数据库修复软件
25Dflash extractor芯片数据恢复软件 oracle extractor数据库修复软件
物理故障25Dflash extractor芯片数据恢复软件 oracle extractor数据库修复软件
同时有多块硬盘故障,造成数据丢失25Dflash extractor芯片数据恢复软件 oracle extractor数据库修复软件
系统损坏不可修复25Dflash extractor芯片数据恢复软件 oracle extractor数据库修复软件
解决方法:25Dflash extractor芯片数据恢复软件 oracle extractor数据库修复软件
25Dflash extractor芯片数据恢复软件 oracle extractor数据库修复软件
找一台完全一样的机器,至少要保证硬盘数量和大小一致,安装系统,配置和故障机同样的 IP,安装 gluster 软件,25Dflash extractor芯片数据恢复软件 oracle extractor数据库修复软件
保证配置一样,在其他健康节点上执行命令 gluster peer status,查看故障服务器的 uuid25Dflash extractor芯片数据恢复软件 oracle extractor数据库修复软件

 25Dflash extractor芯片数据恢复软件 oracle extractor数据库修复软件

复制代码
[root@mystorage2 ~]# gluster peer status
Number of Peers: 3

Hostname: mystorage3
Uuid: 36e4c45c-466f-47b0-b829-dcd4a69ca2e7
State: Peer in Cluster (Connected)

Hostname: mystorage4
Uuid: c607f6c2-bdcb-4768-bc82-4bc2243b1b7a
State: Peer in Cluster (Connected)

Hostname: mystorage1
Uuid: 6e6a84af-ac7a-44eb-85c9-50f1f46acef1
State: Peer in Cluster (Disconnected)
复制代码
修改新加机器的 /var/lib/glusterd/glusterd.info 和 故障机器一样

[root@mystorage1 ~]# cat /var/lib/glusterd/glusterd.info
UUID=6e6a84af-ac7a-44eb-85c9-50f1f46acef1
operating-version=30712
在信任存储池中任意节点执行

# gluster volume heal gv2 full
就会自动开始同步,但在同步的时候会影响整个系统的性能。

可以查看状态

# gluster volume heal gv2 info
复制代码

 25Dflash extractor芯片数据恢复软件 oracle extractor数据库修复软件

 25Dflash extractor芯片数据恢复软件 oracle extractor数据库修复软件

 25Dflash extractor芯片数据恢复软件 oracle extractor数据库修复软件

GlusterFS在企业中应用场景

  理论和实践分析,GlusterFS目前主要使用大文件存储场景,对于小文件尤其是海量小文件,存储效率和访问性能都表现不佳,海量小文件LOSF问题是工业界和学术界的人工难题,GlusterFS作为通用的分布式文件系统,并没有对小文件额外的优化措施,性能不好也是可以理解的。25Dflash extractor芯片数据恢复软件 oracle extractor数据库修复软件

复制代码
Media
  -文档、图片、音频、视频
 *Shared storage  
  -云存储、虚拟化存储、HPC(高性能计算)
 *Big data
  -日志文件、RFID(射频识别)数据
复制代码

 25Dflash extractor芯片数据恢复软件 oracle extractor数据库修复软件

 25Dflash extractor芯片数据恢复软件 oracle extractor数据库修复软件

上一篇:2258XT数据恢复工具下载
下一篇:PC3000-EXPRESS黑卡
Copyright(C)2014 西数科技(江苏)有限公司 wdsos.com 备案号:苏ICP备09074223号 苏公网安备:32010202010982号
地址:江苏省南京市玄武区珠江路435号华海大厦6楼601室(同庆楼右侧上电梯) 
地址:江苏省淮安市清江浦区枚皋路中兴软件园研发楼506室 
热线:4006184118数据恢复:025-86883952  司法鉴定:13813824669 
|公众号|微博|论坛|百家号|