상세 컨텐츠

본문 제목

AWS(아마존 웹서비스) EC2 프리티어 CPU사용량 100% 이슈

IT/Linux

by 조스톡 2022. 4. 3. 12:00

본문

728x90
반응형

AWS(아마존 웹서비스)에서는 '프리 티어'라는 제도를 운영하여 1년간 클라우드 서비스(EC2)를 무료로 사용할 수 있게 해줍니다.

​

그러나 사용하는 과정에서 지속해서 SSH연결이 끊기고, 재접속을 하더라도 접속이 안되는 등의 현상이 발생했습니다. 인스턴스 모니터링 기능을 통해 확인해보니 CPU의 사용률이 100%로 올라가는 등의 이슈가 있었습니다.

​

 

EC2 프리 티어 t2.micro 성능, 명칭 설명

일단 프리 티어로 제공하는 't2.micro' 상품의 성능표입니다. vCPU 1개와 시간당 CPU 크레딧 6개, 메모리 1GB, 스토리지 8GB를 할당 받는 상품입니다.

​

vCPU은 CPU제조사들이 제공하는 가상화 기술인 인텔의 HT(Hyper-Threading), AMD의 SMT(Simultaneous Multi-Threading)을 통해 만들어낸 스레드를 사용하는 단위라고 생각하시면 됩니다.

​

CPU 크레딧​은 CPU가 평균 사용률보다 낮은 수치로 사용되고 있으면 크레딧이 쌓여있다가, 서버 사용자나 작업이 늘어나 CPU사용량이 늘어나게 되면 크레딧이 사용되어 좀 더 높은 성능을 내게 됩니다.

​

​

서버에 사용된 CPU를 'lscpu' 명령어를 통해 확인해보면, 'Intel Xeon CPU E5-2686 v4'가 사용되고 있는 것을 확인할 수 있습니다.

​

이 CPU는 4Q16에 출시된 제품으로 기본 클럭 2.3 GHz, 터보 클럭 3.0 GHz, Cores 18, Threads 36의 제원을 가지고 있습니다.

​

위에서 얘기했던 vCPU는 Threads를 의미하는 것입니다. 이 한 서버에 36개의 vCPU를 만들 수 있는 것이죠. 업체별로 상이하여 1:3(18*3=54)이나 1:4(18*4=72)을 사용하는 곳도 있는 것으로 보이나 일반적으로는 1:2인 것으로 보입니다. 더 많이 쪼개게 되면 그만큼 vCPU당 성능이 떨어지겠죠.

​

그렇기에 높은 성능의 클라우드 서버가 필요하다면, 1 CORE = 2 vCPU(1:2) 인 것을 생각하여 상품을 선택하시면 되겠습니다.

​

​

위에서 얘기했던 내용으로, AWS에서는 1 CORE = 2 vCPU(1:2)로 사용하고 있습니다.

​

 

​

SSH연결 끊김, CPU 사용률 100% 이슈, 이유는??

결국 프리 티어로 제공하는 서비스의 성능이 낮아서 발생하는 현상​입니다.

​

원인을 찾기 위해 프로세스 모니터링을 하면서 작업을 진행 중에 특정 행동을 했을 때 이런 현상이 나타나는 것을 확인했습니다. 아직까지도 '이게 CPU를 이렇게 많이 사용할 작업인가...?'하며 허탈하기도 했지만, 어떻게 보면 '무료 서비스니까 이 정도겠구나' 싶기도 합니다.

​

증상을 완화하는 방법은 테스트 이후에 추가로 작성하여 본 글에 첨부하겠습니다.

728x90
반응형

관련글 더보기