Devops 엔지니어 솔렐레 IT

AWS 기초 - EC2, 스토리지(S3, EBS), VPC 본문

Devops 엔지니어가 알려주는 클라우드 지식/AWS

AWS 기초 - EC2, 스토리지(S3, EBS), VPC

솔렐레_ 2019. 9. 30. 09:00


안녕하세요. 솔렐레입니다.
요즘 등장하는 신기술 중, 클라우드 컴퓨팅을 통해 기존 IDC 환경에서 사용하던 서비스를 클라우드 환경으로 이관하여 서비스를 운영하는 곳이 많아지고 있습니다. 클라우드 환경에서 서비스를 운영하게 되면 내가 사용한 만큼의 서버 비용을 지불하면서 사용할 수 있고 몇 번의 클릭만으로 서버의 대수와 스펙을 늘릴 수 있는 환경이 갖추어졌습니다. 이번 포스팅에서는 클라우드 컴퓨팅 기술 중 가장 많이 사용되는 AWS(Amazon Web Service)에 대해서 설명드리겠습니다. 기본적인 개념들과 가장 많이 사용되는 기술인 EC2 인스턴스와 기본적인 스토리지(S3, EBS), 그리고 네트워킹(VPC)에 대해서 정리하겠습니다.


[AWS 기본 개념]
AWS(Amazon Web Service)란 웹 서비스를 사용하여 확장 가능하고 정교한 애플리케이션이 구축이 가능하도록 지원되는 컴퓨팅 기술입니다. 약 4,000개 이상의 서비스가 있으며 AWS 클라우드 컴퓨팅을 이용한다면 여러 장점을 가지고 있습니다.

* AWS 클라우드 컴퓨팅 장점
(1) 사용한 만큼 비용을 지불
(2) 원하는 스펙으로 서버를 빠르게 커스터마이징하여 사용 가능
(3) 용량 추정이 불필요함
(4) 전 세계에 어느 환경에든 배포 가능함
(5) 데이터 센터 설립 및 운영 비용 불필요

AWS는 리전이라는 개념을 통해 세계에 어느 곳에서든 서비스를 하고 있습니다. 리전은 2개 이상의 가용 영역을 사용하여 다른 영역에 대해 장애로부터 격리시키는 정책을 가지고 있습니다. 현재 한국에서는 서울 리전을 사용할 수 있고 그 외 해외에서 사용이 필요할 경우 그 지역과 가까운 리전을 사용하여 서버 환경을 구축할 수 있습니다.

[EC2(Elastic Compute Cloud) 인스턴스]
Amazon EC2는 크기 조정이 가능한 컴퓨팅 즉, 가장 많이 사용되는 가상 서버입니다. 요구 사항에 따라 실제 사용한 만큼만 비용을 지불하며 원하는 OS(Windows 또는 Linux)를 선택하여 구성할 수 있고 여러 AWS리전과 가용 영역에 배포가 가능합니다. EC2 인스턴스 유형은 다양한 사례에 따라 여러 크기로 제공됩니다. 인스턴스를 선택할 때는 코어 수, 메모리 크리, 스토리지 크기 및 유형, 네트워크 성능, CPU 기술을 고려하는 것이 필요합니다.

EC2 인스턴스 유형 설명
t2, t3, m5, m4, m3 범용으로 사용하는 유형이며 트래픽이 작은 웹 사이트나 어플리케이션에서 사용하는 것이 유리함
c5, c4, c3 컴퓨팅에 최적화되어있는 타입으로 고성능 프론트 엔드의 집합
r5, r4, x1 고석능 DB나 분산 메모리 캐싱 사용에 유리
h1, i3, i2, d2 로그 또는 데이터 처리 어플리케이션에 유리
p3, p2, g2 기계 학습이나 3D 어플리케이션 스트리밍에 유리

* EC2 인스턴스 구성 순서
1. AWS 리전 설정
2. 사전 구성된 AMI에서 EC2 인스턴스를 시작함
3. CPU, 메모리, 스토리지, 네트워크 요구 사항에 따라 인스턴스 유형을 선택함
4. 네트워크, IP 주소, 보안 그룹, 스토리지 볼륨, 태그, 키 페어를 구성함


[스토리지 - S3(Simple Storage Service)]
인터넷을 위한 스토리지이며 웹에서 https 엔트포인트를 통해 언제 어디서든 원하는 양의 데이터를 검색하고 저장할 수 있습니다. 확정성과 안정성 그리고 빠른 속도를 가지고 있습니다. S3는 하나의 객체 크기는 최대 5TB까지 가질 수 있으며 객체의 수는 제한이 없습니다. 서버 또는 클라이언트 측 암호화 중 선택하여 사용도 가능합니다. S3 또한 사용한 만큼 요금을 지불하고 있으며 요금은 스토리지 요금, 요청 요금, 데이터 전송 요금으로 나누어져 월별 청구됩니다. 일반적으로 S3는 스토리지 백업이나 호스팅, 소프트웨어 전송, AMI나 스냅샷 저장 공간으로 많이 활용합니다.
Amazon S3는 데이터를 버킷 내 객체로 저장하는 형태이며 객체는 파일과 파일을 설명하는 모든 메타데이터로 구성되어있습니다. 최대 100개의 버킷을 보유 가능하고 버킷이나 객체에 대한 액세스 제어가 가능합니다. 엑세스 제어는 ACL(액세스 제어 목록), 버킷 정책, IAM 정책을 등록하여 제어할 수 있습니다. 또한 SSL을 이용한 통신을 지원하고 있으며 AWS SDK를 이용하여 데이터 암호화가 가능합니다. S3는 버전 관리 또한 지원하고 있습니다. 버전 관리를 하면서 실수에 대한 방지를 하고 있으며 이전 버전으로의 롤백이 가능합니다.

스토리지 클래스 고려 사항
S3 스탠다드 없음
S3 스탠다드 - IA 자주 엑세스하지 않는 데이터에 적합한 타입
Glacier 실시간 엑세스 지원이 안됨. 저렴한 장기 보관 서비스

[스토리지 - EBS(Elastic Block Store)]
AWS EBS는 영구적 블록 레벨 저장장치이며 대규모 처리를 위한 서비스입니다. S3에 지속적으로 스냅샷을 생성하여 안정적으로 사용할 수 있고 규제 및 감사에 맞춰 다양한 데이터 암호화 요구사항을 맞춰 데이터 저장이 가능합니다. EBS는 DB 확장, 엔터프라이즈 애플리케이션, 비즈니스 연속성을 가져가기 위해 사용합니다. 스토리지는 영구적으로 사용되며 볼륨에 저장된 데이터는 인스턴스의 수명과 무관하게 유지됩니다.
* S3와 EBS 비교

  Amazon S3 Amazon EBS
패러다임 객체 스토어 파일시스템이 있는 블록 스토리지
성능 빠름 매우 빠름
중복 리전 내 여러 시설에 있음 가용 영역의 여러 서버에 있음
보안 암호화 EBS암호화 - 데이터 볼륨 및 스냅샷
인터넷 엑세스 가능 여부 가능 불가능
사용 사례 온라인 스토리지 디스크 드라이브

[네트워킹 - VPC(Virtual Private Cloud)]
VPC는 격리된 프라이빗 가상 네트워크를 의미합니다. Subnet은 VPC 내 IP 주소 범위를 정의하여 사용합니다. 프라이빗 서브넷은 인터넷으로 액세스 할 수 없고 퍼블릭 서브넷은 인터넷 엑세스할 수 있는 리소스에 사용됩니다. 각 서브넷은 하나의 가용 영역 내에 모두 상주해야 하며 다른 영역으로의 사용은 불가합니다. VPC는 Security Group과 ACL을 통해 보안을 진행할 수 있습니다. 

VPC 연결 옵션 설명
AWS 하드웨어 VPC VPC와 원격 네트워크 간의 하드웨어 VPC 연결인 IPsec을 생성할 수 있음
AWS Direct Connect 원격 네트워크에서 VPC로의 전용 프라이빗 연결을 제공
AWS VPC CloudHub 여러 개의 AWS 하드웨어의 VPC 연결을 생성하려 다양한 원격 네트워크 간의 통신이 가능함
Software VPC VPC에서 EC2 인스턴스를 사용하여 원격 네트워크에 대한 통신을 생성할 수 있음

지금까지 AWS에 대한 간단한 설명과 EC2, S3, EBS, VPC 서비스에 대해서 알아보았습니다. 지금 설명드린 서비스는 AWS에서 기본이 되는 서비스이므로 처음 시작하시는 분들은 많은 도움이 되셨을 것이라고 생각합니다. 클라우드 기술이 발전함에 따라 우리가 가져갈 수 있는 장점이 많아지고 있으므로 계속적으로 공부를 하고 사용한다면 나의 기술력은 물론이고 회사에서 효율적으로 서비스를 운영할 수 있어 여러 방면에서 사용이 가능할 것 같습니다. 감사합니다. :)

Comments