AWS Aurora MySQL
스크립트 마켓의 「Guance 클라우드 동기화」 시리즈 스크립트 패키지를 사용하여 클라우드 모니터링과 클라우드 자산 데이터를 Guance로 동기화합니다
설정¶
Func 설치¶
Guance 통합 - 확장 - 호스팅 버전 Func를 활성화하는 것을 권장합니다. 모든 사전 조건이 자동으로 설치되므로, 스크립트 설치를 계속 진행하면 됩니다
직접 Func를 배포하는 경우 Func 직접 배포를 참고하세요
스크립트 설치¶
안내: 요구 사항을 충족하는 Amazon AK를 미리 준비해 주세요. (간단하게 하려면 전역 읽기 전용 권한
ReadOnlyAccess를 직접 부여해도 됩니다)
호스팅 버전 스크립트 활성화¶
- Guance 콘솔에 로그인합니다
- 【통합】 메뉴를 클릭하고 【클라우드 계정 관리】를 선택합니다
- 【클라우드 계정 추가】를 클릭하고 【AWS】를 선택한 뒤 화면에 필요한 정보를 입력합니다. 이전에 클라우드 계정 정보가 이미 설정되어 있다면 이 단계를 건너뜁니다
- 【테스트】를 클릭한 뒤 테스트가 성공하면 【저장】을 클릭합니다. 테스트에 실패하면 관련 설정이 올바른지 확인한 후 다시 테스트합니다
- 【클라우드 계정 관리】 목록에서 추가된 클라우드 계정을 확인할 수 있습니다. 해당 클라우드 계정을 클릭하여 상세 페이지로 들어갑니다
- 클라우드 계정 상세 페이지의 【통합】 버튼을 클릭한 뒤
설치되지 않음목록에서AWS Aurora MySQL을 찾아 【설치】 버튼을 클릭하면 설치 화면이 나타납니다. 【설치】 버튼을 클릭하면 설치 화면이 나타나므로 설치를 진행하면 됩니다
수동으로 스크립트 활성화¶
-
Func 콘솔에 로그인한 뒤 【스크립트 마켓】을 클릭하여 Guance 스크립트 마켓으로 들어가
integration_aws_aurora_mysql를 검색합니다 -
【설치】를 클릭한 후 다음 파라미터를 입력합니다: AWS AK ID, AK Secret 및 계정명
-
【배포 및 시작 스크립트】를 클릭하면 시스템이 자동으로
Startup스크립트 세트를 생성하고, 해당 시작 스크립트를 자동으로 설정합니다 -
활성화한 뒤에는 「관리 / 자동 트리거 설정」에서 해당 자동 트리거 설정을 확인할 수 있습니다. 【실행】을 클릭하면 주기 시간을 기다리지 않고 즉시 한 번 실행할 수 있습니다. 잠시 후 실행 작업 기록과 해당 로그를 확인할 수 있습니다
검증¶
- 「관리 / 자동 트리거 설정」에서 해당 작업의 자동 트리거 설정이 존재하는지 확인하고, 동시에 작업 기록과 로그를 확인하여 이상이 있는지 점검합니다
- Guance의 「인프라 - 리소스 디렉터리」에서 자산 정보가 존재하는지 확인합니다
- Guance의 「지표」에서 해당 모니터링 데이터가 있는지 확인합니다
지표¶
Amazon 클라우드 모니터링을 설정하면, 추가 구성으로 더 많은 지표를 수집할 수 있습니다. Amazon CloudWatch 지표 상세
Amazon RDS의 Amazon CloudWatch 지표¶
AWS/RDS 네임스페이스에는 Amazon Aurora에서 실행되는 데이터베이스 엔터티에 적용되는 다음 지표가 포함되어 있습니다. 일부 지표는 Aurora MySQL 및/또는 Aurora PostgreSQL에 적용됩니다. 또한 일부 지표는 데이터베이스 클러스터, 기본 데이터베이스 인스턴스, 복제본 데이터베이스 인스턴스 또는 모든 데이터베이스 인스턴스에만 해당됩니다.
Amazon Aurora의 클러스터 수준 지표¶
| 지표 | 설명 | 적용 대상 | 단위 |
|---|---|---|---|
AuroraGlobalDBDataTransferBytes |
Aurora Global Database에서 원본 AWS 리전에서 보조 AWS 리전으로 전송된 redo log 데이터의 양입니다. 참고: 이 지표는 보조 AWS 리전에만 적용됩니다. | Aurora MySQL 및 Aurora PostgreSQL | 바이트 |
AuroraGlobalDBProgressLag |
Aurora Global Database에서 사용자 트랜잭션과 시스템 트랜잭션 측면에서 보조 클러스터가 기본 클러스터에 얼마나 뒤처져 있는지를 측정합니다. 참고: 이 지표는 보조 AWS 리전에만 적용됩니다. | Aurora MySQL 및 Aurora PostgreSQL | 밀리초 |
AuroraGlobalDBReplicatedWriteIO |
Aurora Global Database에서 기본 AWS 리전에서 보조 AWS 리전으로 복제된 클러스터 볼륨의 쓰기 입출력 작업 수입니다. 글로벌 데이터베이스의 보조 AWS 리전에 대한 요금 계산은 클러스터에서 수행된 쓰기를 고려하기 위해 VolumeWriteIOPs를 사용합니다. 글로벌 데이터베이스의 기본 AWS 리전에 대한 요금 계산은 해당 클러스터의 쓰기 활동을 고려하기 위해 VolumeWriteIOPs를 사용하고, 글로벌 데이터베이스의 리전 간 복제를 고려하기 위해 AuroraGlobalDBReplicatedWriteIO를 사용합니다. 참고: 이 지표는 보조 AWS 리전에만 적용됩니다. | Aurora MySQL 및 Aurora PostgreSQL | 개수 |
AuroraGlobalDBReplicationLag |
Aurora Global Database에서 기본 AWS 리전의 업데이트를 복제할 때의 지연 시간입니다. 참고: 이 지표는 보조 AWS 리전에만 적용됩니다. | Aurora MySQL 및 Aurora PostgreSQL | 밀리초 |
AuroraGlobalDBRPOLag |
Aurora Global Database에서 복구 시점 목표(RPO) 지연 시간입니다. 이 지표는 사용자 트랜잭션 측면에서 보조 클러스터가 기본 클러스터에 얼마나 뒤처져 있는지를 측정합니다. 참고: 이 지표는 보조 AWS 리전에만 적용됩니다. | Aurora MySQL 및 Aurora PostgreSQL | 밀리초 |
AuroraVolumeBytesLeftTotal |
클러스터 볼륨의 남은 사용 가능 공간입니다. 클러스터 볼륨이 증가할수록 이 값은 감소합니다. 0에 도달하면 클러스터는 공간 부족 오류를 보고합니다. Aurora MySQL 클러스터가 128TiB 크기 제한에 가까운지 감지하려는 경우, VolumeBytesUsed보다 이 값을 모니터링하는 것이 더 쉽고 신뢰할 수 있습니다. AuroraVolumeBytesLeftTotal은 내부 트랜잭션 관리에 사용되는 스토리지와 스토리지 요금에 영향을 주지 않는 기타 할당을 고려합니다. | Aurora MySQL | 바이트 |
BacktrackChangeRecordsCreationRate |
5분 동안 데이터베이스 클러스터에 생성된 backtrack 변경 레코드 수입니다. | Aurora MySQL | 5분당 개수 |
BacktrackChangeRecordsStored |
데이터베이스 클러스터가 사용 중인 backtrack 변경 레코드 수입니다 | Aurora MySQL | 개수 |
BackupRetentionPeriodStorageUsed |
Aurora 데이터베이스 클러스터의 백업 보존 기간 내 시점 복구 기능을 지원하기 위해 사용된 백업 스토리지의 총량입니다. 이 수치는 TotalBackupStorageBilled 지표에 보고되는 총액에 포함됩니다. 각 Aurora 클러스터별로 개별 계산됩니다. | Aurora MySQL 및 Aurora PostgreSQL | 바이트 |
ServerlessDatabaseCapacity |
Aurora Serverless 데이터베이스 클러스터의 현재 용량입니다. | Aurora MySQL 및 Aurora PostgreSQL | 개수 |
SnapshotStorageUsed |
Aurora 데이터베이스 클러스터의 모든 Aurora 스냅샷이 백업 보존 기간 외부에서 사용하는 백업 스토리지의 총량입니다. 이 수치는 TotalBackupStorageBilled 지표에 보고되는 총액에 포함됩니다. 각 Aurora 클러스터별로 개별 계산됩니다. | Aurora MySQL 및 Aurora PostgreSQL | 바이트 |
VolumeWriteIOPs |
클러스터 볼륨의 쓰기 디스크 I/O 작업 수로, 5분마다 보고됩니다. 청구 대상 쓰기 작업을 계산하는 방법에 대한 자세한 설명은 VolumeReadIOPs를 참조하세요. Amazon RDS는 이러한 지표를 지속적으로 수집하는 것이 아니라 간격 단위로 수집하므로 작은 --period 값을 선택하는 것은 의미가 없습니다. |
Aurora MySQL 및 Aurora PostgreSQL | 5분당 개수 |
Amazon Aurora의 인스턴스 수준 지표¶
별도로 명시되지 않는 한, 다음의 인스턴스별 Amazon CloudWatch 지표는 모든 Aurora MySQL 및 Aurora PostgreSQL 인스턴스에 적용됩니다.
| 지표 | 설명 | 적용 대상 | 단위 |
|---|---|---|---|
AbortedClients |
올바르게 닫히지 않은 클라이언트 연결 수입니다. | Aurora MySQL | 개수 |
ActiveTransactions |
Aurora 데이터베이스 인스턴스에서 초당 실행 중인 현재 트랜잭션의 평균 수입니다. 기본적으로 Aurora에서는 이 지표가 활성화되어 있지 않습니다. 이 값을 측정하려면 특정 데이터베이스 인스턴스의 데이터베이스 파라미터 그룹에서 innodb_monitor_enable='all'을 설정하세요. |
Aurora MySQL | 초당 개수 |
ACUUtilization |
ServerlessDatabaseCapacity 지표 값을 데이터베이스 클러스터의 최대 ACU 값으로 나눈 값입니다. 이 지표는 Aurora Serverless v2에만 적용됩니다. |
Aurora MySQL 및 Aurora PostgreSQL | 백분율 |
AuroraDMLRejectedMasterFull |
writer 데이터베이스 인스턴스에서 세션이 가득 차서 거부된 forward query 수입니다. | Aurora MySQL 버전 2의 기본 인스턴스에 적용 | 개수 |
AuroraDMLRejectedWriterFull |
writer 데이터베이스 인스턴스에서 세션이 가득 차서 거부된 forward query 수입니다. | Aurora MySQL 버전 3의 기본 인스턴스에 적용 | 개수 |
AuroraEstimatedSharedMemoryBytes |
마지막으로 구성된 폴링 간격 동안 능동적으로 사용된 shared buffer 또는 buffer pool 메모리의 추정량입니다. | Aurora PostgreSQL | 바이트 |
AuroraMemoryHealthState |
메모리 상태를 나타냅니다. 값 0은 NORMAL을 의미합니다. 값 10은 RESERVED를 의미하며, 이는 서버의 메모리 사용량이 임계 수준에 가까워졌음을 나타냅니다. | Aurora MySQL 버전 3.06.1 이상 | 개수 |
AuroraMemoryNumDeclinedSqlTotal |
메모리 부족(OOM)을 방지하기 위해 거부된 increment query 수입니다. | Aurora MySQL 버전 3.06.1 이상 | 개수 |
AuroraMemoryNumKillConnTotal |
OOM을 방지하기 위해 종료된 increment connection 수입니다. | Aurora MySQL 버전 3.06.1 이상 | 개수 |
AuroraReplicaLag |
Aurora 복제본에서 기본 인스턴스의 업데이트를 복제할 때의 지연량입니다. | Aurora MySQL 및 Aurora PostgreSQL의 복제본 인스턴스에 적용 | 밀리초 |
AuroraReplicaLagMaximum |
데이터베이스 클러스터의 기본 인스턴스와 모든 Aurora 데이터베이스 인스턴스 사이의 최대 지연량입니다. 읽기 전용 복제본을 삭제하거나 이름을 변경할 때, 이전 리소스가 회수 과정을 거치면서 복제 지연이 일시적으로 최고치에 이를 수 있습니다. 해당 기간 동안의 복제 지연을 정확하게 파악하려면 각 읽기 전용 복제본 인스턴스에서 AuroraReplicaLag 지표를 모니터링하는 것이 좋습니다. |
Aurora MySQL 및 Aurora PostgreSQL의 기본 인스턴스에 적용 | 밀리초 |
AuroraReplicaLagMinimum |
데이터베이스 클러스터의 기본 인스턴스와 모든 Aurora 데이터베이스 인스턴스 사이의 최소 지연량입니다. | Aurora MySQL 및 Aurora PostgreSQL의 기본 인스턴스에 적용 | 밀리초 |
AuroraSlowConnectionHandleCount |
2초 이상 대기한 후 핸드셰이크를 시작한 연결 수입니다. 이 지표는 Aurora MySQL 버전 3에만 적용됩니다. | Aurora MySQL | 개수 |
BacktrackWindowActual |
대상 backtrack 기간과 실제 backtrack 기간의 차이입니다. | Aurora MySQL의 기본 인스턴스에 적용 | 분 |
BacktrackWindowAlert |
주어진 기간 동안 실제 backtrack 기간이 대상 backtrack 기간보다 짧았던 횟수입니다. | Aurora MySQL의 기본 인스턴스에 적용 | 개수 |
BlockedTransactions |
데이터베이스에서 초당 차단된 트랜잭션의 평균 수입니다. | Aurora MySQL | 초당 개수 |
BufferCacheHitRatio |
buffer cache가 제공한 요청의 비율입니다. | Aurora MySQL 및 Aurora PostgreSQL | 백분율 |
CommitLatency |
엔진과 스토리지가 커밋 작업을 완료하는 데 걸린 평균 지속 시간입니다. | Aurora MySQL 및 Aurora PostgreSQL | 밀리초 |
CommitThroughput |
초당 평균 커밋 작업 수입니다. | Aurora MySQL 및 Aurora PostgreSQL | 초당 개수 |
ConnectionAttempts |
성공 여부와 관계없이 인스턴스 연결을 시도한 횟수입니다. | Aurora MySQL | 개수 |
CPUUtilization |
Aurora 데이터베이스 인스턴스가 사용한 CPU 비율입니다. | Aurora MySQL 및 Aurora PostgreSQL | 백분율 |
DatabaseConnections |
데이터베이스 인스턴스에 연결된 클라이언트 네트워크 연결 수입니다. 데이터베이스 세션 수는 지표 값보다 높을 수 있습니다. 그 이유는 지표 값에 다음이 포함되지 않기 때문입니다: 더 이상 네트워크 연결은 없지만 데이터베이스에서 아직 정리하지 않은 세션, 데이터베이스 엔진이 자체 목적을 위해 생성한 세션, 데이터베이스 엔진의 병렬 실행 기능이 생성한 세션, 데이터베이스 엔진 작업 스케줄러가 생성한 세션, Amazon Aurora 연결 | Aurora MySQL 및 Aurora PostgreSQL의 기본 인스턴스에 적용 | 개수 |
DDLLatency |
sample, create, alter, delete 요청과 같은 요청의 평균 지속 시간입니다. | Aurora MySQL | 밀리초 |
DDLThroughput |
초당 평균 DDL 요청 수입니다. | Aurora MySQL | 초당 개수 |
Deadlocks |
데이터베이스에서 초당 발생한 deadlock의 평균 수입니다. | Aurora MySQL 및 Aurora PostgreSQL | 초당 개수 |
DeleteLatency |
delete 작업의 평균 지속 시간입니다. | Aurora MySQL | 밀리초 |
DeleteThroughput |
초당 평균 delete query 수입니다. | Aurora MySQL | 초당 개수 |
DiskQueueDepth |
디스크 접근을 기다리는 미완료 읽기/쓰기 요청 수입니다. | Aurora MySQL 및 Aurora PostgreSQL | 개수 |
DMLLatency |
insert, update, delete의 평균 지속 시간입니다. | Aurora MySQL | 밀리초 |
DMLThroughput |
초당 평균 insert, update, delete 수입니다. | Aurora MySQL | 초당 개수 |
EngineUptime |
인스턴스가 실행된 시간의 길이입니다. | Aurora MySQL 및 Aurora PostgreSQL | 초 |
FreeableMemory |
사용 가능한 RAM 크기입니다. Aurora MySQL 및 Aurora PostgreSQL 데이터베이스의 경우, 이 지표는 /proc/meminfo의 MemAvailable 필드 값을 보고합니다. |
Aurora MySQL 및 Aurora PostgreSQL | 바이트 |
FreeEphemeralStorage |
사용 가능한 임시 NVMe 스토리지의 크기입니다 | Aurora PostgreSQL | 바이트 |
InsertLatency |
insert 작업의 평균 지속 시간입니다. | Aurora MySQL | 밀리초 |
객체¶
수집된 AWS Aurora MySQL 객체 데이터 구조입니다. 「인프라 - 리소스 디렉터리」에서 객체 데이터를 확인할 수 있습니다
{
"measurement": "aws_rds",
"tags": {
"name" : "xxxxx",
"RegionId" : "cn-northwest-1",
"Engine" : "aurora-mysql",
"DBInstanceClass" : "db.t3.medium",
"DBInstanceIdentifier" : "xxxxxx",
"AvailabilityZone" : "ap-southeast-1b",
"SecondaryAvailabilityZone": "ap-southeast-1c"
},
"fields": {
"InstanceCreateTime" : "2025/05/26 22:45:02",
"LatestRestorableTime": "2025/05/26 22:15:26",
"Endpoint" : "{연결 주소 JSON 데이터}",
"AllocatedStorage" : 1,
"message" : "{인스턴스 JSON 데이터}",
}
}
주의:
tags,fields의 필드는 이후 업데이트에 따라 변경될 수 있습니다안내 1:
tags.name값은 인스턴스 ID이며, 고유 식별자로 사용됩니다안내 2:
fields.message,fields.Endpoint는 모두 JSON 직렬화된 문자열입니다