05 4월 AWS Cloud Service란?
✅ 클라우드 정의
- 클라우드는 전 세계에 분산된 원격 서버의 광대한 네트워크 환경을 뜻한다.이러한 환경은 데이터의 저장 및 관리, 애플리케이션 실행 등 서비스 또는 콘텐츠와 같은 리소스를 제공할 수 있도록 설계되어 있다.이를 통해 인터넷을 지원하는 모든 기기에 대해서 온라인으로 파일 또는 데이터에 접근하는 것이 가능하여 언제 어디에서나 필요한 정보를 사용하는 것이 가능해 진다.
- 비즈니스 요구를 바탕으로 리소스를 배포하는 방식에 따라 3가지의 클라우드 유형으로 분류한다.
- 퍼블릭 클라우드(Public Cloud)사업자가 제공하는 클라우드를 이용하는 것으로, 가장 일반적인 유형이다. 아마존, 마이크로소프트, 구글, IBM, 알리바바 등이 주요 클라우드 사업자이다.
- 프라이빗 클라우드(Private Cloud)자체적으로 클라우드 환경 및 인프라를 구축하고 내부에서 독점적으로 활용하는 유형이다. 퍼블릭 클라우드에 비해 많은 제어 권한과 우수한 보안이라는 장점을 가지지만, 이를 관리하려면 더 높은 수준의 IT 전문성과 비용이 요구되기도 한다.
- 하이브리드 클라우드(Hybrid Cloud)사업자가 제공하는 클라우드와 자체 인프라(On-premise; 데이터 센터와 같은 물리적 환경)를 함께 활용하는 유형이다. 서비스 구동은 클라우드 상에서, 데이터 보관이나 로컬 서비스는 자체 인프라에서 처리하는 형태로 구현되어 사용하는 경우가 일반적이다.
✅ 클라우드 컴퓨팅
- 클라우드를 기반으로 컴퓨팅 파워나 스토리지, 데이터베이스, 네트워킹, 소프트웨어, 분석, 인텔리전스 등과 같은 기술 서비스를 제공하는 것이다.
- 클라우딩 컴퓨팅을 통해 더 빠른 혁신과 유연한 리소스를 제공하고 대규모 경영의 이익 효과를 누릴 수 있다.
- 이러한 민첩성, 탄력성, 비용절감과 같은 장점은 클라우드 컴퓨팅의 5가지 특징을 바탕으로 한다.
- 주문형 셀프 서비스(On Demand Self-Service) : 필요 시 온라인으로 즉시 사용이 가능
- 광대역 네트워크 접근(Broad Network Access) : 네트워크를 통한 서비스 자원 접근
- 빠른 탄력성(Rapid Elasticity) : 다중 임대 모델(Multi-tenant model)을 통한 자원 할당
- 자원의 공동 관리(Resource Pooling) : 비즈니스 상황에 따른 자원의 유동적 사용
- 측정 가능한 서비스(Measured service) : 서비스를 사용한 만큼만 비용 지불
✅ 클라우드 컴퓨팅 유형
- 클라우드 서비스에 대한 정보 및 형식과 같은 제어 수준을 기준으로 3가지 유형이 존재한다.
- IaaS(Infrastructure as a Service)IT 인프라를 위한 기본 요소를 제공하는 서비스이다. 일반적으로 네트워킹 기능, 컴퓨터(가상 또는 전용 하드웨어) 및 데이터 스토리지 공간을 제공한다.
- PaaS(Platform as a Service)SW 프로그램을 개발할 때 필요한 플랫폼을 제공하는 서비스이다. 관련된 리소스 구매, 용량 계획, 유지 관리, 패치 작업 등에 대한 지원이 있다.
- Saas(Software as a Service)
서비스 공급자에 의해 실행되고 관리되는 완전한 제품이다. 예를들어 웹 기반 이메일과 같은 최종 사용자 애플리케이션이 있다.
B. AWS(Amazon Web Service)
✅ AWS
- 2004년 11월 Simple Queue Serivce를 공개하면서 퍼블릭 클라우드 서비스를 시작, 2006년부터클라우드 스토리지 S3, 컴퓨팅 자원 EC2, 큐 서비스 SQS를 통합적으로 제공했다.
- 단순히 가상 컴퓨터를 제공하는 것을 넘어서 분석, 데이터베이스, 기계 학습, 스토리지, 네트워킹부터 블록체인, 인공위성, 양자 컴퓨팅까지 다양한 분야의 서비스를 운영하며 세계적으로 가장 많이 사용되고 있는 클라우드 플랫폼이다.
- 2021년 1월 기준 24개 리전, 77개 가용 영역, 5개 로컬 영역, 210개 이상의 엣지 로케이션과 12개의 엣지 캐시에서 제공되고 있다. (한국은 서울 리전(ap-northeast-2), 4개의 가용영역 보유)
리전Regions
: 데이터 센터들을 클러스터링하는 기준이 되는 지역가용 영역Availability Zones
: 리전 안에 존재하는 데이터 센터의 논리적인 그룹로컬 영역Local Zones
: 특정 지역에 빠른 서비스를 제공하기 위한 개념으로 특정 리전에 속함엣지 로케이션Edge Locations
: Amazon CloudFront에 파일을 전송하기 위한 캐시 서버 - AWS에서 제공하는 모든 서비스는 API로 제어할 수 있다는 특징을 가진다. (기본적으로 HTTP나 REST, SOAP로 이루어지며, Java나 Python, PHP, Ruby, .NET 등에서 쓸 수 있는 라이브러리 및 샘플 코드도 제공)
✅ AWS 서비스
– 컴퓨팅 관련 대표 서비스: EC2(Elastic Compute Cloud)
- 서버로 쓸 수 있는 환경을 클라우드로 제공하는 웹 서비스로, 컴퓨팅 파워의 규모를 자유자재로 변경이 가능하다.
- 인스턴스 유형에 사용되는 자원 : CPU / 메모리 / 스토리 / 네트워킹 용량
- EC2 사용 이점 : 컴퓨터의 필요한 만큼 크기 설정 가능 / 컴퓨팅 리소스에 대한 포괄적인 제어권 제공 / 보안 및 네트워크 구성, 스토리지 관리 효과적
– 데이터 베이스 관련 대표 서비스: RDS (Relational Database Sevice)
- 분산 관계형 DB를 제공하는 웹 서비스로 클라우드 내에서 설정, 운영, 스케일링 가능하다.
- 소프트웨어를 패치하거나 데이터베이스를 백업하거나 시점 복구를 활성화하는 것과 같은 복잡한 관리 프로세스들은 자동으로 관리 가능하다.
– 네트워킹 관련 대표 서비스: Route 53
- DNS를 제공하는 웹 서비스 (
DNS(domain name system)
: 숫자로 구성된 IP주소를 도메인 이름으로 상호 매칭시켜주는 시스템) - 세 가지 주요 기능 : 도메인 등록 / DNS 라우팅 / 상태 확인 후 조합하여 실행
– Storage 관련 대표 서비스: S3(Simple Storage Service)
- 데이터를 저장할 수 있는 웹 서비스로 내구성과 확장성이 뛰어나다.
- 시스템 적으로 자동으로 트래픽 증가에 대한 처리를 해준다. + 저장할 수 있는 파일 수의 제한이 없음.
bucket
: 최상위 디렉토리로, 디렉터리와 객체를 저장하는 컨테이너Object
: 저장되는 데이터, 파일과 메타데이터로 구성 (최대 5TB 까지 허용)Key
: 버킷 내에서 객체를 찾기 위해 사용되는 고유 식별자