• EnglishEspañol日本語한국어Português
  • 로그인지금 시작하기

이 한글 문서는 사용자의 편의를 위해 기계 번역되었습니다.

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

문제 신고

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

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 Agent 버전 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 © 2024 New Relic Inc.

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