设为首页 收藏本站
查看: 524|回复: 0

[经验分享] rhel7磁盘加密和RAID配置

[复制链接]
累计签到:1 天
连续签到:1 天
发表于 2015-12-15 08:17:09 | 显示全部楼层 |阅读模式
本节所讲内容:

      xfs和ext性能对比
      加密磁盘

了解:
xfs文件系统比ext文件系统的强的方面:

1.数据完整性
采用XFS文件系统,当意想不到的宕机发生后,由于文件系统开启了日志功能,所以磁盘上的文件不再会意外宕机而遭到破坏,不论目前文件系统上存储的文件与数据有多少,文件系统都可以根据所记录的日志在很短的时间内迅速恢复磁盘文件内容

2.传输特性
xfs文件系统采用优化算法,日志记录对整体文件操作影响非常小。xfs查询与分配存储空间非常快。xfs文件系统能连续提供快速的反应时间。

3.可扩展性
xfs是一个全64-bit的文件系统,它可以支持上百万T字节的存储空间。对特大文件及小尺寸文件的支持都表现出众,支持特大数量的目录。最大可支持的文件大小为 9EB,最大文系统尺寸为18EB
(1EB=1024PB=1024*1024TB)
文件系统
最大文件系统(TB)
最大文件(TB)
xfs
18874368
9437184
ext4
1048576
16
ext3
16
2

4.传输带宽
XFS 能以接近裸设备I/O的性能存储数据。在单个文件系统的测试中,其吞吐量最高可达7GB每秒,对单个文件的读写操作,其吞吐量可达4GB每秒。

LUKS(Linux Unified KeySetup)Linux硬盘加密提供了一种标准

首先对硬盘进行分区:
[iyunv@localhost ~]#fdisk /dev/sda
[iyunv@localhost ~]#partprobe /dev/sda

安装加密工具:
[iyunv@localhost ~]# rpm-qf `which cryptsetup`
cryptsetup-1.6.6-3.el7.x86_64

设置加密分区

[iyunv@localhost ~]#cryptsetup luksFormat /dev/sda3

WARNING!
========
This will overwritedata on /dev/sda3 irrevocably.

Are you sure? (Typeuppercase yes): YES
Enter passphrase:
Verify passphrase:   
注:密码最好大于8位,而且有复杂性

映射:
[iyunv@localhost ~]#cryptsetup luksOpen  /dev/sda3  disk1
Enter passphrase for/dev/sda3:
[iyunv@localhost ~]# ll/dev/mapper/disk1
lrwxrwxrwx 1 root root7 Dec 11 20:54 /dev/mapper/disk1 -> ../dm-2

格式化加密分区
[iyunv@localhost ~]#mkfs.xfs  /dev/mapper/disk1
创建挂载点
[iyunv@localhost ~]# mkdir/sda3
挂载:
[iyunv@localhost ~]#mount /dev/mapper/disk1  /sda3/
[iyunv@localhost ~]# df-h
Filesystem             Size  Used Avail Use% Mounted on
/dev/mapper/rhel-root   10G 3.3G  6.8G  33% /
devtmpfs               2.0G     0 2.0G   0% /dev
tmpfs                  2.0G  140K 2.0G   1% /dev/shm
tmpfs                  2.0G  8.9M 2.0G   1% /run
tmpfs                  2.0G     0 2.0G   0% /sys/fs/cgroup
/dev/sr0               3.7G  3.7G    0 100% /mnt
/dev/sda1              497M  107M 391M  22% /boot
/dev/mapper/disk1     1019M  33M  987M   4% /sda3

关闭加密分区
[iyunv@localhost ~]#umount /sda3/
[iyunv@localhost ~]#cryptsetup luksClose /dev/mapper/disk1
[iyunv@localhost ~]#mount /dev/sda3 /sda3/
mount: unknownfilesystem type 'crypto_LUKS'

生成加密分区的密码文件,实现开机自动挂载加密分区
[iyunv@localhost ~]# vim/etc/crypttab
disk1   /dev/sda3       /root/key
#(如果这里写none的话,当系统启动时在读取分区时候,会一直停在那,等待输入密码)

生成密码文件,修改文件权限
[iyunv@localhost ~]# echo -n"xuegod123"  > /root/key
[iyunv@localhost ~]# chmod 700/root/key
添加密码文件到/dev/sda3中
[iyunv@localhost ~]# cryptsetupluksAddKey  /dev/sda3  /root/key
Enter any passphrase:
No key available with thispassphrase.
[iyunv@localhost ~]# cryptsetupluksAddKey  /dev/sda3  /root/key
Enter any passphrase:
[iyunv@localhost ~]# vim/etc/fstab
/dev/mapper/disk1       /sda3                   xfs     defaults        0 0

[iyunv@localhost ~]#mount -a
mount: special device/dev/mapper/disk1 does not exist

reboot重启之后生效


本节所讲内容:
      常见raid原理
      raid
      配置raid
      删除raid

实验需要添加5块硬盘
sda ,  b ,c,d,e,f
RAID(Redundant Array of Independent Disks,独立磁盘冗余阵列)可以提供较普通磁盘更高的速度、安全性,所以服务器在安装时都会选择创建RAID。RAID的创建有两种方式:软RAID(通过操作系统软件来实现)和硬RAID(使用硬件阵列卡)。

raid0

1.RAID-0 :striping(条带模式),至少需要两块磁盘,做RAID分区的大小最好是相同的(可以充分发挥并发优势);数据分散存储于不同的磁盘上,在读写的时候可以实现并发,所以相对其读写性能最好;但是没有容错功能,任何一个磁盘的损坏将损坏全部数据;磁盘利用率为100%。

wKiom1Zq5P_Q95YMAADQ_HsRZCc201.jpg

2.RAID-1 :mirroring(镜像卷),至少需要两块硬盘,raid大小等于两个raid分区中最小的容量(最好将分区大小分为一样),数据有冗余,在存储时同时写入两块硬盘,实现了数据备份;

磁盘利用率为50%,即2块100G的磁盘构成RAID1只能提供100G的可用空间。

wKioL1Zq5SDBPSvyAACALQLSd9w565.jpg

RAID-5:需要三块或以上硬盘,可以提供热备盘实现故障的恢复;只损坏一块,没有问题。但如果同时损坏两块磁盘,则数据将都会损坏。 空间利用率: (n-1)/n    2/3
wKiom1Zq5UCRJAVRAAE7mMX1Uog470.jpg

1+1 =2
是用相对简单的异或逻辑运算(相同为0,相异为1)

A

B

Xor结果

0

0

0

1

0

1

0

1

1

1

1

0



RAID卡:Adaptec  SATA RAID2410SA   550

亚当普特克

wKioL1Zq5WqxmhVfAALTxP-lxs8294.jpg


·        RAID功能:RAID 0、1、5、10、JBOD

·        接口:Serial ATA

·        数据传输率:1.5 Gb/s   

·        通道数:4

·        最多连接设备:4



LSI(美国巨积) MegaRAID SAS 9260-16i    4500 wKiom1Zq5YnwRN1BAAOTdvo2bmk030.jpg

·        RAID功能:RAID级别:0、1、5 RAID跨接...

·        接口:Serial SATA/SAS

·        数据传输率:6Gb/s

·        插槽类型:PCI

其他性能:512MB DDRII 高速缓存

管理软raid工具mdadm
mdadm 参数:

命令常用参数如下:


-C或--creat
建立一个新阵列
-r
移除设备
-A
激活磁盘阵列
-l 或--level=
设定磁盘阵列的级别
-D或--detail
打印阵列设备的详细信息
-n或--raid-devices=

指定阵列成员(分区/磁盘)的数量

-s或--scan

扫描配置文件或/proc/mdstat得到阵列缺失信息

-x--spare-devicds=
指定阵列中备用盘的数量
-f
将设备状态定为故障
-c或--chunk=

设定阵列的块chunk大小 ,单位为KB

-a或--add
添加设备到阵列
-G或--grow
改变阵列大小或形态
-v
  --verbose 显示详细信息



热备份盘(hotspare or hot standby driver):为了加强容错的功能以及使系统在磁盘故障的情况下能迅速的重建数据,以维持系统的性能,一般的磁盘阵列系统都可使用热备份功能。
Chunk (块): raid存储数据时每个数据段的大小。 4K,64K
若chunk过大,可能一块磁盘上的带区空间就可以满足大部分的I/O操作的数据的读写只局限与一块硬盘上,这便不能充分发挥Raid并发的优势;如果chunk设置过小,任何很小的I/O指令都可能引发大量的读写操作,不能良好的发挥并发性能,占用过多的控制器总线带宽,也影响了阵列的整体性能。所以,在创建带区时,我们应该根据实际应用的需要,合理的选择带区的大小

raid0  
例1、

1)     创建RAID0

2)     导出阵列配置文件

3)     格式化并挂载到指定目录

4)     修改/etc/fstab永久挂载


环境:添加一个sdb硬盘,分两个1G的主分区。sdb1和sdb2

分区:

[iyunv@localhost ~]# fdisk /dev/sdb

[iyunv@localhost ~]# ll/dev/sdb*
brw-rw---- 1 root disk8, 16 Dec 11 22:08 /dev/sdb
brw-rw---- 1 root disk8, 17 Dec 11 22:08 /dev/sdb1
brw-rw---- 1 root disk8, 18 Dec 11 22:08 /dev/sdb2

[iyunv@localhost ~]#mdadm -C -v /dev/md0  -l 0  -n 2 /dev/sdb{1,2}
mdadm: chunk sizedefaults to 512K
mdadm: Defaulting toversion 1.2 metadata
mdadm: array /dev/md0started.

查看阵列信息
[iyunv@localhost ~]#mdadm -Ds                    
ARRAY /dev/md0metadata=1.2 name=localhost.localdomain:0UUID=75e03fc7:535c8b3a:c57b4740:8ee41975

生成配置文件
[iyunv@localhost ~]#mdadm -Ds > /etc/mdadm.conf

[iyunv@localhost ~]#mdadm -D /dev/md0
/dev/md0:
        Version : 1.2
  Creation Time : Fri Dec 11 22:11:29 2015
     Raid Level : raid0
     Array Size : 2095104 (2046.34 MiB 2145.39MB)
   Raid Devices : 2
  Total Devices : 2
    Persistence : Superblock is persistent

    Update Time : Fri Dec 11 22:11:29 2015
         State : clean
Active Devices : 2
Working Devices : 2
Failed Devices : 0
  Spare Devices : 0

     Chunk Size : 512K

           Name : localhost.localdomain:0  (local to host localhost.localdomain)
           UUID :75e03fc7:535c8b3a:c57b4740:8ee41975
         Events : 0

    Number  Major   Minor   RaidDevice State
       0      8       17        0     active sync   /dev/sdb1
       1      8       18        1     active sync   /dev/sdb2

对创建RAID0创建分区
[iyunv@localhost ~]#fdisk /dev/md0
[iyunv@localhost ~]# ll/dev/md0*
brw-rw---- 1 rootdisk   9, 0 Dec 11 22:17 /dev/md0
brw-rw---- 1 root disk259, 0 Dec 11 22:17 /dev/md0p1

格式化分区并挂载
[iyunv@localhost ~]#mkfs.xfs /dev/md0p1
[iyunv@localhost ~]#mkdir /raid0
[iyunv@localhost ~]#mount /dev/md0p1 /raid0/

[iyunv@localhost ~]#blkid | grep md0p1
/dev/md0p1:UUID="c92cca7a-8285-44b4-8cf4-082206b5d857" TYPE="xfs"
[iyunv@localhost ~]# vim/etc/fstab
UUID=c92cca7a-8285-44b4-8cf4-082206b5d857       /raid0 xfs     defaults        0 0

建立RAID1

本实验练习:

1)     创建RAID1

2)     添加1G热备盘

3)     模拟磁盘故障,自动顶替故障盘

4)     卸载阵列


环境:创建分区:sdc1,sdc2,sdc3  大小为1G
[iyunv@localhost ~]# ll/dev/sdc*
brw-rw---- 1 root disk8, 32 Dec 11 22:24 /dev/sdc
brw-rw---- 1 root disk8, 33 Dec 11 22:24 /dev/sdc1
brw-rw---- 1 root disk8, 34 Dec 11 22:24 /dev/sdc2
brw-rw---- 1 root disk8, 35 Dec 11 22:24 /dev/sdc3
创建RAID1
[iyunv@localhost ~]#mdadm -C -v /dev/md1  -l 1  -n 2 -x 1 /dev/sdc{1,2,3}
mdadm: Note: this arrayhas metadata at the start and
    may not be suitable as a boot device.  If you plan to
    store '/boot' on this device please ensurethat
    your boot-loader understands md/v1.xmetadata, or use
    --metadata=0.90
mdadm: size set to1047552K
Continue creatingarray?
Continue creatingarray? (y/n) y
mdadm: Defaulting toversion 1.2 metadata
mdadm: array /dev/md1started.

查看阵列信息
[iyunv@localhost ~]#cat  /proc/mdstat
Personalities : [raid0][raid1]
md1 : active raid1sdc3[2](S) sdc2[1] sdc1[0]
      1047552 blocks super 1.2 [2/2] [UU]
      
md0 : active raid0sdb2[1] sdb1[0]
      2095104 blocks super 1.2 512k chunks
      
unused devices:<none>

生成配置文件并查看
[iyunv@localhost ~]#mdadm -Ds > /etc/mdadm.conf
[iyunv@localhost ~]# cat!$
cat /etc/mdadm.conf
ARRAY /dev/md0metadata=1.2 name=localhost.localdomain:0 UUID=75e03fc7:535c8b3a:c57b4740:8ee41975
ARRAY /dev/md1metadata=1.2 spares=1 name=localhost.localdomain:1UUID=cce0260a:92d1d478:c4f57e50:ec965ac2

[iyunv@localhost ~]#fdisk /dev/md1
[iyunv@localhost ~]#mkfs.xfs /dev/md1p1
[iyunv@localhost ~]#mkdir /raid1
[iyunv@localhost ~]#mount /dev/md1p1 /raid1/
[iyunv@localhost ~]# df-h
Filesystem             Size  Used Avail Use% Mounted on
/dev/mapper/rhel-root   10G 3.3G  6.8G  33% /
devtmpfs               2.0G     0 2.0G   0% /dev
tmpfs                  2.0G  140K 2.0G   1% /dev/shm
tmpfs                  2.0G  8.9M 2.0G   1% /run
tmpfs                  2.0G     0 2.0G   0% /sys/fs/cgroup
/dev/sr0               3.7G  3.7G    0 100% /mnt
/dev/sda1              497M  107M 391M  22% /boot
/dev/md0p1             2.0G   33M 2.0G   2% /raid0
/dev/md1p1            1019M   33M 987M   4% /raid1

[iyunv@localhost ~]#cat  /proc/mdstat
Personalities : [raid0][raid1]
md1 : active raid1sdc3[2](S) sdc2[1] sdc1[0]
      1047552 blocks super 1.2 [2/2] [UU]
      
md0 : active raid0sdb2[1] sdb1[0]
      2095104 blocks super 1.2 512k chunks
      
unused devices:<none>
#md1:表示此阵列的设备名
#active:表示此阵列正常读写
#sdc3[2][S]:表示是这个阵列第3个设备且是备用盘,sdc2[1]是此阵列第2个设备,sdc1[0]是此阵列第1个设备
# 11047552blocks:表示此阵列的大小,以块为单位(1G)
#【2/2】:表示阵列中有2个磁盘,并且2个都在正常运行

[iyunv@localhost ~]# cat/etc/mdadm.conf
ARRAY /dev/md0metadata=1.2 name=localhost.localdomain:0UUID=75e03fc7:535c8b3a:c57b4740:8ee41975
ARRAY /dev/md1metadata=1.2 spares=1 name=localhost.localdomain:1UUID=cce0260a:92d1d478:c4f57e50:ec965ac2

#spares=1表示:有热备盘1个

#下面模拟RAID1中/dev/sdc1出现故障,观察/dev/sdc3备用盘能否自动顶替故障盘
#将/dev/sdc1指定为故障状态,cat /proc/mdstat查看阵列状态
#稍待片刻阵列重新重建成功,发现/dev/sdc3后的[S]消失了,成功顶替故障盘
#移除故障盘/dev/sdb1

[iyunv@localhost ~]#mdadm -f /dev/md1 /dev/sdc1
mdadm: set /dev/sdc1faulty in /dev/md1

[iyunv@localhost ~]#watch -n 1 cat /proc/mdstat   
  
移动损坏的设备:

[iyunv@localhost ~]#mdadm -r /dev/md1 /dev/sdc1
mdadm: hot removed/dev/sdc1 from /dev/md1

[iyunv@localhost ~]# cat/proc/mdstat
Personalities : [raid0][raid1]
md1 : active raid1sdc3[2] sdc2[1]
      1047552 blocks super 1.2 [2/2] [UU]
      
md0 : active raid0sdb2[1] sdb1[0]
      2095104 blocks super 1.2 512k chunks
      
unused devices:<none>

重新生成配置文件
[iyunv@localhost ~]#mdadm  -Ds > /etc/mdadm.conf
[iyunv@localhost ~]# cat!$
cat /etc/mdadm.conf
ARRAY /dev/md0metadata=1.2 name=localhost.localdomain:0UUID=75e03fc7:535c8b3a:c57b4740:8ee41975
ARRAY /dev/md1metadata=1.2 name=localhost.localdomain:1UUID=cce0260a:92d1d478:c4f57e50:ec965ac2



运维网声明 1、欢迎大家加入本站运维交流群:群②:261659950 群⑤:202807635 群⑦870801961 群⑧679858003
2、本站所有主题由该帖子作者发表,该帖子作者与运维网享有帖子相关版权
3、所有作品的著作权均归原作者享有,请您和我们一样尊重他人的著作权等合法权益。如果您对作品感到满意,请购买正版
4、禁止制作、复制、发布和传播具有反动、淫秽、色情、暴力、凶杀等内容的信息,一经发现立即删除。若您因此触犯法律,一切后果自负,我们对此不承担任何责任
5、所有资源均系网友上传或者通过网络收集,我们仅提供一个展示、介绍、观摩学习的平台,我们不对其内容的准确性、可靠性、正当性、安全性、合法性等负责,亦不承担任何法律责任
6、所有作品仅供您个人学习、研究或欣赏,不得用于商业或者其他用途,否则,一切后果均由您自己承担,我们对此不承担任何法律责任
7、如涉及侵犯版权等问题,请您及时通知我们,我们将立即采取措施予以解决
8、联系人Email:admin@iyunv.com 网址:www.yunweiku.com

所有资源均系网友上传或者通过网络收集,我们仅提供一个展示、介绍、观摩学习的平台,我们不对其承担任何法律责任,如涉及侵犯版权等问题,请您及时通知我们,我们将立即处理,联系人Email:kefu@iyunv.com,QQ:1061981298 本贴地址:https://www.yunweiku.com/thread-151250-1-1.html 上篇帖子: RAID5和RAID10创建&LVM管理 下篇帖子: rhel7 GPT分区和文件系统组成 加密
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

扫码加入运维网微信交流群X

扫码加入运维网微信交流群

扫描二维码加入运维网微信交流群,最新一手资源尽在官方微信交流群!快快加入我们吧...

扫描微信二维码查看详情

客服E-mail:kefu@iyunv.com 客服QQ:1061981298


QQ群⑦:运维网交流群⑦ QQ群⑧:运维网交流群⑧ k8s群:运维网kubernetes交流群


提醒:禁止发布任何违反国家法律、法规的言论与图片等内容;本站内容均来自个人观点与网络等信息,非本站认同之观点.


本站大部分资源是网友从网上搜集分享而来,其版权均归原作者及其网站所有,我们尊重他人的合法权益,如有内容侵犯您的合法权益,请及时与我们联系进行核实删除!



合作伙伴: 青云cloud

快速回复 返回顶部 返回列表