Linux 시스템 LVM 논리 볼륨 생성 및 확장(명령 상세, 그림 참조)

8049 단어
LVM 소개:
LVM(Logical Volume Manager)의 중국어 이름: 논리 볼륨 관리자는 본질적으로 가상 장치 구동이고 내부 블록 장치와 물리 장치 사이에 추가된 새로운 추상적인 차원으로 몇 개의 디스크(물리 볼륨,Physical Volume)를 하나의 저장소나 볼륨 그룹(Volume Group)으로 조합할 수 있다.LVM은 볼륨 그룹에서 각기 다른 크기의 논리 볼륨(LogicalVolume)을 분할할 때마다 새 논리 장치를 만들 수 있습니다.기본 디스크는 커널에서 직접 제어하지 않고 LVM 레이어에서 제어합니다.상부 응용 프로그램에서 볼륨 그룹은 디스크 블록을 대체하여 데이터 저장의 기본 단원이 되었다.LVM은 모든 물리적 볼륨의 물리적 디스크를 관리하며 논리적 디스크와 물리적 디스크 사이의 매핑을 유지합니다.LVM 논리 디바이스는 파일 시스템 생성 및 데이터 액세스 등 물리적 디스크와 동일한 기능을 상위 계층에 적용합니다.그러나 LVM 논리 장치는 물리적 제약을 받지 않고 논리 볼륨은 연속적인 공간이 아니라 많은 물리 볼륨을 뛰어넘을 수 있으며 언제든지 크기를 조절할 수 있다.물리적 디스크보다 디스크 공간 관리가 용이합니다.
LVM의 장점과 단점:
우리는 평소에 컴퓨터를 사용하는데 디스크 공간이 부족할 때 일반적으로 디스크 공간을 확장할 수 없다. 우리는 새로운 하드디스크를 추가하고 새로운 하드디스크를 구역별로 만들어 포맷해야만 사용할 수 있다.물론 이것은 우리 개인 컴퓨터에 당연히 충분하다. 약간의 번거로움을 제외하고는.그러나 작업 환경에서 서버는 끄고 새 하드디스크를 추가하기 어렵다. 중요한 서비스를 실행하는 서버는 보통 24시간 끊임없이 운행한다는 것을 알아야 한다. 이때 LVM을 통해 우리는 시스템의 디스크를 동적 관리할 수 있다.
LVM 메커니즘의 기본 개념:
VG(Volume Group) 다이어그램:
용어 설명:
  • 물리적 저장 매체(The physical media): 시스템의 저장 장치인 하드디스크를 말한다. 예를 들어/dev/hda1,/dev/sda 등은 저장 시스템의 가장 낮은 층의 저장 단원이다.
  • 물리 볼륨(physical volume) PV: 물리 볼륨이란 하드디스크 섹터나 논리적으로 디스크 섹터와 같은 기능을 가진 장치(예를 들어 RAID)를 말한다. LVM의 기본 저장 논리 블록이지만 기본적인 물리 저장 매체(예를 들어 섹터, 디스크 등)와 비교하면 LVM과 관련된 관리 파라미터가 포함된다.
  • 볼륨 그룹(Volume Group) VG: LVM 볼륨 그룹은 비 LVM 시스템의 물리적 하드 드라이브와 유사하며 물리적 볼륨으로 구성됩니다.볼륨 그룹에 하나 이상의 "LVM 파티션"(논리 볼륨)을 만들 수 있으며, LVM 볼륨 그룹은 하나 이상의 물리적 볼륨으로 구성됩니다.
  • 논리 볼륨(logical volume) LV: LVM의 논리 볼륨은 비 LVM 시스템의 하드디스크 섹션과 유사하며 논리 볼륨 위에 파일 시스템(예를 들어/home 또는/usr 등)을 구축할 수 있다.
  • 물리 블록(physical extents) PE: 각 물리 볼륨은 PE(Physical Extents)라고 불리는 기본 단원으로 나뉘는데, 유일한 번호를 가진 PE는 LVM에서 주소를 찾을 수 있는 최소 단원이다.PE의 크기는 구성 가능하며 기본값은 4MB입니다.
  • 논리 블록(logical extent) LE: 논리 볼륨도 LE(Logical Extents)라고 불리는 주소 지정 가능한 기본 단위로 구분됩니다.같은 볼륨 그룹에서 LE의 크기는 PE와 같고 일일이 대응한다.

  • LVM에 대한 관리 명령:
    기본 명령:
    pvcreate 명령: 새 물리 볼륨 만들기 (형식: pvcreate... 장치 이름 1... [장치 이름 2])
    vgcreate 명령: 새 볼륨 그룹 만들기 (형식: vgcreate... 볼륨 이름... 물리 볼륨 이름 1... 물리 볼륨 이름 2)
    lvcreate 명령: 새로운 논리 볼륨 만들기 (형식: lvcreate... - L... 용량 크기... - n... 논리 볼륨 이름... 볼륨 그룹 이름)
    lvextend 명령: 논리 볼륨의 저장 공간 추가 (형식: lvextend... - L... + 용량 크기.../dev/볼륨 그룹 이름/논리 볼륨 이름)
    LVM에서 논리 볼륨을 만드는 프로세스(실제 작업):
    첫 번째 단계: 물리적 볼륨(PV)을 설정합니다.
    1. 가상 컴퓨터에 20G 하드디스크 세 개를 추가하고 리눅스 시스템을 다시 시작합니다. (시스템을 다시 시작해야 하드디스크를 식별할 수 있고'reboot'또는'init6'명령으로 다시 시작합니다).
    2. fdisk 명령을 사용하여 하드 드라이브가 성공적으로 추가되었는지 확인합니다. :fdisk -l
    3. 디스크 sdb를 설정하여 모든 공간을 하나의 주 구역에 분배한 다음에 구역 형식을 LVM 형식으로 변환한다.(디스크 관리 내용은 제가 앞의 블로그에 썼는데 못하는 친구가 있으면 한번 가보세요)
      :fdisk /dev/sdb----------    sdb
      :n---------------------------    
      :p--------------------------          
      -------------------------------        1
      -------------------------------        
      ------------------------------           1
      :t--------------------------      
      :8e-----------------------LVM     (        L  )
      :w------------------------    

    4. 위의 방법으로 디스크 sdc, sdd를 디스크 sdb와 같은 설정으로 하고 종료 디스크 설정 패널을 저장합니다.(과정이 같기 때문에 군말은 하지 않겠다)
    5. fdisk 명령을 사용하여 디스크 파티션이 성공적으로 구성되었는지 다시 확인합니다. :fdisk -l
    6. pvcreate 명령으로 세 개의 디스크 구역을 세 개의 물리 볼륨으로 만듭니다.(나는 정규 표현식 입력을 사용하는데, 더욱 간편하다. "pvcreate/dev/sdb1/dev/sdc1/dev/sdd1"명령줄을 입력한 결과와 같다. :pvcreate /dev/sd{b..d}12단계: 새 볼륨 그룹(VG)
    1. 물리적 볼륨 sdb1, sdc1, sdd1을 볼륨 그룹mailbox에 추가합니다.
      :vgcreate mailbox /dev/sd{b..d}1---------    mailbox     sdb1、sdc1、sdd1    
      :pvscan-------------------------------------------       

    2. 볼륨 그룹 메일박스의 상세한 정보를 보십시오. :vgdisplay----------
    3단계: 새 논리 볼륨(LV)
    1. 메일박스 볼륨 그룹에 논리 볼륨 mbox01을 새로 만듭니다.(내 디스크 한 조각의 크기는 20G이고 25G의 논리 볼륨은 디스크에 걸쳐 뚜렷하게 만들 수 있다)
      :lvcreate -L 25G -n mbox01 mailbox---------- mailbox        mbox01    ,   25G
      :lvdisplay-----------------------------------------------         

    2. 메일박스 볼륨 그룹에 논리 볼륨 mbox02를 만들고 용량은 15G로 설정합니다.
      :lvcreate -L 15G -n mbox02 mailbox
      :lvdisplay

    3. 논리 볼륨 mbox01의 공간이 적다고 느끼면 10G의 공간을 확장할 수 있습니다.
      :lvextend -L +10G /dev/mailbox/mbox01-------- mbox01  10G  ,“+”        ,    “+”         。
      :lvdisplay

    4단계: 논리 볼륨 포맷 및 마운트
    1. 논리 볼륨 mbox01과 mbox02를 포맷합니다.
      :mkfs.xfs /dev/mailbox/mbox01----------    mbox01    xfs    
      :mkfs.xfs /dev/mailbox/mbox02----------    mbox02    xfs    

    2. 두 논리 볼륨의 마운트 지점으로/mnt/디렉토리에 두 개의 디렉토리를 새로 만듭니다.
      :mkdir /mnt/mbox0{1..2}---------- /mnt/         mbox01、mbox02   
      :ls /mnt/--------------------------------  /mnt/         

    3./etc/fstab 파일에 논리 볼륨 mbox01, mbox02의 자동 마운트 명령을 추가합니다.(내 이전 블로그를 자동으로 마운트했으니 못하는 친구는 볼 수 있다)
      :vim /etc/fstab------------------------------------------------------------------------------ vim    fstab      
      :/dev/mailbox/mbox01     /mnt/mbox01     xfs     defaults        0 0----------        
      :/dev/mailbox/mbox02     /mnt/mbox02     xfs     defaults        0 0----------        
      :mount -a------------------------------------------------------------------------------------      
      :df -hT----------------------------------------------------------------------------------------      

    LVM 확장:
    논리 볼륨(LV) 확장:
    ext2/ext3/ext4 파일 시스템, 조정 명령은resize2fs이거나 "-r"로 파일 시스템 크기를 자동으로 확장:
    1. mbox01 논리 볼륨을 마운트한 다음 파일 형식을 ext4 형식으로 포맷합니다.
      :umount /dev/mailbox/mbox01-------------   mbox01
      :mkfs.ext4 /dev/mailbox/mbox01----------        ext4

    2. mbox01을 다시 마운트한 다음 마운트 상세 정보를 확인합니다.
      :mount /dev/mailbox/mbox01 /mnt/mbox01----------  mbox01
      :df -hT-------------------------------------------------------------      

    3.mbox01에 1G 용량을 추가하고 마운트 상세 정보를 보니 용량이 증가하지 않았습니다.
      :lvextend -L +1G /dev/mailbox/mbox01---------------    
      :df -hT-------------------------------------------------------------      

    4.resize2fs 명령으로 용량 조정을 실행한 다음 용량 증가에 성공한 것을 확인합니다.
      :resize2fs /dev/mailbox/mbox01-------------------------    
      :df -hT-------------------------------------------------------------      

    5. "-r"옵션을 사용하여 파일 시스템 크기를 직접 자동으로 확장합니다.입력: lvextend-L +1G/dev/mailbox/mbox01 -r---------------mbox01 용량 1G 증가 및 자동 확장 입력: df -hT----------------------------------------------------------------------------------- 마운트 상세 정보 보기
    xfs 파일 시스템의 조정 명령은 xfs 입니다.growfs 또는 "-r"를 사용하여 파일 시스템 크기를 직접 확장합니다.
    1. 만약에 mbox02를 사용하는 과정에서 용량이 부족하면 우리는 직접 용량을 확대할 수 있지만 전제는 볼륨 그룹에 충분한 용량 지원이 있다는 것이다.입력: lvextend-L +5G/dev/mailbox/mbox02-------------mbox02 논리 볼륨에 5G 용량 추가 입력: lvdisplay/dev/mailbox/mbox02-----------------------------mbox02 논리 볼륨 상세정보 표시
    2. 우리는 다시 df-hT 명령을 사용하여 마운트 정보를 살펴보았는데mbox02의 용량이 증가하지 않은 것을 발견하였다.이것은 파일 시스템이 아직 동기화되지 않았기 때문에, 우리는 xfs 를 사용하기만 하면 된다.growfs 명령을 동기화하면 됩니다.
      :df -hT-------------------------------------------------      
      :xfs_growfs /dev/mailbox/mbox02-----------    
      :df -hT-------------------------------------------------      

    3. "-r"를 사용하여 파일 시스템 크기를 직접 자동으로 확장합니다.
      :lvextend -L +1G /dev/mailbox/mbox02 -r-------------  mbox02  1G     
      :df -hT-------------------------------------------------------------      

    볼륨 그룹(VG) 확장:
    1. 볼륨 그룹에 공간이 부족한 것을 발견하면 먼저 하드디스크를 추가합니다.
    2. 하드디스크를 추가한 후 일반적으로 시스템을 리셋하지만 기업에서 서버는 마음대로 리셋할 수 없습니다. 여기서 우리는 echo"---">/sys/class/scsihost/host0/scan 명령은 디스크를 추가하기 위해 scsi 버스를 다시 스캔합니다.
      :echo "- - -" > /sys/class/scsi_host/host0/scan----------  scsi      
      :fdisk -l /dev/sde--------------------------------------------------       sde

    3. 새 디스크를 포맷한 다음 볼륨 그룹 메일박스에 추가하여 공간이 성공적으로 추가되었는지 확인합니다.
      :pvcreate /dev/sde-----------------------         /dev/sde
      :vgextend mailbox /dev/sde----------   /dev/sde     mailbox  
      :vgs-------------------------------------------      

    좋은 웹페이지 즐겨찾기