• 로그인

사용자의 편의를 위해 제공되는 기계 번역입니다.

영문본과 번역본이 일치하지 않는 경우 영문본이 우선합니다. 보다 자세한 내용은 이 페이지를 방문하시기 바랍니다.

문제 신고

호스트 내 통합: 표준 구성 형식

2019년 12월에 Infrastructure 에이전트 버전 1.8.0 은 단일 구성 파일(두 개의 개별 파일 대신)을 사용하고 기타 개선 사항을 제공하는 이 새로운 구성 형식을 지원하기 시작했습니다. 이 문서는 이 새로운 형식이 어떻게 작동하는지 설명합니다.

이전 레거시 구성 형식 은 현재 인프라 에이전트에서도 지원됩니다.

구성에 대한 소개는 구성 개요 를 참조하십시오.

구성 구조

호스트 내 통합의 구성 YAML에는 YAML 배열이 포함된 integrations 최상위 섹션이 있어야 합니다. 여기서 각 항목은 통합 및 해당 구성을 나타냅니다.

각 통합 항목에 대해 name 속성만 필수입니다. 다른 속성은 선택 사항입니다.

다음은 구성이 필요 없는 내장 Docker 통합MySQL 통합 이라는 두 가지 통합을 특징으로 하는 구성의 예입니다.

integrations:
  # New Relic integration that does not require any configuration
  - name: nri-docker
  # New Relic integration that gets its configuration from the environment
  - name: nri-mysql
    env:
      PORT: 3306
      USERNAME: newrelic
      PASSWORD: 123456789 # to hide this field, read the secrets management documentation
  # Any free-form integration executed via a user-provided command
  - name: my-own-integration
    exec: python /opt/integrations/my-script.py --host=127.0.0.1

구성 YAML 파일을 원하는 만큼 가질 수 있으며 통합 인스턴스를 그룹화할 수 있습니다.

형식 문제를 피하기 위해 YAML 구성 파일을 사용하기 전에 린트 하는 것이 좋습니다.

각 구성 YAML 파일에는 discoveryvariables 최상위 섹션도 포함될 수 있습니다.

중요

이 구성 형식은 에이전트를 다시 시작할 필요가 없습니다. 저장하면 변경 사항이 즉시 감지되고 구현됩니다. 즉, 중간 구성 변경 사항을 저장하면 통합 작업이 중지될 수 있습니다.

구성 속성 목록

통합을 구성하는 데 사용되는 일반 속성 목록입니다. 예제 값을 포함하여 이러한 속성을 사용하는 방법에 대한 자세한 내용은 표 다음의 설명서를 참조하십시오.

구성

설명

name

통합의 이름입니다. 이는 모든 온-호스트 통합에서 유일한 필수 구성 속성입니다. exec 필드가 설정되지 않은 경우 통합 실행 파일의 이름이기도 합니다.

cli_args

name 이 통합 실행 파일을 제공하는 데 사용되는 경우 명령줄 인수의 선택적 목록입니다. 에이전트 버전 1.13.0 부터 사용 가능합니다.

exec

통합 실행 파일의 전체 경로와 인수입니다. 한 줄 문자열 또는 문자열 배열일 수 있습니다. 지정하지 않으면 exec 필드는 기본적으로 name 필드로 설정됩니다.

env

통합에 전달할 환경 변수가 포함된 YAML 맵입니다. 여기서 key 은 환경 변수 이름이고 value 은 변수 값입니다.

config

외부 파일로 작성된 구성 및 CONFIG_PATH 환경 변수 또는 ${config.path} 변수 자리 표시자와의 통합에 전달되는 경로입니다.

config_template_path

경로가 CONFIG_PATH 환경 변수 또는 ${config.path} 변수 자리 표시자와의 통합에 전달되는 모든 외부 파일입니다. 이를 사용하면 모든 외부 구성에 검색 및 비밀 바인딩을 적용할 수 있습니다.

integration_user

통합을 실행하는 사용자의 이름입니다.

interval

통합의 연속 실행 사이의 시간입니다. 공백 없이 숫자 뒤에 시간 단위( s , m 또는 h )가 와야 합니다.

inventory_source

인벤토리 소스의 범주 및 기간을 재정의할 수 있습니다.

labels

통합에서 보고한 데이터(메트릭, 이벤트, 인벤토리)를 장식하는 레이블이 있는 맵입니다.

timeout

숫자 다음에 시간 단위( ms , s , m 또는 h )가 옵니다. 이 기간 동안 응답하지 않은 통합은 종료되고 다시 시작됩니다.

working_dir

통합 바이너리의 작업 디렉터리입니다.

언제

절이 true로 평가되는 경우에만 통합이 실행됩니다.

조건은 아래 에 정의되어 있습니다.

이 문서의 나머지 부분은 기능별로 그룹화된 구성 속성에 대해 설명합니다.

실행할 통합 선택

통합을 실행할 두 가지 속성 nameexec 이 있습니다.

모든 호스트 내 통합에서 유일한 필수 속성은 name 입니다. 이 문서에 지정된 나머지 속성은 선택 사항입니다.

예시:

integrations:
- name: nri-docker
- name: my-integration
exec: /usr/local/bin/my-integration --metrics --inventory

통합 실행 파일에 구성 전달

종종 통합 실행 파일이 제대로 작동하려면 구성을 수신해야 합니다(예: 모니터링되는 시스템의 호스트 이름 및 포트, 사용자 자격 증명 등).

인프라 에이전트를 사용하면 다음과 같은 세 가지 방법으로 통합 명령을 구성할 수 있습니다(결합 가능).

  • env 속성 을 사용하는 환경 변수 (권장)
  • exec 속성 에 전달된 명령줄 인수.
  • 환경 변수 또는 명령줄 인수( config 참조) 속성을 통해 경로를 전달해야 하는 구성 파일.

예시:

integrations:
- name: my-integration
exec: /opt/path/bin/script --host 127.0.0.1 --port 8081
- name: nri-mysql
env:
STATUS_URL: http://10.0.0.3/server-status?auto
REMOTE_MONITORING: true

에이전트가 통합을 실행하는 방법 구성

이 섹션의 속성은 인프라 에이전트가 통합을 실행하고 통합과 상호 작용하는 방식 또는 에이전트가 통합 데이터를 장식하는 방식을 수정합니다.

이전 통합 구성 업데이트

2019년 12월에 Infrastructure 에이전트 버전 1.8.0 이 다른 구성 형식을 사용하기 시작했습니다. 자세한 내용은 구성 형식 차이 를 참조하세요.

이러한 형식의 주요 차이점은 이전 구성 형식은 두 개의 개별 구성 파일( INTEGRATION_NAME-definition.yml 파일 및 INTEGRATION_NAME-config.yml 파일)을 사용하고 최신 버전은 단일 구성 파일을 사용한다는 것입니다.

다음은 새로운 구성 기능에 의해 추가된 몇 가지 기능입니다.

  • 명령줄 인수, 환경 변수 또는 외부 파일을 통한 유연한 구성.
  • 동일한 파일에서 서로 다른 통합을 그룹화하는 기능.
  • 핫 리로드: 새 통합을 추가하거나 구성을 변경할 때 에이전트를 다시 시작할 필요가 없습니다.
  • 시간 초과: 사용자가 지정한 시간 전에 통합이 응답하지 않으면 통합 프로세스가 종료되고 다시 시작됩니다.

모든 온-호스트 통합이 최신 구성 형식과 함께 제공되는 것은 아니지만 모든 온-호스트 통합에 대해 새 형식으로 구성을 업데이트하여 새 기능을 활용할 수 있습니다.

다음 YAML은 이전 구성 형식을 사용하는Apache 통합 구성의 예를 보여줍니다. 이 구성은 최신 에이전트에서 계속 작동하지만 기능을 최대한 활용하도록 통합을 업데이트하는 것이 좋습니다.

integration_name: com.newrelic.apache
instances:
- name: apache-server-metrics
command: metrics
arguments:
status_url: http://127.0.0.1/server-status?auto
remote_monitoring: true
labels:
env: production
role: load_balancer
- name: apache-server-inventory
command: inventory
arguments:
remote_monitoring: true
labels:
env: production
role: load_balancer

이전 통합 구성을 새 형식으로 업데이트하려면 다음 방법 중 하나를 사용하십시오.

보조 방법

New Relic CLI 를 사용하여 다음 명령을 실행하여 이전 정의/구성 파일을 새 구성 형식으로 자동 변환합니다.

bash
$
newrelic agent config migrateV3toV4 -d /path/definitionFile -c /path/configFile -o /path/outputFile

예:

수동 방법

통합 파일을 수동으로 변환하려면:

  1. instances 최상위 섹션의 이름을 integrations 로 바꿉니다.
  2. integration_name 최상위 섹션을 제거하고 각 통합 항목에 추가합니다. 더 이상 각 통합 유형에 대해 별도의 파일을 보관할 필요가 없으며 다른 통합과 동일한 파일에 레거시 통합 항목을 그룹화할 수 있습니다.

다음은 Apache 통합 구성의 새 버전에 대한 예입니다.

integrations:
- name: nri-apache
env:
METRICS: "true"
STATUS_URL: http://127.0.0.1/server-status?auto
REMOTE_MONITORING: true
interval: 15s
labels:
env: production
role: load_balancer
- name: nri-apache
env:
INVENTORY: "true"
STATUS_URL: http://127.0.0.1/server-status?auto
REMOTE_MONITORING: true
interval: 60s
labels:
env: production
role: load_balancer
inventory_source: config/apache

중요

이전 구성 형식은 핫 리로딩을 지원하지 않습니다. 따라서 이전 통합 구성을 제거하려면 인프라 에이전트를 다시 시작해야 합니다. 그렇지 않으면 이전 인스턴스가 새 인스턴스와 공존합니다.

Copyright © 2022 New Relic Inc.

This site is protected by reCAPTCHA and the Google Privacy Policy and Terms of Service apply.