콘텐츠로 이동

AWS Redshift

AWS Redshift의 핵심 성능 지표에는 쿼리 성능, 디스크 공간 사용률, CPU 사용률, 데이터베이스 연결 수, 디스크 I/O 작업이 포함되며, 이는 데이터 웨어하우스 성능을 평가하고 최적화하는 핵심 지표입니다.

설정

Func 설치

추천: Guance 통합 - 확장 - 호스팅 버전 Func를 활성화하면, 사전 조건이 모두 자동으로 설치됩니다. 스크립트 설치를 계속 진행하세요

Func를 직접 배포하려면 Func 직접 배포

설치 스크립트

안내: 요구 사항을 충족하는 Amazon AK를 미리 준비하세요. (간단히 하려면, 전역 읽기 전용 권한 ReadOnlyAccess를 직접 부여해도 됩니다)

호스팅 버전 활성화 스크립트

  1. Guance 콘솔에 로그인
  2. [통합] 메뉴를 클릭하고 [클라우드 계정 관리]를 선택
  3. [클라우드 계정 추가]를 클릭하고 [AWS]를 선택한 뒤, 화면에 필요한 정보를 입력합니다. 이전에 클라우드 계정 정보가 이미 설정되어 있다면 이 단계를 건너뜁니다
  4. [테스트]를 클릭합니다. 테스트가 성공하면 [저장]을 클릭하고, 실패하면 관련 설정 정보를 확인한 뒤 다시 테스트합니다
  5. [클라우드 계정 관리] 목록에서 추가된 클라우드 계정을 확인할 수 있습니다. 해당 클라우드 계정을 클릭하여 상세 페이지로 들어갑니다
  6. 클라우드 계정 상세 페이지의 [통합] 버튼을 클릭한 뒤, 미설치 목록에서 AWS Redshift를 찾아 [설치] 버튼을 클릭하면 설치 화면이 뜹니다. 설치를 진행하면 됩니다

수동 활성화 스크립트

  1. Func 콘솔에 로그인한 뒤 [스크립트 마켓]을 클릭하여 Guance 스크립트 마켓으로 들어가 integration_aws_redshift를 검색합니다

  2. [설치]를 클릭한 뒤, AWS AK ID, AK Secret 및 계정명을 입력합니다

  3. [배포 시작 스크립트]를 클릭하면 시스템이 자동으로 Startup 스크립트 세트를 생성하고, 해당 시작 스크립트를 자동으로 구성합니다

  4. 활성화한 후에는 「관리 / 자동 트리거 구성」에서 해당 자동 트리거 구성을 확인할 수 있습니다. [실행]을 클릭하면 정기 실행 시간을 기다릴 필요 없이 즉시 한 번 실행됩니다. 잠시 후 실행 작업 기록과 해당 로그를 확인할 수 있습니다

검증

  1. 「관리 / 자동 트리거 구성」에서 해당 작업의 자동 트리거 구성이 이미 존재하는지 확인하고, 동시에 작업 기록과 로그를 확인하여 이상이 있는지 점검합니다
  2. Guance의 「인프라 / 사용자 정의」에서 자산 정보가 있는지 확인합니다
  3. Guance의 「지표」에서 해당 모니터링 데이터가 있는지 확인합니다

지표

아마존 CloudWatch를 구성하면 기본 지표 집합은 다음과 같습니다. 구성 방식으로 더 많은 지표를 수집할 수 있습니다 아마존 CloudWatch 지표 상세

Redshift 지표

지표 이름 설명 단위 차원
CPUUtilization CPU 사용 비율입니다. 클러스터의 경우 이 지표는 모든 노드(리더 노드와 컴퓨팅 노드)의 CPU 사용률 값의 합계를 나타냅니다 % ClusterIdentifier
HealthStatus 클러스터의 상태 검사 1: 정상 또는 0: 비정상 ClusterIdentifier
MaintenanceMode 클러스터가 유지 관리 모드인지 여부 1: ON 또는 0: OFF ClusterIdentifier
PercentageDiskSpaceUsed 사용된 디스크 공간의 비율 % ClusterIdentifier
DatabaseConnections 클러스터의 데이터베이스 연결 수 count ClusterIdentifier
CommitQueueLength 특정 시점에 커밋을 기다리는 트랜잭션 수 count ClusterIdentifier
ConcurrencyScalingActiveClusters 주어진 시점에 쿼리를 적극적으로 처리 중인 동시 확장 클러스터 수 count ClusterIdentifier
NetworkReceiveThroughput 노드 또는 클러스터가 수신하는 데이터의 속도 byte/s ClusterIdentifier
NetworkTransmitThroughput 노드 또는 클러스터가 전송하는 데이터의 속도 byte/s ClusterIdentifier
MaxConfiguredConcurrencyScalingClusters 파라미터 그룹에서 구성된 최대 동시 확장 클러스터 수 count ClusterIdentifier
NumExceededSchemaQuotas 할당량을 초과한 schema 수 count ClusterIdentifier
ReadIOPS 초당 평균 디스크 읽기 작업 수 count/s ClusterIdentifier
ReadLatency 디스크 읽기 I/O 작업에 걸리는 평균 시간 ClusterIdentifier
ReadThroughput 초당 디스크에서 읽는 평균 바이트 수 byte ClusterIdentifier
TotalTableCount 특정 시점에 열려 있는 사용자 테이블 수 count ClusterIdentifier
WriteIOPS 초당 평균 디스크 쓰기 작업 수 count/s ClusterIdentifier
WriteLatency 디스크 쓰기 I/O 작업에 걸리는 평균 시간 ClusterIdentifier
WriteThroughput 초당 디스크에 쓰는 평균 바이트 수 byte ClusterIdentifier

객체

수집된 Amazon AWS Redshift 객체 데이터 구조이며, 「인프라-사용자 정의」에서 객체 데이터를 확인할 수 있습니다

{
  "measurement": "aws_redshift",
  "tags": {
    "ClusterAvailabilityStatus"         : "Modifying",
    "ClusterIdentifier"                 : "hn-test",
    "ClusterStatus"                     : "creating",
    "ClusterSubnetGroupName"            : "default",
    "ClusterVersion"                    : "1.0",
    "DBName"                            : "dev",
    "MasterUsername"                    : "awsuser",
    "NodeType"                          : "dc2.large",
    "PreferredMaintenanceWindow"        : "sat:19:30-sat:20:00",
    "RegionId"                          : "cn-northwest-1",
    "VpcId"                             : "vpc-b1ca3ff0fa4d",
    "name"                              : "hn-test"
  },
  "fields": {
    "AllowVersionUpgrade"               : true,
    "AutomatedSnapshotRetentionPeriod"  : 1,
    "ClusterNodes"                      : "[]",
    "ClusterParameterGroups"            : "[{\"ParameterApplyStatus\": \"in-sync\", \"ParameterGroupName\": \"default.redshift-1.0\"}]",
    "ClusterSecurityGroups"             : "[]",
    "Encrypted"                         : false,
    "Endpoint"                          : "{}",
    "ManualSnapshotRetentionPeriod"     : -1,
    "NumberOfNodes"                     : 1,
    "PendingModifiedValues"             : "{\"MasterUserPassword\": \"****\"}",
    "PubliclyAccessible"                : false,
    "VpcSecurityGroups"                 : "[{\"Status\": \"active\", \"VpcSecurityGroupId\": \"sg-467a\"}]",
    "message"                           : "{인스턴스 JSON 데이터}"
  }
}

주의: tagsfields의 필드는 이후 업데이트에 따라 변경될 수 있습니다

팁 1: tags.name 값은 인스턴스 ID이며, 고유 식별자로 사용됩니다

팁 2: fields.message, fields.network_interfaces, fields.blockdevicemappings는 JSON 직렬화 후의 문자열입니다

문서 평가

이 페이지가 도움이 되었나요?