유용한 정보

AWS를 이용한 서버 구축1

CyberI 2019. 9. 3. 17:03

AWS (Amazon Web Services)

아마존닷컴이 제공하는 원격 컴퓨팅 서비스이며, 클라우드 서비스의 대표적인 아마존 웹 서비스 (AWS)를

이용한 서비스를 구성하기 위하여 AWS의 기본 개념을 알아 보도록 하겠습니다.

 

1. 리전 (Region)

- 지리적 위치 (서울, 도쿄, 북경 등)

- 장애 발생 등을 고려하여 최소 2개 이상의 가용 영역으로 구성

- 아마존 사이트를 통하여 리전 위치와 개수 확인 가능

- AWS 클라우드는 전세계 18개의 지리적인 리전이 있으며 서울에도 리전이 있음

- 리전에 따라 과금 체계가 다르기 때문에 비용을 고려한 리전 선택이 필요

https://aws.amazon.com/ko/about-aws/global-infrastructure

2. 엣지 (Edge Location)

- 콘텐츠 혹은 정적 파일을 빠르게 전달하기 위한 배포 서비스 인프라

- 개별 지역에서 사용자에게 더 빠르게 파일을 배포 할 수 있어 서비스 속도를 높임

- CDN(Content Delivery Network) : 콘텐츠 배포 네트워크. 콘텐츠를 사용자가 빠르게 받을 수 있도록

  전세계에 위치한 캐시 서버 복제 서비스

- CDN 서비스를 제공하기 위한 캐시 서버

 

3. 가용영역 (AZ:Availability Zone)

- 리전 내부에 분리된 서버군 데이터 센터의 클러스터

- 개별 가용 영역은(AZ)로 구성

- 다른 가용 영역의 장애로부터 격리

- 재난 및 재해 시 서비스의 가용성을 위해 분리한 구성

 

 

4. 애플리케이션을 위한 인프라 서비스

AWS 글로벌 인프라 위에 모든 자원이 서비스로 제공됨

 

4.1 EC2(Amazon Elastic Compute Cloud)

 

- Amazon EC2에 대한 정보 

   (1) 컴퓨팅 요구 사항의 변화에 따라 컴퓨팅 용량 조절 가능

   (2) 리눅스 OR 윈도우 운영체제 중에 선택

   (3) 안정성을 위해 여러개의 아마존 서비스의 리전과 가용영역에 걸처 배포 해야함

         (DR을 고려한 2개 안정적인 영역에 배포)

   (4) 인스턴스별로 태그를 사용하여 Amazon EC2 리소스를 관리

   (5) 실제로 사용한 용량만큼 비용을 지불

 

 - Management Console을 통해 Amazon EC2 인스턴스 시작

   (1) Amazon EC2 인스턴스를 설치할 AWS 리전을 지정

   (2) 사전 구성된 Amazon 머신 이미지 (AMI)에서 Amazon EC2 인스턴스 시작
       (일반 PC를 예로 들면 이미지CD를 이용하여 PC설치하는것과 같은 개념임)

   (3) CPU, 메모리, 스토리지 및 네트워크 요구 사항에 따라 인스턴스 유형을 선택

   (4) 네트워크, IP주소, 보안그룹, 스토리지 볼륨, 태그, 키페어를 구성

       * Amazon 머신 이미지 (AMI) 세부 내용

         - 인스턴스 루트 볼륨 템플릿 (ex. 운영체제, 애플리케이션서버, 애플리케이션)

         - AMI를 사용하여 인스턴스를 시작할 수 있는 AWS 계정을 제어하는 시작 권한 (제어키:키페어)

         - 시작될 때 인스턴스에 연결할 볼륨을 지정하는 블록 디바이스

          (제공하는 AMI 이용이나 사용자가 만들어 사용가능)

 

 - 인스턴스 생명주기: 콘솔에서 수동관리하며 API(또는 툴)로 자동관리 할 수 있음

 

 - 인스턴스 메타데이터 및 사용자데이터

    (1) 실행중인 인스턴스 내에서 모든 인스턴스 메타데이터 카테고리를 확인

        - http://IP/latest/meta-data

        - http://IP/latest/user-data

    (2)리눅스 인스턴스 호스트명 조회를 위한 메타 데이터 사용 예

       - $ curl  http://IP/latest/meta-data/hostname

       - $ GET http://IP/latest/meta-data

 

4.2 EBS(Amazon Elastic Block Store)

 

- Amazon EBS에 대한 정보

   (1) 데이터를 빠르게 액세스하고 장기간 지속해야 하는 경우

   (2) EBS 볼륨을 암호화된 볼륨으로 시작할 수 있으며, 볼륨에 저장된 데이터, 디스크 I/O, 볼륨에서 생성된 스냅샷이 모두 암호화 됨

   (3) Amazon S3까지 지속되는 EBS 보륨의 특정 시점 스냅샷을 생성할 수 있음

 

 - Amazon EBS 볼륨 유형

  SSD HDD
볼륨유형 범용SSD(gp2) 프로비저닝된 IOPS SSD 처리량 최적화 HDD(st1) 콜드 HDD(sc1)
설       명 다양한 트랜젝션 로드에 적합 미션 크리티컬 애플리케이션에 적합한 고성능 SSD 자주 액세스하고 처리량 집약적인 워크로드에 적합한 저렴한 HDD 자주 액세스하지 않는 워크로드에 적합한 최저비용 HDD
성능속성 용량 작은 용량에 유리 처리량 우선 Data 저장공간 우선

 - Amazon EBS 사용 사례

   (1) OS : 부트/루트 볼륨, 보조 볼륨에 사용

   (2) 데이터베이스 : 성능 요구 사항에 맞춰 확장

   (3) 엔터프라이즈 애플리케이션 : 미션 크리티컬 애플리케이션을 실행 할 수 있는 안정적인 블록 스토리지 제공

   (4) 비즈니스 연속성 : EBS 스냅샷을 사용해 정기적으로 백업하여 데이터 손실 및 복구 시간을 최소화

   (5) 애플리케이션 : 어떤 애플리케이션이든 설치 및 지속

 

 - Amazon EBS 생명주기

4.3 S3(Amazon Simple Storage Service)

 

- Amazon S3 에 대한 정보

    (1) 버킷에 저장할 수 있는 객체수에 제한이 없음

    (2) 객체 크기는 최대 5TB 지원 하며, 버킷 크기는 제한이 없음

    (3) HTTP/S 엔드 포인트를 사용하여 웹에서 원하는 양의 데이터를 저장하고 검색할 수 있음

    (4) AWS를 사용하여 서버측 암호화를 하거나, 고객이 관리하는 클라이언트 측 암호화를 하도록 선택할 수 있음

 

 - Amazon S3 개념

   (1) 데이터를 버킷 내에 객체*로 저장

   (2) 객체는 파일과 해당 파일을 설명하는 모든 메타데이터 구성

   (3) 하나의 계정에 최대 100개의 버킷 보유

   (4) S3 생성시 어느 리전에 생성할지를 지정하여야 함

   (5) 버킷을 프로젝트 단위로 생성하여 사용 가능

 

 - Amazon S3 버전 관리

   (1) 성능저하 없이 실수로 덮어쓰거나 삭제하는 것을 방지

   (2) 모든 업로드에 대해 새 버전을 생성

   (3) 삭제된 객체를 쉽게 검색하거나 이전 버전으로 롤백 가능

   (4) Amazon S3 버킷의 세가지 상태

 

* 객체키

 

 - Amazon EBS 와 S3의 비교

  Amazon EBS Amazon S3
패러다임 파일 시스템이 있는 블록 스토리지 객체 저장소
성     능 매우 빠름 빠름
중 복 성 가용영역의 여러 서버에 걸쳐 있음
(데이터 센터 내)
리전 내 여러 시설에 걸쳐 있음
(데이터 센터 간)
보     안 데이터 볼륨 및 스냅샷
(EC2 인스턴스만 접근 가능)
암호화 (퍼블릭 키/프라이빗 키)
인터넷 액세스 불가능* 가능**
일반적 사례 디스크 드라이브 온라인 스토리지 (한번 쓰고 여러번 읽는 경우)

 * 서버에 탑재하고 FTP등으로 설저하면 인터넷에서 액세스 가능

 ** ACL이 모든 사용자가 읽을 수 있도록 설정되어 있지 않은 경우 적절한 자격 증명 필요

 

 - Amazon EBS 와  EC2 의 비교

  Amazon EBS Amazon EC2 인스턴스 스토어
차이점 EBS 볼륨에 저정된 데이터는 인스턴스의 수명과 무관하게 유지 로컬 인스턴스 스토어에 저장된 데이터는 인스턴스가 활성화 되어 있는 동안만 유지
영구적 스토리지 휘발성 스토리지

  - EC2 인스턴스 스토어 재부팅, 중단, 종료 비교

  재부팅 중단/시작
(EBS-backed 인스턴스만 해당)
종료
호스트 컴퓨터 동일 호스트 컴퓨터 유지 새 호스트 컴퓨터 실행  
퍼블릭 IP 주소 변경 없음 새 주소가 지정됨  
탄력적 IP주소(EIP) EIP 인스턴스와 연결된 상태로 유지 EIP 인스턴스와 연결된 상태로 유지 EIP 인스턴스와 연결이 끊어짐
인스턴스 스토리지 보존됨 삭제됨 삭제됨
EBS볼륨 보존됨 보존됨 부트 볼륨은 기본적으로 삭제
결제 인스턴스 청구 시간이 변경되지 않음 중단 변경 즉시 비용발생 중단  종료 변경 즉시 비용 발생 중단

 

4.4 RDS(Amazon Relational D Services)

 

 - 데이터 베이스 고려 사항

요구사항 고려사항
RDB 서비스 Amazon RDS
- Amazon Aurora, MySQL, MariaDB, Microsoft중 선택 SQL Server, Oracle 또는 
  PostgreSQL 데이터 베이스 엔진
- 컴퓨팅 및 스토리지 확장
- 다중 AZ 가용
NoSQL 서비스 Amazon Dynamo DB
- NoSQL의 장점인 빠른 성능
- 확장성 및 안정성
- 저렴한 비용
사용자자체 DB 원하는 AMI 적용(확장 가능한 컴퓨팅 및 스토리지, 인스턴스에 대한 제어)

 

4.5 Amazon VPC

 

 - Amazon VPC 구성도

다음 시간에는 AWS를 이용한 EC2 서버 구축에 대해 알아 보겠습니다.

 


AWS를 이용한 서버 구축 2편에 대한 내용을 살펴보고 싶다면, 아래 링크를 클릭해주세요.

AWS를 이용한 서버 구축2_아마존 EC2로 구축하기