LVM: 논리 볼륨을 사용하는 방법은 무엇입니까?

LVM: 논리 볼륨을 사용하는 방법은 무엇입니까?

Proxmox 5.4를 설치했는데 이것이 논리 볼륨을 설정하는 방법입니다.

 --- Logical volume ---
  LV Path                /dev/pve/swap
  LV Name                swap
  VG Name                pve
  LV UUID                AmJwba-alii-Uqkw-XHAy-ka2g-EIeQ-l7jlw3
  LV Write Access        read/write
  LV Creation host, time proxmox, 2020-04-24 16:38:41 +0100
  LV Status              available
  # open                 2
  LV Size                8.00 GiB
  Current LE             2048
  Segments               1
  Allocation             inherit
  Read ahead sectors     auto
  - currently set to     256
  Block device           253:0

  --- Logical volume ---
  LV Path                /dev/pve/root
  LV Name                root
  VG Name                pve
  LV UUID                Wd0A6l-qmKA-EUz1-oxzZ-nILJ-FGfe-xtEuji
  LV Write Access        read/write
  LV Creation host, time proxmox, 2020-04-24 16:38:41 +0100
  LV Status              available
  # open                 1
  LV Size                96.00 GiB
  Current LE             24576
  Segments               1
  Allocation             inherit
  Read ahead sectors     auto
  - currently set to     256
  Block device           253:1

  --- Logical volume ---
  LV Name                data
  VG Name                pve
  LV UUID                e20Iqk-sRI2-KsGF-FW5b-KUtR-Pp5C-j6CJVe
  LV Write Access        read/write
  LV Creation host, time proxmox, 2020-04-24 16:38:42 +0100
  LV Pool metadata       data_tmeta
  LV Pool data           data_tdata
  LV Status              available
  # open                 0
  LV Size                794.79 GiB
  Allocated pool data    0.00%
  Allocated metadata     0.04%
  Current LE             203466
  Segments               1
  Allocation             inherit
  Read ahead sectors     auto
  - currently set to     256
  Block device           253:4

"data"라는 LV를 활용하고 싶지만 연결된 경로가 없기 때문에 여기에 파일 시스템을 만드는 방법을 모르겠습니다. 장치에 매핑하려면 다른 LVM 명령이 필요합니까?

답변1

LV data인 것 같습니다.유선형 풀 LV. VG와 최종 LV 사이의 추가 레이어입니다. 추가 기능을 허용합니다(예: 초과 프로비저닝 또는 효율적인 쓰기 시 복사(더 많은 추가 스냅샷이 생성되어도 성능이 저하되지 않음)).

이에 대한 광범위한 문서가 있습니다. 예를 들어얇은(7)이 기능을 설명하는 맨페이지:

표준 lvm(8) 논리 볼륨(LV)의 블록은 LV가 생성될 때 할당되지만씬 프로비저닝된 LV의 블록은 쓰기 시 할당됩니다.. 따라서 씬 프로비저닝된 LV에는 가상 크기가 부여되며,그러면 물리적으로 사용 가능한 스토리지보다 훨씬 클 수 있습니다.. 씬 프로비저닝 LV에 제공되는 물리적 스토리지의 양은 필요에 따라 나중에 늘릴 수 있습니다.

표준 LV의 블록은 생성 중에 볼륨 그룹(VG)에서 할당되는 반면, Thin LV의 블록은 사용 중에 특수한 "thin pool LV"에서 할당됩니다. 씬 풀 LV에는 물리적 스토리지 블록이 포함되어 있으며 씬 LV의 블록은 씬 풀 LV의 블록만 참조합니다.

씬 풀 LV를 생성하려면 먼저 씬 풀 LV를 생성해야 합니다.. Thin Pool LV는 두 개의 표준 LV, 즉 Thin LV의 블록을 보유할 빅 데이터 LV와 메타데이터를 보유할 두 번째 메타데이터 LV를 결합하여 생성됩니다. 메타데이터는 각 Thin LV에 속하는 데이터 블록을 추적합니다.

뒤에 숨겨져 있는데 빅데이터 LV는 data_tdata, 메타데이터 LV는 입니다 data_tmeta. 이를 표시하려면 lvs --allor lvdisplay --all(직접 사용되지 않음을 표시함 ) 을 사용할 수 있지만 Internal LV Name잊어버릴 수도 있으며 실제로 알 필요가 없습니다.

그럼에도 불구하고 이를 사용하는 데 사용할 수 있는 문서가 많이 있습니다. 예를 들어빨간 모자:

다음 명령은 -T명령 옵션을 사용하여 lvcreateThinvolume이라는 씬 볼륨을 씬 풀에 생성합니다 vg001/mythinpool. 이 경우 가상 크기를 지정하고 지정하는 볼륨은 해당 볼륨을 포함하는 풀보다 더 큰 가상 크기를 갖습니다.

# lvcreate -V 1G -T vg001/mythinpool -n thinvolume

따라서 귀하의 경우에는 100TB의 씬 프로비저닝 논리 볼륨을 생성하십시오(오버 프로비저닝 기능을 보여주기 위해).

lvcreate -V 100T -T pve/data -n bigthinvolume

그런 다음 다른 LV처럼 사용되지만 스냅샷과 같은 고급 기능에는 약간의 차이가 있습니다.

일단 데이터%(또는 드물게 메타%)인 경우 표시된 대로 과잉 프로비저닝을 주의하십시오.lvs씬 풀에서 100%에 도달하면 블록 할당을 유발하는 모든 쓰기가 실패하고 상위 계층(씬 LV)에서 I/O 오류가 발생합니다. 이 문제가 발생하기 전에 사용 가능한 실제 크기를 늘려야 합니다.

Debian 기반 시스템에서 이 패키지는thin-provisioning-tools아마도 설치되어야 하며 시작 시를 포함하여 일부 씬 프로비저닝 고급 기능을 처리해야 할 수도 있습니다. 이것이 Proxmox에 어디에 적용되는지 모르겠습니다.

답변2

LV "데이터"는 Proxmox VM에 유지되어야 합니다. "데이터"에 가상 머신을 생성하고 논리 볼륨을 다시 확인해보세요. 그런데 최신 버전의 Proxmox를 사용하고 있지 않습니다.

관련 정보