2018.01.06 16:24

[ETC] Intel CPU 버그에 의한 취약점에 대해서

연초부터 심각한 버그로 업계가 들끓고 있네요. :)


보안 취약성에 대해 표준화를 추진하는 CVE (Common Vulnerabilities and Exposures)로 아래의 취약성이 공개되었죠. 취약성의 내용은 CPU 아키텍쳐 버그에 대한 것입니다.



CVE-2017-5753과 CVE-2017-5715는 별명 "Spectre", CVE-2017-5754는 "Meltdown"란 별명으로 둘 다 심각한 버그라고 합니다.


"Meltdown"은 1995년 이후 릴리스된 Intel CPU의 모든 세대가 버그의 영향을 받을 수 있다고 하며 이 버그로 인해 커널 메모리의 정보가 악의를 가진 유저에 의해 참조할 수 있다고 합니다. 이 문제는 CPU 아키텍쳐의 문제이기 때문에 백신이나 암호화로도 취약점을 막을 수 없다고 하는군요. ("Meltdown"は은 AMD사의 CPU에서는 영향이 보고되지 않고 있다고 합니다)


"Spectre"는 임의의 프로그램으로부터 유저 프로그램의 정보를 참조할 수 있는 버그라고 합니다. 둘다 심각한 버그지만 "Meltdown"이 훨씬 문제인거 같네요.


버그도 문제이지만, 버그를 수정할 패치를 적용후 CPU의 성능이 최대 30% 저하되는 검증 결과가 보고되어 파문이 커지고 있으며 Intel사가 버그에 대해 "타사의 CPU에서도 발생할 수 있으며 수정 패치 적용후 성능이 저하되는 문제도 일반 유저에게는 그다지 큰 영향을 끼치지 않는다"라고 발표했습니다만, 반응은 잠잠해지질 않네요.


취약성의 대상이 과거 20년간 릴리스된 모든 CPU이기 때문인지 그 여파는 거대한 듯, Google사나 Microsoft사、Amazon사、RedHat사 등 업계의 대표 기업들이 속속 내용을 공개해고 있습니다.


VMware사도 본 취약성에 대한 보안 권고를 공개하였고 "Spectre"에 대한 패치를 릴리스 했습니다. "Meltdown"에 대해서는 아래의 코멘트만 발표, 수정 패치의 릴리스는 없습니다.


A third issue due to speculative execution, Rogue Data Cache Load (CVE-2017-5754), was disclosed along the other two issues. It does not affect ESXi, Workstation, and Fusion because ESXi does not run untrusted user mode code, and Workstation and Fusion rely on the protection that the underlying operating system provides.


ESXi는 신뢰하지않는 유저 모드의 코드는 실행하질 않고, Workstation과 Fusion은 OS가 제공하는 보호기능에 의존하고 있기 때문에 "Meltdown"의 영향은 받질않는다는거 같네요. :)


Nutanix사 역시 1월 8일 패치 릴리스의 타임라인을 공개하겠다고 발표했습니다.


버그에 대상이 광범위하기 때문에 한동안 주의깊게 이용중인 솔루션, 하드웨어 벤더들의 대응상황을 체크하는 것이 좋을 듯 싶습니다.




Trackback 0 Comment 0
2018.01.03 17:33

[VMware] vSAN 팁 몇가지

이미 10,000사 이상에서 도입되었으며 기세가 점점 거대해지는 vSAN입니다만 고객과 얘기를 해보면 의외로 vSAN에 대한 정보가 부족한 것 같습니다. 왜냐하면 vSAN이란 솔루션의 특징은 알고 있어도 실제로 도입할 경우나 도입후 운용해나갈 경우 주의해야될 점들에 대해서는 잘모르는것 같았기 때문입니다.


따라서 도입시나 운용시 조금은 주의가 필요한 내용을 정리해 봤습니다.(이미 알려진 내용일지 모르겠습니다)


● 하나의 RAID Controller에서는 VMFS과 vSAN FS을 구성할 수 없습니다.

아마 초기 버전의 vSAN 구성에서 있을 수 있는 경우일지 모르겠습니다만, 최근에도 지원 의뢰가 있는거 같습니다. 하나의 RAID Controller상에서 VMFS과 vSAN FS을 구성하는 것은 지원을 받을 수 없습니다. 하나의 RAID Controller에 ESXi용 RAID 1과 vSAN용 non-RAID를 구성하는 것은 피해야 됩니다. 

vSAN을 구성할 경우 ESXi의 부트 디바이스로 내장 SD카드나 SATADOM 같은 플래시 디바이스를 이용하는 것이 일반적이라고 할 수 있습니다만 스크래치 파티션을 로컬 데이터스토어에 보존하기위해 하드 디스크에 ESXi를 설치하고자 할 때는, ESXi용으로 RAID Controller를 준비, vSAN용 RAID Controller를 추가로 준비해줘야 됩니다.


● 부트 디바이스로 내장 SD 카드를 이용할 경우, 스크래치 파티션을 고려해야 됩니다.

내장 USB 메모리나 SD 카드에 ESX를 설치할 경우 로그는 RAM 디스크상에 보존됩니다. 단지 RAM 디스크상에 보존되기 때문에 ESXi 호스트를 재기동하면 로그는 사라지고 이로인해 장해의 원인 규명이 힘들어지게 됩니다.


이를막기위해서는 스크래치 파티션을 구성할 필요가 있습니다만, vSAN에서는 ① ESXi 호스트의 로컬 데이터스토어를 이용하든지 ② NFS의 디렉토리를 호스트별로 준비하는 방법뿐입니다. 단지 ①의 경우는 위의 팁에서 소개를 했듯이 RAID Controller를 추가로 준비해야되죠. ②역시 NFS 디렉토리를 준비해줘야 됩니다.


지금까지의 경험상, 스크래치 파티션 때문에 ①이나 ②를 준비하는 사례는 거의 없었습니다. 때문에  Remote Syslog와 Network Dump를 구성하는 방법이 가장 무난할지 모르겠습니다. 단지 이것도 모든 로그를 보존할 수 있는 것이 아니기 때문에 vSAN을 도입할 경우는 돈을 들여 스크래치 파티션을 준비하든지 syslog 만을 준비하여 최소한의 로그라도 보존을 하든지를 고려해야될 필요가 있습니다. 개인적으로는 vRealize Log Insight에 로그를 전송하는 것을 추천하고 싶네요. 

 


● vsanDatastore의 미사용영역을 항상 30% 확보하도록 합니다.

운용시작후 vsanDatastore의 사용영역이 전체영역의 80%를 넘지않도록 주의하는 것은 널리 알려져 있습니다. (SIer에 따라서는 70%를 이용가능한 최대영역으로 안내를 하는 경우도 있죠)

이와 비슷한 내용일지 모르겠습니다만 vsanDatastore의 미사용영역은 항상 30% 정도 확보해두는 것을 추천합니다. FTT가 다른 복수의 스토리지 정책을 이용는 환경에서 스토리지 정책을 변경할 경우, 일시적으로 변경전의 스토리지 정책과 변경하는 스토리지 정책이 공존하게 됩니다.


예를들어 가상머신에 FTT=1의 스토리지 정책이 적용되어있다고 하죠 이 가상머신의 스토리지 정책을 erasure coding의 스토리지 정책으로 변경할 경우, 데이터의 변환이 끝날 때까지 RAID 1와 RAID 5가 공존하게 됩니다. RAID 5의 스토리지 정책으로 변경중 vsanDatastore의 영역이 부족하면 정책 변경은 실패합니다.


따라서 vsanDatastore의 미사용영역은 항상 30% 정도 남겨두도록 하는 것을 추천합니다.



● 최소 구성은 3 호스트, 하지만 4 호스트를 추천합니다.

네, 알고 있습니다. vSAN의 최소 구성의 호스트 수는 3 호스트입니다.(ROBO나 2 호스트 다이렉트 접속 구성을 제외) 지원도 문제없이 받을 수 있습니다.


하지만 3 호스트면 가상머신의 가용성 유지에 불안한 점이 있습니다. 특히 운용중의 리스크가 커지게 됩니다. 3 호스트 구성시는 1 호스트를 유지보수하더라도 FTT=1를 충족할 수 없게되어 가용성을 확보할 수 없게 되기 때문이죠.


1 호스트 유지보수중 다른 호스트에 장해가 발생할 경우는 거의 드물다고요? 이렇게 생각하시는 분들, 장해가 발생한 뒤에는 늦습니다. 저같으면 싫습니다. 매번 두근두근하면서 패치 적용하는 건... 흐흐 :)


호스트 장해에 대한 대비는 물론이지만, 운용시 유지보수의 편리성을 생각한다면 vSAN 클러스터는 최소 4 호스트 구성을 추천합니다.


 


● “중복제거와 압축” 기능의 유효시, 디스크 단위의 삭제는 않됩니다.

All-Flash 모드의 vSAN을 도입하여 ”중복제거와 압축”기능을 검토하고 계신 분들은 “중복제거와 압축” 기능은 디스크 그룹 단위로 구성된다는 것에 주의하시길... 디스크 그룹 단위로 구성이 되기 때문에 capacity SSD에 장애가 발생하면 해당 디스크 그룹을 일단 삭제, SSD 교환후 새롭게 작성을 해야됩니다.


운용을 시작하여 일정 시간이 경과후 발생하면 의외로 번거로운 문제가 될 수 있으므로 "중복제거와 압축"기능을 검토할 경우는 운용면에서의 부하도 충분히 검토를 하시길 바랍니다.


● vSAN을 구성하면 ESXi 호스트의 reboot는 시간이 걸립니다.

거의 포스팅에서도 소개를 했습니다만, vSAN의 호스트는 부팅시 vSAN 메타 데이터 테이블을 재작성합니다. (KB에 의하면 디스크 그룹당 최장 1시간이 걸릴 수도 있다고 합니다)

때문에 non-vSAN의 ESXi 호스트보다 시작에 시간이 걸립니다. 기동에 실패하여 에러가 표시되기 전까지는 인내심을 갖고 기다리기 바랍니다.


ESXi 호스트의 시작이내 재시작시에는 DCUI나 원격 콘솔에서 부팅 프로세스를 확인하는 것을 추천합니다.


● 가동중에 디스크를 뽑는 것은 장해 테스트라고 할 수 없습니다.

vSAN 도입직후 대부분 장해 테스트를 하실겁니다. 네트워크나 전원, 혹은 호스트 장해 테스트를 하시겠죠. 물론 디스크(cache 티어나 capacity 티어) 장해에 대해서도 테스트를 하실겁니다. 단지 디스크는 다른 장해 테스트와는 달리 간단히 장해 상태를 만들 수 없죠. 결국 가동중인 디스크를 뽑는 것이 일반적으로 이루어지고 있지 않을까 합니다.(과거에 저도 장해 테스트로 가동중인 디스크를 뽑는 방법을 소개한 적이 있습니다... )


이건 absent 상태가 되어 제대로 된 장해 테스트라고 할 수 없습니다.(물론 이 상태에서 ClomRepairDelay의 타임아웃이 되면 데이터의 동기가 실행되므로 결과적으로는 같을지 모르겠습니다...)


그렇다면 어떻게 해야되느냐...? Failure Testing을 이용하면 됩니다.


VMware 공식 문서인 이 Failure Testing에는 호스트 장해, 디스크 장해시의 동작에 대한 설명과 함께 디스트 장해를 발생시킬 수 있는 방법도 소개하고 있습니다.

/usr/lib/vmware/vsan/bin/vsanDiskFaultInjection.pyc


위의 명령어를 이용하면 간단히 디스크를 Permanent Error 상태로 만들 수 있습니다. 장해 테스트를 하실 경우는 꼭 이용해보세요.


음... 원래 HCI의 디스크 장해 테스트의 목적은 "장해가 발생해도 서비스(가상머신)는 정지하지 않는 것을 확인"하는 것이라고 생각합니다만, 이상하게 "가상머신의 가용성을 어떻게 수복하는가"를 확인하는 쪽으로 바뀐 것 같네요. :)



● 격리 어드레스 변경후는 vSphere HA를 재유효화해야 됩니다.

이것도 이미 알고 계시리라 생각됩니다. vSAN을 구성하면 하트비트가 관리 네트워크로부터 vSAN 네트워크로 변경되죠. 따라서 호스트 격리시에 이용되는 격리 어드레스도 변경해줘야 됩니다. 격리 어드레스는 vSphere HA의 고급설정에서 변경이 가능합니다만 변경후 추가 작업이 필요합니다.


격리 어드레스의 변경은 vSphere HA를 일단 무효후 다시금 유효화해주지 않으면 반영되지 않습니다. 격리 어드레스를 변경한 뒤에는 반드시 vSphere HA를 재유효화해 주는 것을 잊지마세요. :)



 VCSA을 Easy Install로 설치하였을 경우는 vSAN 구성후 스토리지 정책을 적용해주세요.

vSAN 6.6부터 vSAN 클러스터상에 VCSA를 설치하는 것이 무지하게 편해졌습니다. VCSA 설치시 "새로운 vSAN 클러스터에 포함되는 ESXi 호스트에 설치" 옵션을 선택해주기만 하면 되죠. 간단히 싱글 호스트에 일시적으로 vsanDatastore를 구성, VCSA를 설치해줍니다. VCSA가 설치되면 남은 ESXi 호스트를 vSAN 클러스터에 추가해주면 vSAN 구성이 끝납니다. 간단하죠. :)

하지만 잘 생각해보세요. vsanDatastore 상에 가상머신(VCSA)를 설치했다는 말은 자동적으로 vSAN Default Storage Policy가 적용된다는 말이죠. vSAN Default Storage Policy는 FTT=1에 Stripe=1입니다. 이말은 최소한 3 호스트가 필요하다는 말이죠. 하지만 VCSA를 설치한 시점에서는 1 호스트밖에 없으므로 VCSA는 스토리지 정책이 적용되지 않은 상태가 됩니다.

 

Easy Install로 VCSA를 설치했을 경우는 vSAN 구성이 끝난 뒤에 잊지말고 스토르지 정책을 적용해주세요. 

 



● 컴포넌트 사이즈에는 최대치가 있습니다.

vsanDatastore에는 최대 62TB의 vmdk 화일을 작성할 수 있습니다. 최대 사이즈는 다른 스토리지와 다를바없습니다만 vSAN의 경우는 조금 특수합니다. vSAN은 최종적으로 capacity 디스크에 "컴포넌트"로 저장이 됩니다. 이 컴포넌트에는 최대 사이즈가 있어, 255GB가 최대 사이즈입니다. 255GB를 넘는 화일은 자동적으로 분할되어 복수의 capacity 디스크에 저장이 됩니다. 컴포넌트는 분할되어 각 정보는 메타데이터에 의해 관리됩니다. 예를들어 vmdk 화일 사이즈가 1TB의 경우, capacity 디스트에 저장되는 컴포넌트 수는 4 이상이 됩니다. FTT=1의 경우 8 이상이 되는거죠. 참고로 오브젝트는 분할되지 않습니다.

위의 그림처럼 가상머신에 3개의 vmdk 화일이 있다고 하죠. 스토리지 정책은 FTT=1입니다. 하드 디스크 1과 2는 100GB 정도입니다. 이에비해 하드 디스크 3은 약 400GB 정도됩니다. 하드 디스크 1과 2는 FTT=1의 정책이 적용되어 각각 2개의 컴포넌트가 각각 다른 호스트상에 저장되게 됩니다.

 

하드 디스크 3은 400GB 이므로 컴포넌트의 최대 사이즈를 넘습니다. 따라서 RAID 1의 안에 각각 RAID 0로 3개의 컴포넌트로 분할되어 저장되어 있는 것을 확인할 수 있습니다.(몇개의 컴포넌트로 분할될지는 화일의 사이즈에 따라서 달라집니다)


재미있죠? :)


거대한 가상머신을 작성할 경우는 이 컴포넌트의 구성이나 배치도 고려하는 것이 좋습니다.



 

이외에도 팁이 있으리라 싶습니다만, 생각나는건 이정도네요. vSAN의 도입이나 운용에 조금이나마 도움이 되었으면 합니다. :)

Trackback 0 Comment 1
2018.01.01 00:05

[ETC] 새해 복많이 받으세요



신년이 밝았습니다. 새해 복많이 받으세요.

올한해도 잘 부탁 드리겠습니다.


'misc' 카테고리의 다른 글

[ETC] 새해 복많이 받으세요  (0) 2018.01.01
[ETC] 1000 포스팅 돌파!  (0) 2017.10.30
[VMware] VMworld 2017 Europe 참관기 #6  (0) 2017.09.17
[Etc] 신년인사 드립니다  (8) 2017.01.01
Happy New Year!  (2) 2016.01.01
새해 복많이 받으세요  (0) 2014.01.04
[Home Lab] Home Lab Server has arrived!  (2) 2013.07.21
개인적인 일입니다만...  (2) 2013.07.09
vExpert 2013에 선정되었습니다.  (2) 2013.05.29
Trackback 0 Comment 0
2017.12.24 00:42

[Nutanix] Nutanix Technology Champions 2018

영광스럽게 올해도 NTC(Nutanix Technology Champions) 2018을 수상하게 되었습니다.


Welcome to the 2018 Nutanix Technology Champions (NTC)


 

NTC는 현장이나 커뮤니티, 블로그 등 소셜미디어를 통해 Nutanix 프로덕트나 기술 전파에 공헌한 이들에게 수여되는 vExpert와 같은 명예직입니다. 라고 작년에 얘기한거 같네요. 



또한 보다 많은 Nutanix의 관련 정보를 소개해 나가겠다고 말했습니다만, 솔직히 올해는 Nutanix 관련 커뮤니티 활동이나 블로그 포스팅을 하지 못했습니다. 그럼에도 불구하고 이같은 명예스러운 프로그램에 다시금 선택되어 영광일 뿐입니다. 



내년에는, 보다 도움이 될 정보를 공유해 나가겠습니다. 잘 부탁드리겠습니다.  


Trackback 0 Comment 0
2017.12.21 00:49

[VMware] vRealize Automation 7.3 (21)

(0) vRA 개요

(1) vRA 구성요소

(2) vRA 설치 - vRA어플라이언스

(3) vRA 설치 - IaaS서버

(4) vRA 초기설정 - 테넌트 작성

(5) 테넌트 구성 - AD

(6) 엔드포인트 작성

(7) 데이터 콜렉션과 패브릭 그룹 작성

(8) 머신 접두사와 네트워크 프로화일 작성

(9) 비지니스 그룹과 예약 작성

(10) 블루프린트 작성

(11) 서비스 카탈로그 작성

(12) 블루프린트의 요구

(13) 승인 정책의 설정

(14) 커스텀 속성(사용자 지정 속성)의 설정

(15) vRO 엔드포인트 작성

(16) NSX와의 통합

(17) 가상머신의 임포트

(18) 가상머신의 해제

(19) Nutanix 엔드포인트 작성

(20) vROps와의 통합

(21) 이벤트 브로커의 이용



이번에는 vRA 7.0부터 새롭게 등장한 ”이벤트 브로커(Event Broker 또는 라이프사이클의 확장=Life Cycle Extensibility이라고도 함)”에 대해서 소개하도록 하겠습니다.

“이벤트 브로커”는 6.x까지 이용되었던 Workflow Stub를 대신하여 향후 가상머신의 라이프사이클을 관리하는 방법이 됩니다.


이벤트 브로커”를 간단히 정리해보자면 유저의 요구에 의해 프로비저닝되는(또는 되어진) 가상머신의 라이프사이클과 vRO를 연결하는 것입니다.


이 "이벤트 브로커"를 활용하므로써 단순한 가상머신의 프로비저닝이나 프로비저닝되어진 가상머신의 관리를 유저에게 떠맡기는 것이 아닌 좀더 유연한 서비스를 제공할 수 있게됩니다.


예를들어...

  • 가상머신이 프로비저닝된 후에 DNS 서버에 레코드를 작성, 가상머신이 삭제되면 레코드도 삭제
  • 특정 블루프린트에서 가상머신을 프로비저닝했을 경우 특정 어플리케이션을 설치, 가상머신의 리스 기간이 만료되면 어플리케이션도 삭제
  • 특정 가상머신을 재기동하기 전에 백업이나 스냅숏을 작성

등과 같이, 보다 자동화에 가까운 레벨의 서비스를 제공할 수 있습니다.


이 "이벤트 브로커"를 실현하기 위해서는 "이벤트 서브스크립션"을 이용해야 됩니다.

이벤트 서브스크립션이란 vRA의 이벤트를 트리거로 vRO의 워크플로를 실행하도록 하는 정의(definition)라고 할 수 있습니다. 정의라고 하면 조금 딱딱하게 들릴 수도 있겠습니다만, 내용은 어떤 이벤트가 발생했을 경우는 vRO의 워크플로를 실행한다는 말입니다. 

이벤트 서브스크립션을 작성하기 위해서는 우선, "이벤트 토픽"을 지정합니다. "이벤트 토픽"은 발생하는 이벤트의 카테고리를 의미합니다. vRA 7.3에서는 약 20개의 이벤트가 준비되어있으며 그중에서도 대표적인 이벤트 토픽은 다음과 같습니다.

  • Machine lifecycle
  • Machine provisioning

 

각 이벤트 토픽은 복수의 스키마(프로퍼티-속성)로 구성되어있습니다. 이 프로퍼티를 필요에 따라 "조건"으로 구성을 합니다. 그 다음에는 어느 단계에서 vRO의 워크플로에 프로퍼티를 넘겨줄 것인지를 결정하면 이벤트 서브스크립션의 작성은 끝입니다.


이런저런 등장인물이 있다보니 설명만으로는 헷갈릴 수가 있기에 그림으로 표현을 하면 이렇습니다.

“WinSvr”란 이름의 블루프린트로 작성되는 가상머신은 프로비저닝후에 DNS 서버에 레코드를 작성하는 vRO의 워크플로를 실행하는 이벤트 브로커를 예로들어 보겠습니다.


 

간단히 이벤트 브로커를 이용하는 방법을 소개하겠습니다.

※이 이벤트 브로커 기능을 이용하기 위해서는 vRO가 엔드포인트로 추가되어있어야하며 이벤트 서브스크립션을 통해 실행하는 vRO의 워크플로가 준비되어있어야 합니다.



(21) 이벤트 브로커의 이용




① [관리] → [Event]를 클릭합니다.

 

② [Subscription]을 선택하여, [New]를 클릭합니다.

 

③ 우선 [이벤트 토픽]에서 서브스크립션에서 이용할 이벤트 토픽을 선택합니다. 이용가능한 이벤트 토픽의 종류에 대해서는 여기에서 확인할 수 있습니다. 여기서 소개하는 예로는 가상머신이 프로비저닝된 후에 DNS 서버에 A 레코드를 등록하는 방법을 소개하고자하므로 ”머신 프로비저닝”을 선택했습니다. 이벤트 토픽을 선택후 [Next]를 클릭합니다.

 

④ [조건] 탭에서는 다음의 조건을 지정합니다.

  • 블루프린트 이름에 Linux란 문자열이 포함되어있을 경우
  • 라이프사이클 이벤트가 가상머신의 프로비저닝의 경우(VMPSMasterWorkflow32.BuildingMachine)
  • 라이프사이클의 단계가 프로비저닝이 완료되었을 경우 (POST)

위의 3조건이 충족되었을 경우 이벤트 토픽이 발동됩니다.

 

⑤ [워크플로] 탭을 선택하여 순서④의 조건을 충족했을 경우 실행하는 vRO의 워크플로를 선택합니다.

※입력 파라메터가 ”payload”인 것을 주목하세요. 이 payload는 이벤트 토픽에서 생성된 스키마(속성)을 vRO에 넘겨주는 프로퍼티입니다. 이벤트 브로커를 이용할 경우는 이 payload가 100% 필요하게 됩니다. vRO의 워크플로의 처음에 이 payload가 실행되지않으면 워크플로가 정상적으로 동작하지않습니다.

 

⑥ [상세] 탭에서 필요한 정보를 입력, [Finish]를 클릭합니다.

  • 이름 : 작성하는 서브스크립션 이름입니다. 알기쉬운 이름을 지정합니다.
  • 우선순위 : 여러 서브스크립션이 존재할 경우 실행하는 순위입니다.
  • 타임아웃 : 워크플로의 실행 타임아웃치입니다. 어떤 이유로 워크플로의 실행이 종료되지않고 이 타임아웃치에 도달하면 서브스크립션은 실패합니다.
  • 블록 : 여러 서브스크립션을 순서대로 실행하도록합니다. 이 블록을 유효화하지 않으면 ”우선순위”와 ”타임아웃”이 활성화되지 않습니다.


※”블록(블로킹)”에 대해서 조금 설명을 하자면... 서브스크립션을 실행할 경우 ”블로킹”과 ”넌블로킹(non-blocking)”을 지정합니다. 하나의 이벤트 토픽에 복수의 서브스크립션이 존재할 경우, 각 서브스크립션은 동시에 실행됩니다. 이것을 막기위해 각 서브스크립션에 ”블로킹”을 설정, 우선순위를 결정합니다. ”넌블로킹”은 ”블로킹”을 지정한 서브스크립션이 실행된 뒤, 또는 타임아웃으로 서브스크립션이 실행했을 경우 실행됩니다.

 

⑦ 작성한 서브스크립션은 블루프린트와 동일, ”드래프트” 상태이므로 [공개]를 클릭합니다.

 

⑧ 공개되었다면 서브스크립션의 작성은 끝입니다.

 

⑨ 다음에는 블루프린트의 [커스터 속성]에 서브스크립션에 넘겨줄 라이프사이클용 커스텀 속성을 지정합니다. 여기서는 아래의 속성을 지정했습니다.

  • 속성명 : Extensibility.Lifecycle.Properties.VMPSMasterWorkflow32.BuildingMachine
  • 값 : __*,*

 

이 설정으로 가상머신이 프로비저닝되었을 경우의 각종 속성값이 서브스크립션에 넘어갑니다. 값의 __*,*(언더스코어언더스코어*,*)는 __*は비표시(hidden)값을, *는 표시값을 모두 넘기게 됩니다.

 

이로써 준비완료입니다. :)

 

⑩ 그렇다면 제대로 동작을 하는지 확인해보도록 하겠습니다. 이름이 Linux6인 블루프린트로부터 가상머신을 프로비저닝해봅니다.

 

⑪ 요구의 처리가 실행되고 있습니다.

 

⑫ vSphere Web Client를 확인해보도록 하죠. ”LX-VM-018″이란 가상머신이 프로비저닝중으로 IP 어드레스는 ”192.168.205.153″가 네트워크 프로화일에서 할당되어져 있습니다.

 

⑬ 가상머신의 프로비저닝이 끝난 뒤 ”Add DNS-Host”란 워크플로가 정상적으로 끝난 것을 확인할 수 있습니다. 이 ”Add DNS-Host”는 순서⑤에서 지정한 vRO의 워크플로입니다.

 

⑭ DNS 서버를 확인해보면 ”LX-VM-018″란 호스트가 ”192.168.205.153″로 레코드가 등록된 것을 확인할 수 있습니다.

 

⑮ 마지막으로 vRO를 확인해보죠. 워크플로가 정상적으로 완료된 것을 확인할 수 있습니다. 워크플로 진행중 가상머신 이름과 IP 어드레스를 vRA로부터 넘겨받은 것도 확인할 수 있답니다.

 

이로써 이벤트 브로커의 이용 방법의 소개는 끝입니다.



Trackback 0 Comment 0