Microsoft MVP성태의 닷넷 이야기
개발 환경 구성: 157. Azure - Virtual Machine 구성 [링크 복사], [링크+제목 복사],
조회: 29335
글쓴 사람
정성태 (techsharer at outlook.com)
홈페이지
첨부 파일
 
(연관된 글이 4개 있습니다.)

Azure - Virtual Machine 구성

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

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

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

Virtual Machines
; https://docs.microsoft.com/en-us/azure/?product=virtual-machines

현재(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
; https://docs.microsoft.com/en-us/azure/cloud-services/cloud-services-sizes-specs

이후, "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/5/2021]

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

비밀번호

댓글 작성자
 



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

... 121  [122]  123  124  125  126  127  128  129  130  131  132  133  134  135  ...
NoWriterDateCnt.TitleFile(s)
10873정성태11/25/201525449.NET Framework: 540. C# - 부동 소수 계산 왜 이렇게 나오죠? (2) [3]파일 다운로드1
10872정성태11/24/201532418.NET Framework: 539. C# - 부동 소수 계산 왜 이렇게 나오죠? (1) [1]
10871정성태11/23/201528040오류 유형: 313. SignTool Error: No certificates were found that met all the given criteria.
10870정성태11/23/201528898오류 유형: 312. 윈도우 10 TH2 (버전 1511) 업데이트가 안되는 경우 [1]
10869정성태11/23/201524658오류 유형: 311. certutil 실행 오류 - 0x80070057 [1]
10868정성태11/20/201524537제니퍼 .NET: 25. 제니퍼 닷넷 적용 사례 (5) - RestSharp 라이브러리의 CPU High 현상파일 다운로드1
10867정성태10/18/201527092.NET Framework: 538. Thread.Abort로 인해 프로세스가 종료되는 현상
10866정성태10/14/201523322.NET Framework: 537. C# - Reflection의 박싱 없이 값 형식을 다루는 방법파일 다운로드1
10865정성태10/13/201523094.NET Framework: 536. Thread.Abort의 스레드 종료 지연파일 다운로드1
10864정성태10/12/201521275.NET Framework: 535. aspnet.config 파일의 설정을 읽는 방법
10863정성태10/9/201526087.NET Framework: 534. ASP.NET 응용 프로그램이 예외로 프로세스가 종료된다면?
10862정성태10/9/201524453오류 유형: 310. 비주얼 스튜디오 - Unspecified error (Exception from HRESULT: 0x80004005 (E_FAIL))
10861정성태10/9/201529096기타: 54. 도서: 시작하세요! C# 6.0 프로그래밍: 기본 문법부터 실전 예제까지 (2)
10860정성태10/5/201526562개발 환경 구성: 277. IIS AppPool의 시작/중단에 대한 이벤트 로그 확인 방법
10859정성태10/5/201527751.NET Framework: 533. C#에서 string 형식이 primitive일까요? [6]
10858정성태10/2/201524252VS.NET IDE: 105. Visual Studio의 단위 테스트 작성 시 Fakes를 이용한 메서드 재정의 방법 [1]파일 다운로드1
10857정성태10/1/201520290VS.NET IDE: 104. Visual C++ 프로젝트의 빌드 이벤트에서 환경 변수 사용하는 방법
10856정성태9/30/201531518.NET Framework: 532. WPF DataGrid의 데이터 바인딩 시 리플렉션의 부하는 어느 정도일까요?파일 다운로드1
10855정성태9/30/201521257.NET Framework: 531. C# - XSLT 내의 javascript에 전달한 XML 노드의 타입은?
10854정성태9/30/201521777오류 유형: 309. C# - 포인터를 쓰는 경우 VerificationException이 발생한다면?
10853정성태9/21/201519404오류 유형: 308. 공백 문자를 포함한 계정명의 권한으로 Visual Studio 확장을 설치할 때 오류 발생
10852정성태9/17/201524473VC++: 92. C++ 생성자를 DLL로부터 동적 로드해 객체를 생성한다면? [2]파일 다운로드1
10851정성태9/15/201524236.NET Framework: 530. C# - 중위식을 후위식으로 변환하는 예제파일 다운로드1
10850정성태9/14/201522929.NET Framework: 529. C# - volatile 키워드로 인한 차이점을 발생시키는 예제 [1]파일 다운로드1
10849정성태9/14/201556997오류 유형: 307. CLR20r3 오류 해결을 위해 mscorlib.dll을 덮어쓸때 주의할 점 [12]
10848정성태9/8/201527377VS.NET IDE: 103. Visual Studio의 Ctrl + F5 실행 동작파일 다운로드1
... 121  [122]  123  124  125  126  127  128  129  130  131  132  133  134  135  ...