Amazon 27

구글 클라우드 MySQL서비스의 흥미로운 가격 정책

구글 클라우드 MySQL서비스의 흥미로운 가격 정책조대협 (http://bcho.tistory.com) 구글 클라우드의 MySQL 서비스인 CloudSQL을 보다보니, 신기한 가격 정책이 있어서 정리해놓고자 한다.1세대와 2세대의 가격 정책이 다른데, 1세대의 가격 정책이 재미있는점이 있다. 기본 가격 정책 1,2세대 모두 기본 적인 가격 정책은 다음과 같다 저장량 + 인스턴스 기동 비용 + 네트워크 비용저장량은 말 그대로 저장된 데이타의 양에 따라 과금이 된다네트워크 비용은 outbound로 나가는 트래픽만 과금이 되는데, 이것도 같은 리전 안의 구글 클라우드에서 호출하는 경우에는 과금이 되지 않는다. 과금이 되는 경우는 구글 클라우드를 쓰더라도 다른 대륙의 인스턴스가 호출을 하거나 또는 다른 클라우드..

Vagrant를 이용한 개발환경 관리(간단한 VM관리)

Vagrant시작하기Vagrant는 한마디로 이야기 하면, “간소화된, VM 관리 서비스이다”. 이미 Virtual Machine 환경은 보편화 되서 사용되고 있고, VMWare나 Oracle의 Virtual Box등을 이용하면 PC에서도 손쉽게 VM 환경을 구축할 수 있다. 그러나 문제점은, Virtual Box와 같은 Hypervisor가 있다고 해도, VM을 생성하는 것 자체가 번거로운 작업이라는 것이다. Hypervisor에서 논리적인 가상 하드웨어 머신을 생성하고 가상머신에 OS를 설치하고, 일일이 설정을 해줘야 한다. 이런 반복적인 작업을 조금더 손쉽게 자동화 할 수 없을까? 하는 아이디어에서 시작한 것이 Vagrant이다.먼저 이해를 돕기 위해서 예제를 실행해보자.Vagrant는 VM 관리도..

ALM 2013.10.24 (1)

Amazon의 CDN 서비스 Cloud Front

Cloud Front조대협Cloud Front는 CDN (Contents Delivery Network) 서비스 이다. 이미지나 동영상 같은 정적인 컨텐츠들을 서비스하는데, 서버가 있는 데이타 센터에서 서비스를 하게 되면, 네트워크 latency 때문에 성능이 저하가 되기 때문에, 전세계의 여러 개의 데이타 센터에 서버(이를 edge node 또는 edge server라고 함) 를 넣고, 클라이언트와 가까운 데이타 센터로 부터 컨텐츠를 제공하는 서비스 이다.얼마나 많은 지역별 데이타 센터에 edge node를 설치하고 서비스를 제공하느냐, 각 edge node의 네트워크 대역폭이나 용량은 충분하느냐가 서비스의 품질을 결정하는데, 세계적으로 Akamai와 Limelight 등의 업체가 유명하다.아마존의 경..

Amazon Route 53 DNS 서비스

Amazon Route 53 DNS 서비스조대협Route53은 아마존에서 제공하는 DNS 서비스 이다. 일반 DNS와 다르게 몇 가지 아마존에 특성화된 몇 가지 기능을 가지고 있는데, 특화 기능에 앞서서 DNS 의 일반 개념을 먼저 정리해 보자.DNS는 domain name (www.example.com)을 ip 주소로 바꿔 주는 일종의 dictionary 서비스 이다.이러한 맵핑 정보를 저장해 놓는 파일을 DNS Zone file이라고 한다. 이 서비스는 DNS 서버에 저장해놓은 파일을 기반으로 주소를 변환하는데, 여기에 정의되는 레코드들 중에서 대표적은 레코드는 다음과 같다. ① SOA 레코드 : 해당 DNS 서버 자체의 설정 정보를 정의 한다.Ÿ DNS 서버는 Primary/Secondary 구조로..

Amazon Elastic Load Balancer

Elastic Load Balancer 조대협ELB는 아마존에서 제공하는 일종의 L4와 같은 로드 밸런서이다. 내부적으로 VM위에서 동작하는 소프트웨어 로드밸런서이고, 아마존 환경에 맞춰서 최적화 되어 있다. Multiple zone supportELB는 기본적으로 multiple zone을 지원한다. ELB 생성시, ELB를 배포할 Amazon Availability Zone을 지정할 수 있다. 여러 개의 zone에 multiple ELB instance가 배포 되기 때문에 ELB 인스턴스는 기본적으로 ip 주소를 가지지 않는다. 대신 DNS 주소를 가지는데, 테스트를 해보면 알겠지만, ELB의 DNS 주소는 경우에 따라서 1개 이상의 주소를 리턴하게 된다.이는 multiple zone을 지원하기 위해..

아마존 S3 소개 (성능 향상)

Amazon S3 (Simple Storage Service)AWS S3 (Simple Stoage Service)는 파일을 저장하기 위한 스토리지이다. 일반적인 파일시스템의 개념과는 약간 다르고, 파일 이름을 대표하는 key와 파일 자체로 구분되는 Object Storage이다.용량 저장할 수 있는 파일의 크기는 개당 1byte~5TB이고, 총 저장 용량에는 제한이 없다. 디렉토리와 비슷한 개념으로, bucket이라는 개념을 가지고 있다. 기본적으로 3 copy를 지원하여, 데이타를 복제하고, 이 복제는 Amazon availability zone (AZ) 단위로 복제가 되기 때문에 데이타 센터 장애에 대한 대응성을 가지고 있다. 단 region 간 복제는 지원하지 않는다. 복제에 관련된 옵션으로는 R..

Amazon 클라우드에서 S3 Read/Write 성능 높이는 방법 - 같은 Region 사용하기

매우 기본적인 부분인데, 함정(?)이 있어서 메모해놓습니다. aws에서는 S3 버킷을 만들때 위와 같이 Region을 정할 수 있습니다.그런데 US Standard라는 Region이 있는데, 이는 실제 존재하는 region이 아닙니다. Oregon이나 Ireland와 같이 실제 S3가 배포될 region을 명시적으로 정하는 것이 좋습니다. (특히 미국의 경우..)EC2를 US West Oregon에서 사용하실거면, 반드시 S3도 같은 Region에 생성을 해야 속도가 빠릅니다. http://blog.takipi.com/2013/03/20/aws-olypmics-speed-testing-amazon-ec2-s3-across-regions/ 문서를 보면 region가 S3 속도가 나옵니다.

Amazon 클라우드에서 S3 Read/Write 성능 높이는 방법-Partitioning

원본 : http://aws.typepad.com/aws/2012/03/amazon-s3-performance-tips-tricks-seattle-hiring-event.html 아마존 S3를 이용하는 시스템에 대한 성능 테스트를 할때, 성능이 Leanear 하게 증가하지 않는데, 그 원인을 보면 다음과 같은 원리가 작용한다. 원인 분석S3는 내부적으로 여러개의 파일을 저정하기 위해서 물리적으로 파일을 여러개의 디스크에 분할 저장하는데, 이 분할 하는 로직을 파일명을 가지고 해쉬를 사용한다. 그래서 파일명이 유사하게 되면, 같은 파티션(디스크)에 파일이 써지기 때문에, 하나의 파티션에 많은 물리적인 IO를 유발하고 결과적으로 성능이 떨어지게 되는 것이다. 원리S3는 파일명을 가지고 hashing을 하여 ..

Amazon의 설치 배포 자동화 솔루션 Opsworks

Amazon Opsworks 소개 시스템에 설치와, 애플리케이션을 자동화 배경 얼마전에, Amazon에서 새로운 클라우드 서비스인 Opsworks를 발표하였다. [출처:Amazon Opsworks 소개 페이지] 비단 클라우드 뿐만 아니라, 서버 시스템을 개발하다보면, 당면 하는 과제중의 하나가, 소프트웨어 설치와, 애플리케이션의 배포이다. 예전에야 큰 서버 한대에, WAS 하나 설치하고, DB를 다른 서버에 설치해서 사용했지만, 요즘 같은 시대에는 x86 서버 여러대에 WAS를 분산 배치하고, 여러 솔루션들 설치해서 사용하고, 시스템의 구조 역시 훨씬 더 복잡해 졌다. 그래서, 이러한 제품 설치를 자동화 하는 영역이 생겼는데, 이를 Configuration Management(이하 CM)이라고 한다. 이..

아마존의 SSD의 NoSQL 서비스 Dynamo

Dynamo는 새롭게 소개된 AWS의 NoSQL서비스이다. Key-Value 형태로 대용량의 데이타를 저장할 수 있으며, 고속의 데이타 access를 제공한다. 데이타 모델 먼저 데이타 모델을 살펴보자, RDBMS의 일반적인 테이블 구조와 유사하지만, 조금 더 유연성을 가지고 있다. RDBMS와 똑같이 테이블이라는 개념을 가지고 있으며, 테이블은 테이블명과 각각의 ROW로 구성된다. 테이블은 Unique한 Primary Key를 가지고 있다. 이를 Key라고 정의한다. 테이블의 ROW에 해당하는 내용은 item이라고 부르는데, 각 item은 key에 의해서 구분된다. RDBMS와는 다르게, 각 ROW는 똑같은 Column을 갖는 것이 아니라, 각 row 마다 다른 column을 가질 수 있다 그래서, 각..