Microsoft MVP성태의 닷넷 이야기
글쓴 사람
정성태 (techsharer at outlook.com)
홈페이지
첨부 파일
 
(연관된 글이 4개 있습니다.)

아마존 EC2에 새로 추가된 "1년 무료 Windows 서버 인스턴스"가 있다는데, 직접 만들어 볼까요? ^^


예전에, Windows Azure의 VM Role 관련해서 실제 "VM Instance"를 만드는 방법을 설명해 드렸는데요.

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

최근에는 마이크로소프트에서 "Persistent VM" 형식도 준비하고 있다는 이야기가 들려오고 있습니다.

Microsoft to enable Linux on its Windows Azure cloud in 2012
; http://www.zdnet.com/blog/microsoft/microsoft-to-enable-linux-on-its-windows-azure-cloud-in-2012/11508

그런데, 이게 왠일입니까? ^^ 아직 준비가 안된 틈을 타서, 아마존이 고객선점을 위한 재미있는 견제 정책을 들고 나왔습니다.

Amazon Unveils Windows Server Free Trial
; http://www.informationweek.com/news/cloud-computing/infrastructure/232500004

기존에는 "Persistent VM" 서비스가 아마존에서만 가능했는데, 이제 Azure에서도 내놓으려고 하니 '무료' 정책을 기존 리눅스에 국한하지 않고 윈도우 서버까지 확장을 했습니다. 게다가 750 시간 무료도 윈도우 Azure의 무료 시간과 동일하다고 하는군요. ^^

보다 자세한 정보는 다음에서 확인이 가능한데요.

AWS Free Usage Tier 
; http://aws.typepad.com/aws/2012/01/aws-free-usage-tier-now-includes-microsoft-windows-on-ec2.html

"
750 hours of Amazon EC2 Microsoft Windows Server Micro Instance usage (613 MB of memory and 32-bit and 64-bit platform support) ? enough hours to run continuously each month*
"


24시간 동안 31일 기준으로 사용해도 744 시간이기 때문에 해당 인스턴스에 대해 750 시간 무료라는 것은 별도의 메모리와 디스크 공간만 더 사용하지 않는다면 현실적으로 비용을 내지 않아도 되는 상태입니다.

"
* These free tiers are only available to new AWS customers, and are available for 12 months following your AWS sign-up date. When your free usage expires or if your application use exceeds the free usage tiers, you simply pay standard, pay-as-you-go service rates (see each service page for full pricing details). Restrictions apply; see offer terms for more details.
"


그렇게 1년 동안 무료로 사용할 수 있다는 것이지요. ^^

자... 그럼, 함께 1년 동안 무료로 사용할 수 있는 "Windows Server 2008 R2"를 만들어 볼까요?





1. 회원 가입 및 인스턴스 생성

우선, 아마존에 회원으로 등록되지 않은 분들은 다음의 페이지에 방문해서 회원 가입부터 해야 합니다.

AWS Free Usage Tier
; http://aws.amazon.com/free/

위의 웹 사이트를 방문하면 우측 상단에 "Sign Up" 버튼이 보입니다.

amazone_ec2_free_winr2_1.png

회원 가입을 위해서는 유효한 '신용 카드'와 '전화기'가 필요합니다. '회원 등록'을 웹 사이트에서 마친 후, 다음과 같은 이메일이 와야 정상적으로 등록과정이 완료된 것입니다.

amazone_ec2_free_winr2_2.png

회원 가입이 완료되었으면 다음의 URL을 방문하고,

AWS Management Console 
; http://aws.amazon.com/console/

amazone_ec2_free_winr2_3.png

우측에 있는 "Sign in to the AWS Console"을 누르면 '관리 콘솔' 화면에 진입하게 됩니다. 콘솔 화면에 진입하면 아래와 같이 "EC2" 탭을 누르고 "Region"을 "Asia Pacific (Singap.)"로 (네트워크 속도를 위해) 바꿔주는 것이 좋습니다.

amazone_ec2_free_winr2_4.png

자, 이제부터 본격적으로 무료 윈도우 서버 인스턴스를 만들어 볼텐데요. 위의 화면에서 보여지는 데로 "Launch Instance" 버튼을 눌러줍니다.

그럼, 다음과 같이 AMI(Amazone Machine Image) 선택화면이 나오고 (물론 다른 인스턴스도 가능하지만) 제 경우에는 편의상 "Microsoft Windows Server 2008 R2 with SQL Server Express and IIS"를 선택해 주었습니다. (화끈하군요... 평소에는 거의 설치해 볼 일이 없는 "Datacenter Edition"으로 선택되어 있습니다.)

amazone_ec2_free_winr2_5.png

이제 생성될 Instance 유형을 선택해야 하는데요. 무료로 사용하려면 반드시 아래의 (기본값으로 된) "Micro (t1.micro, 613MB)" 유형이어야 합니다. (다른 유형은 "Free Usage" 유형에 속하지 않습니다.)

amazone_ec2_free_winr2_5_2.png

"Continue" 버튼을 누르면 아래의 화면이 나오는데, 그냥 기본값으로 두고 계속 진행합니다. ("Monitoring" 체크는 특히 하시면 안되겠지요. ^^ 비용이 부과된다고 하니!)

amazone_ec2_free_winr2_6.png

이번 옵션은 크게 중요하지 않습니다. 해당 Instance에 간단한 메타데이터를 지정할 수 있는데, 단순히 식별하기 편하도록 아무 이름/값이나 넣어주시면 됩니다.

amazone_ec2_free_winr2_7.png

이후, 공개키/개인키를 위한 (임의로 지은) 이름을 하나 입력하고 "Create & Download your Key Pair" 링크를 누릅니다.

amazone_ec2_free_winr2_8.png

그럼, 곧바로 "다운로드" 알림이 뜨고 개인키 파일을 다운로드 할 수 있습니다. (확장자가 .pem인 파일로 저장되는데 단순 텍스트 파일입니다. 잘 보관해 놓으세요. 나중에 RDP 접속 환경 구성할 때 필요합니다.)

이어서, 네트워크 환경을 담은 '보안 그룹'을 생성할 수 있습니다. 원하시는 데로 변경하거나 또는 기본값으로 두고 "Continue" 버튼을 누릅니다.

amazone_ec2_free_winr2_9.png

자... 여기까지 모두 정상적으로 되었다면 이제 최종적으로 설정 내용을 확인합니다.

amazone_ec2_free_winr2_10.png

그런데, ASP.NET 3.5라고 되어 있군요... 신경쓰지 않아도 됩니다. (조만간 오타가 수정되겠지요. ^^) 마지막으로, "Launch" 버튼을 눌러주면 여러분이 1년 동안 사용할 수 있는 무료 윈도우 서버 인스턴스가 하나 생성됩니다. ^^

다시, EC2 관리화면으로 가면 다음과 같이 "1 Running Instance"라는 것을 볼 수 있고,

amazone_ec2_free_winr2_11.png

링크를 클릭하고 들어가면, (처음 한 동안은 초기화하는 데 시간이 좀 걸리므로 "Status Checks"가 "initializing..."으로 나옵니다.) 초기화가 완료된 경우, 다음과 같이 상태가 확인됩니다.

amazone_ec2_free_winr2_12.png





2. 원격 데스크톱 접속

당연한 수순으로, 이제 해당 인스턴스에 "원격 데스크톱(RDP)" 접속을 해봐야 겠지요. ^^

이를 위해, 아래와 같이 관리 콘솔의 "Instance Actions" 메뉴에서 "Connect" 메뉴를 선택하고,

amazone_ec2_free_winr2_13.png

들어가면 다음과 같이 RDP 접속을 위한 "Public DNS" 정보와 암호를 얻을 수 있는 화면이 제공됩니다.

amazone_ec2_free_winr2_14.png

"Retrieve Password" 링크를 누르면 다음과 같이 개인키를 묻는 화면이 뜹니다. 이전에 인스턴스 생성하면서 다운로드 받았던 .pem 개인키 파일에 있는 텍스트를 복사해서 붙여넣기하고,

amazone_ec2_free_winr2_15.png

"Decrypt Password" 버튼을 누르면 "Administrator" 계정으로 로그인할 수 있는 암호가 구해집니다.

잘 받아서 적어두시고, "Download shortcut file" 링크를 누르면 확장자가 .rdp인 파일을 다운로드 할 수 있습니다. 물론, mstsc.exe 실행해서 여러분이 생성한 인스턴스의 "Public DNS" 주소를 입력해서 접속해도 무방합니다. 제 경우에는 "ec2-122-248-218-89.ap-southeast-1.compute.amazonaws.com"로 입력하고 접속을 했는데... 우와~~~~ 정말 ^^ RDP 연결이 되었습니다.

amazone_ec2_free_winr2_16.png

접속하자마자, "Administrator" 비밀번호 바꾸는 거 잊지 마시고 (왜냐하면 기본 비밀번호를 기억할 수 없기 때문에!), 아니면 새로운 관리자 계정 하나를 생성해서 사용하는 것도 좋겠습니다.

당연하겠지만, 아래와 같이 웹 서버도 접속됩니다. ^^ 우와~~~~

amazone_ec2_free_winr2_17.png

EC2 무료 윈도우 서버 환경이 어떻게 되는지 궁금하실텐데요. 대략 다음과 같이 정리해 보았습니다.

  • .NET Framework 2.0/3.5/4.0 (Full / Client Profile)
  • 총 30GB 하드 디스크 중, 6.6GB 남은 용량.
  • 총 613MB 메모리 중, 432MB WorkingSet 메모리 점유.
  • (가상) 프로세서 정보: Intel(R) Xeon(R) CPU E5430 @ 2.66GHz
  • 윈도우 서버 내장 방화벽은 모두 "On" 상태임.

이 정도 환경이라면 사실 별로 할만한 일은 많지 않을 텐데요. 그래도 1년 동안은 무료로 '어떤 것'인가를 할 수 있는 VM이 생겼다는 데 충분한 의미가 있겠지요. ^^

그건 그렇고... 저렇게 신청해 놓고 1년이 지나면 '자동적으로 끊기는' 걸까요? 아니면 '자동적으로 요금이 매겨지는' 걸까요? ^^;




참고로, RDP 접속이 안되는 분들이 있을 것입니다. 위의 과정에서 보면 중간에 "Create a new Security Group"이라고 해서 "quick-start-1" 을 생성하고 RDP, HTTP 포트를 각각 열어주었다고 했는데요. 그건... 단지 새로운 보안 그룹을 생성만 하는 것일 뿐, 지금 생성하려는 '인스턴스'에 새로 생성된 보안 그룹을 자동으로 연결해 주지는 않습니다.

그래서, 저런 식으로 "quick-start-1" 보안그룹을 생성하고 명시적으로 다시 그 화면에서 "Choose one or more of your existing Security Groups"로 선택하지 않으면 현재 생성되는 인스턴스는 "default" 보안 그룹에 속합니다.

문제는 관리 콘솔에서 해당 "default" 보안 그룹을 살펴보면 다음과 같이 모든 ICMP, TCP, UDP에 대해서 포트가 열려있다고 되어 있는데,

amazone_ec2_free_winr2_18.png

이상하게도 제 경우에는 연결이 되지 않았습니다. 혹시나 싶어서, 기본 설정된 ICMP, TCP, UDP 설정을 없애고 RDP를 허용해 주었더니 연결이 정상적으로 되었습니다. 재미있는 것은, 위의 화면 캡쳐를 뜨기 위해 다시 RDP를 없애고 ICMP, TCP, UDP를 설정해 주니 이번에는 RDP 접속이 문제없이 되었습니다.

아마도 이것은 새로 "Windows Server R2" 무료 서비스를 추가하면서 초기 설정에 버그가 있는 것이 아닌가 싶습니다. 아마, 위의 실습을 여러분들이 따라하는 시점에는 고쳐졌을지도 모르겠습니다. ^^




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

[연관 글]






[최초 등록일: ]
[최종 수정일: 6/23/2021]

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

비밀번호

댓글 작성자
 



2012-01-21 10시35분
[Beren] 헉...Azure 무료 3개월 신청하려다가 성태님 글 보니 아마존도 이런 서비스를 하는군요. 경쟁업체가 있다는건 소비자 입장에선 환영할 만 한 일인것같습니다.^^
[guest]
2012-01-21 11시23분
그러게요. 블로그에 공개된 것이 1월 15일이니까... 내놓은지 얼마 안된 따끈따끈한 서비스입니다. ^^
정성태
2012-02-02 03시19분
[prym] 놀랍게도 공인 IP도 신청이 가능합니다.
[guest]
2012-02-02 04시27분
prym 님... 공인 IP가 그래서 다 바닥난거군요. ^^
정성태
2012-02-03 02시34분
[prym] 참고 : 공인 IP(Elastic IP)는 시간당 0.01 달러의 요금이 부과되고 있었습니다. ㅜ.ㅜ
용량/트래픽 모두 최소사양을 넘어서지 않도록 잘 읽어봐야 할 듯합니다...
[guest]
2012-03-30 04시29분
[qna] 궁금한게 있는데 답변부탁드리겠습니다. 원격 접속시 ec2-122-248-218-89.ap-southeast-1.compute.amazonaws.com의 주소로 생성된 랜덤한 패스워드로 접속하게되는데, 그패 admin 패스워드를 변환할수 있나요? 답변 부탁드리겠습니다.
[guest]
2012-03-30 11시39분
넵. admin 패스워드 변경할 수 있습니다. 여늬 윈도우 서버 관리하듯이 "Computer Management" MMC에서 사용자 관리를 할 수 있습니다.
정성태
2012-09-12 01시53분
참고로, 위의 서비스가 완전 무료는 아니고 상황에 따라서 요금 부과가 될 수 있습니다. 다음의 글을 참고해 보세요.

(실은) 무료가 아니었던 AWS EC2 서비스
; http://www.sysnet.pe.kr/2/0/1350
정성태
2013-04-25 02시56분
[난초도둑] 정말 큰 도움이 되었습니다!! 자세하고 친절한 정리 감사드립니다!
[guest]
2015-09-14 01시54분
[바나클] 윈도우 설치후 한글 언어팩 설치가능한가요?? 서버 띄우면 한글이 깨져서 나오는데요
[guest]
2015-09-14 02시31분
@바나클 당연히 가능합니다.
정성태

... [76]  77  78  79  80  81  82  83  84  85  86  87  88  89  90  ...
NoWriterDateCnt.TitleFile(s)
12036정성태10/14/201925468.NET Framework: 866. C# - 고성능이 필요한 환경에서 GC가 발생하지 않는 네이티브 힙 사용파일 다운로드1
12035정성태10/13/201919585개발 환경 구성: 461. C# 8.0의 #nulable 관련 특성을 .NET Framework 프로젝트에서 사용하는 방법 [2]파일 다운로드1
12034정성태10/12/201918904개발 환경 구성: 460. .NET Core 환경에서 (프로젝트가 아닌) C# 코드 파일을 입력으로 컴파일하는 방법 [1]
12033정성태10/11/201923115개발 환경 구성: 459. .NET Framework 프로젝트에서 C# 8.0/9.0 컴파일러를 사용하는 방법
12032정성태10/8/201919237.NET Framework: 865. .NET Core 2.2/3.0 웹 프로젝트를 IIS에서 호스팅(Inproc, out-of-proc)하는 방법 - AspNetCoreModuleV2 소개
12031정성태10/7/201916492오류 유형: 569. Azure Site Extension 업그레이드 시 "System.IO.IOException: There is not enough space on the disk" 예외 발생
12030정성태10/5/201923301.NET Framework: 864. .NET Conf 2019 Korea - "닷넷 17년의 변화 정리 및 닷넷 코어 3.0" 발표 자료 [1]파일 다운로드1
12029정성태9/27/201924125제니퍼 .NET: 29. Jennifersoft provides a trial promotion on its APM solution such as JENNIFER, PHP, and .NET in 2019 and shares the examples of their application.
12028정성태9/26/201919088.NET Framework: 863. C# - Thread.Suspend 호출 시 응용 프로그램 hang 현상을 해결하기 위한 시도파일 다운로드1
12027정성태9/26/201914816오류 유형: 568. Consider app.config remapping of assembly "..." from Version "..." [...] to Version "..." [...] to solve conflict and get rid of warning.
12026정성태9/26/201920234.NET Framework: 862. C# - Active Directory의 LDAP 경로 및 정보 조회
12025정성태9/25/201918542제니퍼 .NET: 28. APM 솔루션 제니퍼, PHP, .NET 무료 사용 프로모션 2019 및 적용 사례 (8) [1]
12024정성태9/20/201920461.NET Framework: 861. HttpClient와 HttpClientHandler의 관계 [2]
12023정성태9/18/201920928.NET Framework: 860. ServicePointManager.DefaultConnectionLimit와 HttpClient의 관계파일 다운로드1
12022정성태9/12/201924867개발 환경 구성: 458. C# 8.0 (Preview) 신규 문법을 위한 개발 환경 구성 [3]
12021정성태9/12/201940673도서: 시작하세요! C# 8.0 프로그래밍 [4]
12020정성태9/11/201923843VC++: 134. SYSTEMTIME 값 기준으로 특정 시간이 지났는지를 판단하는 함수
12019정성태9/11/201917400Linux: 23. .NET Core + 리눅스 환경에서 Environment.CurrentDirectory 접근 시 주의 사항
12018정성태9/11/201916197오류 유형: 567. IIS - Unrecognized attribute 'targetFramework'. Note that attribute names are case-sensitive. (D:\lowSite4\web.config line 11)
12017정성태9/11/201920018오류 유형: 566. 비주얼 스튜디오 - Failed to register URL "http://localhost:6879/" for site "..." application "/". Error description: Access is denied. (0x80070005)
12016정성태9/5/201920016오류 유형: 565. git fetch - warning: 'C:\ProgramData/Git/config' has a dubious owner: '(unknown)'.
12015정성태9/3/201925427개발 환경 구성: 457. 윈도우 응용 프로그램의 Socket 연결 시 time-out 시간 제어
12014정성태9/3/201919187개발 환경 구성: 456. 명령행에서 AWS, Azure 등의 원격 저장소에 파일 관리하는 방법 - cyberduck/duck 소개
12013정성태8/28/201922088개발 환경 구성: 455. 윈도우에서 (테스트) 인증서 파일 만드는 방법 [3]
12012정성태8/28/201926645.NET Framework: 859. C# - HttpListener를 이용한 HTTPS 통신 방법
12011정성태8/27/201926231사물인터넷: 57. C# - Rapsberry Pi Zero W와 PC 간 Bluetooth 통신 예제 코드파일 다운로드1
... [76]  77  78  79  80  81  82  83  84  85  86  87  88  89  90  ...