RAID及LVM的實現

RAID及LVM的實現


第一部分 : RAID介紹及創建

  • 1、mdadm工具

  • 2、創建RAID 5及刪除RAID

第二部分 : LVM的實現

  • 1、基本命令

  • 2、LVM創建及擴容和縮減

  • 3、LVM快照

RAID介紹及創建


1、mdadm工具

mdadm [mode] <raid device> [options] <任意塊設備>
   [mode] 
         -C : 創建
         -A : 裝配
         -F : 監控
         管理模式
             -f : 標記指定磁盤為損壞
             -a : 添加磁盤
             -r : 移除磁盤
     -C : 創建模式
         -n# : 使用#個設備來創建此RAID
         -l# : 指明要創建的RAID級別
         -a [yes | no] : 是否自動創建設備文件
         -c : 指明塊大小
         -x# : 指明空閑盤個數
         -D : 顯示RAID的詳細信息

先介紹一下一些常見RAID陣列

     RAID 0
             利用率為100%
             無容錯能力
             最小磁盤數 2
     RAID 1  
             利用率為50%
             有冗余能力
             最少磁盤數 2
     RAID 5  
             利用率為(n-1)/n ,有一塊作為備用
             有容錯能力
             最少磁盤數 3
     RAID 10
             利用率為50%
             有容錯能力,但每組鏡像只能壞一塊
             最少磁盤 4

2、創建并定義RAID設備

這里以創建RAID 5為例
開始工作: 準備系統磁盤,這里小編已經先做好了,并將系統ID改為RAID類型
     如下: 

        Device Boot         Start         End      Blocks   Id  System
        /dev/sdb1               1         262     2104483+  fd  Linux raid autodetect
        /dev/sdb2             263         524     2104515   fd  Linux raid autodetect
        /dev/sdb3             525         786     2104515   fd  Linux raid autodetect
        /dev/sdb4             787        1048     2104515   fd  Linux raid autodetect

     (1)、 在/dev下創建RAID5命名為md0,且設為開機自動創建,模式為RAID 5 使用3個設備創建此RAID,/dev/sdb4作為備用

         mdadm -C /dev/md0 -a yes -l5 -n3 -x1 /dev/sdb{1,2,3,4}

     (2)、 對創建的md0設備進行格式化

         mke2fs -j /dev/md0

     (3)、 將/dev/md0進行掛載,就可以進行使用了

           到此RAID 5 很簡單的就創建完畢

     (4)、 可以通過命令來查看RAID的設備狀況

         mdadm -D /dev/md0

        [root@Centos6 ~]#mdadm -D /dev/md0
        /dev/md0 :
         Version : 1.2
   Creation Time : Mon Aug 14 12:44:33 2017
      Raid Level : raid5                        # RAID 5模式
      Array Size : 4204544 (4.01 GiB 4.31 GB)     
   Used Dev Size : 2102272 (2.00 GiB 2.15 GB)    # 使用的設備大小
    Raid Devices : 3                            # RAID 設備數
   Total Devices : 4                            # RAID 總設備數
     Persistence : Superblock is persistent

     Update Time : Mon Aug 14 12:44:56 2017
           State : clean                        # 是否被破壞
  Active Devices : 3                            # 活動設備
 Working Devices : 4                            # 工作設備
  Failed Devices : 0                            # 損壞設備
   Spare Devices : 1                            # 空閑設備

          Layout : left-symmetric
      Chunk Size : 512K                            # chunk(塊)大小

            Name : Centos6.9ymd:0  (local to host Centos6.9ymd)
            UUID : 7d8465ed:f8b2c03b:8e7e2a82:0af865ee
          Events : 18

     Number   Major   Minor   RaidDevice State
        0       8       17        0      active sync   /dev/sdb1  # 活動設備
        1       8       18        1      active sync   /dev/sdb2  # 活動設備
        4       8       19        2      active sync   /dev/sdb3  # 活動設備

        3       8       20        -      spare   /dev/sdb4        # 空閑設備

     (5)、 如若在最開始創建的時候并沒有備用的設備,我們可以在設備中增添新成員,增加容錯能力

         mdadm  -G  /dev/md0  -n4 -a /dev/add

     (6)、 生成配置文件,以備我們將其停止后能夠重新啟動它

         mdadm -Ds >> /etc/mdadm.conf 

     (7)、 停止RAID設備

         mdadm -S /dev/md0 

     (8)、重新啟動RAID設備

         mdadm -As /dev/md0

3、那么創建好后,怎樣刪除它呢?

     (1)、 首先我們需要將其卸載

         umount /dev/md0

     (2)、 停止RAID設備

         mdadm -S /dev/md0 

     (3)、 刪除配置文件

         rm -rf /etc/mdadm.conf

     (4)、 刪除RAID,清除其成員的元信息

         mdadm --zero-superblock /dev/sdb{1,2,3,4}

     (5)、如果在/etc/fstab文件中增加了開機自動加載的信息則還要將其刪除

LVM的實現


1、基本命令

     1、創建及刪除物理卷LV

         pvcreate  device 
         pvremove  device 

     2、創建卷組VG

         vgcreate vgname device
             vgname : 為自己指定的vg名稱
             -s # : 可指定PE的大小,默認為4M 

        管理卷組

         vgextend  vgname  device  在vg內添加pv
         vgreduce  vgname  device  在vg內移除pv
         vgchange                  配置vg是否啟動
         vgremove  device          刪除一個vg
         vgs | vgdisplay           查看vg信息
     3、創建邏輯卷LV

         lvcreate  [options] [lvname] device 
             [options]
                 -L # [+][G,g,T,t,M,m] 改變LV容量
                 -l #% VG              以百分比形式改變容量
                 -n name               設置LV名字
         lvextend          增加LV容量
         lvreduce          削減LV容量
         lvremove          刪除一個LV
         lvresize          調整lv容量大小
         lvs | lvdisplay   查看lv信息
     4、掛載使用邏輯卷

2、接下來我們開始邏輯卷的創建

將自己創建的過程及相關命令列出

如下:

1、創建pv
         [root@Centos6 ~]#pvcreate /dev/sdb{1..4}
         Physical volume "/dev/sdb1" successfully created
         Physical volume "/dev/sdb2" successfully created
         Physical volume "/dev/sdb3" successfully created
         Physical volume "/dev/sdb4" successfully created

         [root@Centos6 ~]#pvs
         PV         VG   Fmt  Attr PSize PFree 
         /dev/sdb1  vg0  lvm2 a--u 2.00g     0 
         /dev/sdb2  vg0  lvm2 a--u 2.00g     0 
         /dev/sdb3  vg0  lvm2 a--u 2.00g     0 
         /dev/sdb4  vg0  lvm2 a--u 2.00g 16.00m
     2、創建vg
         [root@Centos6 ~]#vgcreate vg0 /dev/sdb{1..4}
         Volume group "vg0" successfully created

         [root@Centos6 ~]#vgs
         VG   #PV #LV #SN Attr   VSize VFree 
         vg0    4   1   0 wz--n- 8.02g 16.00m
     3、創建lv
         [root@Centos6 ~]#lvcreate -L +8G -n lv0 vg0
         Logical volume "lv0" created.

         [root@Centos6 ~]#lvdisplay 
         --- Logical volume ---
         LV Path                /dev/vg0/lv0
         LV Name                lv0
         VG Name                vg0
         LV UUID                NfI3VT-QXop-Ju9V-qdzT-jZOj-Okmz-lcDAAf
         LV Write Access        read/write
         LV Creation host, time Centos6.9ymd, 2017-08-17 06:11:37 +0800
         LV Status              available
          # open                 0
         LV Size                8.00 GiB
         Current LE             2048
         Segments               4
         Allocation             inherit
         Read ahead sectors     auto
         - currently set to     256
         Block device           253:0

3、LV擴容及縮減

(1)、擴容LV

1、創建系統ID是LVM的分區
         這里以/dev/sdc1為例

     2、將/dev/sdc1變成物理卷
         pvcreate /dev/sdc1
     3、將其加入卷組中
         vgcreate vg0 /dev/sdc1
     4、擴容LV
         lvextend  -L +#G  /dev/vg0/lv0
     5、同步文件系統(當在磁盤上看不到增加的容量時可用)
         resize2fs  /dev/vg0/lv0 #G 

         也可將4、5合并成以下命令來代替
         lvextend -r -L +#G  /dev/vg0/lv0

(2)、縮減LV

1、卸載已經掛載的lv
         umount
     2、強制進行磁盤檢測
         e2fsck -f /dev/vg0/lv0
     3、同步文件系統
         resize2fs  /dev/vg0/lv0  #G
     4、縮減LV
         lvreduce  -L #G  /dev/vg0/lv0 
     5、掛載重新使用
         mount

4、如何跨主機遷移卷組到新系統

首先要確定被遷移的卷組是否與新卷組名稱沖突,如果沖突則先要更改名字
         vgrename  vg0   newvg0name
     1、先卸載被掛載的邏輯卷
         umount
     2、禁用卷組中的所有邏輯卷
         vgchange -an vg0
     3、讓卷組處于導出狀態
         vgexport  vg0
     4、關機拆除硬盤,出入新的系統
     5、導入轉移的vg0
         vgimport vg0
     6、激活邏輯卷
         vgchange -ny vg0 
     7、掛載使用

5、邏輯卷快照

快照,顧名思義,保存當前的狀態,以備以后能夠還原到當前的狀態,其原理這里不再贅述

1、為現有的LV創建快照
         lvcreate  -s  -l 60  -n /dev/vg0/data  -p r /dev/vg0/lv0 
             -s : 創建快照
             -l : 使用PE數量,作為快照區使用
             -n : 快照區設備名稱
             -p r : 設定快照為只讀屬性
     2、掛載快照
         mount -o ro /dev/vg0/data  /mnt/snap 
     3、恢復快照
         lvconvert --merge  /dev/vg0/data

原創文章,作者:M25_ymd,如若轉載,請注明出處:http://www.www58058.com/85267

(0)
M25_ymdM25_ymd
上一篇 2017-08-21 21:46
下一篇 2017-08-22 13:55

相關推薦

  • 22期第四周課程練習

    1、復制/etc/skel目錄為/home/tuser1,要求/home/tuser1及其內部文件的屬組和其它用戶均沒有任何訪問權限。 [root@localhost tuser1]# cp   -r    /etc/skel/   /ho…

    Linux干貨 2016-09-08
  • 馬哥教育網絡班20期+第五周博客作業

    1、顯示/boot/grub/grub.conf中以至少一個空白字符開頭的行; ]# grep  "^[[:space:]]\+" /boot/grub/grub.conf 2、顯示/etc/rc.d/rc.sysinit文件中以#開頭,后面跟至少一個空白字符,而后又有至少一個非空白字符的行; ]#…

    Linux干貨 2016-07-12
  • 基于nginx實現7層http的負載均衡

    一、實驗環境實驗環境為三臺服務器:1. nginx負載均衡器1. 內網ip:192.168.11.1002. 外網ip:172.16.251.892. 提供網頁服務的RS-1服務器:192.168.11.2013. 提供網頁服務的RS-2服務器:192.168.11.2024. 拓撲如下:二、實驗配置后臺服務器配置:1. 后臺提供網頁服務的兩臺服務器配置:y…

    Linux干貨 2017-06-29
  • 自制linux系統

    本文主要通過裁剪現有Linux系統,打造一個屬于自己的Linux小系統,讓其能夠裝載網卡驅動,并配置IP地址,實現網絡功能。 自制linux系統 步驟概述: 1、新建一個硬盤2、在該新硬盤上新建兩個分區,一個當boot分區,一個當/分區3、格式化并且掛載兩個分區4、安裝grub至目標磁盤5、為grub提供配置文件6、復制內核文件和initrd文件7、創建目標…

    Linux干貨 2016-09-13
  • Nginx/LVS/HAProxy負載均衡軟件優缺點總結

    Nginx/LVS/HAProxy簡單介紹:   Nginx:專為性能優化而開發,性能是其最重要的考量,實現上非常注重效率 。它支持內核Poll模型,能經受高負載的考驗,有報告表明能支持高達 50,000個并發連接數。 LVS:使用Linux內核集群實現一個高性能、高可用的負載均衡服務器,具有很好的可伸縮性(Scalability)、可靠性(Rel…

    2017-06-24
  • 初識LINUX

    初識LINUX 一、計算機的組成 二、Linux的發行版本 發行版:數百種之多,主要分為: Debian分支:ubuntu、mint、knopix Slackware分支:S.u.S.E–>SLES、OpenSUSE RedHat分支: Redhat–>Centos   Fedora Core Gent…

    Linux干貨 2016-09-17
欧美性久久久久