Microsoft MVP성태의 닷넷 이야기(BITCOIN으로 주인장 응원하기: 1EK6hfQPJ31vWDNZzQGMGzsJkZCkDc3VhN)
글쓴 사람
정성태 (kevin13@chol.net)
홈페이지
첨부 파일
 

Azure - Virtual Machine 구성

예전에, "VM Role" 베타 서비스를 한번 소개해 드렸지요.

Windows Azure - VM Role 베타 프로그램 참여
; http://www.sysnet.pe.kr/2/0/1070

그 당시 VM Role 서비스가 베타였는데 그것 자체가 서비스화 되기 전에, 방향을 아예 바꿔 "VM 서비스"라는 프리뷰 서비스로 진행되고 있습니다. 위의 "VM Role"을 보시면 설정 작업이 꽤나 복잡했던 것을 볼 수 있는데요. 마이크로소프트가 "VM 서비스"에서는 아예 아마존의 EC2 서비스와 동등한 수준으로 서비스를 구성했습니다. (엄밀히 "VM Role" 서비스가 사라졌다고 볼 수는 없고, "VM 서비스"의 한쪽 메뉴로 "VHD 이미지 파일을 업로드"할 수 있도록 아주 단순하게 바뀌었습니다.)

Virtual Machines
; http://msdn.microsoft.com/en-us/library/windowsazure/jj156003.aspx

현재(2012-07-12) Preview 단계이기 때문에 메뉴에는 나오지 않지만, 그래도 "New" 버튼에서 "VIRTUAL MACHINE" 메뉴를 누르면 "Previwe" 신청을 할수 있어서 서비스 이용에는 아무런 문제가 없습니다.

마침, 저도 회사 차원에서 VM 을 생성할 수 있는 기회가 생겨서 한번 해보았는데요. ^^

지원되는 OS 템플릿은 다음과 같은데,

  • Microsoft SQL Server 2012 Evaluation Edition
  • Windows Server 2008 R2 SP1, June 2012
  • Windows Server 2008 R2 SP1, May 2012
  • Windows Server 2012 Release Candidate
  • Windows Server 2012 Release Candidate, June 2012
  • OpenLogic CentOS 6.2
  • SUSE Linux Enterprise Server
  • Ubuntu Server 12.04 LTS
  • openSUSE 12.1

우선, "New" 버튼으로 새로운 VM 유형 만들기를 진행해서,

azure_vm_1.png

제 경우에는 "Windows Server 2008 R2 SP1, June 2012" 로 선택했습니다.

azure_vm_2.png

그 다음, VM 의 이름과 윈도우의 관리자 계정의 암호를 입력하고, SIZE를 지정해 주어야 합니다.

azure_vm_3.png

VM 이름의 경우에는 그냥 구분할 수 있을 정도의 아무 이름이라도 주면 되지만, 암호는 잘 기억하고 있어야 합니다. (안 그러면, 나중에 가상머신으로의 RDP 접속을 할 수 없습니다. 물론, 삭제하고 금방 다시 생성하면 되겠지만.)

SIZE 의 경우 나중에 변경할 수 있기 때문에 부담없이 선택하시면 됩니다. 저는 테스트이기 때문에 그냥 단순하게 "Small (1 core, 1.75 GB Memory)" 유형으로 선택했는데, 다른 유형에 대해서는 아래의 글을 참고하실 수 있습니다.

How to Configure Virtual Machine Sizes
; http://msdn.microsoft.com/en-us/library/windowsazure/ee814754.aspx

이후, "VM Mode"를 지정하는 단계로 넘어가는데요.

azure_vm_4.png

별도 DNS 를 가진 VM을 만들려면 "STANDALONE VIRTUAL MACHINE" 옵션을 선택하고, 아니면 기존 생성된 VM 의 "서버 Pool"로 추가하고 싶다면 "CONNECT TO EXISTING VIRTUAL MACHINE" 옵션을 선택합니다. (후자의 경우는 쉽게 말하면 같은 "L4" 스위치에 서버를 한 대 더 추가하는 경우라고 생각하시면 됩니다.)

마지막으로, "VM Options" 인데,

azure_vm_5.png

"AVAILABILITY SET" 은 임의로 특정 이름을 지정해 주시면 됩니다. (AVAILABILITY SET옵션도 나중에 변경이 가능합니다.) 이제 확인을 하면, 위에서 설정한 규격의 VM 이 생성되는데, 이 작업에 잠시 시간이 걸리므로 실제적인 응용 프로그램을 설치하기까지 다소 기다리셔야 합니다.

생성이 완료되고 나면, 1개의 VM과 그것을 저장하는 기본적인 STORAGE 한개가 생성됩니다.




"SMALL"로 지정된 VM 을 한번 둘러 볼까요? ^^

하드 디스크는 다음과 같이 2개가 할당되었습니다.

azure_vm_6.png

VM 운영체제로 30GB, 임시데이터 디스크로 70GB 가 할당되어 있는데요. 주의할 것은, C에 할당된 하드는 장애 관리가 되지만 D 드라이브는 임시이기 때문에 장애 관리가 되지 않습니다. 이에 대해서는 마이크로소프트 측에서 다음과 같이 말하고 있습니다.

Each VHD also has a temporary storage disk, which is labeled as drive D. This is a disk that applications and processes running in the VM can use for transient and temporary storage.


따라서, 만약 VM 서비스에 SQL 서버를 설치했다면 절대 데이터 파일을 D 드라이브에 할당하시면 안됩니다. 만약, 그런 디스크 공간이 필요하다면 억지로 C 드라이브에 넣을 수는 있습니다. 하지만, 30GB 가 넉넉한 공간은 아니기 때문에 운영체제의 가용성을 위해서 남겨두시는 것이 좋고, 별도의 VHD 디스크를 생성해서 붙이는 것이 권장됩니다. (물론, ^^ 별도 요금이 물립니다.)

다음으로, 작업 관리자를 보면,

azure_vm_7.png

Small로 지정한 데로, "Physical Memory"는 1.75GB 이고 할당된 CPU자원은 1개입니다.

컴퓨터 정보를 보면,

azure_vm_8.png

윈도우가 "Datacenter" 버전으로 설치된 것을 확인할 수 있습니다. 다행히 VM 서비스이기 때문에 Datacenter에 대한 라이선스 비용은 (서비스에 살짝 포함되어 있겠지만) 일단은 무료입니다. 기타... CPU 정보를 통해 가상 머신을 호스팅하는 머신에 AMD 프로세서가 장착된 것을 알 수 있습니다.

마지막으로 페이징 파일 4GB가 "D" 드라이브에 할당된 것을 볼 수 있습니다.

azure_vm_9.png

기타, SMALL 환경에 대해서 궁금한 점이 있으시면 덧글로 문의해주세요. ^^




RDP 연결은 "Connect" 메뉴를 선택하면 원격 연결 설정이 갖춰진 .rdp 파일을 다운로드 할 수 있습니다.

azure_vm_10.png

간단하죠. ^^

추가적으로 언급해야 할 것이 '방화벽'이 있는데요. 윈도우 자체의 방화벽 이외에 Azure 측에서 기본적으로 모든 포트를 막고 시작합니다. RDP 연결의 경우에만 Azure에서 자동으로 설정되어지고, 그 외 80 포트 조차도 막혀 있으므로 필히 포트를 이용한 서비스를 한다면 이에 대해서 명시적으로 열어줘야 합니다.

방법은, 다음과 같이 해당 VM 관리 메뉴에 가서 "ENDPOINTS" 탭에서 "ADD ENDPOINT" 버튼을 누르고,

azure_vm_11.png

포트 설정을 해주시면 됩니다.

azure_vm_12.png

확인을 하면, 곧바로 적용되지 않고 (한번 설정할 때마다) 약 2분 정도의 반영 시간이 걸립니다.




[이 글에 대해서 여러분들과 의견을 공유하고 싶습니다. 틀리거나 미흡한 부분 또는 의문 사항이 있으시면 언제든 댓글 남겨주십시오.]



[최초 등록일: ]
[최종 수정일: 7/17/2012 ]

Creative Commons License
이 저작물은 크리에이티브 커먼즈 코리아 저작자표시-비영리-변경금지 2.0 대한민국 라이센스에 따라 이용하실 수 있습니다.
by SeongTae Jeong, mailto:kevin13@chol.com

비밀번호
수정 답변 목록

댓글 쓴 사람
 



2012-07-18 01시33분
[박중석] 정말 상세한 포스팅 이네요. VM Preview도 MSDN Benefit 사용량안에서 사용 가능하시므로, 단순 Test 환경이시면 Extra Small (Small의 1/6)로 하셔야 Monthly Free Benefit 사용량이 많이 감소하시지 않으실 것 같아요 :)
[손님]
2012-07-18 04시13분
아... ^^ 위의 환경은 제 MSDN 계정은 아니고 회사 계정으로 했습니다. 게다가 테스트 VM 이 그래도 뭔가를 돌려야 하는 것이 있어서 ^^ Small 사이즈로 했습니다.
정성태

[1]  2  3  4  5  6  7  8  9  10  11  12  13  14  15  ...
NoWriterDateCnt.TitleFile(s)
1791정성태10/22/201482VC++ : 57. G++ - 템플릿 클래스의 iterator 코드 사용에서 발생하는 컴파일 오류 [1]
1790정성태10/22/201455오류 유형 : 250. NETLOGON Service is paused on [... AD Server...]
1789정성태10/22/201444오류 유형 : 249. 이벤트 로그 - The client-side extension could not remove user policy settings for '...'
1788정성태10/22/2014103VC++ : 56. COM 프로그래밍에서 HRESULT 타입의 S_FALSE는 실패일까요? 성공일까요?
1787정성태10/22/201488오류 유형 : 248. COM 개체 등록시 0x8002801C 오류가 발생한다면?
1786정성태10/22/201489Debug Features : 63. 프로세스 비정상 종료 시 "Debug Diagnostic Tool"를 이용해 덤프를 남기는 방법파일 다운로드1
1785정성태10/22/201439오류 유형 : 247. 이벤트 로그 - Load control template file /_controltemplates/TaxonomyPicker.ascx failed
1784정성태10/22/201479.NET : 319. C/C++과 C# 사이의 메모리 할당/해제 방법파일 다운로드1
1783정성태10/21/2014187VC++ : 55. 프로그래밍에서 borrowing의 개념
1782정성태10/21/201458오류 유형 : 246. 이벤트 로그 - Application Server job failed for service instance Microsoft.Office.Server.Search.Administration.SearchServiceInstance
1781정성태10/21/2014110Debug Features : 62. new/delete의 짝이 맞는 경우에도 메모리 누수가 발생한다면?
1780정성태10/15/201468오류 유형 : 245. The application-specific permission settings do not grant Local Activation permission for the COM Server application with CLSID
1779정성태10/15/201478오류 유형 : 244. Active Directory에서 OU가 지워지지 않는 경우
1778정성태10/10/2014102오류 유형 : 243. The Netlogon service could not create server share C:\Windows\SYSVOL\sysvol\[도메인명]\SCRIPTS.
1777정성태10/10/201496오류 유형 : 242. The processing of Group Policy failed. Windows attempted to read the file \\[도메인]\sysvol\[도메인]\Policies\{...GUID...}\gpt.ini
1776정성태10/10/201493오류 유형 : 241. 이벤트 로그 - Name resolution for the name _ldap._tcp.dc._msdcs.[도메인명]. timed out after none of the configured DNS servers responded.
1775정성태10/9/201498오류 유형 : 240. Visual Studio 디버깅 (2) - Unable to break execution. This process is not currently executing the type of code that you selected to debug.
1774정성태10/9/2014144개발 환경 구성: 244. IIS 작업자 프로세스의 20분 자동 재생(Recycle)을 끄는 방법
1773정성태10/8/2014227.NET : 318. 웹 브라우저로 다운로드가 되는 파일을 왜 C# 코드로 하면 안되는 걸까요?
1772정성태10/3/2014352.NET : 317. C# 3.0의 기본 인자(default parameter)가 .NET 1.1/2.0에서도 실행될까? [3]
1771정성태10/2/2014246개발 환경 구성: 243. 실행된 프로세스(EXE)의 명령행 인자를 확인하고 싶다면 - Sysmon [2]
1770정성태10/2/2014231개발 환경 구성: 242. 매크로 정의를 이용해 파일 하나로 C++과 C#에서 공유하는 방법파일 다운로드1
1769정성태10/1/2014264개발 환경 구성: 241. Scala 개발 환경 구성(JVM, 닷넷) [1]
1768정성태10/1/2014261개발 환경 구성: 240. 배치 파일에서 Thread.Sleep 효과를 주는 방법 [5]
1767정성태10/1/2014231VS.NET IDE : 56. Visual Studio 2012/2013에서의 매크로 구현 - Visual Commander
[1]  2  3  4  5  6  7  8  9  10  11  12  13  14  15  ...