zoukankan      html  css  js  c++  java
  • LVM逻辑卷,RAID磁盘阵列

    磁盘管理: 有关硬盘的识别,linux根据设备类型对存储设备进行识别,如果是IDE设备, 在计算机中会被识别为hd,第一个IDE设备会被识别为hda,第二个IDE设备会被识别为hdb,依次类推。如果是SATA,USB,SCSI设备会被识别为sd,同样第一个此类设备为sda,第二块此类设备为sdb,依次类推。 对于分区,linux使用数字来表示,如第一块SATA硬盘的第一个分区为sda1;第二块硬盘的第二个分区为sdb2。

    磁盘分区: 传统的MBR分区方式是一块硬盘最多可以分为四个主分区,如果我们为硬盘分配了四个主分区,那么即使硬盘还有剩余空间,也无法再继续分区。 所以我们一般可以采用P+P+P+E的方式来分区,也就是三个主分区+一个扩展分区;

    ------------------------------------------------------------------------------------------------------------------------------------------------------------------------

    查看磁盘分区表:

    # fdisk -cul

    为硬盘分区:

    #fdisk -cu /dev/sdb

    m     查看帮助命令

    p       打印分区表信息

    t       修改分区id

    n       创建分区

    d       删除分区

    w       保存退出

    刷新分区表:

    # partprobe /dev/sdb

    修改分区表类型,

    # parted /dev/sdb mklabel gpt

    对于大于2T的硬盘创建可修改分区一般使用parted命令;

    创建分区: 创建一个从磁盘的第1MB开始分区,到2G为止的位置

    #parted /dev/sdc mkpart primary ext3 1 2G

    从2G的位置开始划分4G空间

    #parted /dev/sdc mkpart primary ext3 2G 4G

    打印分区信息

    #parted /dev/sdc print

    删除分区适应rm命令

    #parted /dev/sdc rm 2

    格式化磁盘分区为ext4格式

    #mkfs.ext4 /dev/sdc1

    将分区格式化为swap分区

    #mkswap /dev/sdc2

    开机自动挂载,编辑fstab文件

    如:

    /dev/sdc1 /data ext4 defaults 0 0

    /dev/sdc1 为设备名;

    /data    挂载点;

    ext4    文件系统类型;

    defaults    挂载属性

    0       表示不备份,1表示每天备份

    0       表示不需要进行磁盘检测,1表示根文件系统,其他文件系统为2;

    ------------------------------------------------------------------------------------------------------------------------------------------------------------

    LVM逻辑卷 将分区转换为物理卷,pvcreate;

    将物理卷合成卷组,vgcreate;

    从卷组中提取容量创建逻辑卷,lvcreate;

    创建完成后可以分别使用pvdisplay,vgdisplay,lvdisplay,查看效果。

    -----------------------------------------------------------------------------------------------------------------------------------------------------------

    创建LVM分区实例:

    这里我们使用sdb,500G的硬盘创建100GB的分区,并使用这四个分区创建一个名称为test_vg的卷组,最后从该卷组中创建两个大小为120GB的逻辑卷,

    名称分别为:test_web,test_data.

    1、使用fdisk创建分区

    #fdisk -cu /dev/sdb partprobe /dev/sdb

    2、使用pvcreate创建物理卷并使用pvdisplay查看结果

    # pvcreate /dev/sdb{1,2,3,5}

    #pvdisplay

    3、创建卷组并查看

    #vgcreate test_vg  /dev/sdb{1,2,3,5}

    #vgdisplay

    4、创建逻辑卷

    # lvcreate -n test_web -L 120G test_vg

    # lvcreate -n test_data -l 30720 test_vg

    #lvdisplay

    5、格式化并挂载

    #mkfs.ext4  /dev/test_vg/test_web

    #mkfs.ext4  /dev/test_vg/test_data

    #mkdir -p /test/{web,data}

    #cat >> /etc/fstab <<EOF

    >/dev/test_vg/test_data /test/data ext4 dafaults 0 0

    >/dev/test_vg/test_web /test/web ext4 defaults 0 0

    >EOF

    #mount -a df -h

    ----------------------------------------------------------- ------------------------------------------------------------------------------------------------

    删除LVM分区

    #umount /dev/test_vg/test_data

    #umount /dev/test_vg/test_web

    #lvremove /dev/test_vg/test_data

    #lvremove /dev/test_vg/test_web

    #vgremove /test_vg pvremove /dev/sdb{1,2,3,5}

    ===========================================================================================

       RAID(Redundant Array of Independent Disk 独立冗余磁盘阵列)技术是加州大学伯克利分校1987年提出,

    最初是为了组合小的廉价磁盘来代替大的昂贵磁盘,同时希望磁盘失效时不会使对数据的访问受损 失而开发出一定水平的数据保护技术。

    RAID就是一种由多块廉价磁盘构成的冗余阵列,在操作系统下是作为一个独立的大型存储设备出现。

    RAID可以充分发 挥出多块硬盘的优势,可以提升硬盘速度,增大容量,提供容错功能够确保数据安全性,易于管理的优点,

    在任何一块硬盘出现问题的情况下都可以继续工作,不会 受到损坏硬盘的影响。

    RAID 为 Redundant Array of Indepent Disks (独立磁盘冗余阵列) 的缩写,最常用的四种RAID为 RAID 0、RAID 1、RAID 5、RAID 10,

    下面解释这四种RAID的特点和区别。

    RAID 0的特点:

    • 最少需要两块磁盘
    • 数据条带式分布
    • 没有冗余,性能最佳(不存储镜像、校验信息)
    • 不能应用于对数据安全性要求高的场合

    RAID 1的特点:

    • 最少需要2块磁盘
    • 提供数据块冗余
    • 性能好

    RAID 5特点:

    • 最少3块磁盘
    • 数据条带形式分布
    • 以奇偶校验作冗余
    • 适合多读少写的情景,是性能与数据冗余最佳的折中方案

    RAID 10(又叫RAID 1+0)特点:

    • 最少需要4块磁盘
    • 先按RAID 0分成两组,再分别对两组按RAID 1方式镜像
    • 兼顾冗余(提供镜像存储)和性能(数据条带形分布)
    • 在实际应用中较为常用

    RAID 0即Data Stripping(数据分条技术)。整个逻辑盘的数据是被分条(stripped)分布在多个物理磁盘上,可以并行读/写,提供最快的速度,但没有冗余能力。

    要求至少两个磁盘。我们通过RAID 0可以获得更大的单个逻辑盘的容量,且通过对多个磁盘的同时读取获得更高的存取速度。

    RAID 0首先考虑的是磁盘的速度和容量,忽略了安全,只要其中一个磁盘出了问题,那么整个阵列的数据都会不保了。

    问:RAID0至少几块盘? 答:RAID0最少要两块硬盘才能实现。 

    RAID 1 RAID 1,又称镜像方式,也就是数据的冗余。在整个镜像过程中,只有一半的磁盘容量是有效的(另一半磁盘容量用来存放同样的数据)。

    同RAID 0相比,RAID 1首先考虑的是安全性,容量减半、速度不变。

    问:RAID1至少几块盘? 答:RAID1最少要两块硬盘才能实现。 

    RAID 0+1(RAID 10) 为了达到既高速又安全,出现了RAID 10(或者叫RAID 0+1),可以把RAID 10简单地理解成由多个磁盘组成的RAID 0阵列再进行镜像。

    问:RAID0+1至少几块硬盘才能实现? 答:RAID0+1至少需要4块盘。 

    RAID 3和RAID 5 RAID 3和RAID 5都是校验方式。RAID 3的工作方式是用一块磁盘存放校验数据。

    由于任何数据的改变都要修改相应的数据校验信息,存放数据的磁盘有好几个且并行工作,

    而存放校验数据的磁盘只有一个,这就带来了校验数据存放时的瓶颈。

    RAID 5的工作方式是将各个磁盘生成的数据校验切成块,分别存放到组成阵列的各个磁盘中去,

    这样就缓解了校验数据存放时所产生的瓶颈问题,但是分割数据及控制存放都要付出速度上的代价。

    问:RAID5需要几块硬盘?为什么损失一个盘的容量? 答:至少3块。RAID5把数据和相对应的奇偶校验信息存储到组成RAID5的各个磁盘上,并且奇偶校验信息和相对应的数据分别存储于不同的磁盘上,

    其中任意N-1块磁盘上都存储完整的数据,也就是说有相当于一块磁盘容量的空间用于存储奇偶校验信息。

    因此当RAID5的一个磁盘发生损坏后,不会影响数据的完整性,从而保证了数据安全。当损坏的磁盘被替换后,

    RAID还会自动利用剩下奇偶校验信息去重建此磁盘上的数据,来保持RAID5的高可靠性。

    ----------------------------------------------------------------------------------------------------------------------------------------------------------

    RAID磁盘阵列 linux 中创建磁盘阵列可以使用mdadm命令

    -C 创建RAID

    -l 指定RAID的级别

    -n 指定磁盘个数

    -x 指定备用设备数

    例如:

    创建raid0

    #mdadm -C /dev/md0 -l 0 -n 3  /dev/sdb1  /dev/sdc1  /dev/sdd1

    例如:创建raid5

    #mdadm -C  /dev/md1  -l 5 -n 3 -x 1

    >/dev/sdb2  /dev/sdc2  /dev/sdd2  /dev/sde2

    查看raid0和raid5的详细信息;

    #mdadm --detail  /dev/md0

    #mdadm --detail  /dev/md1

    格式化与挂载

    #mkfs.ext4  /dev/md0

    #mkdir  /raid0

    #mount  /dev/md0  /raid0

    开机自动挂载raid磁盘,和上面一样,将挂载命令 写道/etc/fstab文件中即可。

    RAID性能测试:

    #time dd if=/dev/zero  of=txt bs=1M count=1000

  • 相关阅读:
    解决哈希(HASH)冲突的主要方法
    破解
    打工
    [JSOI2007]麻将
    [JSOI2007]建筑抢修
    [HAOI2007]上升序列
    [HAOI2007]覆盖问题
    [CQOI2017]小Q的棋盘
    [HEOI2015]兔子与樱花
    [HEOI2015]定价
  • 原文地址:https://www.cnblogs.com/erick2/p/5804698.html
Copyright © 2011-2022 走看看