-
T-type Instance Burstable and Credit MonitoringAWS 2023. 3. 2. 12:19
T타입 인스턴스의 Burstable
기존 Amazon EC2 인스턴스 유형은 고정 CPU 리소스를 제공하는 반면 버스트 가능한 인스턴스는 CPU 사용률을 기준 수준 이상으로 버스트(burst) 할 수 있는 기능을 제공한다. 이런 경우 기본 CPU와 추가 버스트 CPU 사용량에 대해서만 비용을 지불하므로 컴퓨팅 비용이 절감된다. 기준 사용률 및 버스트 기능은 CPU 크레딧에 따라 결정된다.
버스트(burst) 가능한 인스턴스 타입은 T2, T3, T3a, T4g 네 가지 타입이 존재하고 각각의 타입은 CPU와 메모리에 따른 tier별로 각각 성능이 다르다.
T타입은 CPU credits이라는 개념이 존재하는데 1분동안 CPU Boost를 해줄 수 있는 개수를 의미한다.
CPU 기준 미만으로 유지될 때 지속적으로 크레딧을 획득하고 기준 이상으로 버스트될 때 사용률에 따라 크레딧을 지속적으로 소비한다. 획득하거나 소비하는 크레딧의 양은 인스턴스의 CPU 사용률에 따라 다르다.
획득한 크레딧이 사용한 크레딧보다 크면 그 차액을 누적 크레딧이라고 하며 나중에 기본 CPU 사용률 이상으로 버스트하는 데 사용할 수 있다. 마찬가지로 사용한 크레딧이 획득한 크레딧보다 많은 경우 인스턴스는 누적된 크레딧을 사용하여 기준 CPU 사용률 이상으로 버스트한다. 적립된 크레딧이 남아 있지 않으면 인스턴스는 점진적으로 기준 CPU 사용률로 떨어지고 더 많은 크레딧을 적립할 때까지 기준 이상으로 버스트할 수 없다.
T2 tier별 Credit, CPU CPU Credit은 위 표에서 처럼 시간당 저장되며 저장되는 수는 Tier별, Type별로 다르다.
적립된 Credit은 인스턴스가 실행하는 동안 소멸되지 않지만, 누적에는 한계치가 있다. T2 같은 경우 인스턴스가 중지하게 되면 모든 Credit이 소멸되지만 T3 같은 경우 인스턴스가 중지되면 7일동안 Credit이 소멸되지 않고 보유하게 된다.
CPU credit accrual limit
총 보유하고 있는 크레딧, 소비되는 크레딧, 새로 획득하는 크레딧, 버려지는 크레딧을 하나의 그림으로 표현할 수 있다.
Example - Credit use with T3 nano Standard
앞에 설명했던 내용들을 그래프를 통해 확인 할 수 있다.
https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/standard-mode-examples.html P1 – 그래프의 0시간에 인스턴스가 시작되고 크레딧을 받기 시작합니다. CPU 사용률은 0%이므로 크레딧이 사용되지 않으며, 모든 크레딧은 크레딧 잔액에 누적된다. 최대값인 144에 도달합니다.
P2 – CPU 사용률은 2.5%로 기준 5% 미만이다. 인스턴스는 소비한 것보다 더 많은 크레딧을 얻지만 한도를 초과하여 획득한 모든 크레딧은 폐기된다.
P3 – CPU 사용률은 7%로 기준보다 높다. 57.6크레딧을 소비해야 다. 인스턴스는 획득한 크레딧보다 더 많은 크레딧을 소비하며 값은 86.4 크레딧으로 줄어든다.
P4 – CPU 사용률이 기준 미만으로 감소하며 36크레딧을 소비하지만, 동시에 인스턴스는 72크레딧을 얻는다.
P5 – 다음 2시간 동안 인스턴스가 60%의 CPU 사용률로 버스트되고 전체 값인 122크레딧이 고갈된다. 이 기간이 끝나면 사용률은 기준 사용률 수준인 5%로 강제로 떨어진다.
P6 – 다음 14시간 동안 CPU 사용률은 5%기준으로, 크레딧은 0으로 유지된다.
P7 – 24시간 동안 인스턴스는 유휴 상태이고 CPU 사용률은 0%로, 이 시간 동안 인스턴스는 144크레딧을 획득하고 최대 누적치까지 크레딧이 생긴다.
CPU Credit Monitoring
만약 주어진 크레딧이 상관없이 성능을 계속해서 버스트 하고 싶다면 크레딧 사양을 무제한(Unlimited) 모드로 생성 시 설정하거나 EC2 인스턴스 세부정보에서 수정할수 있다.
무제한(Unlimited) 모드는 크레딧 수량 상관없이 버스트 가능하며 기본적으로 주어지는 크레딧을 다 사용하면 버스트가 가능하다 하지만 그에 대한 요금은 또 발생한다.
CPU 크레딧은 EC2 모니터링기능 CloudWatch 에서 사용한 크레딧 수량이랑, 누적된 크레딧 수량을 확인 할 수 있다.
T타입 서버의 부하를 주어 모니터링을 해보았다.
CPU 사용률에 따라 credit에 사용량이 함께 올라가고, Credit에 누적 개수(밸런스 개수)가 0이 되면서 CPU사용률이 급격히 떨어지는것을 확인 할 수 있다.
정리하면
- T 타입 인스턴스에는 버스트 기능이 있음.
- 버스트 기능은 CPU 사용량을 Boost하는 것임 – 일시적인 scale-up.
- 버스트 기능을 사용하기 위해선 Credit이 필요함.
- Credit은 분 마다 계속해서 누적되지만 누적 한도가 있음.
- Credit을 모두 사용할 경우 버스트 기능은 사용할 수 없고 급격히 성능이 저하됨.
- T 타입은 특정 시점에만 트래픽이 몰리는 서비스에 적합하며, 일정하게 트래픽이 많고 CPU 부하가 일정 수준 이상으로 유지되는 서비스에 부적합함.
https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/standard-mode-examples.html
Standard mode examples - Amazon Elastic Compute Cloud
Thanks for letting us know this page needs work. We're sorry we let you down. If you've got a moment, please tell us how we can make the documentation better.
docs.aws.amazon.com
Key concepts and definitions for burstable performance instances - Amazon Elastic Compute Cloud
Key concepts and definitions for burstable performance instances Traditional Amazon EC2 instance types provide fixed CPU resources, while burstable performance instances provide a baseline level of CPU utilization with the ability to burst CPU utilization
docs.aws.amazon.com
버스트 가능 성능 인스턴스에 대한 CPU 크레딧 모니터링 - Amazon Elastic Compute Cloud
버스트 가능 성능 인스턴스에 대한 CPU 크레딧 모니터링 EC2는 지표를 Amazon CloudWatch로 전송합니다. CPU 크레딧 지표는 CloudWatch 콘솔의 Amazon EC2 인스턴스별 지표에서 또는 각 인스턴스에 대한 지표
docs.aws.amazon.com
'AWS' 카테고리의 다른 글
SSM Session Manager로 Private EC2 접속하기 (0) 2023.04.16 S3 Presigned URL (0) 2023.04.11 EC2의 메모리/디스크 용량 모니터링 방법 (0) 2023.04.04 AWS SAA-C03 합격 후기 (0) 2022.12.04