NoSQL이 처음 만들어지게 된 이유는 명확합니다. 기존의 단순한 값들을 Entity-Relationship 의 관계를 이용해서 나타내어서 사용하는 방식으로 사용을 했습니다. 그런데 세상이 바뀌게 되었습니다. 세상은 예전처럼 단순한 데이터를 처리하고 활용하는 시대가 지나게 되었습니다. 그래서 나오게 된 실용적으로 관계지향의 개념을 깨고 원하는 데이터끼리 뭉쳐서 더 큰 데이터를 활용하자는 목적에서 나오게 된 것이 바로 NoSQL이라는 개념입니다. NoSQL의 의미는 혹자들은 "Not Only SQL" 이라는 범용적인 개념으로 해석하여서 엄청나게 큰 영역을 행사하려고 하지만 실상 NoSQL이라는 것은 그냥 "No SQL"입니다. 그냥 단지 SQL이 아니라는 의미입니다. 그렇게 언급되기 시작되었고 지금은 마치..
앞에 글에서는 AWS S3의 핵심 기능과 어떤 방식으로 돌아가고 있는지에 대한 핵심기능에 대해서 이야기해보았습니다. 이번 글에서는 그 핵심기능을 뒷받침하는 기능을 설명하려고 합니다. 그 종류에 대해서는 접근제한, S3관리, 암호화 같은 것이 있습니다. 11.3.4 HTTP Referer로 S3 접근 제한하기 S3에 올리진 그림 파일을 원하는 도메인에서만 보여줄 수 있도록 설정해보겠습니다. S3는 서비스를 요청해서 응답하는 것에 대한 데이터 전송량에 대해서 과금을 하는 구조이기 때문에 원치 않는 곳에서 접근하는 요청 트래픽을 막으면 그만큼 비용을 절감할 수 있습니다. HTTP Referer는 HTTP 헤더값으로서 웹 브라우저에서 생성하는 데이터입니다.즉, 웹 브라우저에서 요청을 보내거나 할때 해당하는 헤더..
S3(Simple Storage Service)는 인터넷 스토리지 서비스로, 용량은 무제한이고 파일을 저장하는 용도로 사용됩니다. 웹프로토콜인 HTTP 프로토콜로 파일에 접근할 수 있습니다. HTTP프로토콜을 이용해서 파일을 업로그, 다운로드 시킬 수 있습니다. S3를 써야하는 이유 SNS와 같이 서버에 많은 미디어 파일을 저장해야하는 경우, 1) EC2와 EBS만을 사용해서 저장을 하게되면 용량에 따른 과금도 부담되고 ==> 비용 2) 저장소를 구축해서 관리하는 것에도 문제있습니다. ==> 성능 하지만 S3를 사용하면 S3 한 곳에 모든 미디어 파일을 관리할 수 있고, 과금 문제도 EC2& EBS 조합에 상대적으로 훨씬 싼 가격에 이용할 수 있고, 구축 후 확장이나 축소와 같은 DB 관리하는 것에도 속..
CloudWatch는 AWS Resource의 상태를 모니터링하는 AWS의 서비스입니다. 모니터링뿐만 아니라 Resource의 측정치와 연결하여 다양한 Action을 서비스에 취할 수 있습니다. CloudWatch의 리소스 모니터링은 두가지가 있습니다. 1) 기본 모니터링(5분마다 측정) 2) 세부 모니터링(1분마다 측정) 기본 모니터링과 같은 경우에는 프리티어에서 무제한 무료로 사용할 수 있고, 세부 모니터링과 같은 경우에는 추가 요금이 부가됩니다. CloudWatch가 이용되는 경우는 크게 두가지 입니다. 1) EC2 Instance에 이상이 생겼을 때 알림을 받고자 할 때 사용하고, 2) 트래픽이 Instance의 성능을 넘어서 처리용량을 Auto Scaling 하거나 ELB의 처리 용량을 늘릴 때..
AWS API 또는 Third Party 툴(AWS이외의 회사에서 만든 툴)을 사용할때 필요한 인증수단으로 1) Access Key 2) Secret Access Key 두가지를 사용합니다. AWS의 모든 리소스는 API로 제어가 가능하기 때문에 이 두가지 Key는 정말 중요합니다. 그래서 유출되지 않도록 꽁꽁 숨겨놔야합니다. 왜냐하면 키를 가지고 트래픽을 발생시킬 수도 있고 인스턴스를 대량으로 생성하여 엄청난 금액의 과금을 일으키는 경우도 종종 발생하기 때문입니다. 예방하기위해 CloudWatch를 이용하면 생성되는 인스턴스에 대한 알림부터 시작해서 정보들을 즉각즉각 받아볼 수 있기 때문에 해킹으로 인한 과금을 막을 수 있습니다. 이제 Access Key와 Secret Key를 생성하는 방법에 대해 알..
AMI(Amazon Machine Images)는 EC2 인스턴스를 생성하기 위한 기본 파일이라고 생각하시면 됩니다. 예전에 CD대용으로 iso파일을 데몬툴즈와 같은 유틸을 사용하였던 것 처럼 해당하는 OS에 들어간 내용의 파일들을 복사해서 사용하는 형식입니다. AMI에는 단순히 OS만 설치되는 형식이 아니고, OS를 설치해두고 각종 서버 애플리케이션, 데이터베이스 등 모든 설치된 프로그램까지 같이 백업해둔다고 표현하면 더 맞을 것 같습니다. 기존에 사용하는 OS의 모든 설치와 설정이 완료되면 AMI 파일을 만들어서 EC2를 이용해서 Auto-Scaling이란 기능을 통해서 Scale-Out이 가능합니다. 반드시 AMI파일이 있어야 가능합니다. * Auto-Scaling은 서비스 중인 Instance로 ..
Key Pair은 EC2 Instance 로 접속하기 위해 사용하는 암호화된 파일입니다. AWS에서는 보안 문제 때문에 EC2 Instance를 접속 할때 ID, 비밀번호 방식을 사용하지 않습니다. 물론 원하면 사용은 가능합니다 Key Pair 방식은 ID, Password 없이 Key Pair 파일만 가지고 있으면 상당한 보안이 지켜지는 환경에서 접속할 수 있습니다. AWS에서 EC2에 접속하는 Key Pair의 보안 방식이 공개키 방식이기 때문에 공개키 방식에 대해서 먼저 설명하겠습니다. Key Pair의 보안 원리는 RSA 공개 키 알고리즘(Public Key Algorithm)을 사용합니다. 암호화 방식에는 두 가지가 있는데 1) 대칭 키와 2) 공개 키 방식이 있습니다. 1) 대칭키: 암호화 키..
Elastic IP는 고정된 공인 IP를 제공합니다. 하지만 EC2 Instance가 실행되고 있는 동안만 유효하며 EC2 Instance가 중단이되면 IP 주소는 반납됩니다. 그리고 EC2 Instance를 다시 실행하면 주소는 다시 할당되기 때문에 유동 IP로 보시면 됩니다. DNS서버나 개인 WAS를 만들었는데 고정으로 서비스를 할당해놓은 IP가 있다면 IP가 바뀐다면 서비스가 되질 않을 것입니다. 그래서 사용하는 것이 Elastic IP입니다. 일단 IPv4 체계에서는 IP주소가 매우 부족하기 때문에 사용하지 않는 EC2 인스턴스에는 IP 주소를 일단은 할당하지 않습니다. 여기서 주의해야할 점은 할당을 받고 사용을 하지 않으면 소액의 과금이 된다는 사실입니다. 과금이 되지않게 하려면 EC2 Ins..