티스토리 뷰

반응형

이번에 AWS Summit 을 확인하고나서 DevOps 중에 비용을 줄이고 고도화를 진행할 필요가 있다고 생각하여 현재 사용중이었던 인스턴스들을 전부 Amazon Linux (아마존 웹 서비스에서만 제공하는 인스턴스) 로 이전하려고 하였습니다. 같은 스펙에 대비해서 효율도 훨씬 좋고, 앞으로 오토 스케일링을 적용하기에 앞서 정말 좋은 모델이라고 생각했기 때문입니다 ㅎㅎ

 

AMI (Amazon Machine Image) 

우선 EC2를 생성함에 앞서 AMI 를 선택해야 합니다. AMI는 여러 가지 OS와 아키텍쳐(x86, arm64) 중에 1개를 골라서 지정하고, 그 외에는 기존에 인스턴스와 같이 설정하면 됩니다.

우리는 이 많고 많은 운영체제중에 Amazon Linux 를 선택하였습니다. (이것때문에 험난한 여정이 되리라고는 조금 예상했지만... 이렇게 다를줄은 몰랐습니다) 처음 사용하고 Ubuntu OS 와 같은 Linux이기 때문에 설정이 쉬울것이라고 생각했습니다만, 좀 오산이었던 것 같습니다. 

아키텍쳐는 Arm을 선택하였는데요, 요새 한창 핫한 M1 프로세서와 마찬가지의 라인업이라고 보시면 됩니다. 이전에 운영서버에서 사용해왔던 아키텍처인데, 같은 인스턴스 스펙 대비 비용은 11% 절감되었고 성능은 20% 정도 향상되었다고 생각이 들더라구요. 이건 좀 혁신이었습니다. 이 녀석을 선택하면 아래에 인스턴스 유형을 선택할 수 있는 범주가 달라지게 됩니다. 

아키텍쳐를 제공하지 않는다고 합니다. 심지어 가격은 더 저렴!

 

그래서 그런지 이번에 사용했던 EC2 세팅은 기존에 사용했던 x86에서 제공하는 패키지를 설치하면 작동하지 않는다는 것을 알았습니다. 에를 들어 M1 맥북에서 로제타2 변환이 안되는 것과 마찬가지의 원리입니다.

 

우리 회사에서는 t4g 클래스를 선택하였습니다. 테스트하기 위해 t4g.small 인스턴스 ( 2 Core, 2GB RAM) 를 사용하였는데, 개발서버만 이렇게 세팅하고 결국 스펙이 운영용으로는 배포하면서 한계가 있는 것 같아 t4g.medium (4GB RAM) 으로 유형을 변경했던 경험이 있네요.

 

또, 여기서 설정하는 AMI는 템플릿으로 저장도 가능합니다. 옆에 두고 필요할 때 뽑아쓰는 티슈처럼, 서버가 추가적으로 필요하여 MSA로 전환할 때 필수입니다. 이를 AWS 에서는 '시작 템플릿'이라고 합니다. 시작 템플릿 생성 버튼을 누르면 그냥 인스턴스 생성하는 포맷과 똑같이 출력됩니다. 

저는 용도에 맞게 시작 템플릿을 지정하고 사용하고 있습니다.

그리고 이 템플릿은 수정할 때마다 버전이 올라갑니다. 이전에 수정하기 전에 인스턴스로도 사용할 수 있죠. 

 

반응형
댓글
공지사항