알리바바 클라우드 Redis/Tair 클러스터 버전
알리바바 클라우드 Redis/Tair 클러스터 버전의 메트릭 표시로, CPU 사용률, 메모리 사용률, 디스크 읽기/쓰기, 네트워크 트래픽, 초당 접근 횟수 등을 포함합니다.
구성¶
Func 설치¶
Guance 통합 - 확장 - 호스팅 버전 Func 개설을 권장합니다
직접 Func를 배포하는 경우 Func 직접 배포를 참고하세요
스크립트 개설¶
안내: 요구 사항을 충족하는 알리바바 클라우드 AK를 미리 준비해 두세요. (간단히 하려면 전역 읽기 전용 권한
ReadOnlyAccess를 직접 부여해도 됩니다)
호스팅 버전 스크립트 개설¶
- Guance 콘솔에 로그인합니다
- 【통합】 메뉴를 클릭하고 【클라우드 계정 관리】를 선택합니다
- 【클라우드 계정 추가】를 클릭하고 【알리바바 클라우드】를 선택한 뒤 화면에 필요한 정보를 입력합니다. 이전에 클라우드 계정 정보를 이미 설정했다면 이 단계를 건너뜁니다
- 【테스트】를 클릭하고, 테스트가 성공하면 【저장】을 클릭합니다. 테스트가 실패하면 관련 설정이 올바른지 확인한 뒤 다시 테스트합니다
- 【클라우드 계정 관리】 목록에서 추가된 클라우드 계정을 확인할 수 있습니다. 해당 클라우드 계정을 클릭해 상세 페이지로 들어갑니다
- 클라우드 계정 상세 페이지의 【통합】 버튼을 클릭한 뒤
미설치목록에서알리바바 클라우드 Redis 클러스터 버전을 찾아 【설치】 버튼을 클릭하면 설치 화면이 나타나며, 그대로 설치하면 됩니다
수동 스크립트 개설¶
-
Func 콘솔에 로그인한 뒤 【스크립트 마켓】을 클릭해 Guance 스크립트 마켓으로 들어가고,
integration_alibabacloud_redis를 검색합니다 -
【설치】를 클릭한 뒤 다음 매개변수를 입력합니다. 알리바바 클라우드 AK ID, AK Secret 및 계정명.
-
【배포 시작 스크립트】를 클릭하면 시스템이 자동으로
Startup스크립트 세트를 생성하고, 해당 시작 스크립트를 자동으로 구성합니다. -
활성화 후 「관리 / 자동 트리거 구성」에서 해당 자동 트리거 구성을 확인할 수 있습니다. 【실행】을 클릭하면 주기 시간을 기다리지 않고 즉시 한 번 실행할 수 있습니다. 잠시 후 실행 작업 기록과 해당 로그를 확인할 수 있습니다.
메트릭¶
알리바바 클라우드 - CloudMonitor 구성이 완료되면 기본 메트릭 집합은 다음과 같습니다. 설정을 통해 더 많은 메트릭을 수집할 수 있습니다 알리바바 클라우드 CloudMonitor 메트릭 상세
| 메트릭 ID | 메트릭 이름 | 차원 | 통계 | 단위 |
|---|---|---|---|---|
| ShardingAdminClients | Proxy와 DB 간 연결 수 | userId,instanceId,nodeId | Average,Maximum | 개수 |
| ShardingAvgRt | 평균 응답 시간 | userId,instanceId,nodeId | Average,Maximum | μs |
| ShardingBlockedClients | 차단된 클라이언트 연결 수 | userId,instanceId,nodeId | Average,Maximum | 개수 |
| ShardingConnectionUsage | 연결 수 사용률 | userId,instanceId,nodeId | Average,Maximum | % |
| ShardingCpuUsage | CPU 사용률 | userId,instanceId,nodeId | Average,Maximum | % |
| ShardingHitRate | 적중률 | userId,instanceId,nodeId | Average,Maximum | % |
| ShardingInstProxyIntranetIn | Proxy 인스턴스 유입 대역폭 | userId,instanceId | Value | KBytes/s |
| ShardingInstProxyIntranetOut | Proxy 인스턴스 유출 대역폭 | userId,instanceId | Value | KBytes/s |
| ShardingInstProxyTotalQps | Proxy 인스턴스 초당 총 요청 수 | userId,instanceId | Value | 개수/초 |
| ShardingInstProxyUsedConnection | Proxy 인스턴스 사용 중인 연결 수 | userId,instanceId | Value | 개수 |
| ShardingIntranetIn | 유입 트래픽 | userId,instanceId,nodeId | Average,Maximum | KBytes/s |
| ShardingIntranetInRatio | 유입 대역폭 사용률 | userId,instanceId,nodeId | Average,Maximum | % |
| ShardingIntranetOut | 유출 트래픽 | userId,instanceId,nodeId | Average,Maximum | KBytes/s |
| ShardingIntranetOutRatio | 유출 대역폭 사용률 | userId,instanceId,nodeId | Average,Maximum | % |
| ShardingKeys | 캐시 내 Key 수 | userId,instanceId,nodeId | Average,Maximum | 개수 |
| ShardingMemoryUsage | 메모리 사용률 | userId,instanceId,nodeId | Average,Maximum | % |
| ShardingProxyAvgRequestSize | Proxy 단일 요청의 평균 바이트 수 | userId,instanceId,nodeId | Average,Maximum | Byte |
| ShardingProxyAvgResponseSize | Proxy 단일 응답의 평균 바이트 수 | userId,instanceId,nodeId | Average,Maximum | Byte |
| ShardingProxyAvgRt | Proxy 평균 지연 시간 | userId,instanceId,nodeId | Average,Maximum | μs |
| ShardingProxyConnectionUsage | Proxy 연결 수 사용률 | userId,instanceId,nodeId | Average,Maximum | % |
| ShardingProxyCpuUsage | Proxy CPU 사용률 | userId,instanceId,nodeId | Average,Maximum | % |
| ShardingProxyIntranetIn | Proxy 유입 트래픽 속도 | userId,instanceId,nodeId | Average,Maximum | KBytes/s |
| ShardingProxyIntranetOut | Proxy 유출 트래픽 속도 | userId,instanceId,nodeId | Average,Maximum | KBytes/s |
| ShardingProxyMaxRequestSize | Proxy 단일 요청의 최대 바이트 수 | userId,instanceId,nodeId | Average,Maximum | Byte |
| ShardingProxyMaxResponseSize | Proxy 단일 응답의 최대 바이트 수 | userId,instanceId,nodeId | Average,Maximum | Byte |
| ShardingProxyTotalQps | Proxy 초당 총 요청 수 | userId,instanceId,nodeId | Average,Maximum | 개수/초 |
| ShardingProxyUsedConnection | Proxy 사용 중인 연결 수 | userId,instanceId,nodeId | Average,Maximum | 개수 |
| ShardingSyncDelayTime | 다중 활성 동기화 지연 시간 | userId,instanceId,nodeId | Maximum,Average | seconds |
| ShardingUsedConnection | 사용 중인 연결 수 | userId,instanceId,nodeId | Average,Maximum | 개수 |
| ShardingUsedMemory | 메모리 사용량 | userId,instanceId,nodeId | Average,Maximum | Bytes |
| ShardingUsedQPS | 평균 초당 접근 횟수 | userId,instanceId,nodeId | Average,Maximum | 개수 |
객체¶
수집된 알리바바 클라우드 redis의 객체 데이터 구조는 「기반 시설-사용자 정의」에서 확인할 수 있습니다
{
"measurement": "aliyun_redis",
"tags": {
"name" : "r-bp12xxxxxxx",
"InstanceId" : "r-bp12vxxxxxxxxx",
"RegionId" : "cn-hangzhou",
"ZoneId" : "cn-hangzhou-h",
"InstanceClass" : "redis.master.small.default",
"EngineVersion" : "5.0",
"ChargeType" : "PrePaid",
"ConnectionDomain": "r-bp12vxxxxxxx.redis.rds.aliyuncs.com",
"NetworkType" : "VPC",
"PrivateIp" : "xxxxxx",
"Port" : "6379",
"InstanceName" : "xxx 시스템",
"InstanceType" : "Redis",
"InstanceStatus" : "Normal"
},
"fields": {
"Capacity" : "1024",
"EndTime" : "2022-12-13T16:00:00Z",
"CreateTime": "2021-01-11T09:35:51Z",
"Accounts" : "[{계정 정보 JSON 데이터}]",
"message" : "{인스턴스 JSON 데이터}"
}
}
로그¶
느린 쿼리¶
사전 조건¶
안내: 이 스크립트의 코드 실행은 Redis 인스턴스 객체 수집에 의존합니다. Redis의 사용자 정의 객체 수집이 설정되어 있지 않으면, 느린 로그 스크립트는 느린 로그 데이터를 수집할 수 없습니다
스크립트 설치¶
기존 설정에 더해, 해당 Redis 느린 쿼리 로그 수집 스크립트를 하나 더 설치해야 합니다
「관리 / 스크립트 마켓」에서 해당 스크립트 패키지를 클릭하여 설치합니다: 「Guance 통합(알리바바 클라우드 - Redis 느린 쿼리 로그 수집)」(ID: integration_alibabacloud_redis_slowlog)
데이터가 정상적으로 동기화되면 Guance의 「로그」에서 데이터를 확인할 수 있습니다.
업로드되는 데이터 예시는 다음과 같습니다:
{
"measurement": "aliyun_redis_slowlog",
"tags": {
"name" : "r-bp1c4xxxxxxxofy2vm",
"Account" : "(null)",
"IPAddress" : "172.xx.x.201",
"AccountName" : "(null)",
"DBName" : "3",
"NodeId" : "(null)",
"ChargeType" : "PrePaid",
"ConnectionDomain": "r-bpxxxxxxxxxxy2vm.redis.rds.aliyuncs.com",
"EngineVersion" : "4.0",
"InstanceClass" : "redis.master.small.default",
"InstanceId" : "r-bpxxxxxxxxxxxxxxx2vm",
"InstanceName" : "xx3.0-xx 시스템",
"NetworkType" : "VPC",
"Port" : "6379",
"PrivateIp" : "172.xxx.xx.200",
"RegionId" : "cn-hangzhou",
"ZoneId" : "cn-hangzhou-h"
},
"fields": {
"Command" : "latency:eventloop",
"ElapsedTime": 192000,
"ExecuteTime": "2022-07-26T03:18:36Z",
"message" : "{인스턴스 JSON 데이터}"
}
}
일부 매개변수 설명은 다음과 같습니다:
| 필드 | 유형 | 설명 |
|---|---|---|
ElapsedTime |
int | 실행 시간, 단위는 밀리초 |
ExecuteTime |
str | 실행 시작 시간 |
IPAddress |
str | 클라이언트의 IP 주소 |
주의:
tags,fields의 필드는 후속 업데이트에 따라 변경될 수 있습니다안내:
fields.message는 JSON 직렬화 후 문자열입니다