[AWS] AWS 넌 뭐니?

유요한·2019년 5월 2일
0

S3(Simple Storage Service)


버킷

데이터(파일)를 저장하기 위한 Amazon S3의 기본 컨테이너
데이터 저장 -> 객체를 원하는 만큼 저장 가능(각 객체에 최대 5TB 데이터 포함 가능) 각 객체는 고유한 개발자 할당 키를 사용하여 저장 및 검색한다. 쉽게 말하면 파일을 저장하는 서버이다. (앱스토어)
버킷 === 객체(파일)저장소

객체

Amazon S3에 저장되는 기본 객체(파일)를 말함.
객체는 객체 데이터와 메타데이터로 구성됨. 메타데이터는 객체를 설명하는 [키-밸류] 의 집합이다.
여기에는 마지막으로 수정한 날짜와 같은 몇가지 콘텐츠 형식을 설명해놓는다 . 객체(파일)를 저장할 때 사용자 정의 메타데이터를 지정할 수 있다.
객체(파일)는 키(이름) 및 버전ID를 통해 버킷 내에서 고유하게 식별된다.
즉, 메타데이터는 객체의 속성을 식별하고 객체에 액세스할 때 객체를 어떻게 처리해야하는지 지정한 내용이다.
‘x-amz-meta-’ 로 시작하는 모든 메타 데이터는 사용자 정의 메타데이터이다.

키는 버킷 내 객체의 고유한 식별자이다. 버킷 내 모든 객체는 정확한 하나의 키를 갖는다.
Amazon S3 내 모든 객체는 웹 서비스 엔드포인트, 버킷 이름, 키 그리고 선택 사항인 버전의 조합을 통해 고유한 주소를 지정할 수 있다.
예를 들어, http://doc.s3.amazonaws.com/2006-03-01/AmazonS3.wsdl이라는 URL로 설정하면 “doc”는 버킷의 이름이고 “2006-03-01/AmazonS3.wsdl”은 키로 보면 된다.

리전

Amazon S3에서 사용자가 만드는 버킷을 저장할 리전을 선택할 수 있다.
지연 시간 최적화, 비용 최소화, 규정 요구 사항 준수 등 다양한 필요에 따라 리전을 선택할 수 있다. 특정 리전에 저장된 객체는 사용자가 명시적으로 객체를 다른 리전으로 전송하지 않는 해당 리전을 벗어나지 않는다.
S3에서는 리전을 따로 설정하지 않아도 된다.

EC2(Elastic Compute Cloud)


쉽게 생각해서 한대의 컴퓨터를 임대 해주는 것.

보통 computing이 필요한 웹서버 배포시 사용

장점

유연한 클라우드 호스팅 서비스

여러 인스턴스 유형, 운영 체제 및 소프트웨어 패키지를 선택할 수 있습니다. 선택한 운영 체제 및 애플리케이션에 가장 적합한 메모리 구성, CPU, 인스턴스 스토리지, 부팅 파티션 크기를 선택할 수 있습니다. 다양한 Linux 배포와 Microsoft Windows Server를 운영 체제 선택이 가능.

탄력성 있는 웹 스케일 컴퓨팅

Amazon EC2를 사용하면 몇 시간 또는 며칠이 아닌 몇 분 내에 용량을 늘리거나 줄일 수 있습니다. 한 개, 수백 개 또는 수천 개의 서버 인스턴스를 동시에 지정할 수 있습니다. 물론 이 모든 과정이 웹 서비스 API로 제어되므로 애플리케이션이 요구에 따라 스스로 자동 확장 및 축소할 수 있습니다.

저렴한 비용

실제로 소비하는 컴퓨팅 파워에 비해 매우 저렴한 비용을 지불합니다. 온 디맨드 인스턴스를 사용하면 장기 약정 없이, 소비한 컴퓨팅 파워에 대해서만 시간당 종량 과금제로 청구됩니다. 따라서 하드웨어를 계획, 구매, 유지 관리하는 데 수반되는 비용과 복잡성이 사라지고 일반적으로 비싼 고정 비용이 훨씬 저렴한 가변 비용으로 전환됩니다.

주의할 점 :

  • 실제 서버 운영시 정적IP(elastic IP)를 할당 받아 인스턴트가 재시작 될 때마다 새로운 IP를 받게 되어 이전 IP가 유효하지 않게 되는 상황을 막음 (elastic IP의 경우 할당받고 사용하지 않을 시 과금 주의)
  • region 지정 유의 (해외 지역으로 설정시 서버 속도가 현저히 느림)

RDS(Relational Database Service)


RDS란 무엇인가?

RDS는 AWS에서 제공하는 관계형 데이터베이스 서비스이다. RDS는 서버를 구축함에 있어서 매우 편리한 인터페이스와 기능들을 제공한다. 보통 서버를 구축하고 데이터베이스를 구축한다고 하면, 필시 이런 과정을 거치게 될것이다. 물론 간단하게 적어본거다.

서버 구매(호스팅) → 개발 환경 구축 → 데이터베이스 설치 → 데이터베이스 관련 Config 설정

서버에 MYSQL 같은 DBMS를 설치해 본 경험이 있다면 공감할 것이다. 무슨 이유인지 모르겠지만 자꾸 오류를 뿜는다. 너무 화나지 않았던가! 하나를 해결하면 또 다른 오류가 발견되는 이상한 현상이.....

때문에 AWS 는 고객들에게 새로운 서비스를 제공한다. 바로 RDS 이다. 이는 EC2 처럼 별도의 서버를 할당 받는다. RDS를 신청하게 되면 잠시 후 아름답게도 완벽하게 설치된 것을 볼 수 있다. 나름의 시간 절약과 비용 절약을 할 수 있다.

RDS의 큰 장점은 다음과 같다.

  1. 환경 Config를 몇번의 클릭만으로 가능하다.
  2. 백업과 복원에 큰 장점을 가진다.
  3. EC2에서 만 데이터베이스에 접근하도록 설정 할 수 있기에 안전하다.
  4. 큰 노력 없이, 그리고 EC2에 큰 부담 없이 빠르고 간편하게 구축이 가능하다.

다만 비용이 조금 많이 든다는 큰 단점이 있다...

profile
건강한 개발자가 되고 싶은 주니어 개발자입니다.

0개의 댓글