4.3. 논리 볼륨 크기 조정


LVM(Logical Volume Manager)을 사용하면 저장된 데이터에 영향을 주지 않고 필요에 따라 논리 볼륨(LV)의 크기를 조정할 수 있습니다.

4.3.1. 선형 논리 볼륨 확장

lvextend 명령을 사용하여 선형(thick) LV 및 해당 스냅샷을 확장할 수 있습니다.

사전 요구 사항

  • 관리 액세스.

절차

  1. 볼륨 그룹에 LV를 확장할 수 있는 충분한 공간이 있는지 확인합니다.

    # lvs -o lv_name,lv_size,vg_name,vg_size,vg_free
      LV                   LSize   VG              VSize  VFree
      LogicalVolumeName    1.49g   VolumeGroupName 30.75g 29.11g
  2. 선형 LV를 확장하고 파일 시스템의 크기를 조정합니다.

    # lvextend --size +AdditionalSize --resizefs VolumeGroupName/LogicalVolumeName

    additional Size 를 LV에 추가할 공백으로 바꿉니다. 기본 측정 단위는 메가바이트이지만 다른 단위를 지정할 수 있습니다. VolumeGroupName 을 볼륨 그룹의 이름으로 교체합니다. LogicalVolumeName 을 thin 볼륨의 이름으로 바꿉니다.

검증

  • 선형 LV가 확장되었는지 확인합니다.

    # lvs -o lv_name,lv_size
      LV                   LSize
      NewLogicalVolumeName 6.49g

4.3.2. thin 논리 볼륨 확장

lvextend 명령을 사용하여 thin 논리 볼륨(LV)을 확장할 수 있습니다.

사전 요구 사항

  • 관리 액세스.

절차

  1. 씬 풀에 추가할 데이터에 충분한 공간이 있는지 확인합니다.

    # lvs -o lv_name,lv_size,data_percent
    
      LV                LSize   Data%
      MyThinPool        20.10g  3.21
      ThinVolumeName     1.10g  4.88
  2. thin LV를 확장하고 파일 시스템의 크기를 조정합니다.

    # lvextend --size +AdditionalSize --resizefs VolumeGroupName/ThinVolumeName

    additional Size 를 LV에 추가할 공백으로 바꿉니다. 기본 측정 단위는 메가바이트이지만 다른 단위를 지정할 수 있습니다. VolumeGroupName 을 볼륨 그룹의 이름으로 교체합니다. ThinVolumeName 을 thin 볼륨의 이름으로 바꿉니다.

검증

  • thin LV가 확장되었는지 확인합니다.

    # lvs -o lv_name,lv_size,data_percent
    
      LV                LSize   Data%
      MyThinPool        20.10g  3.21
      ThinVolumeName     6.10g  0.43

4.3.3. 씬 풀 확장

thin 논리 볼륨의 가상 크기는 씬 풀의 물리적 용량을 초과하여 과도하게 프로비저닝할 수 있습니다. 공간이 부족하지 않도록 하려면 씬 풀의 용량을 모니터링하고 주기적으로 확장해야 합니다.

data_percent 메트릭은 현재 씬 풀이 사용하는 할당된 데이터 공간의 백분율을 나타냅니다. metadata_percent 지표는 메타데이터를 저장하는 데 사용되는 공간의 백분율을 반영합니다. 이는 씬 풀 내의 매핑을 관리하는 데 중요합니다.

이러한 메트릭을 모니터링하는 것은 효율적인 스토리지 관리를 보장하고 용량 문제를 방지하는 데 중요합니다.

LVM은 필요에 따라 데이터 또는 메타데이터 용량을 수동으로 확장하는 옵션을 제공합니다. 또는 씬 풀의 확장을 모니터링하고 자동화할 수 있습니다.

4.3.3.1. 수동으로 씬 풀 확장

LVM(Logical Volume Manager)은 데이터 세그먼트, 메타데이터 세그먼트 또는 씬 풀을 수동으로 확장하는 옵션을 제공합니다.

4.3.3.1.1. 씬 풀 확장

lvextend 명령을 사용하여 thin 풀을 확장할 수 있습니다.

사전 요구 사항

  • 관리 액세스.

절차

  1. 사용된 데이터 및 메타데이터 공간을 표시합니다.

    # lvs -o lv_name,seg_type,data_percent,metadata_percent
    
      LV                Type      Data%  Meta%
      ThinPoolName      thin-pool 97.66  26.86
      ThinVolumeName    thin      48.80
  2. thin 풀을 확장합니다.

    # lvextend -L Size VolumeGroupName/ThinPoolName

    thin pool의 새 크기로 Size 를 바꿉니다. VolumeGroupName 을 볼륨 그룹의 이름으로 교체합니다. ThinPoolName 을 thin 풀 이름으로 교체합니다.

    데이터 크기가 확장됩니다. 필요한 경우 메타데이터 크기가 확장됩니다.

검증

  • thin 풀이 확장되었는지 확인합니다.

    # lvs -o lv_name,seg_type,data_percent,metadata_percent
    
      LV                Type      Data%  Meta%
      ThinPoolName      thin-pool 24.41  16.93
      ThinVolumeName    thin      24.41

추가 리소스

  • lvs(8), lvextend(8) 매뉴얼 페이지
  • LVs -o help
4.3.3.1.2. 씬 풀 데이터 세그먼트 확장

lvextend 명령을 사용하여 data_percent 세그먼트를 확장할 수 있습니다.

사전 요구 사항

  • 관리 액세스.

절차

  1. data_percent 세그먼트를 표시합니다.

    # lvs -o lv_name,seg_type,data_percent
    
      LV                Type      Data%
      ThinPoolName      thin-pool 93.87
  2. data_percent 세그먼트를 확장합니다.

    # lvextend -L Size VolumeGroupName/ThinPoolName_tdata

    Size 를 데이터 세그먼트의 크기로 바꿉니다. VolumeGroupName 을 볼륨 그룹의 이름으로 교체합니다. ThinPoolName 을 thin 풀 이름으로 교체합니다.

검증

  • data_percent 세그먼트가 확장되었는지 확인합니다.

    # lvs -o lv_name,seg_type,data_percent
    
      LV                Type      Data%
      ThinPoolName      thin-pool 40.23

추가 리소스

  • lvs(8), lvextend(8) 매뉴얼 페이지
  • LVs -o help
4.3.3.1.3. 씬 풀 메타데이터 세그먼트 확장

lvextend 명령을 사용하여 metadata_percent 세그먼트를 확장할 수 있습니다.

사전 요구 사항

  • 관리 액세스.

절차

  1. metadata_percent 세그먼트를 표시합니다.

    # lvs -o lv_name,seg_type,metadata_percent
    
      LV                Type      Meta%
      ThinPoolName      thin-pool 75.00
  2. metadata_percent 세그먼트를 확장합니다.

    # lvextend -L Size VolumeGroupName/ThinPoolName_tmeta

    Size 를 메타데이터 세그먼트의 크기로 바꿉니다. VolumeGroupName 을 볼륨 그룹의 이름으로 교체합니다. ThinPoolName 을 thin 풀 이름으로 교체합니다.

검증

  • metadata_percent 세그먼트가 확장되었는지 확인합니다.

    # lvs -o lv_name,seg_type,metadata_percent
    
      LV                Type      Meta%
      ThinPoolName      thin-pool 0.19

추가 리소스

  • lvs(8), lvextend(8) 매뉴얼 페이지
  • LVs -o help

4.3.3.2. 씬 풀 자동 확장

thin_pool_autoextend_thresholdthin_pool_autoextend_percent 구성 매개변수를 모니터링하고 설정하여 씬 풀 확장을 자동화할 수 있습니다.

사전 요구 사항

  • 관리 액세스.

절차

  1. thin 풀이 모니터링되는지 확인합니다.

    # lvs -o lv_name,vg_name,seg_monitor
    
      LV                VG              Monitor
      ThinPoolName      VolumeGroupName not monitored
  2. dmeventd 데몬을 사용하여 thin pool 모니터링을 활성화합니다.

    # lvchange --monitor y VolumeGroupName/ThinPoolName

    VolumeGroupName 을 볼륨 그룹의 이름으로 교체합니다. ThinPoolName 을 thin 풀 이름으로 교체합니다.

  3. root 사용자로 선택한 편집기에서 /etc/lvm/lvm.conf 파일을 엽니다.
  4. thin_pool_autoextend_thresholdthin_pool_autoextend_percent 행의 주석을 제거하고 각 매개변수를 필수 값으로 설정합니다.

    thin_pool_autoextend_threshold = 70
    thin_pool_autoextend_percent = 20

    thin_pool_autoextend_threshold 는 LVM이 씬 풀을 자동 확장하기 시작하는 백분율을 결정합니다. 예를 들어, 이를 70개로 설정하면 LVM이 70% 용량에 도달하면 LVM에서 씬 풀을 확장하려고 합니다.

    thin_pool_autoextend_percent 는 임계값에 도달할 때 씬 풀을 확장해야 하는 백분율을 지정합니다. 예를 들어 20으로 설정하면 씬 풀이 현재 크기의 20% 증가합니다.

  5. 변경 사항을 저장하고 편집기를 종료합니다.
  6. lvm2-monitor 를 다시 시작하십시오.

    # systemctl restart lvm2-monitor

추가 리소스

  • lvs(8), lvchange(8), dmeventd(8) 도움말 페이지

4.3.4. 논리 볼륨 축소

LV의 크기가 감소되면 사용 가능한 논리 확장 영역이 볼륨 그룹으로 반환되고 다른 LV에서 사용할 수 있습니다.

주의

축소된 영역에 저장된 데이터가 손실됩니다. 계속하기 전에 항상 데이터를 백업하고 파일 시스템의 크기를 조정합니다.

사전 요구 사항

  • 관리 액세스.

절차

  1. 논리 볼륨 및 해당 볼륨 그룹을 나열합니다.

    # lvs -o lv_name,vg_name,lv_size
    
      LV                   VG              LSize
      LogicalVolumeName    VolumeGroupName 6.49g
  2. 논리 볼륨이 마운트된 위치를 확인합니다.

    # findmnt -o SOURCE,TARGET /dev/VolumeGroupName/LogicalVolumeName
    
    SOURCE                                           TARGET
    /dev/mapper/VolumeGroupName-NewLogicalVolumeName /MountPoint

    /dev/VolumeGroupName/LogicalVolumeName 을 논리 볼륨의 경로로 바꿉니다.

  3. 논리 볼륨을 마운트 해제합니다.

    # umount /MountPoint

    /MountPoint 를 논리 볼륨의 마운트 지점으로 바꿉니다.

  4. 파일 시스템 오류를 확인하고 복구합니다.

    # e2fsck -f /dev/VolumeGroupName/LogicalVolumeName
  5. LV 및 파일 시스템의 크기를 조정합니다.

    # lvreduce --size TargetSize --resizefs VolumeGroupName/LogicalVolumeName

    TargetSize 를 LV의 새 크기로 바꿉니다. VolumeGroupName/LogicalVolumeName 을 논리 볼륨의 경로로 바꿉니다.

  6. 파일 시스템을 다시 마운트합니다.

    # mount -o remount /MountPoint

    /MountPoint 를 파일 시스템의 마운트 지점으로 바꿉니다.

검증

  1. 파일 시스템의 공간 사용량을 확인합니다.

    # df -hT /MountPoint/
    
    Filesystem                                       Type  Size  Used Avail Use% Mounted on
    /dev/mapper/VolumeGroupName-NewLogicalVolumeName ext4  2.9G  139K  2.7G   1% /MountPoint

    /MountPoint 를 논리 볼륨의 마운트 지점으로 바꿉니다.

  2. LV의 크기를 확인합니다.

    # lvs -o lv_name,lv_size
    
      LV                   LSize
      NewLogicalVolumeName 4.00g
Red Hat logoGithubRedditYoutubeTwitter

자세한 정보

평가판, 구매 및 판매

커뮤니티

Red Hat 문서 정보

Red Hat을 사용하는 고객은 신뢰할 수 있는 콘텐츠가 포함된 제품과 서비스를 통해 혁신하고 목표를 달성할 수 있습니다.

보다 포괄적 수용을 위한 오픈 소스 용어 교체

Red Hat은 코드, 문서, 웹 속성에서 문제가 있는 언어를 교체하기 위해 최선을 다하고 있습니다. 자세한 내용은 다음을 참조하세요.Red Hat 블로그.

Red Hat 소개

Red Hat은 기업이 핵심 데이터 센터에서 네트워크 에지에 이르기까지 플랫폼과 환경 전반에서 더 쉽게 작업할 수 있도록 강화된 솔루션을 제공합니다.

© 2024 Red Hat, Inc.