Category: Compute


신규 일정 기반 예약 인스턴스 기능 출시

많은 고객은 미션 크리티컬 애플리케이션의 기능 일부를 정기적으로 (매일, 매주, 매월) 실행하고 있습니다. 아래에 몇 가지 응용 프로그램을 보여줍니다 :

  • 은행 및 투자 신탁 회사에서 매일 오후에 리스크 관리 계산하기
  • 전화 회사가 월초에 요금 계산을 수행하기
  • 물류 회사가 운송 경로 및 적재 최적화 계산을 월요일, 수요일, 금요일 아침에 수행하기
  • 애니메이션 스튜디오가 세부적인 CPU기반 3D 렌더링 처리를 매일 밤 수행하기

일정 기반 예약 인스턴스(Scheduled Reserved Instances) 기능은  이러한 활용 사례에 매우 적합합니다. 1 년 동안 매일, 매주, 매월 반복적인 용량을 확보 할 수 있습니다. 구매 완료 후 지정된 기간 중 인스턴스를 시작할 수 있게됩니다.

일정 기반 예약 인스턴스 구매하기
EC2 관리 콘솔에서 왼쪽의 Scheduled Instances을 선택합니다.

그리고, Purchase Scheduled Instances 버튼을 클릭하여 여러분의 요구 사항에 맞는 일정을 선택합니다.

시애틀에서 월요일, 수요일, 금요일 오전 일정에서 인스턴스를 사용하고자 합니다. 자신의 시간 (오전 6시)를 UTC로 변환하고 기간을 선택  (8 시간 업무 처리 시간 필요) 반복주기를 설정합니다. 또한 c3.4xlarge 인스턴스를 지정합니다 (여러 유형을 선택할 수 있습니다) :

일정을 설정할 때 로컬 시간도 확인할 수 있습니다.

Find schedules,를 클릭하면, 원하는 시간이 가능한지도 알 수 있습니다.

이전 단계에서 가용 영역(AZ) 항목에 Any(모두)를 선택했기 때문에, 검색 결과에는 여러 가지 가용 영역이 포함되어 있습니다. 가용 영역과 인스턴스 유형을 지정하지 않으면 더 많은 결과가 표시됩니다. 필요에 따라 QTY (인스턴스 수)를 조정하여 원하는 인스턴스를 장바구니에 넣습니다. 장바구니 내용을 확인할 수 있습니다 :

Review and purchase를 클릭하여 구매 내역을 확인한 후, 계속 하시려면 Purchase를선택합니다.

콘솔에서원하시는 일정 기반 예약 인스턴스를 확인하실 수 있습니다.

일정 기반 예약 인스턴스 사용하기

구매한 예약 인스턴스는 구입 시 지정한 일정에 맞추어 사용 가능(active)하게 됩니다. 콘솔에서 예약된 인스턴스를 선택하고 Launch Scheduled Instances (예약 인스턴스 시작)을 클릭하여 인스턴스를 시작할 수 있습니다.

보통 처럼 인스턴스를 시작(launch)하고 Review를 클릭합니다.

일정 기반 예약 인스턴스는 AWS Command Line Interface (CLI), AWS Tools for Windows PowerShell, 및 RunScheduledInstances 함수를 사용할 수 있습니다. 앞으로 오토스케일링, AWS Lambda, AWS CloudFormation 역시 지원 예정입니다.

알아두시면 좋을 점

이번 기능 추가로 두 가지 예약 인스턴스를 선택할 수 있습니다. 기존 예약 인스턴스 (앞으로는 표준 예약 인스턴스라고합니다) 모델은 1 년 또는 3 년의 기간 EC2 컴퓨팅 용량을 예약하고 그 기간 언제든지 사용할 수 있습니다. 새 일정 기반 예약 인스턴스 모델은 사전에 결정한 반복 타임 블록 대체로 주문형 가격의 5 %에​​서 10 % 싼 가격에 1 년의 기간으로 예약 할 수 있습니다.

이 기능은 오늘부터 미국 동부 (버지니아 북부) 미국 서부 (오레곤) EU (아일랜드) 지역에서 C3, C4, M4, R3 인스턴스로 이용하실 수 있습니다.

Jeff;

이 글은 New – Scheduled Reserved Instances의 한국어 번역입니다.

ChatOps를 위한 AWS Lambda를 통한 Slack 통합 샘플 코드

여러분이 속한 개발팀이 채팅 기반 운영(ChatOps)?를 하고 계신가요? 대회를 기반으로 하는 새로운 운영 방식을 의미하는 것으로 하나 이상의 봇(bots)을 활용하여 대화에 빠르게 대응하여 상태 확인 및 보고를 해주는 용어입니다.

채팅 환경은 실시간 소통이 가능하고, 손쉽게 여러 사람이 웹 혹은 모바일 기기를 통해 접근할 뿐만 아니라 이전 메시지 기록까지 볼 수 있는 장점이 있습니다. 봇 기반의 통합 작업은 운영팀이 좀 더 협업을 하는데 도움을 주고, 갑작스런 문제에 동시 다발적으로 함께 추적하여 문제를 해결 할 수 있는 방식을 지원 합니다.

신규 Slack 통합 방식
AWS 고객들이 시스템 환경을 좀 더 새롭고 혁신 적인 방식으로 운영을 하기 위해, 최근 AWS Lambda 기반의 Slack 통합 함수 예제 를추가하였습니다.

여러분은 이러한 샘플 예제를 통해 채팅 기반 운영을 할 수 있는 도구를 만들어, 현재 사용하고 계신  Slack 대화안에 넣으실 수 있습니다. slack-echo- 샘플 코드는 특정 명령어에 대응하는 봇을 만들 수 있게 해주고, cloudwatch-alarm-to-slack- 샘플 코드는 알림 및 상태 보고를 도와줍니다. 여러분이 봇에게 AWS API 접근 권한을 부여하기 때문에, (봇을 통해) AWS 자원과 원하는 방법으로 상호 작용할 수 있습니다. 상태를 조회하거나, 오류 조건, 설정 변경 및 새로운 자원 생성도 가능합니다.

CloudWatch 알람을 통해 오토 스케일링 그룹을 모니터링하고, 제한 용량이 초과했을 경우 이를 Slack 채널의 ChatOps 팀에 메시지를 보낸다고 가정해 봅시다. 운영팀에서는 상황을 좀 더 자세히 살펴 보고 빠르게 스케일업을 통해 문제를 해결 할 수 있습니다. 다양한 AWS  자원과 Slack 통합을 통해, 아래와 같이 전체적은 운영 프로세스의 효율화가 가능합니다. (붉은 화살표는 알림, 녹색은 그에 대한 대응입니다.)

이러한 시스템 개발을 위해, 채널에 메시지를 보내기 위한 Slack webhook 을 사용하고, 메시지 내용은  cloudwatch-alarm-to-slack-python 샘플 예제로 보내면 됩니다. 샘플 예제를 기반으로  AWS Key Management Service (KMS) 키를 만든 후, webhook 주소를 암호화하고 base-64 인코딩을 통해  데이터 보안을 할 수 있습니다. 그리고, IAM Role을 통해 KMS Decrypt 함수를 호출 할 수 있는 권한을 부여하면, 됩니다. 슬랙 채널에 메시지를 전달하는 간단한 이벤트 핸들러 함수는 다음과 같습니다.

slack_message = {
    'channel': SLACK_CHANNEL,
    'text': "%s state is now %s: %s" % (alarm_name, new_state, reason)
}

req = Request(HOOK_URL, json.dumps(slack_message))

이벤트 핸들러를 통해 호출을 통해 나오는 모든 예외 처리를 할 수 있으며, 샘플 코드에 포함되어 있습니다.

또한, 맞춤형 슬랙 명령어를 구현하는 함수를 만들 수도 있습니다. 이를 위해 Amazon API Gateway를 활용하여, 각 함수의 HTTP 엔드 포인트를 만들고 엔드 포인트에서 명령어를 실행할 슬랙 채널을 설정하면 됩니다. 예를 들어, 아래 설정은 /scale/forcealarm 명령어를 위한 것입니다.

이벤트 핸들러 함수는 사용자, 명령어, 채널 등에 대한 접근 권한이 있습니다.

def lambda_handler(event, context):
    req_body = event['body']
    params = parse_qs(req_body)

    user = params['user_name'][0]
    command = params['command'][0]
    channel = params['channel_name'][0]
    command_text = params['text'][0]

POST 메서드에 대한 엔드 포인트를 설정하고 NONE에게 권한을 설정하면 됩니다. 또한, JSON에 요청하는 본문을 연결하면 됩니다. 각 샘플 코드에 포함되어 있는 상단의 주석 부분에 좀 더 자세한 정보들이 있으니 참고하시면 됩니다.

여러분의 함수를 공유해 주세요!
이러한 방법을 통해 여러분의 운영 방식을 획기적으로 개선할 다양한 Lambda  함수에 대한 아이디어 및 코드를 공유해 주시면 소개해 드리겠습니다.

Jeff;

이 글은 New – Slack Integration Blueprints for AWS Lambda의 한국어 번역입니다.

새해 인사 – EC2 가격 인하 (C4, M4, R3 인스턴스)

새해 복 많이 받으세요! 오늘 새로운 EC2 가격 인하 소식을 먼저 알려드립니다.

이번에 온디멘드예약 인스턴스전용 호스트 가격을  C4 M4 인스턴스 사용 고객(리눅스 사용)에 대해 5% 가격 인하를 합니다. 대상 리전- US East (Northern Virginia), US West (Northern California), US West (Oregon), Europe (Ireland), Europe (Frankfurt), Asia Pacific (Tokyo), Asia Pacific (Singapore)Asia Pacific (Sydney))

또한, 이번에 온디멘드 및 예약 인스턴스 및 전용 호스트 가격을  R3 인스턴스 사용 고객(리눅스 사용)에 대해 5% 가격 인하를 합니다. 대상 리전- US East (Northern Virginia), US West (Northern California), US West (Oregon), Europe (Ireland), Europe (Frankfurt), Asia Pacific (Tokyo), Asia Pacific (Singapore), Asia Pacific (Sydney), and South America (Brazil) regions.

마지막으로  AWS GovCloud (US)  사용 고객 중 R3 인스턴스 사용 고객(리눅스 사용)에 대해 5% 가격 인하를 합니다.

위에 이야기한 리전에서는 Windows, SLES 및 RHEL 사용 고객에게도 일부 가격 인하가 있습니다.

온디멘드 및 전용 호스트에 대한 가격은 2016년 1월 1일로 소급해서 적용하며, 새로운 예약 인스턴스 가격 인하는 오늘 부터 적용합니다. 1개월간 인하된 가격이 적용되지 않을 수 있으나 월말에는 적용이 될 것입니다.

좀 더 자세한 사항은 월말에   AWS Price List API 에 업데이트 될것입니다.

AWS 가격 인하 횟수를 세어본다면, 이번이 51번째 인하입니다!

— Jeff;

이 글은 Happy New Year – EC2 Price Reduction (C4, M4, and R3 Instances)의 한국어 번역입니다.

AWS 신규 NAT 게이트웨이 서비스 출시!

Amazon Virtual Private Cloud을 통해 AWS 클라우드 내에서 논리적으로 고립된 사설 네트워크를 구성할 수 있습니다. VPC내에서 원하는 사설 IP 대역대, 서브넷 생성, 라이팅 테이블 설정 등을 할 수 있습니다. 가상 사설 게이트웨이를 통해 VPC에 연결할 수도 있습니다. 또한, 기존 데이터 센터에서 하드웨어 가상 사설 네트워크(VPN)을 이용하여 연결도 가능합니다.

VPC 사설 서브넷에 있는 EC2 인스턴스에서 인터넷을 연결하려고 할 때는 어려운점이 있습니다. 서브넷이 사설망이기 때문에 인스턴스에 할당된 IP 주소는 공개될 수 없기 때문에 네트워크 주소변환(Network Address Translation, NAT)이라는 기법을 사용하게 됩니다. 이를 통해 사설 IP 주소를 공개 주소로 변환함으로서 외부와의 통신이 가능하게 됩니다.

신규 NAT 게이트웨이 관리 서비스 출시
주소 변환을 하는데 확장성은 도전적인 문제입니다. 이를 간단하게 해결하고, 여러분이 좀 더 비지니스에 집중하실 수 있도록 AWS를 위한 신규 NAT 게이트웨이 관리 서비스를 출시합니다!

NAT를 제공하기 위해 자체 EC2 인스턴스 클러스터에 설정, 모니터링 및 확장(고 가용성을 위해 적어도 2대는 있어야 함)을 고려하고 운영 하는 대신, 몇 번의 클릭 만으로 게이트웨이를 설정할 수 있습니다.

게이트웨이는 고가용성을 제공하며, 각 게이트웨이는 10Gbps의 TCP, UDP 및 ICMP 트래픽 역시 제어 가능하며, 아마존에서 관리하게 됩니다. 여러분은 Elastic IP 주소를 할당 받아 공개 IP 주소를 게이트웨이에 설정만 하면 됩니다.

NAT 게이트웨이 설정하기
이제 NAT 게이트웨이를 한번 설정해 보겠습니다. 먼저 VPC 관리 콘솔에서 왼쪽 네비게이선 메뉴에서 NAT Gateways를 선택합니다.

Create NAT Gateway를 클릭하고, 서브넷 하나를 선택합니다.

기존 할당 받은 Elastic IP 주소를 선택하거나 새로 추가합니다.

Create a NAT Gateway를 선택합니다.

확인 사항을 보시다시피, 원하는 트래픽을 인터넷 게이트웨어로 보내기 위해 VPC의 라우팅 테이블을 수정해야 합니다. 게이트웨이의 내부(사설) IP 주소는 자동으로 선택되고, 게이트웨이 서브넷 안에 위치합니다. 아래는 샘플 라이팅 테이블입니다.

설정은 모두 완료되었습니다. 확장을 위한 사이즈 설정이나 게이트웨이 자체 관리는 더 이상 필요 없습니다.
And that’s all you need to do. You don’t need to size, scale, or manage the gateway.

VPC Flow Logs – 네트워크 트래픽 수집 및 활용 기능을 활용하여 게이트웨이 상의 트래픽을 수집하여, 이를 통해 패킷, 바이트 및 프로토콜 등의 CloudWatch 수집 통계를 만들어 로그를 남길 수 있습니다. 아래와 같은 수집 패턴을 필터링할 수 있습니다. (ENI_ID 및 NGW_IP 실제 값)

[version, account_id, interface_id=ENI_ID, src_addr, dst_addr=NGW_IP, src_port, dst_port, protocol, packets, bytes, start, end, action, log_status]

결과 그래프는 아래와 같이 표시할 수 잇습니다.

VPC 생성 마법사를 통해 신규로 VPC를 생성할 경우, NAT 게이트웨이를 만들고 라우팅 테이블도 함께 만들어 주기 때문에 더 손쉽게 만들 수 있습니다.

더 자세한 사항은 VPC 사용자 가이드VPC NAT Gateway 문서를 참고하시기 바랍니다.

서비스 요금 및 제공 범위
오늘 부터 US East (Northern Virginia), US West (Oregon), US West (Northern California), Europe (Ireland), Asia Pacific (Singapore), Asia Pacific (Sydney)Asia Pacific (Tokyo) 리전에서 사용가능합니다.

서비스 요금은 NAT 게이트웨이 사용 시간 당 $0.045이며, 데이터 처리 및 전송 비용은 별도입니다. 데이터 처리 비용은 NAT 게이트웨이를 통과하는 양에 따라 달라지며, 데이터 전송 비용은 EC2 인스턴스와 인터넷 망 사이의 요금입니다. 더 자세한 것은 VPC 요금표를 참고하시기 바랍니다.

Jeff;

EC2 Run Command 업데이트 – 리눅스 인스턴스 지원 시작!

2개월 전 EC2 Run Command – 대규모 원격 인스턴스 관리 기능을 출시하고, 당시에 리눅스에서도 유사한 기능을 제공할 것이라고 예고해 드린 바 있습니다. 오늘부터 리눅스에서도 이 기능이 가능하게 되었습니다.

리눅스용 Run Command
윈도에서와 마찬가지로 이 기능은 관리자가 손쉽게 안전한 방법으로 EC2 인스턴스 운영 숫자와 관계없이 관리할 수 있는 방법을 제공합니다. 패치를 설치하고 나서 설정 파일을 수정하면 되며 아래와 같은 다양한 관리 방법을 제공합니다.

  • 인스턴스에 대한 구성 변경을 일관성을 가지면서 임시(ad-hot) 구현할 필요성
  • 여러 인스턴스에 걸쳐 신뢰성과 일관성있는 결과의 필요성
  • 변경을 실시 할 수있는 사람과 할 수 있는 권한 제어의 필요성
  • 어떤 조치가 이루어 졌는지의 명확한 감사(Auditing)의 경로
  • 전체 원격 데스크톱 (RDP) 접근의 필요 없이 위의 사항을 하고자 하는 필요성

명령어 실행 방식은 안전하고, 신뢰할 수 있는 방법이며 편리할 뿐만 아니라 확장성이 높습니다. 자신의 명령어을 작성한 후, AWS Identity and Access Management (IAM)를 사용한 세밀한 권한 제어를 수행 할 수 있습니다. 예를 들어, 신뢰할 수 있는 사용자 그룹에 의해 엄격하게 통제된 특정 세트의 인스턴스에서 실행할 수 있는 관리 명령을 지정할 수 있습니다. 모든 명령어는 감사를 위해 AWS CloudTrail를 통해 중앙에서 기록 및 감사 할 수 있게 됩니다.

Run Command의 이점
새로운 Run Command의 기능은 다음과 같은 이점을 제공하도록 설계되어 있습니다 :

  • 제어 및 보안: IAM 정책과 규칙(Rule)을 사용하여 명령어와 인스턴스에 대한 접근 통제를 할 수 있습니다. 따라서 인스턴스에 직접 접근하는 사용자의 수를 줄일 수 있습니다.
  • 신뢰성: 구성 변경 템플릿을 생성하여 시스템의 신뢰성을 향상 시킬 수 있습니다. 이를 통해 예측 가능성을 높이면서 구성 불일치를 줄이기 위한 제어가 가능합니다.
  • 가시성: Run Command을 통해 명령어 추적을 지원하여 CloudTrail 와 통합을 통한 구성 변경 사항에 대한 시각화가 가능합니다.
  • 용이성: 미리 정의 된 명령어 세트를 선택하여 실행하고, 관리 콘솔, CLI 또는 API를 통해 진행 상황 추적을 할 수 있습니다.
  • 사용자 정의: Run Command를 자신의 조직의 요구에 맞춘 사용자 정의 명령어로 만들 수 있습니다.

리눅스용 Run Command 사용하기
Run Command는 amazon-ssm-agent 프로그램을 각 인스턴스에 설치해야 합니다. 아래 리눅스 배포판에서 가능합니다.

  • Amazon Linux AMI (64 bit) – 2015.09, 2015.03, 2014.09, and 2014.03.
  • Ubuntu Server (64 bit) – 14.04 LTS, 12.04 LTS
  • Red Hat Enterprise Linux (64 bit) – 7.x

Run Command로 할 수 있는 기능은 아래와 같습니다.

  • 쉘 커맨드 및 스크립트 실행
  • 사용자 및 그룹 추가
  • 사용자 및 그룹 권한 설정
  • 실행 중인 서비스 모두 보기
  • 특정 서비스 시작 및 중단
  • 시스템 리소스 보기
  • 로그 파일 보기
  • 애플리케이션 설치 및 삭제
  • Cron 작업 업데이트 가능

EC2 기술 문서 중 Configure the SSM Agent를 통해 신규 인스턴스에 UserData 영역에 에이전트를 부트스트래핑할 수 있습니다.

아래는 어떻게 커맨드 실행 문서를 선택하는지 보여 줍니다. (리눅스와 윈도로 나눠져 있습니다.)

커맨드나 커맨드 모음을 실행할 인스턴스 대상을 선택할 수 있습니다.

커맨드 실행 결과를 볼 수 있습니다.

이전에 실행했던 커맨드 결과도 살펴 볼 수 있습니다.

정식 출시
이 기능은 US East (Northern Virginia), US West (Oregon), 및 Europe (Ireland) 리전에서 사용가능합니다. 여러분이 사용하는 AWS 리소스 외 추가 비용은 없습니다. 더 자세한 것은 Run Command 페이지를 참고하시기 바랍니다.

Jeff;

이 글은 EC2 Run Command Update – Now Available for Linux Instances의 한국어 번역입니다.

EC2 업데이트- T2.Nano 인스턴스 타입 출시

지난 re:Invent 2015에서는 새로운 EC2 인스턴스 타입에 대해 알려드린 바 있습니다. 여기서 t2.nano 인스턴스 타입(t2.micro, t2.small, t2.medium, t2.large와 같은 방식)을 공개했고, 기본적인 프로세서 용량을 제공하면서 필요할 때 마다 모아둔 크레딧을 통해 더 많은 용량을 사용할 수 있는 방식입니다.

이전 블로그 (새로운 T2.Large 인스턴스 타입)에서 말한 것처럼, 이러한 방식은 고객들에게 큰 인기를 끌고 있습니다. 몇 가지 자체 조사에 따르면, 96%의 T2 인스턴스가 항상 양호한 CPU 크레딧을 보유하고 있습니다. 그 결과, 고객들은 비용 효율적인 적절한 컴퓨팅 용량을 사용하고 있습니다. 만약 1년 혹은 3년 예약 인스턴스를 구매하신다면 더 경쟁력 높은 비용 절감 효과를 얻을 수 있습니다.

t2.nano 역시 낮은 트래픽의 웹 사이트나 마이크로 서비스 운영, 개발 및 테스트 환경 등에 적당한 인스턴스로서 모니터링을 통해 비용 효율적으로 사용가능합니다. 또한 교육 및 실습 환경을 설정하는 경우도 유용합니다.

인스턴스 사양
t2.nano인스턴스는 512 MiB 메모리와 1 vCPU를 가지며 32비트 혹은 64비트 운영체제 및 애플리케이션을 실행할 수 있습니다. EBS 암호화 및 인스턴스 당 두 개 까지 Elastic Network Interfaces를 지원합니다.

t2.nano는 24시간 평균 5% 미만의 CPU 워크로드를 실행하는 경우에 사용 가능하며, CPU 크레딧에 따라 전체 용량의 인텔 CPU 성능을 활용할 수 있습니다. 새롭게 공개한 t2.nano는 30 크레딧으로 부터 시작하며, 시간당 3 크레딧으로 축적을 하고 총 72 크레딧까지 모아두실 수 있습니다. 이는 100% CPU 용량을 필요시 72분 정도 사용 가능한 양입니다.

리눅스 및 윈도 인스턴스를 사용할 수 있으나, 윈도 인스턴스의 경우 리눅스 보다 좀 더 많은 CPU와 메모리를 사용하기 때문에 여러분의 애플리케이션 특성에 맞추어 최적의 인스턴스 크기를 선택해서 테스트 할 수 있습니다. 만약에 윈도 GUI 환경이 필요하지 않다면, Server Core AMI를 사용해 보시기 바랍니다.

EC2 가격 및 샘플 설정
t2.nano 인스턴스 가격은 정확히 각 리전별 t2.micro 가격의 50%입니다. 더 자세한 것은 EC2 요금 페이지를 참고하시기 바랍니다.

Region Price / Hour (On-Demand)
Price / Month (On-Demand)
1 Year Reserved Instance / Month
3 Year Reserved Instance / Month
US East (Northern Virginia) $0.0065 $4.75 $3.125 $2.10
US West (Oregon) $0.0065 $4.75 $3.125 $2.10
Europe (Ireland) $0.0070 $5.11 $3.42 $2.31
Asia Pacific (Tokyo)  $0.0100 $7.30 $5.25 $3.44
South America (Brazil) $0.0135 $9.85 $5.67 $4.17

낮은 트래픽의 웹사이트(월간 2만5천 방문자 미만)를 운영하신다면 t2.nano를 사용해 보시기를 권장 드립니다. 현실에서 가장 필요하면서도 트래픽을 감안할 수 있는 방식입니다.

추가적으로 인스턴스 그 자체 뿐만 아니라 8GB EBS SSD 볼륨 및 Amazon Route 53 도메인 네임 같은 샘플 설정을 포함합니다. 2GB 네트웍 트래픽을 포함하며 아래는 이러한 비용을 포함한 US West (Oregon)의 월간 비용입니다.

AWS Service
Configuration On-Demand 1 Year Reserved Instance
3 Year Reserved Instance
EC2 t2.nano $4.75 $3.17 $2.11
EBS Volume 8 GB SSD $0.80 $0.80 $0.80
Network Out  2 GB $0.09 $0.09 $0.09
Route 53  1 Domain + 25K Queries $0.51 $0.51 $0.51
Total Price $6.15 $4.57 $3.51

매우 비용 효율적이며 추가 네트워크 용량에 1달러 미만(정확히 0.81달러)에 사용 가능합니다. 여러분이 작은 웹 사이트를 운영하면서도 비용에 대해 민감하시다면 꼭 빌링 알람을 설정하시기 바랍니다.

이를 통해 좀 더 쉽게 트래픽을 제어할 수 있으며, 워크로드의 분산을 위해 S3, Elastic Load Balancing, Auto Scaling, Amazon Relational Database Service (RDS)AWS CloudFormation을 활용할 수 있습니다. 필요하다면, 언제든지 다양한 EC2 인스턴스 타입으로 변경도 가능합니다.

AWS 파트너사인 Bitnami에서는 다양한 패키지 애플리케이션 및 도구를 제공하고 있으며, 몇 번의 클릭만으로 이미 설치된 프로그램을 바로 구동가능합니다. 대표적인 예로 WordPress AMIt2.nano에서 사용 가능합니다. 다른 애플리케이션도 AWS Marketplace에서 찾으실 수 있습니다.

정식 출시
t2.nano 인스턴스 타입은 US East (Northern Virginia), US West (Oregon), US West (Northern California), Europe (Ireland), Asia Pacific (Singapore), Asia Pacific (Tokyo), South America (Brazil), 및 AWS GovCloud (US) 리전에서 정식 출시 합니다. 곧 Europe (Frankfurt)Asia Pacific (Sydney)서 제공될 예정입니다. 여러분은 AWS Elastic BeanstalkAWS CloudFormation에서도 사용 가능합니다..

Jeff;

이 글은 EC2 Update – T2.Nano Instances Now Available의 한국어 번역입니다.

EBS 부팅 볼륨 암호화 신규 기능 출시

암호화는 데이터 보호 전략의 가장 중요한 영역입니다. 최근 1~2년 사이에 AWS는 클라우드 기반 정보를 저장하는 데 있어 암호화 방식을 획기적으로 단순화 시키는 많은 기능들을 선보였습니다. 이들 기능 대부분은 AWS Key Management Service (KMS)을 기반으로 하며, 아래와 같은 주제로 블로그에서 다루었습니다.

더 자세한 사항은 AWS KMS와 통합 가능한 서비스 목록을 살펴 보시기 바랍니다.

많은 고객들은 AWS를 통해 좀 더 쉽게 데이터 암호화를 할 수 있게 되었고, 이를 통해 굉장히 어려웠던 일을 AWS를 통해 손 쉽게 해결할 수 있었다는 피드백을 보내주셨습니다.

EBS 부팅 볼륨 암호화
오늘 EBS 부팅 볼륨의 암호화 지원을 시작합니다. 이 기능은 최근에 EBS 스냅샷 복사 기능에서 부터 암호화 지원을 시작하였습니다.

EBS 부트 볼륨 암호화를 사용할 수 있는 Amazon Machine Images (AMIs)를 생성하고 이 AMI를 EC2 인스턴스 시작 시 사용하면 됩니다. 저장한 데이터는 모두 암호화 되며, EC2 인스턴스와 EBS 볼륨 사이의 데이터 역시 암호화 됩니다. 복호화는 인스턴스에서 필요시에만 이루어져서 메모리에만 저장됩니다.

이 신규 기능을 통해 EBS 데이터 볼륨을 비롯해서 부팅 볼륨 데이터까지 암호화 할 수 있음으로서 보안, 규정 준수 및 감사에 큰 도움이 될 것입니다. 더 나아가 KMS를 통해 암호화 키의 사용 내역 등을 감사 및 추적할 수도 있습니다.

각 EBS를 포함한 AMI는 하나 이상의 EBS 볼륨 스냅샷을 참고합니다. 첫번째 참조는 부팅 볼륨의 이미지이고, 다른 하나는 데이터 볼륨입니다. AMI를 시작하면 EBS 볼륨이 각 스냅샷으로 부터 만들어집니다. EBS가 이미 데이터 볼륨에 대한 암호화를 지원하기 (볼륨과 연계된 스냅샷 포함) 때문에 볼륨 전체에 대한 암호화를 지원하는 싱글 AMI를 만들 수 있으며, 원한다면 개별 KMS 고객 마스터 키를 각 볼륨에서 사용할 수 있습니다.

암호화된 EBS 부팅 볼륨 만들기
암호화된 EBS 부팅 볼륨 만드는 과정은 기존 AMI(리눅스나 윈도)에서 시작합니다. AMI을 직접 소유하거나 공개되어 있는 것을 바로 사용할 수 있습니다. 또는 이미지로 부터 AMI를 시작하여, 암호화된 EBS 부팅 볼륨을 이미지로 만들 수 있습니다. (예를 들어 윈도 AMI). 암호화된 AMI는 개인적으로만 사용가능하며 다른 AWS 계정에 공유할 수 없습니다.

AMI와 암호화된 스냅샷으로 ec2-copy-image 명령어를 이용하여 간단하게 새로운 AMI를 만들 수 있습니다.

$ ec2-copy-image -r source_region -s source_ami_id \
  [-n ami_name] [-d ami_description] [-c token] \
  [--encrypted] [--kmsKeyID keyid]

만약 --encrypted 파라미터와 --kmsKeyID 없이 암호화를 요청하면, 기본 EBS 고객 마스터키 (CMK)를 사용합니다.

예를 들어, Amazon Linux AMI를 복사하는 방법입니다.

$ ec2-copy-image -r us-east-1 -s ami-60b6c60a  \
  --encrypted --kmsKeyID arn:aws:kms:us-east-1:012345678910:key/abcd1234-a123-456a-a12b-a123b4cd56ef

암호화된 부팅 볼륨과 AMI를 EC2 관리 콘솔에서 만들 수도 있습니다.

암호화된 EBS 부팅 볼륨 사용하기
새 AMI를 만들고 나면, 새로운 인스턴스를 띄울 때 마다 사용할 수 있습니다. 코드를 수정하거나 운영 과정을 바꿀 필요가 없습니다.

정식 출시
본 기능은 Beijing (China)을 제외한 모든 AWS 리전에서 사용 가능하며, 암호화 기능에 따른 추가 비용은 없습니다.

Jeff;

이 글은 New – Encrypted EBS Boot Volumes의 한국어 번역입니다.

오토스케일링 신규 기능 – 인스턴스 보호하기

EC2 인스턴스에서는 고객이 만든 조건에 따라 서버의 숫자를 증가 혹은 감소할 수 있는 오토 스케일링을 이용할 수 있습니다. 스케일 아웃(Scale-out)을 통해서 고객의 요구에 맞는 트래픽 처리를 위한 컴퓨팅 성능을 확보할 수 있고, 스케일 인(Scale-in)을 통해 줄어든 트래픽에 대응해 비용을 줄일 수 있습니다.

오토스케일링에서 서버가 감소되는 스케일인 상황에서 인스턴스를 제어할 수 있는 추가 기능을 소개합니다. 과거에는 어떤 특별한 방법 없이 모든 오토스케일링 그룹 내 모든 인스턴스가 제거될 수 있습니다. 신규 제어 기능을 사용하시면, 특정 인스턴스를 제거하지 않도록 보호 할 수 있습니다.

이러한 기능을 추가한 것은 몇 가지 이유가 있습니다. 먼저 특정 인스턴스가 SQS 큐를 받아주는 것 같은 긴 시간 동작하는 작업을 진행하는 경우, 인스턴스 보호를 통해 작업이 소실 되는 것을 막아줄 수 있습니다. 두번째는 특정 인스턴스가 오토스케일링 그룹내에서 특별한 역할을 하는 경우, 즉 Hadoop 클러스터의 마스터 노드라던가 다른 인스턴스가 띄워져 실행되는 것을 모니티렁 하는 경우 등입니다.

스케일인 상황에서 인스턴스 보호하기
오토스케일링 콘솔에서 Actions 메뉴의 Instance Protection를 선택하여 특정 인스턴스를 스케일인 상황에서도 제거되지 않도록 할 수 있습니다.

아래에서 확인해 볼 수 있습니다.

콘솔 내에서 각 인스턴스의 보호 상태를 확인할 수 있습니다.

SetInstanceProtection API 함수를 통해서도 이러한 기능을 수행할 수 있습니다. 만약 장시간 큐 기반 워커 프로세스를 스케일인 상황에서 보호하려면, 다음과 같은 슈도 코드를 사용할 수 있습니다.

while (true)
{
  SetInstanceProtection(False);
  Work = GetNextWorkUnit();
  SetInstanceProtection(True);
  ProcessWorkUnit(Work);
  SetInstanceProtection(False);
}

대부분의 경우, 오토스케일링 그룹에서 적어도 하나의 인스턴스를 남겨둘 수 있습니다. 그러나, 모든 인스턴스를 보호하게 되면, 스케일인 동작은 일어나지 않습니다. 더 자세한 사항은 오토스케일링 라이프 사이클 문서를 참고하시기 바랍니다.

이 기능은 오늘부터 사용 가능합니다.

Jeff;

PS – AWS SDKs는 2015년 12월 8일 부터 SetInstanceProtection API 함수를 통해 사용 가능합니다.

이 글은 New – Instance Protection for Auto Scaling의 한국어 번역본입니다.

(2016년 변경 예고) EC2 및 EBS Resource ID, 길이 증가 예정

EC2팀 Angela Chapman가 2016년에 EC2 인스턴스, 예약 및 EBS 볼륨 스냅샷 리소스 ID의 길이 변화에 대한 예고에 대한 글을 게시하여 함께 공유드립니다.
– Jeff;


EC2와 EBS는 앞으로 1년여에 걸쳐 리소스 ID 길이를 변경할 예정입니다. 2016년에 예약 인스턴스, 볼륨 스냅샷에서 ID 길이를 증가시킬 예정입니다. 2016년 말까지 길어진 ID가 제공될 예정이며, 이러한 변경으로 고객에게 큰 영향은 없을 것입니다. 그러나, ID 길이 확장에 따라 시스템 계획 및 테스트를 하실 수 있도록 사전에 공지합니다.

이번 ID 길이 확장 결정은 AWS의 지속적인 성장에 따른 이유입니다. EC2, EBS 등의 특정 리소스 ID가 향후 1년 이후에는 고갈될 것으로 생각되며, 장기적으로 새로운 인스턴스 및 예약, 볼륨 스냅샷 생성이 방해 받지 않도록 하기 위해 지금 보다 더 긴 ID를 도입 해야합니다. 새로운 ID 형식은 기존 ID 형식에서 변화는 없으며, 단순히 길이에만 변경이 있습니다. 기존의 ID 형식은 자원 식별자에 이어 8자 길이의 형식으로 되어 있으나, 새로운 포맷 뿐만 아니라 리소스 식별자 17자 길이를 사용합니다.

AWS 대부분 고객들은 이러한 변화에 의한 영향은 없습니다. 그러나 리소스 ID를 해석하고 저장하는 고객 자체 시스템에는 영향을 줄 수 있습니다. 기존 자원에 8자 길이의 기존 ID를 계속 사용할 수 있으며, 기존 ID는 변경되지 않고 계속 지원합니다. 새로운 포맷을 선택하신 후, 신규 자원에만 17자 길이의 ID를 사용할 수 있습니다. SDK는 신규 ID 대응을 지원하며, 업데이트가 필요하지 않습니다.

신규 ID를 받기 위한 기간은 2016년 1월부터 12월까지로 예정하고 있으며, 2016년 12월까지는 새로운 ID 이용은 선택 사항입니다. 2016년 12 월 이후, 즉 지금으로부터 13개월 후에는 모든 신규 인스턴스, 볼륨 예약 스냅샷이 17자의 신규 ID로 바뀝니다.
AWS Command Line Interface (CLI) , AWS Tools for Windows Powershell, AWS SDK는 신규 ID에 대응하고 있으며, 길이 포맷 변경 대응 업데이트를 할 필요가 없습니다. 신규 ID 사용 신청 프로세스에 대한 API 역시 곧 소개 할 예정입니다.

자세한 일정이나 FAQ등 추가 정보(한국어 제공)를 참고하실 수 있습니다. 만약 질문이 있는 경우에는 AWS 고객 지원 및 커뮤니티 포럼을 통해 해주시기 바랍니다.

Angela Chapman, 선임 제품 매니저

본 글은 Heads-Up – Longer EC2 & EBS Resource IDs Coming in 2016의 한국어 번역입니다.

EC2 전용 호스트 정식 출시!

지난 달 EC2 전용 호스트 곧 출시된다는 소식을 알려드렸습니다. 이 서비스는 여러분의 EC2 인스턴스에 대해 실제 물리적 서버를 지정할 수 있는 것이라고 소개해 드렸습니다.

  • 기존 라이센스 공유(Bring Your Own Licenses) – 현재 서버의 Windows Server, SQL Server, SUSE Linux Enterprise Server 및 기타 엔터프라이즈 소프트웨어의 라이센스를 클라우드에서도 사용할 수 있습니다. 전용 호스트는 물리적 서버의 CPU 코어 및 소켓 숫자를 정확확히 알 수 있게 되어 실제 하드웨어와 같은 라이센스를 취득 및 활용할 수 있습니다.
  • 표준 규정 및 규제 요구 사항 제공 – 애플리케이션을 전용 하드웨어에 실행 할 수 있도록 전용 호스트를 할당할 수 있습니다.
  • 사용 기록 확인AWS Config을 사용하여 각 전용 호스트에 사용되었거나 중단된 인스턴스 기록을 추적할 수 있습니다. 이러한 기록은 나중에 라이센스 통계에 활용할 수 있습니다.
  • 인스턴스 제어 가능 – 전용 호스트에 EC2 인스턴스에 대한 세부적인 제어 가능합니다.

전용 호스트 정식 출시
EC2 전용 호스트 서비스는 오늘 정식 출시되었습니다. AWS 관리 콘솔, AWS 명령어 인터페이스 (CLI), AWS 윈도 PowerShellAWS SDK를 통해 사용할 수 있습니다. .

먼저 콘솔에서 전용 호스트를 시작하고 EC2 인스턴스를 할당해 보고자 합니다. 먼저 EC2 콘솔을 열고 오른쪽 메뉴에서 Dedicated Hosts를 선택하고, Allocate a Host를 누릅니다.

이제 인스턴스 타입을 선택합니다. (전용 호스트에는 M3, M4, C3, C4, G2, R3, D2, I2 사용 가능) 그리고, 가용 영역(Availability Zone) 및 수량(각 전용 호스트는 같은 크기의 특정 타입을 하나 이상 설치 가능)을 정합니다.

만약 인스턴스 자동 위치(auto-placement)를 선택하면, 원하는 가용 영역에 인스턴스 타입이 전용 호스트에 자동으로 할당되고, 인스턴스 용량이 전용 호스트에 가능할 때 탑재되며 특별히 지정하지 않은 Host에 올라가게 됩니다. 만약 자동 위치를 허가하지 않으면, 인스턴스를 띄울 때 전용 호스트를 지정해야 합니다.

Allocate host를 선택하면, 다음과 같은 확인 메시지를 받게 됩니다.

전용 호스트에 대한 과금은 이 때 부터 시작됩니다. 인스턴스의 숫자나 크기는 과금에 영향을 미치지 않습니다.

또한, 전용 호스트 현황에 대해 아래와 같이 상세히 볼 수 있습니다.

여러분이 보시다시피, 전용 호스트에는 2개의 소켓과 24개의 코어가 있ㄱ, 22까지 m4.large 인스턴스를 올릴 수 있습니다. 그러나 현재는 아직 없습니다. 이제 다음 단계로 전용 호스트에 인스턴스를 실제로 올려보겠습니다. Actions를 누르고, Launch Instance(s) onto Host를 선택합니다. (EC2 실행 마법사를 사용할 수도 있습니다.)

머신 이미지를 AMI를 선택합니다. (현재 RHEL, SUSE Linux 및 윈도 라이선스 등) 특정 AMI는 전용 호스트를 사용할 수 없고 선택 가능한 이미지만 나타납니다.

인스턴스 타입은 이미 선택되어 있습니다.

전용 호스트에 실행되는 인스턴스는 항상 VPC 내에 존재해야 합니다. 하나의 전용 호스트는 한 개 이상의 VPC에 실행되는 인스턴스를 포함합니다.

남아 있는 인스턴스 실행 과정은 기존과 동일하고 전용 호스트에 실행 될 때 옵션에 접근할 수도 있습니다. 예를 들어, 전용 호스트에 스팟 인스턴스는 실행 할 수 없습니다.

EC2 인스턴스를 기존 방법으로 띄울때도 전용 호스트를 선택할 수 있습니다. Tenancy 옵션을 Dedicated host 로 바꾸고, 전용 호스트를 선택하면 됩니다. 됩니다. (No preference에서 선택할 수 있습니다.)

Affinity를 선택하면, 인스턴스와 전용 호스트 관계를 영구적으로 만들 수 있습니다. 이를 통해 인스턴스가 늘 같은 호스트에 재시작하도록 합니다. 우연히 라이센스 소프트웨어를 가진 인스턴스를 다른 전용 호스트에 띄우게 되는 가능성을 최소화 합니다. 만약 윈도우 서버 이미지를 가져와서 라이센스 사용 계약에 따라 적어도 90일 동안 특정 물리 서버에 지정할 수 있습니다.

이제 콘솔에 Dedicated Hosts에 돌아와서 전용 호스트 하나를 선택한 후 실행되는 인스턴스에 대해 살펴 볼 수 있습니다.

소프트웨어 사용 기록 확인
기존 소프트웨어를 전용 호스트에 사용 할 수 있습니다. 가상 환경에서의 사용 가능한 지 약관을 확인하고, VM Import/Export를 사용하여 기존 장비에서 클라우드로 이전할 수 있습니다. 좀 더 자세한 사항은 기존 라이센스 공유(Bring Your Own License) 문서를 참고하시기 바랍니다. 윈도 라이센스 옵션에 대해서는 Microsoft Licensing on AWS이나 Windows BYOL Licensing FAQ를 읽어보시면 됩니다.

또한, AWS Config를 이용하여 전용 호스트에 대한 설정 변경, 설치 및 운용, 중단된 인스턴스에 대한 기록을 확인할 수 잇습니다. 향후에 라이센스 사용 보고를 할 때 입증 정보가 될 수 있습니다. 콘솔에서 Edit Config Recording 버튼을 누르고, 마우스를 올리면 현재 상태를 볼 수 있습니다.

더 자세한 것인 Using AWS Config 문서를 참고하세요.

중요한 사항
이전에 말씀 드린대로 전용 호스트에 인스턴스가 할당되면 과금이 시작됩니다. 자세한 것은 전용 호스트 요금페이지를 참고하십시오.

EC2는 자동으로 여러분의 전용 호스트를 모니터링 하고 콘솔을 통해 확인할 수 있습니다. 상태가 정상이면 available이고, 전용 호스트에 이슈가 발생하면 under-assessment로 바뀝니다.

전용 호스트의 인스턴스는 항상 VPC내에 있어야 하고, Placement Group, Auto Scaling 및 Amazon RDS는 지원하지 않습니다.

전용 호스트 서비스는 US East (Northern Virginia), US West (Oregon), US West (Northern California), Europe (Ireland), Europe (Frankfurt), Asia Pacific (Tokyo), Asia Pacific (Singapore), Asia Pacific (Sydney), South America (Brazil) 리전에서 사용 가능하며, M4, C4 등의 인스턴스 타입에 대해 각 2개의 전용 호스트를 할당 할 수 있습니다. 만약 더 많은 전용 호스트가 필요하시면, 증가 요청을 하시면 됩니다.

Jeff;

이 글은 Now Available – EC2 Dedicated Hosts의 한국어 번역입니다.