AWS는 Xen 기반의 가상화 솔루션을 제공하기 때문에, 처음부터 Linux와 친숙했던 것은 사실입니다. 하지만, 2014년부터 마이크로소프트의 새로운 최고경영자인 사티아 나델라가 취임하면서 마이크로소프트는 Linux를 품고, Open Source를 품어 Cloud, Mobile에 전 사업을 집중 시키면서 많은 플랫폼들과 친숙해졌습니다.
그리고 우리는 Powershell로 AWS를 배우고 있으니, Instance정도는 Windows를 써야 cmdlet으로 AWS를 관리할 수 있지 않나 싶습니다. 안타까운 사실은, 아직까지 Powershell의 인지도와 SSH를 지원하지 않으며, "Windows = GUI"라는 개념들이 너무 당연한 듯 받아들여지기 때문에, AWS에서도 Powershell은 지원하지만, Windows Server core버전은 지원하지 않습니다. (AMI를 검색해보면 Windows Server Core버전이 있습니다만, 해당 AMI는 Beanstalk이라는 AWS 서비스에 의해 관리하는 Iknstance를 만들 때 사용됩니다.)
굉장히 부정적으로 써놨지만, 사실 Azure에서도 Windows Server Core버전을 지원하지 않으니 상관 없다고 생각한다.
(Windows Server 2016 에는 SSH기능이 내장되어 Core버전을 지원할 것으로 보여집니다. 이미 Azure에는 Windows Server 2016 Core TP4가 게시되어있습니다.)
그럼 바로 Windows Instance를 만들어 보시죠.
PS> $AMIImage = "ami-83a5bce2"
PS> $AccessPublicIp = $true
PS> $InstanceType = "t2.micro"
PS> $SubnetId = "subnet-d98c8abc"
PS> $SecurityGroupID = "sg-3dc0de59"
PS> $KeyPair = "kimsejun-oregon"
PS> New-EC2Instance -ImageId
$AMIImage -InstanceType $InstanceType -AssociatePublicIp $AccessPublicIp
`
-SubnetId $SubnetId -SecurityGroupId $SecurityGroupID -KeyName $KeyPair
-MinCount 1 -MaxCount 1
정상적으로 생성 되었는지 확인해 보겠습니다.
PS> (Get-EC2Instance -Instance i-7120c9b6).Instances.state
PS> (Get-EC2Instance -Instance
i-7120c9b6).Instances | `
select ImageId, PublicIpAddress, InstanceType, SubnetId, SecurityGroups,
KeyName, PrivateIpAddress
지정한대로 생성이 완료되었습니다. 그럼 Instance에 접속해 보도록 하겠습니다.
Windows에 접속은 RDP로 접속하시는 것은 다들 아실 것입니다. 하지만, RDP는 .pem 파일로 접속하는 방법이 없고 ID/PW방식으로 접속하기 때문에 .pem 파일을 가지고 Password를 얻어내야 합니다.
이렇게 얻어진 Password는 변경하여 관리하는 것이 AWS 권장사항이니 참고하시기 바랍니다.
(EC2 Instance 상태가 running인데 Password를 얻지 못하시는 분들은 잠시 후에 다시 시도해 보시기 바랍니다. EC2 Instance의 running은 Machine이 켜진 상태이지 OS 부팅(초기화)이 완료된 상태가 아닙니다.)
PS> Get-EC2PasswordData -InstanceId i-7120c9b6 -PemFile D:\kimsejun-oregon.pem
Password가 출력되었습니다. 해당 Password를 사용하여 RDP를 접속해 보도록 하겠습니다.
접속된 모습을 확인해 보실 수 있습니다.
다음 화면을 보시면 아시겠지만, Windows Server Instance에는 AWS Powershell Module이 기본적으로 설치되어 있습니다.
Windows Instance까지 만들어 보았습니다.
참고자료 : http://docs.aws.amazon.com/ko_kr/AWSEC2/latest/UserGuide/concepts.html
'AWS > 파워쉘로 배우는 AWS' 카테고리의 다른 글
#19 [EC2] NIC(ENI)를 추가해보자. (0) | 2016.01.22 |
---|---|
#18 [EC2] 고정 IP(EIP)와 Public DNS (0) | 2016.01.12 |
#16 [EC2] Linux Instance를 생성해 보자. (0) | 2016.01.08 |
#15 [EC2] 논리 방화벽 Security Group (0) | 2016.01.08 |
#14 [EC2] Instance의 Password Key-Pair (0) | 2015.12.24 |