Microsoft MVP성태의 닷넷 이야기
개발 환경 구성: 157. Azure - Virtual Machine 구성 [링크 복사], [링크+제목 복사]
조회: 22081
글쓴 사람
정성태 (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 사이즈로 했습니다.
정성태

1  2  3  4  5  6  7  [8]  9  10  11  12  13  14  15  ...
NoWriterDateCnt.TitleFile(s)
13431정성태10/31/20232773스크립트: 60. 파이썬 - 비동기 FastAPI 앱을 gunicorn으로 호스팅
13430정성태10/30/20232668닷넷: 2153. C# - 사용자가 빌드한 ICU dll 파일을 사용하는 방법
13429정성태10/27/20232955닷넷: 2152. Win32 Interop - C/C++ DLL로부터 이중 포인터 버퍼를 C#으로 받는 예제파일 다운로드1
13428정성태10/25/20233017닷넷: 2151. C# 12 - ref readonly 매개변수
13427정성태10/18/20233219닷넷: 2150. C# 12 - 정적 문맥에서 인스턴스 멤버에 대한 nameof 접근 허용(Allow nameof to always access instance members from static context)
13426정성태10/13/20233385스크립트: 59. 파이썬 - 비동기 호출 함수(run_until_complete, run_in_executor, create_task, run_in_threadpool)
13425정성태10/11/20233187닷넷: 2149. C# - PLinq의 Partitioner<T>를 이용한 사용자 정의 분할파일 다운로드1
13423정성태10/6/20233167스크립트: 58. 파이썬 - async/await 기본 사용법
13422정성태10/5/20233311닷넷: 2148. C# - async 유무에 따른 awaitable 메서드의 병렬 및 예외 처리
13421정성태10/4/20233369닷넷: 2147. C# - 비동기 메서드의 async 예약어 유무에 따른 차이
13420정성태9/26/20235558스크립트: 57. 파이썬 - UnboundLocalError: cannot access local variable '...' where it is not associated with a value
13419정성태9/25/20233211스크립트: 56. 파이썬 - RuntimeError: dictionary changed size during iteration
13418정성태9/25/20233906닷넷: 2146. C# - ConcurrentDictionary 자료 구조의 동기화 방식
13417정성태9/19/20233439닷넷: 2145. C# - 제네릭의 형식 매개변수에 속한 (매개변수를 가진) 생성자를 호출하는 방법
13416정성태9/19/20233252오류 유형: 877. redis-py - MISCONF Redis is configured to save RDB snapshots, ...
13415정성태9/18/20233744닷넷: 2144. C# 12 - 컬렉션 식(Collection Expressions)
13414정성태9/16/20233501디버깅 기술: 193. Windbg - ThreadStatic 필드 값을 조사하는 방법
13413정성태9/14/20233699닷넷: 2143. C# - 시스템 Time Zone 변경 시 이벤트 알림을 받는 방법
13412정성태9/14/20236977닷넷: 2142. C# 12 - 인라인 배열(Inline Arrays) [1]
13411정성태9/12/20233478Windows: 252. 권한 상승 전/후 따로 관리되는 공유 네트워크 드라이브 정보
13410정성태9/11/20235000닷넷: 2141. C# 12 - Interceptor (컴파일 시에 메서드 호출 재작성) [1]
13409정성태9/8/20233860닷넷: 2140. C# - Win32 API를 이용한 모니터 전원 끄기
13408정성태9/5/20233819Windows: 251. 임의로 만든 EXE 파일을 포함한 ZIP 파일의 압축을 해제할 때 Windows Defender에 의해 삭제되는 경우
13407정성태9/4/20233576닷넷: 2139. C# - ParallelEnumerable을 이용한 IEnumerable에 대한 병렬 처리
13406정성태9/4/20233542VS.NET IDE: 186. Visual Studio Community 버전의 라이선스
13405정성태9/3/20233973닷넷: 2138. C# - async 메서드 호출 원칙
1  2  3  4  5  6  7  [8]  9  10  11  12  13  14  15  ...