IT/AIX&Linux

[하루 5분 AIX] LVM 과 Device 1부

뜻밖의 행복 2014. 1. 21. 19:24
반응형

안녕하세요?

뜻밖의 행운입니다.

 

예전에 LVM에 대해서 잠깐 알아본적이 있습니다.

logical volume manager의 약자인것도 알았습니다.

 

원래대로라면 100부가 훨씬 넘게 진행 되어야 할 LVM 우선은 줄일곳은 줄이고 

더 알아봐야할 곳을 더 알아보면서 총 몇부가 나올지 보겠습니다.

 

LVM을 이번에 아예 끝내버리도록 하지요 ^^

 

LVM의 각 구성요소와 구성요소들의 관계 그리고 LVM에서 많이 쓰이는 명령어

약 150~200개 되는데요 명령어를 다 외우실필요는 없으나 명령어의 기능은 꼭 알아두시길

권해드립니다. 그래야만 어떤 일이 있었도 아 그런 기능이 있는 명령어가 있었으니

그것을 쓰면 되겠다 하시고 명령어에 적절한 옵션을 주셔서 사용하실 수 있으시니까요

 

그 후에 Mirror와 Striping 의 정책과 상세 옵션에 대해서 시나리오 형식으로 알아보고

HACMP에서 사용할 concurrent VG 의 특징과 구성법

(이건 봐서 HACMP 를 먼저 간략히 다루고 다시 LVM을 이어가는 형식으로)

그리고 JFS, LVM에서의 성능향상을 위한 튜닝

네 LVM이 AIX의 절반이다 라는 말이 결코 과장이 아니지요?

 

빨리 시작하겠습니다.

 

1.  LVM 뭐 때문에 필요한가?

 

AIX에서 LVM이 무슨 기능을 하는지를 살펴보면 왜 필요한지를 간접적으로 알 수 있습니다.

LVM은 물리적 하드디스크의 저장 공간을 논리적 저장공간과 mapping 하여 저장 공간을 유연하게

사용하게끔 하는 것이 주 기능입니다.

즉 LVM이 있기에 윈도우 처럼 하나의 디스크를 여러 파티션으로 나눠서 쓰기도 묶어서 쓰기도 하는 것이지요

 

 

 

 

그림을 보시면 LVM은 응용 계층과 물리 계층 사이에 존재 하고 있음을 알 수 있습니다.

응용계층에 있는 어플리케이션들이  직접 물리 계층에 있는 디스크에 접근하지 않아도 되는 것이지요

좀 생각을 해보면 응용 계층에서 물리 계층으로 바로 접근하고 컨트롤 하는 것이 아무래도 논리 계층을

거치는 것보다 속도면에서 유리 할 듯 합니다.

사실 실제로도 그렇습니다.

성능면에서는 불리 하나 아무래도 이점이 많기에 LVM을 사용하게 됩니다.

(몇몇 응용프로그램에서는 직접 물리적 디스크를 관리하기도 합니다.)

 

 


LVM 사용시 이점은 물리적 저장 공간을 유연하게 사용할 수 있고 가용성을 늘리고 때로는 성능향상도 있으며

응용프로그램 개발시 응용프로그램이 물리적 디스크 구조까지 신경 쓸 필요가 없다는 것입니다.


유연하게 사용가능하다고 자꾸 그러는데 구체적으로 어떻게 유연하게 사용 가능하다는 것인가요?

성능향상은 갑자기 무슨 뜻이구요?


네~ 

바로 지금부터 그 의문을 풀기위해 하나 둘씩 알아보도록 하겠습니다.



 2. LVM의 구성 요소

 


 

 

예전 LVM 시간에 VG PV LV PP LP 에 대해서 알아 봤고 이들의 관계에 대해서도 알아 봤습니다.

이들 간의 관계를 좀 더 이해하기 쉽게 규칙들을 알아보겠습니다.


위 그림에서 왼쪽은 일반적인 LV와 PV의 관계로 각각 LP와 PP간의 1:1 대응을 하는 것을 알 수 있습니다.

오른쪽은 한 LP가 두 개의 PP와 대응 되는 것을 미러 구성인것을 알 수 있지요


LP가 뭐고 PP가 뭔지는 알고 계시겠지요?

모르시면 여기 AIX 강의 LVM 기본편을 다시 한번 봐주세요 ^^


그러면 실제로 AIX상에서는 PV와 LV가 어떻게 보이고 PP와 LP는 어떻게 보일까요?


우선 그전에 VG와 PV의 관계 규칙에 대해 간단히 살펴 볼겠습니다.


 - 최소 하나 혹은 여러개의 PV로 VG를 만들 수 있습니다.

 - 여러 VG가 하나의 PV를 공유해서 사용할 수 없습니다.

 - 각 PV들은 시스템에서 언제가는 VG의 이부가 될 것입니다.

 - LVM과 PV는 독립적입니다. 따라서 다른 각기 다른 PV들(용량, 디스크 속도, 구조 등)로 VG를

    구성 할 수 있습니다.   


규칙을 항상 염두하시고 실제 AIX 안에서 각자의 관계들을 이해해보도록 하겠습니다.



자주 사용하게될 명령어중에 하나인 lsvg로 rootvg상태를 확인해보았습니다.

그랬더니 LV name 붙해서 lp, pp, pv 등등 여러 정보가 보입니다.

지금 위의 정보에서 여러분은 무엇을 알 수 있으십니까?

우선 rootvg는 2개의 PV로 구성이 되어 있지만 모든 LV가 미러 구성은 아닙니다.

그 이유는 LP와  PP갯수가 똑같기 때문이지요 하지만 이 중에서 단 1개의 LV가 미러 구성인것이 보입니다.

바로 loglv00 이네요 어떻게 알 수 있지요?

넵 Lp는 1개인데 pp가 2개 인것으로 보아 1:2 로 미러 구성인것을 알 수 있습니다.


음 그런데 같은 rootvg 안에 있는건데 어떤 LV는 PV를 1개 가지고 있고 또 어떤 것은 2개를 가지고 있네요?

무슨 의미일까요?


네 바로 LV 1개가 PV 2개에 걸쳐서 구성되어있다는 것입니다.

성능에 있어 조금은 유리 하겠으나 PV 1개만 이상이 있어도 해당 LV는 사용하지 못합니다.

성능에 있어 왜 유리한지는 여기서 한 2~3부 뒤로 가면 나옵니다. ^^

하드 디스크의 물리적 구조를 잘 아시는 분이라면 아마 아셨겠지요?


3. 재미있고 엉뚱한 실험 하나?



한가지 실험을 해보도록 하겠습니다.

PV 1개로 미러 구성이 가능할까요?

(아 이글을 보시는 분들은 제가 지금 RAID를 알고 있다는 가정하에 설명중입니다.)


미러 구성은 똑같은 정보를 가진 하드디스크 2개를 만들어서 1개가 고장나도 데이터를 잃지 않게 하는 

구성입니다.


그런데 PV1개로 미러를 구성이 가능할지?

되는지 안되는지 한번 실험을 해보겠습니다.


이 실험으로 아마 LV와 PV 관계에 대해서 좀더 이해가 될 것입니다.


lsvg -l rootvg 명령어 그림에서 우리는 hd8을 봤을 때 LP PP PV가 모두 1로 

미러 테스트하기에 딱인 LV인것을 알 수 있습니다.


lslv -m hd8 명령어로 hd8이 hdisk0 이라는 PV에 위치 하고 있음을 알 수 있네요 

그러면 hd8을 미러 구성을 해보겠습니다.


LV단위의 미러는 smitty mklvcopy 로 합니다.


 

 

NEW TOTAL number of logical partition은 미러 구성이니까 2로 수정합니다.

자 이제 Enter를 치면 미러가 될까요? 안될까요?


뜻밖의 행운이 Enter 치고 여러분게 그 이유를 설명하려는 순간

다른 종류의 에러가 떠서 구성이 안됐습니다;




lspv -p hdisk0 으로 hdisk0을 살펴 보았습니다.

hd8은 Center에 존재하고 있었네요 

그것은 그거고 왜 hdsk0에 hd8 미러 구성이 되지 않았을까요?


답은 지금 위 그림에 나와있습니다.

위 테스트서버가 제 테스트 서버가 아니라 rootvg를 제 임의대로 수정해서 다시 해볼 수가 없네요 ㅠ

다음 시간에 LV를 같은 PV내에서 미러 구성이 되는지 다시 한번 실험하고 그 결과와 이유를 설명 드리겠습니다.


우선 지금은 hdisk0에서 미러 구성이 되지 않은것은 

여유 PP가 전혀 없기 때문입니다. 1번 부터 546번 PP까지 데이터가 다 들어있지는 않지만 

각 LV들이 여기는 내구역이다 하고 차지하고 있어서 새로 LV를 만들 공간이 없어서 되지 않았던 것입니다.


그런 다음 실험은 여유PP가 있는 곳에서 실험하겠습니다.

반응형