본문 바로가기

AWS/파워쉘로 배우는 AWS

#11 [EC2] EC2 Image! AMI를 검색해 보자 (1/2) EC2의 기본이 되는 AMI부터 알아봅시다. 왜 AMI부터 알아봐야 하나요? 라는 질문을 하는 분들이 계실 꺼라 생각하여 간단히 언급하자면, 우리가 물리 서버를 살 때에 서버를 구매하고, OS를 설치하고, Application을 구동시키지 않습니다.서버를 구매할 때 가장 먼저 생각하는 것은 바로 Service, 그 후에 Service를 위한 Application, OS, 그리고 서버를 선택합니다. (PC 구매와는 다른 이야기 입니다.)그렇다면 우리도 마찬가지로 AWS를 사용해야 하는 이유가 있을 것이고, 그 AWS 위에서 동작시킬 수 있는 컴퓨팅인 EC2(Elastic Compute Cloud)를 구동시킬 때 가장 먼저 고려해야 하는 것은 다름 아닌 OS입니다. 언제나 그랬듯이 이것저것 생각하기 전에 c.. 더보기
[쉬어가기] VM 리소스 정의 본 문서는 VM의 기본에 대해 정의한 문서입니다. 굳이 읽으실 필요 없으신 엔지니어 분들은 넘어가셔도 상관 없습니다. 고의적이진 않았는데 [쉬어가기] 코너가 자주 나오네요. 무거우면서도 가벼운 주제인데요. VM에 대해서 기초지식이 있어야 다음 스텝으로 넘어갔을 때 이해가 쉬울 것 같아 [쉬어가기] 코너로 정리해 봅니다. 우선, VM(Virtual Machine)이라는 단어를 살펴보면 말 그대로 가상 컴퓨터입니다. 논리적으로 만들어진 컴퓨터라는 의미인데요. 많은 수식어와 정의가 난무해도 결국엔 VM은 '컴퓨터'라는 녀석입니다. 컴퓨터에는 CPU와 Memory가 있어야 하고, 이 리소스를 연결해주는 Bus가 존재해야 합니다. 데이터를 보존하려면 장기 보관장치인 디스크가 필요하고, 입출력에 있어서 키보드, 마.. 더보기
#10 [EC2] Instance를 만들기 위한 준비물을 알아보자 드디어! 네트워크 기본설정이 끝나고 EC2 Instance(VM)을 만들 수 있게 되었습니다.하지만 좋아하긴 이릅니다. 아직 준비해야 할 준비물이 많기 때문입니다.그럼 미리 만들어둔 Instance를 보면서 준비물을 확인해 봅시다. PS> Get-EC2Instance 음… 많은 리소스가 안쪽에 들어가 있네요. 일단 속성을 확인해 봅시다.GroupNames: EC2-Classic의 Securitygroup 이름이 들어간다. 현재는 사용되지 않는다. Groups: EC2-Classic의 Securitygroup이 들어간다. 현재는 사용되지 않는다.Instances: Instance의 정보가 들어있습니다.OwnerId: Instance의 소유자 정보 입니다.RequesterId: 사용자 대신 인스턴스를 시작하.. 더보기
#9 [Tag] 리소스에 태그를 달아보자 EC2 Instance(VM)을 만들고 싶지만… 우리에겐 그보다 중요한 것이 있습니다. 바로 Tag라는 녀석입니다.프로그래밍 할 때나 스크립트를 짤 때에 가장 중요한 것이 바로 주석 입니다. 게시글을 쓸 때나 정보를 공유할 때 가장 중요한 것이 Tag지요. AWS 리소스를 제작할 때도 Tag를 다는 것이 매우 중요합니다. 우리는 ID로 분별하기엔 너무 어렵고 그룹을 지정하기도 어렵기 때문이죠.그럼 간단하게(?) Tag다는 방법을 알아 봅시다. 우선, 리소스에 Tag를 달려면, Tag 속성을 알아야 합니다.(복잡하게…) 그럼 확인해 보시죠. PS> Get-EC2Vpc | Get-Member PS> Get-EC2Subnet | Get-Member 확인 되시나요? Tag의 속성이 String이 아니라 Syst.. 더보기
[쉬어가기] 잡설(+AWS 나빠요) Powershell로 AWS 배우기를 쓰면서 정말 많은 것들을 배웁니다. 그 중에 제일 와 닿는 것은 다름아닌 'Windows 지원에 소흘한 것 아니냐?'는 생각입니다.다들 동의하실지, 아닐지는 모르겠지만 개인적으로는 너무하다는 생각이 자주 드네요. cmdlet을 지원하는 것만해도 감지덕지로 생각해야 하는 걸까요?물론, AWS는 Amazon이지, Microsoft가 아니니 지원에 소흘할 수는 있다고 생각합니다만.... 너무 일관성 없는 명령어를 보면... 'cmdlet 만든 사람 정말 대충 만들었구나...'라고 생각할 수 밖에 없는 것 같아요. 글들을 읽어 보시면 난해하게 써져있는 부분들도 있고, 어떻게 말씀드려야 할지 모르겠는 정도의 정보들도 너무 많은 것 같아요.Powershell로 AWS를 배우기 .. 더보기
#8 [VPC] Public Subnet 만들기 VPC는 가상 개인 클라우드 라고 소개해 드렸습니다. 그렇다면 VPC안에서 제작된 Subnet은 사설 네트워크 망이 되겠죠. 그렇다면 외부와 통신해야 하는 Subnet은 어떻게 지정해야 할까요?먼저, Subnet의 정보를 확인 해 봅시다. PS> Get-EC2Subnet -SubnetId subnet-d98c8abc Subnet 속성들 중에 MapPublicIpOnLaunch라는 정보가 있다는 것을 확인하실 수 있습니다. 그대로 해석해 보시면 "런치시에 공인IP를 매핑한다."라고 씌여 있습니다. 현재 값이 Disable이군요. 그럼 해당 정보를 Enable로 바꿔 봅시다. PS> Edit-EC2SubnetAttribute -MapPublicIpOnLaunch $true -SubnetId subnet-d9.. 더보기
#7 [VPC] Route Tables 알아보기 네트워크 CIDR 디자인을 끝낸 다음에는 무엇이 생각나나요? 바로 Routing이 생각 나실 겁니다. 논리 네트워크이니까 라우팅도 생성해서 통신 설정을 해 주어야 Subnet끼리 혹은 LAN이나 WAN과 통신이 되겠죠?역시나 망설이지 말고 cmdlet부터 실행하여 Route를 확인해 봅시다. PS> Get-EC2RouteTable 확인되는 Route Table은 두 개가 있네요. 일단 속성 값 들을 간단하게 살펴봅시다. Tag: 태그 정보입니다.Associations: 라우팅이 적용된 Subnet 정보PropagatingVgws: Viretual Private Gateway(VPG)와의 정보Routes: 라우팅 정보입니다.RouteTableId: Route Table ID 입니다.Tags: 태그 정보입니.. 더보기
#6 [VPC] Subnet 만들기와 AvailabilityZone 알아보기 VPC를 만드셨다면 다음으로 Subnet을 만드실 차례입니다. "왜 subnet을 만드느냐?" 라고 물어보시는 분들이 계실꺼라 생각됩니다만, 우선 cmdlet부터 실행해 보고 설명 드리겠습니다. PS> Get-EC2Subnet 확인이 되셨나요? AvailabilityZone 이라는 새로운 단어가 튀어나왔네요. 이 부분에 대해 먼저 설명 드리겠습니다. 먼저 AvailabilityZone을 확인해 봅시다. PS> Get-EC2AvailabilityZone Us-west-2 Region에 Zone이 3개가 있다는 것을 확인하실 수 있습니다. 우리는 글보단 그림을 좋아하니 그림을 그려가며 설명하겠습니다. 다음 그림을 보시죠. AWS는 서비스 영역에 2개 이상의 DataCenter에서 서비스를 하여 High Av.. 더보기
#5 [VPC] VPC 알아보기 다른 책들은 컴퓨팅부터 시작하지만, Cloud는 역시 네트워크의 개념이 확실해야 한다고 생각하여 개인적인 중요도의 이유로써 VPC를 먼저 설명드립니다. VPC의 개념을 이해하고 활용한다면 AWS의 거의 모든 네트워킹은 마스터했다고 봐도 될 정도로 굉장히 중요하며 굉장히 짜증나는 녀석입니다.우선, 우리는 Cmdlet을 이용하여서 VPC란 놈을 파헤쳐 봅시다. PS> Get-EC2Vpc | select * 기본적으로는 저와 같이 하나의 VPC만 보이는 것이 맞습니다. 바로 Default VPC입니다. 먼저, 어떤 값 들을 속성값으로 가지고 있는지 확인해 봅시다. VpcState : VPC의 상태입니다.Tag : Tag입니다. Name Tag를 가장 많이 씁니다.CidrBlock : Cidr값 입니다. DHC.. 더보기
#4-1 [서론] AWS 자격증명을 파일로 저장하여 사용하는 방법 본 편은 "#4 [서론] Powershell 기본 세팅 하기"의 부록 편 입니다. #4 에서 언급했던 Access Key를 파일로 관리하는 방법에 대해서 알아봅시다.방식은 간단합니다. Access Key와 Secret Key를 Profile 단위로 저장한 .ini 파일을 참조하여서 Profile을 가져오는 방식입니다. 먼저, Profile.ini 파일을 아래와 같이 만들어 봅시다. [kimsejun]aws_access_key_id = A*******************aws_secret_access_key = 5*************************************** 간단하죠? Profile을 위와 같은 형식으로 계속 추가해 두시면 불러올 시 편합니다.이제 Powershell에서 Prof.. 더보기