안녕하세요, 아주 오랜만에 글을 올립니다.. 최소 매달 1개는 해야지 했는데.. 근 두달을 손놨었네요.. 예전에 테스트 했던내용 울궈먹는 차원에서 공유합니다.. ㅎㅎ
질문의 요지는 하나의 Datastore 를 서로 다른 VC 나 아니면 서로 다른 ESXi 클러스터간에 공유해도 되느냐입니다.
결론부터 말씀드리면, 다음과 같습니다.
- 서로 다른 VC 간 Datastore 공유 –> 가능, 그러나 권장하지 않음.
- 같은 VC 내의 서로 다른 ESXi 클러스터간 공유 –> 가능, 문제 없음.
서로 다른 VC 간 Datastore 공유를 권장하지 않는 이유는, Datastore 의 용량 및 모니터링 관련해서 문제가 생기기 때문입니다. 사실 더 정확하게 말씀드리면, 서로 다른 VC 까지 가지 않더라도, 같은 VC 내에서 서로 다른 Datacenter 인경우에도 동일한 사유로 권장하지 않습니다.
상세 설명 갑니다. 테스트 환경은 다음과 같습니다.
VCSA 1번 내에 두개의 DC 가 있고
VCSA 2번 내에 한대의 DC 가 있는 환경입니다.
Datatore 는 Shared_Thick 이라는 이름으로 만들었습니다. 처음에는 이 볼륨이 Thick/Thin 인지에 따라서 차이가 있을수도 있다고 생각하였습니다만, 실제 테스트 결과로는 볼륨자체의 Thin/Thick 여부는 결과와 무관한 것으로 확인되었습니다.
이 Shared_Thick 을 3개의 DC 에서 공유하는 형태로 보시면 되겠습니다.
테스트는 실제로 다른 결과값을 표기하는 것으로 나오구요, 그 이유에 대해서 아래와 같이 설명드리겠습니다.
실제로 UI 상에서 보면 DC 내에서는 같은 이름을 가진 Datastore 를 만들 수 없습니다만, DC 가 다른 경우에는 같은 이름을 써도 보입니다.
그렇지만 곁으로 봤을때는 동일해 보이나, 실제로 vCenter MOB 상에서 보면 두개는 다른 ID 를 가지고 있습니다. (URL 을 말씀드리는게 아닙니다. URL 값은 VMFS 의 UUID 라서 당연히 동일하게 나옵니다.)
이것을 MOB 내에서 확인해보면 다음과 같습니다. Datastore info 의 Mob 의 경로는 mob 접속후 –> content à rootFolder(group-d1) –> ChildEntity 에서 선택 à datastore(데이터스토어 이름 선택) –> Info 클릭
물리적으론 동일한 LUN 이지만, 보시다시피 Datastore 의 Object ID 가 다릅니다.
보시면 uncommitted 숫자도 다른것을 보실 수 있습니다. 이 차이는 왜 발생하느냐,
해당 datastore 에는 DC 1번에서 생성한 Template 이 1개 들어있습니다. 이것을 vCenter UI 상에서 보면 아래와 같이 확인할 수 있습니다.
보시면 DC1번에서 등록한 템플릿(TEST)은 DC2번에서 보이는 Datastore 내에 표시가 안됩니다.
vCenter 가 달라도 마찬가지 입니다. 템플릿뿐만 아니라 VM 도 동일하구요.
위 테스트 결과를 보면 다음과 같은 결론을 내릴 수 있을것 같습니다.
Powercli 나 API 를 통해 Datastore 의 용량을 확인하는 경우 vCenter MOB 내에 있는 값을 return 하는데, 해당값의 계산은 자기의 Inventory 내에 있는 VM / Template 의 용량이나 크기등을 합산하여 산출한다. 따라서 각 DC마다 등록되어있는 VM or Template 의 종류나 숫자가 다르기 때문에 (실제 물리적으로는 동일하게 저장되어있을지라도) uncommitted 값이 다르게 산출된다.
그런 사유로 위와 같은 구성은(DC 간 shared datastore / vCenter 간 shared datastore) 기술적으로는 가능하지만, vCenter 의 Management 범위를 벗어나기 때문에 권고하는 구성이 아닙니다. 권장하는 범위는 최소 Cluster 간 Datastore sharing 으로 보시면 되겠습니다.
좋은 글 너무 감사합니다.