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

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

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

문제 신고

에이전트를 컨테이너로 설치

Linux용 인프라 에이전트는 기본적으로 컨테이너 환경을 지원합니다 . 컨테이너 OS를 실행 중이거나 에이전트를 컨테이너로 배포, 배포해야 하는 제한 사항이 있는 경우 컨테이너화된 버전의 배포 에이전트를 실행할 수 있습니다. 이는 기본 호스트뿐만 아니라 컨테이너 자체에 대한 모니터 지표일 수 있습니다.

사용자 지정(권장) 또는 기본 설정 을 사용하면 인프라 에이전트를 컨테이너 환경 내에서 실행할 수 있습니다. 컨테이너화된 에이전트이든 컨테이너화되지 않은 버전이든 호스트는 한 번에 하나의 에이전트 인스턴스만 실행할 수 있습니다.

필요한 것

인프라 에이전트의 컨테이너화된 버전에는 Docker 1.12 이상이 필요합니다.

버전 1.42부터 인프라 에이전트는 containerd를 지원하므로 Dockershim 또는 기타 containerd 기반 솔루션에 대한 지원을 제거한 쿠버네티스 v1.24+에서 사용할 수 있습니다. containerddockerd 런타임 소켓을 모두 사용할 수 있는 경우 인프라 에이전트는 containerd 런타임 소켓으로 작동합니다. 컨테이너는 인프라 에이전트에서 지원하는 Linux 배포 및 버전에서 실행되어야 합니다. 컨테이너 이미지는 AMD64 및 ARM64 아키텍처에서 사용 가능하고 지원됩니다.

로그 전달자는 컨테이너화된 에이전트에 포함되어 있지 않습니다. 모든 기능을 제공하는 기본 호스트에 에이전트를 설치하는 것이 좋습니다.

사용자 지정 설정(권장)

다음은 Linux에서 사용자 지정 Docker 이미지를 만들기 위한 기본 지침입니다. 이를 통해 기반 호스트를 모니터링할 수 있는 컨테이너로 인프라 에이전트를 배포할 수 있습니다.

권장 사항: newrelic/infrastructure 이미지를 확장하고 자체 newrelic-infra.yml 에이전트 구성 파일을 사용하세요. 일단 이미지가 구축되면 추가 설치 시간 설정을 제공하지 않고도 컨테이너를 쉽게 시작할 수 있습니다. docker 와 함께 환경 변수를 사용하여 비밀을 제공하지 마세요.

도커 CLI

  1. 뉴렐릭 을 사용하여 newrelic-infra.yml 에이전트 구성 파일을 생성합니다. 구성 옵션 설명은 구성 설정을 참조하세요.

    license_key: YOUR_LICENSE_KEY
  2. newrelic/infrastructure 이미지를 확장하는 Dockerfile 을 만들고 구성을 /etc/newrelic-infra.yml 에 추가합니다.

    FROM newrelic/infrastructure:latest
    ADD newrelic-infra.yml /etc/newrelic-infra.yml
  3. 이미지를 빌드하고 태그를 지정합니다.

    bash
    $
    docker build -t YOUR_IMAGE_NAME .
  4. 필수 실행 플래그 를 사용하여 빌드한 이미지에서 컨테이너를 실행합니다.

    bash
    $
    docker run \
    >
    -d \
    >
    --name newrelic-infra \
    >
    --network=host \
    >
    --cap-add=SYS_PTRACE \
    >
    --privileged \
    >
    --pid=host \
    >
    --cgroupns=host # required on cgroup v2 \
    >
    -v "/:/host:ro" \
    >
    -v "/var/run/docker.sock:/var/run/docker.sock" \
    >
    YOUR_IMAGE_NAME
  5. UI에서 데이터를 보는 방법과 같은 잠재적인 다음 단계는 다음 단계를 참조하세요 .

도커 작성

  1. 구성 파일을 저장할 폴더를 만듭니다.

    bash
    $
    mkdir ~/newrelic-infra-setup
  2. 디렉토리를 방금 생성한 디렉토리로 변경하십시오.

    bash
    $
    cd ~/newrelic-infra-setup
  3. 뉴렐릭 을 사용하여 newrelic-infra.yml 에이전트 구성 파일을 생성합니다. 구성 옵션 설명은 구성 설정을 참조하세요.

    bash
    $
    echo "license_key: YOUR_LICENSE_KEY" > newrelic-infra.yml
  4. newrelic/infrastructure 이미지를 확장하는 newrelic-infra.dockerfile 을 만들고 구성을 /etc/newrelic-infra.yml 에 추가합니다.

    bash
    $
    touch newrelic-infra.dockerfile
    bash
    $
    vim newrelic-infra.dockerfile # you can use any text editor
  5. 파일에 다음 내용을 넣습니다.

    FROM newrelic/infrastructure:latest
    ADD newrelic-infra.yml /etc/newrelic-infra.yml
  6. docker-compose.yaml 생성:

    bash
    $
    touch docker-compose.yaml
    bash
    $
    vim docker-compose.yaml # you can use any text editor

    파일에 다음 내용을 넣습니다.

    version: '3'
    services:
    agent:
    container_name: newrelic-infra
    build:
    context: .
    dockerfile: newrelic-infra.dockerfile
    cap_add:
    - SYS_PTRACE
    network_mode: host
    pid: host
    privileged: true
    volumes:
    - "/:/host:ro"
    - "/var/run/docker.sock:/var/run/docker.sock"
    restart: unless-stopped
  7. docker-compose 빌드 및 시작:

    bash
    $
    docker-compose -f docker-compose.yaml up -d
  8. UI에서 데이터를 보는 방법과 같은 잠재적인 다음 단계는 다음 단계를 참조하세요 .

기본 설정

기본 New Relic 인프라 이미지와 함께 기본 설정을 사용하려면:

도커 CLI

  1. 필요한 실행 플래그 로 컨테이너를 실행합니다.

    bash
    $
    docker run \
    >
    -d \
    >
    --name newrelic-infra \
    >
    --network=host \
    >
    --cap-add=SYS_PTRACE \
    >
    --privileged \
    >
    --pid=host \
    >
    --cgroupns=host # required on cgroup v2 \
    >
    -v "/:/host:ro" \
    >
    -v "/var/run/docker.sock:/var/run/docker.sock" \
    >
    -e NRIA_LICENSE_KEY=YOUR_LICENSE_KEY \
    >
    newrelic/infrastructure:latest
  2. UI에서 데이터를 보는 방법과 같은 잠재적인 다음 단계는 다음 단계를 참조하세요 .

도커 작성

  1. docker-compose.yaml 생성:

    bash
    $
    touch docker-compose.yaml
    bash
    $
    vim docker-compose.yaml # you can use any text editor

    파일에 다음 내용을 넣습니다.

    version: '3'
    services:
    agent:
    container_name: newrelic-infra
    image: newrelic/infrastructure:latest
    cap_add:
    - SYS_PTRACE
    network_mode: host
    pid: host
    privileged: true
    volumes:
    - "/:/host:ro"
    - "/var/run/docker.sock:/var/run/docker.sock"
    environment:
    NRIA_LICENSE_KEY: "YOUR_LICENSE_KEY"
    restart: unless-stopped
  2. docker-compose 빌드 및 시작:

    bash
    $
    docker-compose -f docker-compose.yaml up -d
  3. UI에서 데이터를 보는 방법과 같은 잠재적인 다음 단계는 다음 단계를 참조하세요 .

필요한 컨테이너 권한

Linux 네임스페이스를 통한 호스트 및 기타 컨테이너와의 리소스 격리로 인해 컨테이너는 기본적으로 기본 호스트 리소스에 대한 보기 및 제어가 매우 제한적입니다. 이러한 추가 권한이 없으면 인프라 에이전트는 호스트와 해당 컨테이너를 모니터링할 수 없습니다.

인프라 에이전트는 시스템 파일 및 시스템 호출을 사용하여 호스트에 대한 데이터를 수집합니다. 인프라 에이전트가 데이터를 수집하는 방법에 대한 자세한 내용은 인프라 모니터링 및 보안 에 대한 설명서를 참조하십시오. 필요한 권한은 다음과 같습니다.

기본적으로 개인용이므로 cgroup v2에서 도커를 사용할 때 필요합니다. 이를 통해 에이전트는 컨테이너 메트릭을 수집할 수 있습니다. 도커 엔진 API v1.41 부터 사용 가능합니다.

특권

설명

--network=host

컨테이너의 네트워크 네임스페이스를 호스트의 네트워크 네임스페이스로 설정합니다. 이를 통해 에이전트는 호스트에 대한 네트워크 메트릭을 수집할 수 있습니다.

-v "/:/host:ro"

Bind는 호스트의 루트 볼륨을 컨테이너에 마운트합니다. 호스트 루트에 대한 이 읽기 전용 액세스를 통해 에이전트는 호스트에서 프로세스 및 스토리지 메트릭과 인벤토리 데이터를 수집할 수 있습니다.

--cap-add=SYS_PTRACE

시스템 프로세스를 추적하는 Linux 기능을 추가합니다. 이를 통해 에이전트는 호스트에서 실행 중인 프로세스에 대한 데이터를 수집할 수 있습니다. 여기에서 더 읽어보세요.

--privileged

--pid=host

--cgroupns=host

-v "/var/run/docker.sock:/var/run/docker.sock"

Bind는 호스트의 Docker 데몬 소켓을 컨테이너에 마운트합니다. 이를 통해 에이전트는 Docker 데몬 소켓을 통해 Engine API에 연결하여 호스트의 컨테이너 데이터를 수집할 수 있습니다. containerd 런타임과 상호작용하는 경우 이 마운트를 /run/containerd/containerd.sock:/run/containerd/containerd.sock으로 교체해야 합니다.

이 문서가 설치하는데 도움이 되셨나요?

설치 후 다음 단계

설치가 완료된 후의 다음 단계는 다음 단계를 참조하세요 .

수집된 인벤토리

인벤토리 는 인프라 에이전트의 기본 제공 데이터 수집기에서 수집됩니다. 인프라 에이전트는 컨테이너로 실행되는 Linux 시스템에 대해 이 데이터를 수집합니다.

범주

원천

다음을 사용하여 수집된 데이터

metadata

agent_config

에이전트의 전체 구성 파일

system

uptime -s, /etc/redhat-release, /proc/cpuinfo, /etc/os-release, /proc/sys/kernel/random/boot_id, /proc/sys/kernel/osrelease, /sys/class/dmi/id/product_uuid, /sys/devices/virtual/dmi/id/sys_vendor, /sys/devices/virtual/dmi/id/product_name

컨테이너 데이터

인프라 에이전트가 Docker 컨테이너에서 실행되면 인프라 에이전트가 호스트에서 기본적으로 실행할 때 수집할 수 있는 것과 동일한 호스트 컴퓨트 데이터이벤트 데이터를 수집할 수 있습니다. 보다 자세한 내용은 Docker 컨테이너 데이터를 확인하는 방법에 대한 문서를 참조하십시오.

컨테이너화된 에이전트 이미지

컨테이너화된 에이전트 이미지는 알파인 기본 이미지에서 빌드됩니다.

소스 코드 확인

이 통합은 오픈소스 소프트웨어입니다.소스 코드를 탐색하고 개선 사항을 보내거나 각자의 포크를 만들어 빌드할 수 있습니다.

Copyright © 2024 New Relic Inc.

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