클라우드/AWS

[AWS] AWS AMI로 EC2 인스턴스 복제하기

밥빵 2024. 1. 21. 23:45

 AWS AMI로 실행중인 EC2 복제하기


 

AMI 라이프 사이클

https://docs.aws.amazon.com/ko_kr/AWSEC2/latest/UserGuide/AMIs.html

 

실행중인 AWS EC2를 AWS AMI를 통해 복제해보겠습니다.

 

현재 EC2에는 Hello World를 확인할 수 있는 Docker 컨테이너가 실행 중 입니다.

 

1. AMI를 통해 해당 EC2를 복제합니다.

2. 시작템플릿에 해당 AMI를 등록합니다.

3. 시작템플릿을 통해 새로운 EC2를 생성하고 복제된 EC2 Hello World를 확인할 예정입니다.

 

 

아래는 사진은 흐름도 입니다.

 

 

 

 

AMI

  • AMI는 EC2 인스턴스를 시작할 때 필요한 정보를 포함하는 이미지
  • 인스턴스의 소프트웨어적인 부분
  • 운영 체제(OS), 애플리케이션 서버 및 애플리케이션 소프트웨어를 포함한 전체 가상 서버의 스냅샷

 

시작템플릿

  • 시작 템플릿은 EC2 인스턴스를 시작할 때 필요한 설정 및 구성 옵션을 정의하는 템플릿
  • 인스턴스의 하드웨어적인 부분
  • 시작 템플릿은 버전 관리가 가능하며, 하나의 템플릿으로 여러 버전의 설정을 유지
  • 인스턴스를 생성할 때 설정했던 모든 설정 정보 + 이미지 정보

 

차이점

  • AMI는 '이미지'로서, OS와 소프트웨어 설정을 포함합니다.
  • '무엇'을 실행할지에 초점을 맞춥니다.
  • 시작 템플릿은 인스턴스의 '설정'으로서, 인스턴스의 크기, 보안, 네트워크 구성 등을 정의합니다. 
  • '어떻게' 인스턴스를 시작할지에 대한 것입니다.

 

 


EC2 

원본 ec2가 있습니다.

원본 ec2에서는 docker nginx 컨테이너가 실행 중 입니다.

해당 ec2를 기반으로 AMI를 만들어 보겠습니다.

 

 

 

 

AMI 이미지 생성

 

작업 -> 이미지 및 템플릿 -> 이미지 생성으로 들어가 AMI를 생성합니다.

 

 

 

 

AMI 이미지 생성 정보 입력

 

  • 이미지 이름 : 저장될 이미지의 이름
  • 재부팅 안함 : 활성화
  •  

기본적으로 Amazon EC2는 인스턴스를 종료하고, 연결된 볼륨의 스냅샷을 캡처하고,

AMI를 생성하여 등록한 다음 인스턴스를 재부팅합니다.

인스턴스를 종료하지 않으려는 경우에는 위의 "재부팅 안 함"을 선택합니다.

"재부팅 안 함"을 선택하는 경우, 생성된 이미지 파일의 시스템 무결성을 보장할 수 없습니다.

 

 

 

이미지 생성 완료

이미지 생성을 완료하면 AMI 생성된 이미지를 확인할 수 있습니다..

새로 생성된 EBS 볼륨 스냅샷도 확인할 수 있다. (위에 라이프 사이클 확인하기!)

 


 

 

AMI로 시작 템플릿 생성

 

 

 

Application and OS Images 선택

 

내 AMI -> 내 소유에서 이전에 만든 AMI를 선택합니다.

 

 

인스턴스 유형 및 키 페어 설정

새로 생성될 EC2에 인스턴스 유형과 키페어를 설정합니다..

기존 EC2 인스턴스 유형은 t2.micro 였지만 새로 생성될 EC2에는 t2.nano로 설정했습니다.

 

 

네트워크 설정

 

네트워크 설정은 기존 EC2와 동일하게 설정하였습니다.

 

 

이제 AMI도 생성하였고 AMI를 통해 시작템플릿도 생성하였습니다.

시작템플릿으로 인스턴스를 생성하겠습니다.


 

템플릿으로 인스턴스 시작

 

인스턴스 시작 -> 템플릿으로 인스턴스 시작

 

 

인스턴스 설정

 

시작템플릿에 필요한 설정을 다 설정해놨기 때문에 템플릿 구성으로 인스턴스를 시작할 수 있습니다.

구성을 재사용하거나 변경, 다른 사용자와 공유도 가능합니다.

 

 

 

 

인스턴스 시작

 

 

인스턴스가 새로 잘 생성되었네요~~

 

새로 생성된 EC2 인스턴스 IP주소로 접속하면 실행되고 있는 Dokcer Nginx를 확인할 수 있습니다.