
LVM을 사용하여 파티션된 대용량 드라이브가 있습니다. 하나의 세그먼트를 루트 파일 시스템에 할당하고 다른 여러 세그먼트를 다른 파일 시스템에 할당합니다. 그런 다음 루트 파일 시스템에 더 많은 공간을 추가하려고 하므로 할당되지 않은 끝 부분에서 다른 세그먼트를 잘라서 추가합니다(루트 파일 시스템이 두 개의 분리된 세그먼트로 구성됨을 의미).
최근에 우리는 연속되지 않은 루트 볼륨으로 인해 발생할 수 있는 일부 I/O 성능 문제를 경험했습니다. 성능 향상을 위해 루트 볼륨이 (인접) 세그먼트가 되도록 몇 가지 항목을 이동하는 것을 고려하고 있습니다(이렇게 하면 항목에 더 쉽게 액세스할 수 있다는 생각입니다).
또 다른 견해는 LVM이 이미 이 모든 것을 처리했으며 영향을 미치지 않을 것이라는 것입니다(드라이브 레이아웃을 그래픽적으로 더 컴팩트하게 만드는 것 외에는).
두 권의 책에 대해 지불할 수 있는 벌금은 얼마입니까?
답변1
연속되지 않은 PE 블록을 동일한 LV에 할당하는 것은 LV 증분을 매우 작게 만들고 LV를 여러 번 늘리는 등(동시에 많은 LV에 대해 동일한 작업을 수행하는 등) 정말 이상한 작업을 수행하지 않는 한 성능에 눈에 띄는 영향을 미치지 않아야 합니다. 동일한 VG의 작업) - 이로 인해 많은 조각화가 발생할 수 있습니다.
즉, LVM을 포함한 모든 볼륨 관리 시스템을 사용하면 순차적일 수도 있는 조각을 읽을 수 있지만 여기서는 그렇지 않다고 생각합니다. 파일 시스템이 연속되지 않은 두 개의 비연속 범위 할당으로만 구성된 LV에 있는 경우 인식할 수 있는(측정할 수 없는) 문제는 확실히 발생하지 않습니다.
이 LV에 대한 두 개의 할당이 연속적이라는 보장은 없지만 VG의 할당되지 않은 PE가 단편화되지 않는 한 연속될 것입니다. (동일한 VG에 LV를 자주 추가하고 삭제하는 경우에만 발생합니다.)
이것이 비용 효율적이라면 파일 수준 백업을 수행하고 PV에서 기본 VG를 다시 빌드하여 LV 조각 모음을 고려할 수 있습니다.
답변2
논리 볼륨을 연결되지 않은 여러 물리적 확장 영역으로 분할하면일부머리 위로 머리가 가운데 틈을 찾아야 하기 때문이다. 그러나 단일 조회의 오버헤드는 작으므로 실제로는 볼륨이 두 조각으로 분할되는 것을 눈치채지 못할 것입니다. 1000개 이상의 청크로 분할되면 다음과 같은 형태로 변하기 시작할 수 있습니다.소량문제지만 현실적으로 그렇게까지 나빠질 수는 없습니다.