주:

Oracle Linux에서 볼륨 그룹 축소 및 재배치

소개

논리적 볼륨 관리를 통해 사용되지 않는 물리적 볼륨(PV)을 제거하고 전체 볼륨 그룹(VG)을 이동할 수 있습니다. PV를 제거하면 VG의 전체 크기가 축소됩니다.

이 자습서에서는 Oracle Linux Volume Manager 유틸리티와 함께 물리적 볼륨을 제거한 다음 볼륨 그룹을 다른 시스템으로 전송하여 볼륨 그룹을 축소합니다.

목표

필요 조건

다음 구성을 사용하는 두 개의 Oracle Linux 8 시스템:

랩 환경 설정

주: 무료 실습 환경을 사용하는 경우 Oracle Linux Lab Basics에서 연결 및 기타 사용 지침을 참조하십시오.

  1. 아직 연결되지 않은 경우 터미널을 열고 ssh를 통해 ol-node01 인스턴스에 연결합니다.

    ssh oracle@<ip_address_of_instance>
    
  2. 블록 볼륨이 존재하는지 확인합니다.

    sudo lsblk
    

    무료 랩 환경의 출력에는 루트 파일 시스템의 경우 /dev/sda, 데모 볼륨 그룹의 경우 /dev/sdb, 사용 가능한 디스크 /dev/sdc/dev/sdd가 표시되어야 합니다.

  3. 일관된 장치 이름 매핑을 표시합니다.

    무료 실습 환경에서는 연결된 블록 볼륨에 대해 일관적인 장치 이름 경로를 사용합니다.

    ll  /dev/oracleoci/oraclevd*
    

    예제 출력:

    [oracle@ol-node01 ~]$ ll /dev/oracleoci/oraclevd*
    lrwxrwxrwx. 1 root root 6 Jun  9 13:27 /dev/oracleoci/oraclevda -> ../sda
    lrwxrwxrwx. 1 root root 7 Jun  9 13:27 /dev/oracleoci/oraclevda1 -> ../sda1
    lrwxrwxrwx. 1 root root 7 Jun  9 13:27 /dev/oracleoci/oraclevda2 -> ../sda2
    lrwxrwxrwx. 1 root root 7 Jun  9 13:27 /dev/oracleoci/oraclevda3 -> ../sda3
    lrwxrwxrwx. 1 root root 6 Jun  9 13:27 /dev/oracleoci/oraclevdb -> ../sdd
    lrwxrwxrwx. 1 root root 6 Jun  9 13:45 /dev/oracleoci/oraclevdd -> ../sdc
    

    Oracle Cloud Infrastructure에 정의된 일관된 이름 끝은 Linux OS에서 제공하는 디바이스 이름과 일대일 일치하지 않습니다. 이러한 매핑은 나중에 클라우드 콘솔에서 블록 볼륨을 분리하고 연결할 때 필요합니다.

VG에서 PV 제거

볼륨 그룹에서 활성 물리적 볼륨을 제거하기 전에 물리적 볼륨의 데이터 및 논리적 볼륨을 다른 사용 가능한 PV로 이동하십시오.

  1. 물리적 볼륨에서 사용된 디스크 공간을 확인합니다.

    sudo pvs -o+pv_used
    

    예제 출력:

    [oracle@ol-node01 ~]$ sudo pvs -o+pv_used
      PV         VG        Fmt  Attr PSize  PFree  Used  
      /dev/sda3  ocivolume lvm2 a--  45.47g     0  45.47g
      /dev/sdb   labvolume lvm2 a--  49.98g 47.98g  2.00g
    

    출력에는 /dev/sdb PV에서 2g를 사용하는 것으로 표시됩니다.

  2. 볼륨 그룹을 확장합니다.

    볼륨 그룹을 확장하여 다른 물리적 볼륨을 추가합니다.

    sudo vgextend labvolume /dev/sdc
    

    /dev/sbc를 추가하면 원래 /dev/sdb 물리적 볼륨에서 데이터 및 논리적 볼륨 전송을 허용하는 사용 가능한 물리적 볼륨이 제공됩니다.

  3. /dev/sdc 물리적 볼륨의 추가를 확인합니다.

    sudo pvs
    

    예제 출력:

    [oracle@ol-node01 ~]$ sudo pvs
      PV         VG        Fmt  Attr PSize  PFree 
      /dev/sda3  ocivolume lvm2 a--  45.47g     0 
      /dev/sdb   labvolume lvm2 a--  49.98g 47.98g
      /dev/sdc   labvolume lvm2 a--  49.98g 49.98g
    
  4. 기존 데이터 및 논리 볼륨을 새로 추가된 무료 PV로 이동합니다.

    sudo pvmove /dev/sdb /dev/sdc
    

    pvmove 명령을 사용하면 소스 PV의 할당된 물리적 Extent(PE)를 하나 이상의 다른 PV로 이동할 수 있습니다. 대상 PV가 지정되지 않은 경우 전송은 볼륨 그룹에 대해 일반 할당 규칙을 사용합니다. 작업이 중단 없이 온라인으로 완료되고 명령행 출력에 진행률이 표시됩니다.

    자세한 내용은 pvmove(8) 설명서를 참조하십시오.

  5. 이동이 완료되었는지 확인합니다.

    sudo pvs -o+pv_used
    

    예제 출력:

    [oracle@ol-node01 ~]$ sudo pvs -o+pv_used
      PV         VG        Fmt  Attr PSize  PFree  Used  
      /dev/sda3  ocivolume lvm2 a--  45.47g     0  45.47g
      /dev/sdb   labvolume lvm2 a--  49.98g 49.98g     0 
      /dev/sdc   labvolume lvm2 a--  49.98g 47.98g  2.00g
    

    출력에서 /dev/sdc PV는 2g를 사용하고 /dev/sdb는 사용되지 않음을 보여줍니다.

  6. 원래 물리적 볼륨을 해제합니다.

    sudo vgreduce labvolume /dev/sdb
    
  7. 원래 물리적 볼륨이 완전히 사용 가능한지 확인합니다.

    sudo pvs -o+pv_used
    

    예제 출력:

    [oracle@ol-node01 ~]$ sudo pvs -o+pv_used
      PV         VG        Fmt  Attr PSize  PFree  Used  
      /dev/sda3  ocivolume lvm2 a--  45.47g     0  45.47g
      /dev/sdb             lvm2 ---  50.00g 50.00g     0 
      /dev/sdc   labvolume lvm2 a--  49.98g 47.98g  2.00g
    

    볼륨 그룹 이름 labvolume은 더 이상 물리적 볼륨 /dev/sdb과 연관되지 않으며 이제 /dev/sdc와 연관되어 있습니다.

  8. 원래 물리적 볼륨을 제거합니다.

    sudo pvremove /dev/sdb
    

    물리적 볼륨 /dev/sdb는 이제 다른 볼륨 그룹에서 사용할 수 있거나 시스템에서 물리적으로 제거할 수 있습니다.

시스템 간 PV 이동

LVM을 사용하면 전체 볼륨 그룹을 한 시스템에서 다른 시스템으로 이동할 수 있습니다. 이 예에서는 논리적 볼륨이 /u01에 마운트된 labvolume 볼륨 그룹을 ol-node01에서 ol-node02로 이동합니다.

  1. ol-node01에서 파일 시스템을 마운트 해제합니다.

    sudo umount /u01
    
  2. 볼륨 그룹을 비활성화합니다.

    볼륨 그룹을 비활성으로 표시하면 그룹의 논리적 볼륨에 액세스할 수 없으며 변경할 수 없습니다. 이렇게 하면 볼륨 그룹이 비활성화되어 커널에서 알 수 없게 됩니다.

    sudo vgchange -an labvolume
    
  3. 제거할 볼륨을 준비합니다.

    sudo vgexport labvolume
    
  4. 블록 볼륨 장치 경로를 확인합니다.

    다음 단계에서는 볼륨 그룹 labvolume과 연관된 물리적 볼륨 /dev/sdcol-node01 인스턴스에서 제거합니다. 분리할 클라우드 콘솔 내에서 올바른 블록 장치를 선택하려면 PV /dev/sdc과 연관된 블록 장치 경로 이름 oraclevd*를 가져옵니다.

    ll /dev/oracleoci/oraclevd* | grep sdc
    
  5. ol-node01 서버에서 디스크를 제거합니다.

    물리적 서버를 사용하는 경우 시스템을 종료하고 디스크를 분리합니다. 그러나 무료 실습 환경에서는 볼륨을 인스턴스에서 분리해야 합니다.

    이 작업을 수행하는 방법은 여러 가지가 있지만 클라우드 콘솔을 사용합니다.

    1. 클라우드 콘솔에 로그인합니다.

    2. 탐색 메뉴를 열고 컴퓨트를 누릅니다. 컴퓨트에서 인스턴스를 누릅니다.

      탐색 메뉴

    3. 목록에서 ol-node01 인스턴스를 누릅니다.

    4. 페이지 왼쪽 하단의 리소스에서 연결된 블록 볼륨을 선택합니다.

      리소스 메뉴

    5. 물리적 볼륨 /dev/sdc과 연관된 블록 장치 이름 옆에 있는 세 개의 점 메뉴를 사용하고 분리를 선택합니다.

      볼륨 분리

      중요: 선택할 블록 장치 이름은 위의 블록 볼륨 장치 경로 확인 단계에서 보고된 장치 경로와 일치하는 장치입니다. 이 이름은 제공된 스크린샷에서 선택한 이름과 일치하지 않을 수 있습니다.

    6. 팝업 창에서 Ok 버튼을 선택하고 볼륨이 분리될 때까지 기다립니다.

    7. 페이지 상단에 있는 이동 경로를 사용하고 인스턴스를 선택합니다.

      Breadcrumb 메뉴

    8. 목록에서 ol-node02 인스턴스를 선택합니다.

    9. 왼쪽 하단의 리소스에서 연결된 블록 볼륨을 선택합니다.

    10. Attach block volume 버튼을 누릅니다.

    11. 팝업 창에서 ol-node01에서 제거된 블록 볼륨을 연결합니다.

      Volume에 대해 ol-node01 인스턴스에서 이전에 분리된 블록 장치 Name을 선택합니다.

      그런 다음 Device path에 대해 oraclevdb, Attachment type에 대해 Paravirtualized, Access에 대해 Read/write를 선택합니다.

      볼륨 설정 첨부
      유형 설정 첨부

    12. Attach 버튼을 누르고 볼륨이 연결될 때까지 기다립니다.

  6. 새 터미널을 열고 ssh를 통해 ol-node02 인스턴스에 연결합니다.

    ssh oracle@<ip_address_of_instance>
    
  7. 새 블록 볼륨이 존재하는지 확인합니다.

    sudo lsblk
    

    무료 랩 환경의 출력에는 루트 파일 시스템의 경우 /dev/sda, 볼륨 그룹의 경우 /dev/sdb가 표시되어야 합니다.

  8. 연결된 볼륨을 스캔합니다.

    연결된 LVM 물리적 볼륨을 인식하기 위해 초기 스캔을 실행합니다.

    sudo pvscan
    

    예제 출력:

    [oracle@ol-node02 ~]$ sudo pvscan
      PV /dev/sdb     is in exported VG labvolume [49.98 GiB / 47.98 GiB free]
      PV /dev/sda3   VG ocivolume       lvm2 [45.47 GiB / 0    free]
      Total: 2 [<95.46 GiB] / in use: 2 [<95.46 GiB] / in no VG: 0 [0   ]
    

    스캔 시 PV 장치 /dev/sdbol-node01의 볼륨 그룹 내보내기가 포함되어 있습니다.

  9. 볼륨 그룹을 가져옵니다.

    sudo vgimport labvolume
    
  10. 볼륨 그룹을 활성화합니다.

    sudo vgchange -ay labvolume
    
  11. 파일 시스템을 마운트합니다.

    sudo mkdir /u01
    sudo mount /dev/labvolume/data /u01
    
  12. 파일 시스템에서 공간을 확인합니다.

    df -h
    

    예제 출력:

    [oracle@ol-node02 ~]$ df -h
    Filesystem                  Size  Used Avail Use% Mounted on
    ...
    /dev/mapper/labvolume-data  2.0G  6.0M  1.8G   1% /u01
    

자세한 내용:

추가 학습 자원

docs.oracle.com/learn에서 다른 실습을 살펴보거나 Oracle Learning YouTube 채널에서 보다 무료 학습 컨텐츠에 접근할 수 있습니다. 또한 education.oracle.com/learning-explorer을 방문하여 Oracle Learning Explorer가 됩니다.

제품 설명서는 Oracle Help Center를 참조하십시오.