raid

多个磁盘合成一个“阵列”来提供更好的性能、冗余,或者两者都提供

提高IO能力

    磁盘并行读写

提高耐用性

    磁盘冗余来实现

级别:多块磁盘组织在一起的工作方式有所不同

RAID实现的方式

    外接式磁盘阵列:通过扩展卡提供适配能力

    内接式RAID:主板集成RAID控制器,安装OS前在BIOS里配置

    软件RAID:通过OS实现

RAID级别

 RAID-0

  • 读、写性能提升
  • 可用空间:N*min(S1,S2,...)
  • 无容错能力
  • 最少磁盘数:2, 2+

 RAID-1

  • 读性能提升、写性能略有下降
  • 可用空间:N/2*min(S1,S2,...)     利用率50%
  • 有冗余能力
  • 最少磁盘数:2, 2N

 RAID-5

  • 读、写性能提升
  • 可用空间:(N-1)*min(S1,S2,...)      利用率 N-1/N
  • 有容错能力:允许最多1块磁盘损坏
  • 最少磁盘数:3, 3+

          

RAID-6

  • 读、写性能提升
  • 可用空间:(N-2)*min(S1,S2,...)     利用率  N-2/N
  • 有容错能力:允许最多2块磁盘损坏
  • 最少磁盘数:4, 4+

            

RAID-10

  • 读、写性能提升
  • 可用空间:N*min(S1,S2,...)/2   利用率50%
  • 有容错能力:每组镜像最多只能坏一块
  • 最少磁盘数:4, 4+

          

RAID-50  多块磁盘先实现RAID5,再组合成RAID0,利用率   RAID中 N-1/N

        

 逻辑卷(LVM)

底层块设备,硬盘,分区都可以,将底层的块设备,创建成pv物理卷,再创建卷组,再把pv物理卷加入到卷组

分区的话 需要修改块设备的ID 为LVM的,硬盘不用改,修改ID   t==>1(分区编号)==>8e

              

  pv物理卷

显示pv信息

pvs:简要pv信息显示

pvdisplay

创建pv pvcreate /dev/DEVICE(可以跟很多设备)

删除pv pvremove /dev/DEVICE

 vg 卷组

显示卷组

vgs vgdisplay

创建卷组 

vgcreate  [-s #[kKmMgGtTpPeE]] VolumeGroupName  PhysicalDevicePath [PhysicalDevicePath...] 

vgcreate   vg组名  哪些pv

显示逻辑卷

lvs Lvdisplay

lvcreate   -n mysql(逻辑卷名字)    -L  8G(逻辑卷容量)   vg0(从哪个卷组取容量)

创建出逻辑卷后,就相当于我们有了逻辑卷这个设备了,逻辑卷产生的设备 叫这个名字  /dev/mapper/卷组名-逻辑卷名字  等同于  /dev/卷组名/逻辑卷名

挂载  先把这个设备格式化文件系统然后把 这个设备挂载到 挂载点

扩展逻辑卷的空间

    lvextend -L [+]#[mMgGtT] /dev/VG_NAME/LV_NAME

    lvextend -l +100%free /dev/vg0/mysql   把剩下空间的100% 分给mysql逻辑卷

    添加完成之后,你df会发现,硬盘的大小没变?因为你是增加了空间,但是这些新增加的空间没有文件系统啊,所有就不能使用

    xfs_growfs  逻辑卷的挂载点   //把新增加的空间与已经存在的空间的文件系统做同步,这是针对于xfs文件系统的

    resize2fs   设备名   //这是针对于 ext4文件系统的

    当然还有一种方法 在加空间的时候,-r选项 可以直接同步好   lvextend -r -l +100%free /dev/vg0/mysql  直接扩展并且同步了文件系统,

把剩下的空间都加完了还不够?那就扩展 vg的空间

vgextend  vg0  /dev/sdc   //把pv加到vg里面

缩减ext逻辑卷

  • umount /mnt/binlog
  • e2fsck -f /dev/vg0/binlog
  • resize2fs /dev/vg0/binlog 10G
  • lvreduce -L 10G /dev/vg0/binlog
  • mount /dev/vg0/binlog /mnt/binlog/

只能缩减ext的文件系统,不能缩减xfs文件系统

linux磁盘管理2-raid,lvm的更多相关文章

  1. linux磁盘管理系列-软RAID的实现

    1 什么是RAID RAID全称是独立磁盘冗余阵列(Redundant Array of Independent Disks),基本思想是把多个磁盘组合起来,组合一个磁盘阵列组,使得性能大幅提高. R ...

  2. linux磁盘管理系列-LVM的使用

    LVM是什么 LVM是Linux操作系统的逻辑卷管理器. 现在有两个Linux版本的LVM,分别是 LVM1,LVM2.LVM1是一种已经被认为稳定了几年的成熟产品,LVM2 是最新最好的LVM版本. ...

  3. linux磁盘管理系列三:LVM的使用

    磁盘管理系列 linux磁盘管理系列一:磁盘配额管理   http://www.cnblogs.com/zhaojiedi1992/p/zhaojiedi_linux_040_quota.html l ...

  4. linux磁盘管理系列二:软RAID的实现

    磁盘管理系列 linux磁盘管理系列一:磁盘配额管理   http://www.cnblogs.com/zhaojiedi1992/p/zhaojiedi_linux_040_quota.html l ...

  5. Linux磁盘管理:LVM逻辑卷基本概念及LVM的工作原理

    一.传统的磁盘管理 其实在Linux操作系统中,我们的磁盘管理机制和windows上的差不多,绝大多数都是使用MBR(Master Boot Recorder)都是通过先对一个硬盘进行分区,然后再将该 ...

  6. 【转载】Linux磁盘管理:LVM逻辑卷管理

    Linux学习之CentOS(二十五)--Linux磁盘管理:LVM逻辑卷基本概念及LVM的工作原理 这篇随笔将详细讲解Linux磁盘管理机制中的LVM逻辑卷的基本概念以及LVM的工作原理!!! 一. ...

  7. Linux学习之CentOS(二十六)--Linux磁盘管理:LVM逻辑卷的创建及使用

    在上一篇随笔里面 Linux学习之CentOS(二十五)--Linux磁盘管理:LVM逻辑卷基本概念及LVM的工作原理,详细的讲解了Linux的动态磁盘管理LVM逻辑卷的基本概念以及LVM的工作原理, ...

  8. linux磁盘管理系列一:磁盘配额管理

    磁盘管理系列 linux磁盘管理系列一:磁盘配额管理   http://www.cnblogs.com/zhaojiedi1992/p/zhaojiedi_linux_040_quota.html l ...

  9. Linux学习之十九-Linux磁盘管理

    Linux磁盘管理 1.相关知识 磁盘,是计算机硬件中不可或缺的部分磁盘,是计算机的外部存储器中类似磁带的装置,将圆形的磁性盘片装在一个方的密封盒子里,这样做的目的是为了防止磁盘表面划伤,导致数据丢失 ...

  10. Linux 磁盘管理

    Linux磁盘管理好坏管理直接关系到整个系统的性能问题. Linux磁盘管理常用三个命令为df.du和fdisk. df:列出文件系统的整体磁盘使用量 du:检查磁盘空间使用量 fdisk:用于磁盘分 ...

随机推荐

  1. Spring Boot项目指定启动后执行的操作

    Spring Boot项目指定启动后执行的操作: (1)实现CommandLineRunner 接口 (2)重写run方法 (3)声明执行顺序@Order(1),数值越小,优先级越高 (4)如果需要注 ...

  2. 【 js 上传文件】

    上传文件 <!DOCTYPE html> <html xmlns="http://www.w3.org/1999/xhtml"> <head> ...

  3. 2019牛客多校第二场F Partition problem 暴力+复杂度计算+优化

    Partition problem 暴力+复杂度计算+优化 题意 2n个人分成两组.给出一个矩阵,如果ab两个在同一个阵营,那么就可以得到值\(v_{ab}\)求如何分可以取得最大值 (n<14 ...

  4. STL顺序容器用法自我总结

    顺序容器类型:vector.deque.list.forward_list.string.array. queue(单向队列)底层也是用deque(双端队列)实现的 a.swap(b); swap(a ...

  5. CodeForces Gym 100213F Counterfeit Money

    CodeForces Gym题目页面传送门 有\(1\)个\(n1\times m1\)的字符矩阵\(a\)和\(1\)个\(n2\times m2\)的字符矩阵\(b\),求\(a,b\)的最大公共 ...

  6. git上传时出现ERROR: Repository not found.的解决办法

    今天在上传时出现错误,原因是之前更改了gitee上的个人空间地址,导致找不到.需要重新配置 https://gitee.com/help/articles/4114#article-header0

  7. VS2015打开失败

    在使用VS2015过程中之前能打开的.Net项目,结果突然就不能使用了.我就不能理解了,后来找了一个方法,抱着试试的心态结果就成功了. 解决办法 第一步: 开始-->所有程序-->Micr ...

  8. Saber-图集

    PS:狙击手

  9. 安卓按键:读取txt开头出现未知字符的问题

    很多时候 我们读取txt 用traceprint输出后 最头上会莫名其妙多出一个问号 但是你用问号匹配他 却匹配不到  就是1个未知字符  这个到底是什么 怎么避免出现这个东西呢 这个主要是txt文件 ...

  10. Drawer 侧边栏、以及侧边栏内 容布局

    一.Flutter Drawer 侧边栏 在 Scaffold 组件里面传入 drawer 参数可以定义左侧边栏,传入 endDrawer 可以定义右侧边栏.侧边栏默认是隐藏的,我们可以通过手指滑动显 ...