IT STUDY LOG
[성능 테스트] 성능 테스트 조사 및 발표 준비 본문
# 조사 및 발표
발표 주제 1
AWS에서는 인스턴스나 볼륨에 대해서 버스트 기능을 제공합니다. 이는 평소에 사용하지 않을 때의 성능을 모아두고, 부하가 발생할 경우 일시적으로 성능을 올리는 기능입니다. 이것이 어떤 메커니즘으로 작동하는지 연구하세요.
버스트 기능이란?
- CPU 사용률이 낮거나 중간 정도인 워크로드는 CPU 사이클의 낭비를 초래하고 결과적으로 사용한 것보다 더 많은 비용을 지불하게 됨
- 이를 극복하기 위해 저비용 버스트 가능 범용 인스턴스인 T 인스턴스를 활용할 수 있음
EC2 버스트 가능 인스턴스 유형
- EC2 버스트 가능 인스턴스는 T4g, T3a 및 T3 인스턴스 유형과 이전 세대 T2 인스턴스 유형으로 구성
버스트 가능 성능 인스턴스에 대한 주요 개념 및 정의
- 기존 Amazon EC2 인스턴스 유형은 고정된 CPU 리소스를 제공하는 반면, 성능 순간 확장 가능 인스턴스는 기본 수준의 CPU 사용률을 제공하면서 기본 수준 이상으로 CPU 사용률을 버스트하는 기능을 제공
- 이 경우 기준 CPU와 추가 버스트 CPU 사용량에 대해서만 비용을 지불하면 되므로 컴퓨팅 비용이 절감
- 기준 사용률과 버스트 기능은 CPU 크레딧에 의해 좌우되며, 성능 순간 확장 가능 인스턴스는 CPU 사용량에 대해 크레딧을 사용하는 유일한 인스턴스 유형
- 각 버스트 가능 성능 인스턴스는 CPU 기준 미만으로 유지되면 지속적으로 크레딧을 얻고, 기준선 이상으로 버스트될 때 크레딧을 지속적으로 소비함
- 적립되거나 소비되는 크레딧 금액은 인스턴스의 CPU 사용률에 따라 달라짐
- CPU 사용률이 기준 미만인 경우 적립되는 크레딧은 소비되는 크레딧보다 많음
- CPU 사용률이 기준과 같을 경우 적립되는 크레딧은 소비되는 크레딧과 같음
- CPU 사용률이 기준을 초과할 경우 소비되는 크레딧이 적립되는 크레딧보다 많음
- 적립되는 크레딧이 소비되는 크레딧보다 많을 경우의 차액을 획득한 크레딧이라고 하며, 이를 나중에 기준 CPU 사용률 이상으로 버스트하는 데 사용할 수 있음
- 마찬가지로, 소비되는 크레딧이 적립되는 크레딧보다 많을 경우 인스턴스 동작은 크레딧 구성 모드(표준 모드 또는 무제한 모드)에 따라 달라짐
- 표준 모드
- 소비되는 크레딧이 적립되는 크레딧보다 많을 경우 인스턴스는 획득한 크레딧을 사용하여 기준 CPU 사용률을 초과하여 버스트함
- 획득한 크레딧이 남아 있지 않으면 인스턴스가 기준 CPU 사용률로 점진적으로 저하되고 크레딧이 더 많이 적립될 때까지 기준 이상으로 버스트할 수 없음
- 무제한 모드
- 인스턴스가 기준 CPU 사용률 이상으로 버스트하면 인스턴스는 먼저 획득한 크레딧을 사용하여 버스트함
- 획득한 크레딧이 남아 있지 않으면 인스턴스는 버스트에 잉여 크레딧을 사용
- CPU 사용률이 기준 미만으로 떨어지면 획득한 CPU 크레딧을 사용하여 이전에 소비한 잉여 크레딧을 청산할 수 있음
- CPU 크레딧을 획득하고 잉여 크레딧을 청산하는 기능을 통해 Amazon EC2은 24시간 동안 인스턴스의 CPU 사용률을 평균 수준으로 유지할 수 있음
- 24시간 동안의 평균 CPU 사용량이 기준을 초과하는 경우 인스턴스에 추가 사용량에 대해 vCPU 시간당 고정 추가 요금이 청구됨
핵심 개념 및 정의
CPU 사용률
- CPU 사용률은 인스턴스에서 현재 사용 중인 할당된 EC2 컴퓨팅 유닛의 비율(%)로 이 지표는 인스턴스에서 사용되고 있는 할당된 CPU 사이클의 비율을 측정.
- CPU 사용률 CloudWatch 지표는 코어당 CPU 사용량이 아니라 인스턴스당 CPU 사용량을 나타내고 인스턴스의 기준 CPU 사양도 인스턴스당 CPU 사용량을 기준으로 함
- AWS Management Console 또는 AWS CLI를 사용하여 CPU 사용률을 측정하려면 특정 인스턴스에 대한 통계 가져오기 섹션을 참조
CPU 크레딧
- vCPU 시간의 단위
- CPU 크레딧 1개 = vCPU 1개 * 100% 사용률 * 1분
- CPU 크레딧 1개 = vCPU 1개 * 50% 사용률 * 2분
- CPU 크레딧 1개 = vCPU 2개 * 25% 사용률 * 2분
기준 사용률
- 기준 사용률은 획득하는 CPU 크레딧 수가 사용 중인 CPU 크레딧 수와 일치할 때 순 크레딧 밸런스 0에서 CPU를 사용할 수 있는 수준
- 기준 사용률은 vCPU 사용률의 백분율로 표시되며 기준 사용률(%) = (획득한 크레딧 수/vCPU 수)/60분으로 계산됨
획득 크레딧
- 인스턴스가 실행 중일 때 지속적으로 적립되는 크레딧
- 시간당 적립되는 크레딧 수 = 기준 사용률(%) * vCPU 수 * 60분
소비 또는 사용되는 크레딧
- 인스턴스가 실행 중일 때 지속적으로 소비되는 크레딧
- 분당 소비되는 CPU 크레딧 = vCPU 수 * CPU 사용률 * 1분
획득한 크레딧
- 인스턴스가 기준 사용률에 필요한 것보다 적은 크레딧을 사용하는 경우 사용되지 않은 CPU 크레딧으로 획득한 크레딧 = (적립되는 크레딧 - 기준 미만으로 사용되는 크레딧)
- 실행 중인 인스턴스의 CPU 크레딧은 만료 기간이 없음
> T2의 경우 CPU 크레딧 밸런스는 인스턴스 중지와 시작 사이의 기간 동안 지속하지 않으며 T2 인스턴스를 중지하면 인스턴스는 누적된 크레딧을 모두 상실함
> T4g, T3a 및 T3의 경우 인스턴스가 중지된 후 CPU 크레딧 밸런스가 7일 동안 지속하다가 7일이 지나면 크레딧이 상실되며 7일 이내에 인스턴스를 시작하면 크레딧이 상실되지 않음
크레딧 누적 한도
- 인스턴스 크기에 따라 다르지만 일반적으로 24시간 동안 적립되는 최대 크레딧 수와 같음
- 한도에 도달한 후에 새로 획득하는 크레딧은 모두 삭제됨
시작 크레딧
- 표준 모드로 구성된 T2 인스턴스에만 적용됨
- 시작 크레딧은 새 T2 인스턴스에 할당되는 제한된 수의 CPU 크레딧으로, 표준 모드로 시작할 때 기준 이상으로 버스트할 수 있음
잉여 크레딧
- 획득한 크레딧 잔액이 소진된 후 인스턴스가 소비하는 크레딧
- 잉여 크레딧은 버스트 가능 인스턴스가 오랜 기간 동안 고성능을 유지할 수 있도록 고안되었으며 무제한 모드에서만 사용됨
- 잉여 크레딧 잔액은 인스턴스가 무제한 모드에서 버스트하기 위해 소비한 크레딧 수를 확인하는 데 사용됨
스탠다드 모드
- 크레딧 구성 모드로, 크레딧 잔액에 적립된 크레딧을 사용하여 인스턴스를 기준 이상으로 버스트 가능
무제한 모드
- 크레딧 구성 모드로, 필요할 때마다 원하는 기간 동안 높은 CPU 사용률을 유지하여 인스턴스를 기준 이상으로 버스트할 수 있음
# references
https://docs.aws.amazon.com/ko_kr/AWSEC2/latest/UserGuide/burstable-performance-instances.html
https://docs.aws.amazon.com/ko_kr/AWSEC2/latest/UserGuide/burstable-credits-baseline-concepts.html
'devops bootcamp 4 > assignment log' 카테고리의 다른 글
[서비스 모니터링] 쿠버네티스 클러스터 모니터링, 서비스 수준 목표 조사 및 발표 준비 (0) | 2023.06.05 |
---|---|
[Infrastructure as Code] IaC 조사 및 발표 준비 (0) | 2023.05.12 |
[네트워크 기초] HTTP 헤더 분석, ifconfig 명령어 조사 및 발표 준비 (0) | 2023.04.07 |
[네트워크 기초] 소켓, 포트, HTTP 버전 조사 및 발표 준비 (0) | 2023.04.06 |
[데이터베이스] 조사 및 발표 준비 (0) | 2023.03.29 |