나는 수년 동안 사용해 온 RAID 배열에서 실행되는 LVM이 있는 젠투 서버를 가지고 있습니다. 최근에 LVM을 2.02.109로 업그레이드했는데(이전 버전이 기억나지 않음) 업그레이드하는 동안 다음 메시지를 받았습니다.
* Make sure to enable lvmetad in /etc/lvm/lvm.conf if you want
* to enable lvm autoactivation and metadata caching.
설정을 통해 use_lvmetad = 1
활성화 할 수 있다는 것을 알고 있습니다 /etc/lvm/lvm.conf
.
그런데 왜 그런 기능이 필요한가요? 내 이해는 LVM 도구가 해당 정보를 얻기 위해 볼륨을 스캔할 필요가 없도록 LVM 상태를 캐시에 저장하기 위해 udev 규칙과 함께 사용된다는 것입니다. 이 기능의 이점을 누릴 수 없는 것이 단지 내 작은 배열인가요? 어떤 상황에서 이 기능을 사용하고 싶거나 사용해야 합니까?
답변1
~에서이 링크:
일반적으로 각 LVM 명령은 디스크 스캔을 실행하여 관련된 모든 물리 볼륨을 찾고 볼륨 그룹 메타데이터를 읽습니다. 그러나 메타데이터 데몬이 실행 중이고 활성화된 경우 이 비용이 많이 드는 스캔을 건너뛸 수 있습니다. 이렇게 하면 특히 디스크가 많은 시스템에서 많은 I/O를 절약하고 LVM 작업을 완료하는 데 필요한 시간을 줄일 수 있습니다.
따라서 이를 실행하여 LVM 관리 및 상태 작업의 성능을 향상시킬 수 있지만 시작 성능과 복잡성이 증가합니다. 시스템에 디스크가 많을수록 성능 향상이 커집니다.
답변2
설명하다
~에서lvmetad 매뉴얼 페이지:
lvmetad는 LVM의 메타데이터 캐싱 데몬입니다. 이 데몬은 udev 규칙(lvmetad를 사용할 때 LVM이 제대로 작동하려면 설치해야 함)으로부터 알림을 받습니다. 이러한 알림을 통해 lvmetad는 시스템에서 사용 가능한 볼륨 그룹의 일관된 최신 이미지를 얻을 수 있습니다. 기본적으로 LVM은 실행 중이더라도 lvmetad를 사용하지 않습니다. lvm.conf(5)를 참조하십시오.
이 질문을 자세히 살펴보면 또 다른 정의가 필요합니다. 위키피디아상태:
저널링 파일 시스템은 로그(일반적으로 파일 시스템의 개인 영역에 있는 순환 로그)의 변경 사항을 주 파일 시스템에 커밋하기 전에 추적하는 파일 시스템입니다. 시스템 충돌이나 정전이 발생하는 경우 이러한 파일 시스템은 더 빨리 온라인으로 돌아올 수 있으며 손상될 가능성이 적습니다.
추리
OP는 이미 이점을 알고 있으므로 LVM을 자세히 설명하지 않겠습니다. 그럼 일지가 추가된 이유를 간단히 설명하겠습니다. 이전 버전의 LVM에는 로그 데몬이 없었습니다. 즉, 시스템이 충돌할 경우 사용 가능한 유일한 로그는 물리적 볼륨(하드 디스크)에 있었습니다. 이는 논리 볼륨이 여러 물리 볼륨에 걸쳐 있는 논리 볼륨 그룹의 여러 확장 영역에 걸쳐 있을 때 문제를 일으킬 수 있습니다.
로그 트랜잭션의 절반이 하나의 물리 볼륨에 존재하고 나머지 절반이 다른 물리 볼륨에 존재하는 경우,트랜잭션 로그는 두 물리 볼륨 모두에 변경 사항을 커밋할 수 없습니다. 물리 볼륨은 볼륨 그룹의 일부임을 모르기 때문입니다., 트랜잭션 로그는 물리적 볼륨에만 존재하기 때문입니다.
여기서 새로운 데몬이 작동하게 됩니다. 각 물리 볼륨에 대한 로그 로그를 생성하는 대신 이제 LVM은 로그 로그를 생성하고 볼륨 그룹에 로깅에만 사용되는 섹션을 생성할 수 있습니다. 이렇게 하면 볼륨 그룹 수준에서 전체 트랜잭션 로그를 찾아 재생할 수 있습니다.