AWS ec2 인스턴스 복제하기

렁호·2022년 5월 29일
2
post-thumbnail

잡담


실제 서비스를 운영하다 보면 완전히 동일한 서버가 여러 대 필요할 때가 있다.

과거에는 이럴 경우 기존 서버만큼의 리소스가 그대로 필요했기에 절대 간단한 작업이 아니었다.

하드웨어부터 코드와 운영체제 및 서버, 네트워크 및 보안 설정까지 생각하면 눈물이 뚝뚝 흐를만한 고된 작업이었을 거라 상상 된다. 거기다가 복제된 서버가 필요 없어 졌을 때의 후처리를 생각하면 무지막지한 일이다.


하지만 지금의 클라우드 컴퓨팅 시대에서는 위의 모든 작업들을 아주 손쉽고 간단하게 해낼 수 있게 되었다.

그 중에서도 AWS ec2 서버를 IP주소(IPv4) 외의 모든 것이 동일하도록 복제하는 방법을 알아보자 !

사용 용도


  • 트래픽의 증가로 스케일 아웃이 필요한 경우
  • 기존 서버에서 진행 되고 있는 작업과 동시에 진행 할 수 없는 작업을 진행해야 할 경우
  • 긴 시간 테스트 또는 데이터 수집이 필요한 경우

사전 지식


  • 이미지

    • 이미지란 인스턴스의 소프트웨어적인 부분을 의미
    • 모든 파일부터 운영체제 설정 및 프로그램까지 서버 내부에 존재하는 또는 동작하고 있는 모든 것

  • 템플릿

    • 인스턴스의 하드웨어적인 부분을 의미
    • 인스턴스를 생성할 때 설정했던 모든 설정 정보 + 이미지 정보
    • 인스턴스를 찍어낼 수 있는 틀의 개념

진행 방법


이미지 생성


  1. AWS ec2 console 접속

  2. 이미지를 생성할 인스턴스 체크 후 이미지 생성 메뉴 클릭

  1. 이미지 설정

기존 서버의 소포트웨어적인 부분을 모두 복제하는 것이기 때문에 복잡한 설정을 필요로 하지 않는다.

  • 이미지 이름 : 저장될 이미지의 이름

  • 재부팅 안함 : 활성화 X 추천
    • 재부팅을 안 할 경우 이미지 파일의 무결성이 보장 되지 않음
    • 주의 사항은 잠시 복제 대상이 되는 인스턴스가 중지 되기 때문에 서비스나 업무에 영향을 줄 수 잇는지 여부를 확인 후 해야 한다.

  • 종료 시 삭제 : 활성화 O 추천
    • 이미지를 통해 만든 인스턴스가 종료된 경우 함께 생성된 EBS 볼륨이 삭제 됨을 의미
    • 혹시라도 비활성화 할 경우 불필요한 EBS가 남아있을 수도 있으니 해당 사항을 꼭 인지해야 한다.

  1. 생성 된 이미지 확인

Template 생성

  1. 템플릿을 생성할 인스턴스 체크 후 인스턴스에서 템플릿 생성 메뉴 클릭

  2. 템플릿 설정

  • 템플릿 이름 : 저장될 템플릿의 이름

  • 내 AMI → 위의 단계에서 만든 최신화 된 이미지 선택

  • Name 키의 값 : 생성될 인스턴스 이름

  • 위의 3가지 외에는 대상 인스턴스의 모든 정보를 그대로 가져옴으로 변경할 항목 없음

인스턴스 생성

  1. 새로 만든 template 체크 후 템플릿으로 인스턴스 시작 클릭

  2. template 생성할 때 입력한 설정 정보와 동일한지 확인

  3. 생성

SSH 연결

ssh -i <PEM FILE 경로> ubuntu@<퍼블릭 IPv4 DNS>
profile
식욕, 수면욕, 성욕 만땅

2개의 댓글

comment-user-thumbnail
2023년 5월 10일

안녕하세요. 해당 내용 너무 잘 보았고 실제로 해보니 정말 편리하네요.
작업하다가 한가지 문의드립니다.
기존 서버를 동일하게 이미지 복제하여 신규 서버로 생성하여 확인해보니
iptables rule, 보안 규칙 등 모두 동일하게 작성되었는데
Bash를 활용하여 확인해보니 기존 서버는 80과 443(ipv4)가 잘 열리는데 신규(복제) 서버는 해당 포트가 안열립니다.
혹시 동일한 문제가 발생한 적이 있으시다면 해결 방법 공유부탁드립니다.
감사합니다.

1개의 답글