AWS Metric Streams 통합을 사용하면 single service AWS 모든 AWS 지표 및 사용자 지정 지우스페이스를 수집하여 뉴렐릭으로 보내는 데 인 CloudWatch 만 필요합니다.
CloudWatch 지표를 New Relic으로 스트리밍하려면:
- 최소 권한 및 매핑 지침을 확인하십시오.
- Kinesis Data Firehose를 생성하고 New Relic을 가리킵니다.
- 그런 다음 CloudWatch 지표 스트림을 생성하여 방금 생성한 Firehose로 지표를 보냅니다.
- 안내 또는 수동 설정 지침을 따르십시오.
- 데이터 수신 확인 .
해당하는 경우 AWS 폴링 통합에서 마이그레이션 에 대한 설명서를 읽어보십시오.
팁
Terraform을 사용하여 클라우드 통합을 활성화하는 프로세스를 자동화할 수 있습니다. Terraform 공식 문서 사이트 에서 방법을 읽어보세요.
최소 권한 및 매핑 지침
추가 서비스 메타데이터 및 사용자 지정 태그로 CloudWatch 지표를 보강하려면 New Relic에 구성된 모든 AWS 역할에 다음과 같은 최소 권한이 부여되어야 합니다.
config:BatchGetResourceConfigconfig:ListDiscoveredResourceselasticache:DescribeCacheClusterstag:GetResources
New Relic UI는 현재 New Relic이 AWS CloudWatch Metric Streams에서 사용할 수 없는 서비스 데이터를 수집할 수 있는 적절한 권한을 갖도록 이러한 개별 항목에 대한 ReadOnlyAccess
정책을 권장합니다.
New Relic 및 AWS 계정 및 리전 매핑
- 여러 AWS 계정을 관리하는 경우 각 계정을 New Relic에 연결해야 합니다.
- 해당 계정 내에서 여러 지역을 관리하는 경우 각 지역은 New Relic을 가리키는 다른 Kinesis Data Firehose로 구성해야 합니다.
- 일반적으로 하나 이상의 AWS 계정을 단일 New Relic 계정에 매핑합니다.
CloudFormation을 사용한 설정 안내
먼저 각 AWS 계정을 New Relic 계정과 연결해야 합니다.이렇게 하려면 다음 옵션 중 하나를 사용하십시오.
- one.newrelic.com > All capabilities > Infrastructure > AWS 로 이동하여 Add an AWS account 클릭한 다음 Use metric streams 클릭하고 단계를 따릅니다.
- NerdGraph로 이 단계를 자동화하십시오 .
다음으로 UI의 마지막 단계에서 제공하는 CloudFormation 템플릿 을 사용하여 메트릭 스트림을 설정합니다.이 템플릿은 단일 지역에서 통합을 설정하기 위한 기반으로 제공됩니다.요구 사항에 맞게 사용자 정의하고 확장할 수 있습니다.
CloudFormation 템플릿 매개변수
이 표에는 CloudFormation 템플릿에 필요한 다양한 매개변수가 요약되어 있습니다. 템플릿은 AWS 계정에 새 리소스를 생성하므로 여기에 기존 AWS 리소스의 이름을 제공하지 않습니다.
이름 | 설명 | 제약 |
---|---|---|
New Relic 수집 라이센스 키 | 지표를 내보내려는 계정과 연결된 입니다. | 40자의 16진수 문자열 |
New Relic 데이터 센터 | 지수를 내보낸 뉴렐릭 데이터센터의 식별입니다. (EU 데이터센터 계정에는 볼륨 키 앞에 | 허용되는 값: |
CloudWatch 지표 스트림 이름 | 새 CloudWatch 지표 스트림의 이름(동일한 AWS 리전의 AWS 계정별로 고유해야 함) | 컨테이너 문자(대문자 및 소문자), 숫자 및 문자 '_' 및 '-'만 사용할 수 있으며 최대 길이는 총 255자입니다. |
Kinesis Data Firehose 이름 | 새 Kinesis Firehose 전송 스트림의 이름(동일한 AWS 리전의 AWS 계정별로 고유해야 함) | 컨테이너 문자(대문자 및 소문자), 숫자 및 문자 '.', '_' 및 '-'만 포함해야 하며 최대 길이는 총 64자입니다. |
Firehose S3 백업 버킷 이름 | 실패한 이벤트에 대한 새 S3 버킷 대상의 이름(파티션 내 모든 AWS 리전의 모든 AWS 계정에서 전역적으로 고유해야 함) | S3 버킷 명명 규칙 을 준수해야 합니다. |
AWS Config의 리소스 메타데이터로 메트릭 강화 | 리소스 변경 사항을 추적하도록 AWS Config를 활성화하고 구성합니다. 이를 통해 New Relic 환경을 완벽하게 모니터링할 수 있습니다. | 허용되는 값: |
구성 S3 백업 버킷 이름 | 전송 채널 구성을 위한 새 S3 버킷 대상의 이름(파티션 내 모든 AWS 리전의 모든 AWS 계정에서 전역적으로 고유해야 함) | S3 버킷 명명 규칙 을 준수해야 합니다. |
팁
제공된 CloudFormation 템플릿은 CloudWatch 지표 스트림에 포함 또는 제외 네임스페이스 필터를 포함하지 않습니다. 비즈니스 요구 사항에 따라 기본 템플릿을 조정하는 것이 좋습니다.
AWS 콘솔, API 또는 호출을 사용한 수동 설정
Kinesis Data Firehose 전송 스트림을 생성 하고 다음 대상 파라미터를 구성합니다.
출처: Direct PUT 또는 기타 출처
데이터 변환: 비활성화됨
레코드 형식 변환: 비활성화됨
목적지: New Relic
다음 설정이 정의되어 있는지 확인하십시오.
새 유물 구성(대상 설정)
- HTTP 끝점 URL - 미국 데이터 센터:
https://aws-api.newrelic.com/cloudwatch-metrics/v1
- HTTP 끝점 URL - EU 데이터 센터:
https://aws-api.eu01.nr-data.net/cloudwatch-metrics/v1
- API 키:
- 콘텐츠 인코딩:
GZIP
- 재시도 기간:
60
- HTTP 끝점 URL - 미국 데이터 센터:
S3 백업 모드: 실패한 데이터만
S3 버킷: 전송에 실패한 지표를 저장할 버킷을 선택하거나 새로 생성합니다.
New Relic 버퍼 조건
- 버퍼 크기:
1 MB
- 버퍼 간격:
60 (seconds)
- 버퍼 크기:
권한 IAM 역할:
- IAM 역할 생성 또는 업데이트
메트릭 스트림을 만듭니다 .
AWS 콘솔에서 CloudWatch service 으로 이동하여 Metrics 메뉴에서 Streams 옵션을 선택합니다.
Create metric stream 을(를) 클릭합니다.
사용 사례에 따라 올바른 구성을 결정합니다.
- 포함 및 제외 필터를 사용하여 New Relic에 메트릭을 푸시해야 하는 서비스를 선택하십시오.
- Kinesis Data Firehose를 선택합니다.
- 스트림의 의미 있는 이름을 정의합니다(예:
newrelic-metric-stream)
.
기본 출력 형식을
Open Telemetry 0.7
으로 변경합니다.(JSON은 지원하지 않습니다.)메트릭 스트림 생성을 확인합니다.
또는 AWS 설명서에서 CloudFormation 템플릿, API 또는 CLI를 사용하여 CloudWatch 지표 스트림을 생성하는 지침을 찾을 수 있습니다.
뉴렐릭 의 모드에서새 AWS 계정을 추가합니다 Metric streams.UI one.newrelic.com > All capabilities > Infrastructure > AWS 로 이동하여 Add an AWS account 클릭한 다음 Use metric streams 클릭하고 단계를 따르세요.
데이터가 올바르게 수신되었는지 확인
Metric Streams에서 데이터를 수신하고 있는지 확인하려면 다음 단계를 따르세요.
one.newrelic.com > All capabilities > Infrastructure > AWS 로 이동하여 Stream 계정을 검색하세요.
다음을 확인하십시오.
- 계정 상태 대시보드. New Relic이 메트릭 데이터(오류, 수집된 네임스페이스/메트릭 수 등)를 수신하는지 확인하는 데 유용합니다.
- 데이터를 탐색하십시오. 메트릭 및 이벤트를 사용하여 특정 메트릭 집합을 찾고 지정된 메트릭에 사용할 수 있는 모든 차원에 액세스하는 등의 작업을 수행합니다.
새 리소스가 감지되고 엔터티로 합성될 때까지 몇 분 정도 걸릴 수 있습니다.자세한 내용은 클라우드 통합 시스템 제한 을 참조하세요.
팁
AWS Billing과 같은 글로벌 서비스에 대한 AWS CloudWatch 지표는 us-east-1 지역에서만 사용할 수 있습니다. 해당 리전에 활성 CloudWatch 지표 스트림이 구성되어 있는지 확인하십시오.
쿼리, 메트릭 스토리지 및 매핑
AWS CloudWatch에서 가져온 측정항목은 summary
유형의 차원 측정항목으로 저장됩니다.NRQL 을 사용하여 쿼리 할 수 있습니다.
현재 클라우드 통합의 지표를 AWS Metric Streams에서 가져올 새로운 매핑으로 매핑했습니다. 현재 지표 이름 지정을 계속 사용할 수 있으며 쿼리는 계속 작동하고 AWS Metric Streams 및 현재 클라우드 통합에서 데이터를 선택합니다.
현재 클라우드 통합 메트릭이 새로운 메트릭 명명에 매핑되는 방식에 대한 설명서를 확인하십시오.
메트릭 스트림에서 오는 모든 메트릭에는 다음 속성이 있습니다.
aws.MetricStreamArn
collector.name = 'cloudwatch-metric-streams'
.
엔터티 목록에 있는 AWS 네임스페이스의 엔터티
많은 AWS 네임스페이스에 대한 New Relic 엔터티를 생성합니다. 네임스페이스에 대한 New Relic 엔티티를 생성할 때 다음을 기대할 수 있습니다.
- 엔터티 탐색기 에서 해당 엔터티를 찾습니다.
- 해당 엔터티에 대해 자동으로 생성된 엔터티 대시보드에 액세스합니다.
- AWS 태그로 장식된 해당 네임스페이스에서 지표와 엔터티를 가져옵니다.AWS 태그를 수집하려면 UI에서 설정 프로세스의 일부인
tag:GetResources
권한을 New Relic에 부여해야 합니다.AWS 태그는 측정항목에tag.AWSTagName
로 표시됩니다. 예를 들어 리소스에Team
AWS 태그를 설정한 경우tag.Team
으로 표시됩니다. - 엔터티 탐색기에 포함된 모든 기능을 활용합니다.
중요
New Relic Lookout은 AWS Metric Streams 통합과 호환되지 않습니다.
경고 조건 설정
메트릭 스트림에서 메트릭에 대한 NRQL 경고 조건을 생성할 수 있습니다. 필터가 CloudWatch 지표 스트림의 지표로만 데이터를 제한하는지 확인하십시오. 그렇게 하려면 다음과 같이 쿼리를 구성하세요.
SELECT sum(aws.s3.5xxErrors) FROM Metric WHERE collector.name = 'cloudwatch-metric-streams' FACET aws.accountId, aws.s3.BucketName
그런 다음 가) 데이터를 올바르게 처리하도록 하려면 고급 신호 설정을 구성하세요. AWS CloudWatch가 특정 지연을 통해 서비스로부터 지표를 수신하기 때문에 이러한 설정이 필요합니다. (예를 들어 Amazon은 EC2 지표의 90%가 생성된 후 7분 이내에 CloudWatch에서 사용할 수 있음을 보장합니다.) 게다가 AWS에서 뉴렐릭으로의 스트리밍 지표는 대부분 Firehose의 데이터 버퍼링으로 인해 최대 1분의 추가 지연을 추가합니다.
신호 설정을 구성하려면 Condition Settings 아래에서 Advanced Signal Settings 클릭하고 다음 값을 입력합니다.
- Aggregation window. 1분으로 설정하는 것이 좋습니다. 알림을 제공하거나 알림이 트리거되지 않는 문제가 있는 경우 2분으로 늘리는 것을 고려해 보세요.
- Offset evaluation by. 서비스에 따라 CloudWatch는 특정 지연을 거쳐 지표를 보낼 수 있습니다. 값은 창에서 설정됩니다. 1분 집계 기간의 경우 오프셋을 8로 설정하면 대부분의 지표가 올바르게 평가됩니다. AWS 및 Firehose에서 발생하는 지연이 더 적은 경우 더 낮은 오프셋을 사용할 수 있습니다.
- Fill data gaps with. 이 공백을 그대로 두거나 AWS 에서 들어오는 데이터의 차이로 인해 오탐 또는 부정적인 결과가 발생하는 경우 마지막으로 알려진 값을 사용하십시오.
자세한 내용은 NRQL 경고를 생성하는 방법 에 대한 설명서를 참조하십시오.
태그 컬렉션
New Relic은 AWS CloudWatch 지표 스트림에서 오는 지표의 향상된 차원을 제공합니다. 리소스 및 사용자 지정 태그는 대부분의 서비스에서 자동으로 가져오고 추가 차원으로 메트릭을 장식하는 데 사용됩니다. 지표 및 이벤트를 사용하여 각 AWS 지표에서 사용 가능한 태그를 확인하십시오.
다음 쿼리는 메트릭에서 측정기준으로 수집되고 쿼리되는 태그의 예를 보여줍니다.
SELECT average(`aws.rds.CPUUtilization`) FROM Metric FACET `tags.mycustomtag` SINCE 30 MINUTES AGO TIMESERIES
모든 측정항목에 사용자 정의 태그가 측정기준으로 있는 것은 아닙니다. 엔터티 탐색기 에 나열된 엔터티에 연결된 메트릭에만 연결된 사용자 지정 태그가 있습니다. AWS CloudWatch 지표 스트림은 스트림 메시지의 일부로 태그를 포함하지 않습니다. 따라서 New Relic 측에서 추가 처리가 필요합니다.
메타데이터 수집
사용자 지정 태그와 마찬가지로 New Relic은 관련 AWS 서비스에서 메타데이터 정보를 가져와서 AWS 서비스 API에서 수집한 풍부한 메타데이터로 AWS CloudWatch 지표를 장식합니다. 이 메타데이터는 AWS CloudWatch에서 제공하는 지표의 추가 차원으로 New Relic에서 액세스할 수 있습니다.
중요
이 선택적 기능은 CloudWatch Metric Streams 통합을 보완합니다. 이 선택적 기능을 활성화하지 않으면 서비스 검색 및 모니터링이 완료되지 않습니다.
이 솔루션은 AWS Config 를 사용하므로 AWS 계정에 추가 비용이 발생할 수 있습니다. AWS Config는 기록되는 서비스와 리소스를 결정하기 위한 세분화된 제어 를 제공합니다. New Relic은 AWS 계정에서 사용 가능한 리소스의 메타데이터만 수집합니다.
다음 서비스 및 네임스페이스가 지원됩니다.
- ALB/NLB
- API 게이트웨이(API v1 제외)
- 다이나모DB
- EBS
- EC2
- ECS
- ELB
- 람다
- RDS
- 시즌3
인프라 에이전트 메트릭 및 EC2 메타데이터 데코레이션
EC2 API 폴링 통합과 마찬가지로 인프라 에이전트가 호스트에 설치되고 EC2 네임스페이스가 AWS CloudWatch 지표 스트림 통합을 통해 활성화되면 모든 인프라 에이전트 이벤트 및 지표가 추가 메타데이터로 장식됩니다.
다음 속성은 인프라 샘플을 장식합니다. awsAvailabilityZone
, ec2InstanceId
, ec2PublicDnsName
, ec2State
, ec2EbsOptimized
, ec2PublicIpAddress
, ec2PrivateIpAddress
, ec2VpcId
, ec2AmiId
, ec2PrivateDnsName
다음 중 일부는 일부 환경에 적용되지 않을 수 있습니다. , ec2KeyName
, ec2SubnetId
, ec2InstanceType
, ec2Hypervisor
, ec2Architecture
, ec2RootDeviceType
, ec2RootDeviceName
, ec2VirtualizationType
, ec2PlacementGroupName
, ec2PlacementGroupTenancy
.
맞춤 측정항목 및 백분위수
CloudWatch 지표 스트림 통합은 사용자 지정 지표 및 백분위수를 포함하여 스트림에 구성된 새 지표를 자동으로 수집합니다.
맞춤 측정항목
CloudWatch 사용자 지정 지표를 수집하려면 CloudWatch 지표 스트림 구성에 사용자 지정 네임스페이스가 표시되고 포함 또는 제외 규칙에 의해 필터링되지 않는지 확인하십시오.
백분위수
AWS CloudWatch를 사용하면 백분위수를 비롯한 추가 통계를 정의할 수 있습니다.
CloudWatch 스트림에서 사용 가능한 지표에 백분위수를 추가하려면 다음 단계를 따르십시오.
AWS에서 API, CLI 또는 AWS 콘솔을 통해 CloudWatch 스트림 구성을
StatisticConfiguration
설정의 필수 백분위수로 업데이트합니다. 예를 들어, p90, p95 및 p99 백분위수를ELB latency metric (aws.elb.Latency)
에 추가할 수 있습니다.몇 분 후 새 통계가 스트림에서 제공되고 New Relic이 수집해야 합니다. 백분위수는 다음 명명 규칙을 사용하여 쿼리할 수 있습니다.
From Metric select max(aws.elb.Latency.p99) where collector.name = 'cloudwatch-metric-streams' timeseries
AWS는 백분위수 이외의 스트림에서 다른 통계를 지원하지만 이러한 통계는 Open Telemetry 내보내기 형식(JSON만 해당)에서 사용할 수 없으며 현재 New Relic에서 지원하지 않습니다.
AWS 설명서 에서 요금, 제한 사항 및 고급 구성에 대해 자세히 알아보십시오.
데이터 관리
뉴렐릭 UI 계정에서 수집되는 데이터를 추적하는 도구 세트를 제공합니다. 모든 세부정보를 보려면 설정 메뉴에서 Manage your data 으로 이동하세요. AWS Metric Streams 통합에서 수집된 지표는 Metric 버킷에서 고려됩니다.
보다 세분화된 데이터 보기가 필요한 경우 Metric
에서 bytecountestimate()
함수를 사용하여 수집되는 데이터를 추정하세요. 예를 들어 다음 쿼리는 지난 30일(바이트) 동안 AWS Metric Streams 통합을 통해 처리된 모든 지표에서 수집된 데이터를 나타냅니다.
FROM Metric SELECT bytecountestimate()/10e8 as 'GB Estimate' WHERE collector.name='cloudwatch-metric-streams' SINCE 30 day ago
AWS 서비스/네임스페이스에서 수집한 데이터를 보려면:
FROM Metric SELECT bytecountestimate()/10e8 as 'GB Estimate' WHERE collector.name='cloudwatch-metric-streams' FACET aws.Namespace
AWS 서비스/네임스페이스에서 처리한 원시 지표 업데이트 수를 보려면:
FROM Metric SELECT dataPointCount() WHERE collector.name='cloudwatch-metric-streams' FACET aws.Namespace
수집되는 데이터를 제어하려면 다음 작업을 수행하는 것이 좋습니다.
- New Relic으로 모니터링하려는 AWS 계정 및 리전에서만 지표 스트림이 활성화되어 있는지 확인하십시오.
- Use the inclusion and exclusion filters CloudWatch Metric Streams 에서 어떤 서비스나 라벨스페이스가 뉴렐릭에 의해 모니터링되고 있는지 선택합니다.
- 데이터 삭제 규칙 을 사용하여 사용자 정의 필터를 기반으로 하는 측정항목을 삭제하는 것을 고려하십시오.(예를 들어, 네임스페이스 및 태그, 태그 값 또는 기타 유효한 NRQL 기준으로 메트릭을 삭제합니다.)
중요
AWS Metric Streams를 통해 전송된 지표는 데이터가 수집될 New Relic 계정에 대한 지표 API 제한에 따라 계산됩니다.