EC2 배포 자동화 - (1)

TechXploreU·2023년 7월 17일
0
post-thumbnail

github에 있는 코드를 ec2에 자동으로 배포하는 실습입니다.
AWS를 처음 접하는 분들을 위해 쉽게 가이드를 만들어보았습니다.
또한 클라우드 쪽으로 취업하실 때 aws를 사용해 본 경험, 자동화(CI/CD) 경험이 요구되기 때문에 도움이 될 것 같습니다.
이번 포스팅에서는 ec2 생성을 해보겠습니다.

EC2

EC2란?

Amazon EC2(Amazon Elastic Compute Cloud)는 Amazon Web Services(AWS)에서 제공하는 가상 서버 호스팅 서비스입니다. EC2를 통해 사용자는 클라우드 상에서 가상 서버 인스턴스를 만들고 관리할 수 있으며 필요한 컴퓨팅 리소스를 쉽게 구축하고 확장할 수 있습니다. 사용자는 원하는 운영 체제, CPU, 메모리, 스토리지 등 서버 구성을 선택하고, 가상 서버 생성과 관리를 웹 기반 인터페이스를 통해 할 수 있습니다. EC2는 요금을 사용한만큼 지불하는 방식으로 제공되며, 사용자의 컴퓨팅 능력 필요에 따라 용량을 조절할 수 있어 비용 효율성이 높습니다.

ec2를 생성하기 전에 우선 보안그룹과 iam role을 생성해준다.

1. 보안 그룹 생성

VPC -> 보안 그룹 -> 보안 그룹 생성

리전은 서울리전으로 선택한다.

보안 그룹 이름과 설명을 작성한다.
설정한 vpc 내에서만 보안그룹을 사용할 수 있으므로 ec2를 생성할 vpc를 선택한다.
인바운드와 아웃바운드 규칙을 설정한다.

2. IAM Role 생성

IAM -> 역할 -> 역할 만들기

IAM은 글로벌이기 때문에 리전을 설정하지 않아도 된다.

권한 추가 단계에서 필요한 권한을 추가해주는데
CodeDeploy를 통해 배포할 것이기 때문에

  • AWSCodeDeployRole
  • AmazonEC2RoleforAWSCodeDeploy
  • AmazonS3ReadOnlyAccess
    를 추가해줬다.

ec2에 할당할 iam role이므로 test-app-for-ec2로 이름을 설정해주었다.

3. EC2 생성

EC2 -> 인스턴스 -> 인스턴스 시작

이름을 test-app으로 설정해준다.
OS를 선택할 수도 있고, 미리 만들어둔 AMI를 사용할 수도 있다.
여기서는 Amazon Linux 2023 AMI를 선택했다.
프리티어를 사용 중이라면 프리티어가 가능한 OS를 선택해주면 된다.

인스턴스 유형은 CPU, 메모리, 스토리지, 네트워킹 용량의 다양한 조합으로 구성되며
이 또한 프리티어가 가능한 유형을 설정하면 된다.

키 페어는 ec2에 접속할 때 필요한 key이다.
새 키 페어 생성을 클릭한 후

아래와 같이 이름을 설정한 후 키 페어 생성을 클릭하면 된다.

ec2를 배포 할 vpc를 선택한 후 서브넷을 지정한다.
퍼블릭 서브넷은 internet gateway가 연결되어 있어 바로 접속할 수 있지만
프라이빗 서브넷에 ec2를 생성하게 되면 bastion host를 통해 터널링을 하거나 nat gateway를 이용해야 한다.

보안그룹은 이전에 1번에서 생성한 test-app을 지정해주면 된다.

스토리지 구성도 프리티어가 가능한 볼륨까지만 추가하는 것을 권장한다.

IAM 인스턴스 프로파일에서 2번에서 생성한 test-app-for-ec2를 선택하면 된다.

이제 인스턴스 시작을 누르면 ec2가 생성된다.

profile
대학생과 함께하는 기술 탐험기

0개의 댓글