AWS/AWS builders

(AWS기초) Amazon EC2로 첫 워크로드 시작하기

책다니엘 2024. 1. 18. 23:30
AWS 컴퓨팅 서비스 3가지

1. Amazon EC2(클라우드에 위치한 가상 서버 인스턴스)

2. Amazon ECS, EKS, Fargate(Docker 컨테이너를 대규모로 실행하고 관리할 수 있는 서비스)

3. AWS Lambda(이벤트에 대한 응답으로 코드를 실행하는 서버리스 컴퓨팅)

등이 있음

 

Amazon EC2

- Elastic Compute Cloud의 약자로, Limux, Mac, Windows 등 다양한 OS 환경을 지원하는 가상 서버 서비스

- 사용자들의 다양한 워크로드를 제공하기 위해 여러 기능과 아키텍쳐 제공

 

EC2의 호스트 가상화 

- 온프레미스 환경에서 하이퍼바이저를 통해 물리서버를 가상화하여 가상 머신을 사용하는 것처럼, AWS에서는 EC2를 통해 글로벌 데이터센터들의 물리 서버를 가상화하고 서비스함

- Custom KVM 기반의 Nitro 시스템을 통해 하이퍼바이저를 경량화하고 컴퓨팅 자원을 최적화하였음

 

Amazon EC2에서 제공하는 운영체제

- Windows와 같이 유료인 운영체제의 경우 Windows가 포함된 AMI를 통해 사용하면 AWS에서 라이선스 비용과 규정 준수 부분을 대신 처리함

- 기존에 구매한 라이센스가 있을 경우에는 각 라이센스별 정책에 따라 해당 라이센스를 AWS로 가져와 사용할 수도 있음

- Linux의 경우 Amazon Linux 제공, 라이센스 비용 지불 X, 지속적인 보안 및 user 업데이트 받을 수 있음

 

Amazon Machine Image(AMI)
  • 온프레미스에서 가상머신을 배포할 떄 이미지를 사용하는 것처럼
  • AWS에서도 EC2를 생성할 때 인스턴스의 정보가 담긴 이미지를 사용하고, 이를 AMI라 부름
  • 인스턴스에 필요한 OS, 데이터볼륨, 어플리케이션 정보를 포함
  • 하나의 AMI로 여러 인스턴스 동시 생성 가능
  • AMI에 포함된 것들:
  1. 1개 이상의 Amazon EBS(Elastic Block Store) 스냅샷 또는 루트 볼륨에 대한 템플릿(운영체제, 애플리케이션)
  2. AMI를 통하여 인스턴스를 시작할 수 있는 AWS 계정을 제어하는 시작 권한
  3. 인스턴스에 연결할 볼륨을 지정하는 블록 디바이스 매핑

 

 

 

알맞은 EC2 유형 선택하기

 

작은 인스턴스와 큰 인스턴스 중 적절한 인스턴스 선택 방법?

 

AWS EC2의 장점 중 하나는 사용 중인 인스턴스 변경이 가능하다는 것 

 

 

 

AWS Graviton 

 

 

알맞은 EC2 저장공간 이해하기

 

EC2의 데이터를 저장하기 위한 첫 번째 옵션, 인스턴스 스토어

 

EBS(Elastic Block Storage)

 

EBS 타입 선택의 기준
EBS의 장점 2 - 스냅샷 기능

 

Amazon EC2의 보안 구성

  • EC2로 접근하는 접속 유형, 포트, 소스에 대한 접근제어 설정 가능
  • Security Group은 Stateful 성격으로, Inbound로 허용된 트래픽의 Outbound는 자동으로 허용
  • Security Group을 구성할 때 접근하는 소스는 IP기반 뿐만 아니라 다른 보안그룹으로 지정하여 접근 제어 가능

 

 

 

안정적인 EC2 워크로드 구성하기 

1. 여러 인스턴스를 생성하여 트래픽을 분산

 

ELB의 네 가지 유형

 

 

Amazon EC2 활용 데모
  1. VPC 메뉴로 이동하여 Amazon EC2가 설치될 VPC를 생성
  2. 자동 생성 이름은 builders(임의)
  3. VPC 생성시 외부노출 막기 위해 Private Subnet만을 지정하여 생성(퍼블릭 서브넷 수 0)
  4. VPC의 생성이 완료되면 VPC 리스트에서 생성한 VPC 확인(VPC 워크플로 생성)
  5. VPC 생성이 완료된 다음에는 EIC와 EC2에 설정할 보안그룹 생성(우측상단)
  6. 보안그룹 메뉴로 이동, EIC에 할당할 보안그룹 생성(첫번째), 보안그룹 이름 EIC포함해보기, 인바운드 정책에 SSH포트 지정
  7. CIDR블록은 0.0.0.0/0(맨 위), 보안그룹 생성 클릭 
  8. 다시 EC2에 지정할 보안그룹 생성, 보안그룹 생성 클릭, 이름에 EC2포함해보기, SSH소스, EIC를 통한 접근만을 허용해아함(앞서 만든 보안그룹)
  9. EIC 생성을 위해 엔드포인트(좌측 메뉴) 이동, 엔드포인트 이름 지정, EC2연결 인스턴스 연결 엔드포인트 선택 후, EIC가 설정될 VPC를 지정(방금 생성한 builders VPC로 지정)
  10. 서브넷  칸에서 엔드포인트에 적용될 보안그룹 지정, 엔드포인트가 할당될 서브넷 설정
  11. Endpoint 생성이 완료되면 접속한 인스턴스를 생성하기 위해 EC2메뉴로 이동(창 상단)
  12. 인스턴스 시작 칸에서 이름 설정, 키페어는 별도로 설정하지 않고, 인스턴스가 설치될 위치는 builders VPC내의 프라이빗 서브넷으로 설정(인스턴스의 인터넷 노출 차단), 일반보안그룹은 EC2생성한 것 설정
  13. 생성 완료 후 로컬 터미널로 이동, AWS Credential로 CLI에 로그인, 아이디는 EC2_USER

 

요약