본문 바로가기

AWS/파워쉘로 배우는 AWS

#20-1 [EBS] EBS 초기화를 해보자 블로깅을 꾸준히 하는게 이렇게 힘든거네요…이번 포스팅은 EBS 초기화에 대한 내용입니다. EBS를 포멧하는 것도 아니고 왠 초기화냐? 하시는 분들이 계시겠지만, 왠지 모르게 AWS에서는 EBS 최적화에 EBS 초기화라는 이름을 붙여 사용합니다.그럼 EBS 초기화가 무엇이냐? 를 설명하려면 다음 개념이 필요합니다.Cloud Service를 하기 위해서는 총 4가지의 필수조건이 필요합니다. Network Storage Computer Platform Application 뭐 Cloud Service를 하기 위한 필수조건이라기 보다 IT Infra를 구성하는 필수조건과 거의 동일한데요. 여기서 Storage에 초점을 맞춰보도록 하겠습니다.1,2,4 같은 경우 Virtualization이 되면서 공유하여 사용하.. 더보기
#20 [EBS] EBS를 추가해보자 EBS는 교육방송 입니다만… 여기서 지칭하는 EBS는 Elastic Block Storage입니다. AWS에서 지원하는 보조기억공간? 이라고 지칭해 봅시다. 간단히 말해 가상 디스크입니다. 가상 디스크라는 것은 말 그대로 가상머신에서 사용하는 디스크라고 이해하시면 쉽습니다. 우리가 가상디스크를 다룰 때 알아야 할 중요한 사실은 세 가지쯤 됩니다. 1. 가상디스크는 디스크이다. 말 그대로 디스크입니다. 컴퓨터에 디스크를 처음 연결하면 하시는 작업이 뭐죠? 파일시스템 생성과 포멧입니다. 그렇다면 가상디스크도 당연히 위 작업을 진행해 주셔야 합니다. 그리고 파일시스템의 문제는 가상디스크 문제가 아닌 OS문제입니다. 2. 가상디스크는 씬프로비저닝이다. 이건 대부분의 스토리지를 사용해 보신 분들이라면 이해하실 겁.. 더보기
#19 [EC2] NIC(ENI)를 추가해보자. 이번엔 Instance에 NIC를 추가해 보도록 하겠습니다. 그 전에 NIC를 추가하면 어떤 것들에 이점이 있는지 살펴봅시다. AWS에서 권장하는 방식으로는 위와 같이 4가지로 나옵니다. 개인적으로는 위 4가지 이외에 더 많은 부분들에서 이점을 얻을 수 있을 것 같습니다. 그 내용들은 다음과 같습니다. 관리 Network 대역을 나누어 사용할 수 있다. 이 내용은 아주 고리타분한 내용이지만, 실제로는 매우 유용하게 사용할 수 있습니다. ENI 기준으로 Security Group을 지정할 수 있기 때문에, 관리 대역과 통신하는 ENI에 보안정책을 다르게 주어주면 좀더 관리가 편해지기 때문입니다. NAT, IGW 등 Public Subnet과 내부만 통신되는 Private Subnet을 동시에 사용하여 통신.. 더보기
#18 [EC2] 고정 IP(EIP)와 Public DNS Cloud Infra를 사용하시다 보면 지금 당장은 필요 없지만 켜 놓으면 돈이 나가서 꺼놓는 Instance들이 있으실 것입니다. 이런 Instance들 중 Public Subnet에 있고 Public IP도 자동으로 받아오게 설정해둔 Instance를 껏다가 켜 보시면 Public IP가 바뀌는 것을 경험해 보셨을 것입니다. 이는 Public IP가 자동할당(DHCP) 되어서 발생하는 현상입니다. Instance에 Public IP를 삽입하는 것이 아니고 Instance에는 Private IP가 할당되고 Public IP와 1:1 Mapping되는 구조라고 설명 드린바 있습니다.Public IP가 바뀌는 것이 상관 없으시다면 굳이 설정하지 않아도 되지만, 고정적으로 Public IP를 사용하고 싶은 .. 더보기
#17 [EC2] Windows Instance를 만들어 보자. AWS는 Xen 기반의 가상화 솔루션을 제공하기 때문에, 처음부터 Linux와 친숙했던 것은 사실입니다. 하지만, 2014년부터 마이크로소프트의 새로운 최고경영자인 사티아 나델라가 취임하면서 마이크로소프트는 Linux를 품고, Open Source를 품어 Cloud, Mobile에 전 사업을 집중 시키면서 많은 플랫폼들과 친숙해졌습니다.그리고 우리는 Powershell로 AWS를 배우고 있으니, Instance정도는 Windows를 써야 cmdlet으로 AWS를 관리할 수 있지 않나 싶습니다. 안타까운 사실은, 아직까지 Powershell의 인지도와 SSH를 지원하지 않으며, "Windows = GUI"라는 개념들이 너무 당연한 듯 받아들여지기 때문에, AWS에서도 Powershell은 지원하지만, Wi.. 더보기
#16 [EC2] Linux Instance를 생성해 보자. 드디어 Instance(VM)를 생성하기 위한 준비가 끝났습니다. 이 영광을 와이프와 엄마 아빠 그리ㄱ…..사실 Instance를 생성 하는 데에 있어서 사전 준비작업은 전혀 필요가 없습니다만, 그렇게 만들어진 Instance는 접근할 수 없는 블랙박스가 되어버리기 때문에 전혀 사용을 할 수가 없습니다. 지금까지 작업한 내용들은 Instance에 접근하여 사용할 수 있는 최소한의 작업만을 진행하였습니다. 추가적인 것들이 있습니다만, 다음에 다뤄보기로 하고 Instance를 생성하고 접근하는 방법을 알아봅시다. 백문이 불여일행 cmdlet을 바로 실행해 봅시다.먼저, 명령어에 직접 속성값들을 삽입하면 지저분해 지기 때문에 제작한 AWS Resource들을 변수로 정의해 봅시다. PS> $AMIImage =.. 더보기
#15 [EC2] 논리 방화벽 Security Group 방화벽이라고 소개하였지만, 사실 방화벽과는 조금 성격이 다릅니다. 간단하게 설명하자면 Port ACL과 Firewall의 중간 어디쯤(?)에 위치한 녀석입니다. Hyper-V와 비교하자면 VMNetworkAdapterExtendedAcl 정도라고 할까요?여기서 확실하게 짚고 넘어갈 이야기가 있습니다. 바로 가상 네트워크에 대한 이야기입니다. 가상 네트워크란, 다른 말로 표현하면 Software Networking을 이야기 합니다. Network Software가 아니라는 이야기 입니다. 기존 Switch에서 동작하는 Network Software들은 물리적인 Network 연결을 보다 쉽게, 간편하게, 단순하게 하기 위해 개발된 프로그램 입니다. ISO 7 Layer를 기준으로(이해를 돕기 위해 ISO .. 더보기
#14 [EC2] Instance의 Password Key-Pair AWS에서 모든 Instance를 접근할 때에는 반드시 Key-Pair라는 녀석이 필요합니다. Key-Pair를 알아보기 전에 cmdlet을 신나게 두들겨 봅시다. PS> New-EC2KeyPair -KeyName "Test-key" 음? 너무 길어서 그런지 짤려서 나오네요? 그리고 KeyMaterial 값을 보니 Private Key 라는 것을 보니 개인키가 만들어지나 봅니다. 그렇다면 Key-Pair란 공개키와 개인키로 SSH 세션 연결 시에 PW가 아닌 인증서 방식으로 로그인 한다는 이야기가 되는군요. 출력된 개인키를 저장을 못했으니 Key-Pair를 다시 확인해 봅시다. PS> Get-EC2KeyPair -KeyName "Test-key" Key-Pair를 확인했는데 KeyMaterial 속성이 .. 더보기
#13 [EC2] Instance Type은 뭘까요? 안타까운 주제가 나왔습니다. 이래서 제가 AWS를 싫어합ㄴ…. 아 아닙니다.곤란한 이유는 여러 가지가 있지만, 가장 곤란한 이유는 Powershell로 AWS 배우기라는 타이틀인데!!!Instance Type을 확인하는 Cmdlet이 없다는 겁니다. (울고 싶어라…)CLI도 없는 것 보니 그냥 지원 안 하는 것이고.. Class를 확인하니 ConstantClass여서…. 에휴그런 관계로 이번 포스팅에서는 Cmdlet 없이 Guide만 보고 진행해야 합니다만… 솔찍히 cmdlet을 안 쓰고 설명서를 설명하기엔 그냥 문서 읽는 것이 이해가 빠르실 겁니다. Instance 유형 설명서: http://docs.aws.amazon.com/ko_kr/AWSEC2/latest/UserGuide/instance-typ.. 더보기
#12 [EC2] EC2 Image! AMI를 검색해 보자 (2/2) #11 [EC2] EC2 Image! AMI를 검색해 보자 (1/2) 포스팅에서 AMI검색에 대해 이것저것 알아보았습니다. 같은 명령을 써서 찾아봐야 하는데, Amazon Linux를 검색했었으니 이번엔 Windows Server 2012 R2를 검색해 봅시다. PS> Get-EC2Image -Filter @{ name= 'description'; values= "*Windows Server 2012 R2*" }, ` @{ name= 'owner-alias'; values= "amazon" }, @{ name= 'virtualization-type'; values= "hvm" } ` | Select-Object ImageId, Description, CreationDate, BlockDeviceMappi.. 더보기