EC2 : 논리적인 리소스 서버를 할당받는 것
추가적인 기능은 다음과 같다.
- 하나의 인스턴스(가상 컴퓨팅 환경)마다 별도의 서비스 이용 가능
- Amazon 머신 이미지 (AMI)로 서버에 필요한 OS, 여러 SW들이 적절히 구상된 template으로 인스턴스 쉽게 생성 가능
- 인스턴스 유형 : 인스턴스를 위한 CPU, 메모리, 스토리지, 네트워킹 용량의 여러 구성 제공
- 키 페어를 사용해 인스턴스 로그인 정보 보호
- 인스턴스 스토어 볼륨 : 임시 데이터 저장하는 Storage volume으로 인스턴스 중단, 종료 시 삭제
- Amazon Elastic Block Store (Amazon EBS) : 영구 스토리지 볼륨에 데이터 저장
- 보안 그룹 사용해 인스턴스 연결할 수 있는 프로토콜, 포트, 소스 IP 범위 지정하는 방화벽 기능
- 탄력적 IP 주소 : 동적 클라우드 컴퓨팅을 위한 IPv4 주소
- 태그 : 사용자가 태그를 생성해 Amazon EC2 리소스에 할당할 수 있는 메타데이터
- Virtual Private Clouds (VPC): 논리적으로 격리되어 있으나 고객의 네트워크와 간편히 연결할 수 있는 가상 네트워크
- 전 세계적으로 분포한 데이터 센터에서 사용하며 완벽한 기능의 서비스를 제공하는 클라우드 플랫폼
- cloud computing IT resource를 인터넷을 통해 On-demand로 제공, 사용한 만큼 비용 지불
- 이점을 정리하면, 민첩성, 탄력성, 비용절감, on-demand, 관리 용이성이 특징
- EC2 인스턴스 생성 후 터미널로 연결하기. 할때 .ssh 폴더 생성하여 진행
- 가상화 : 물리적 컴퓨터 하드웨어를 보다 효율적으로 활용하도록 하는 프로세스
- 가상머신 (VM) : SW 형식으로 물리적 컴퓨팅을 시뮬레이션하는 가상 환경
- snapshot : 특정 시점의 스토리지 내 파일 시스템을 포착해 보관하는 기술, Windows OS의 복원지점처럼 데이터 손상 시, 스냅샷 생성한 시점으로 데이터 복구, 메타데이터의 복사본에 해당하기에 장애 발생 시 빠르게 데이터 복원
- Region : 데이터 센터가 위치한 지역, 대상 고객의 region과 자원 생성할 region이 최대한 가까워야 함
- Availability Zone (AZ) : 하나의 region은 두 개 이상의 AZ 존재.
주어진 퍼블릭 IPv4, DNS는 서버 오픈, 종료 시 변경되므로 고정적인 IP 이용을 원하면 탄력적 주소 필요.
- 기본적으로 5개까지 할당 가능.
- app application만들 수 있는 환경
- 관리 복잡성 줄일 수 있고, application을 업로드만 하면 용량 프로비저닝, 로드 밸런싱, 조정, 애플리케이션 상태 모니터링에 대한 세부 정보를 자동으로 처리
- Go, Java, Node.js, Python 등 여러 언어에서 개발된 application 지원.
- application 배포 시 Elastic beanstalk이 선택된 지원 가능 플랫폼 버전을 구축하고 EC2 등 AWS 리소스를 하나 이상 provisioning하여 application launch 진행
-> 빠르게 CI/CD 구축 가능 (백엔드 API 서버 만들 경우, 활용하자!)