InfluxData Telegraf 에이전트를 사용하여 Linux VM에 대한 사용자 지정 메트릭 수집

Azure Monitor를 사용하면 애플리케이션 원격 분석, Azure 리소스에서 실행되는 에이전트 또는 외부 모니터링 시스템을 통해서도 사용자 지정 메트릭을 수집할 수 있습니다. 그런 다음, Azure Monitor로 바로 전송할 수 있습니다. 이 문서에서는 Azure의 Linux VM에 InfluxData Telegraf 에이전트를 배포하고 메트릭을 Azure Monitor에 게시하도록 에이전트를 구성하는 방법에 대한 지침을 제공합니다.

InfluxData Telegraf 에이전트

Telegraf는 150개 이상의 다양한 원본에서 메트릭을 수집할 수 있는 플러그 인 기반 에이전트입니다. VM에서 실행되는 워크로드에 따라 특수한 입력 플러그 인을 활용하여 메트릭을 수집하도록 에이전트를 구성할 수 있습니다. 예를 들어, MySQL, NGINX, Apache 등이 있습니다. 그런 다음, 에이전트는 출력 플러그 인을 사용하여 선택한 대상에 쓸 수 있습니다. Telegraf 에이전트는 Azure Monitor 사용자 지정 메트릭 REST API와 직접 통합되고 Azure Monitor 출력 플러그 인을 지원합니다. 이 플러그 인을 사용하면 에이전트가 Linux VM에서 워크로드 특정 메트릭을 수집한 다음, 사용자 지정 메트릭으로 Azure Monitor에 전송할 수 있습니다.

Telegraph agent overview

참고

일부 지역에서는 사용자 지정 메트릭이 지원되지 않습니다. 지원되는 지역은 여기에 나열되어 있습니다.

VM에 연결

VM과의 SSH 연결을 만듭니다. VM의 개요 페이지에서 연결 단추를 선택합니다.

Telegraf VM overview page

가상 머신에 연결 페이지에서, 22 포트를 통해 DNS 이름으로 연결하는 기본 옵션을 유지합니다. VM 로컬 계정을 사용하여 로그인에 연결 명령이 표시됩니다. 명령을 복사하는 단추를 선택합니다. 다음 예제에서는 SSH 연결 명령의 형식을 보여줍니다.

ssh azureuser@XXXX.XX.XXX 

Azure Cloud Shell이나 Windows Ubuntu의 Bash와 같은 셸에 SSH 연결 명령을 붙여넣거나 선택한 SSH 클라이언트를 사용하여 연결을 만듭니다.

Telegraf 설치 및 구성

VM에 Telegraf Debian 패키지를 설치하려면 SSH 세션에서 다음 명령을 실행합니다.

# download the package to the VM 
curl -s https://repos.influxdata.com/influxdb.key | sudo apt-key add -
source /etc/lsb-release
echo "deb https://repos.influxdata.com/${DISTRIB_ID,,} ${DISTRIB_CODENAME} stable" | sudo tee /etc/apt/sources.list.d/influxdb.list

Telegraf의 구성 파일은 Telegraf의 작업을 정의합니다. 기본적으로는 예제 구성 파일은 /etc/telegraf/telegraf.conf 경로에 설치됩니다. 구성 파일 예제에는 가능한 모든 입력/출력 플러그인이 나열됩니다. 그러나 사용자 지정 구성 파일을 만들고 다음 명령을 실행하여 에이전트에서 이 파일을 사용하게 합니다.

# generate the new Telegraf config file in the current directory 
telegraf --input-filter cpu:mem --output-filter azure_monitor config > azm-telegraf.conf 

# replace the example config with the new generated config 
sudo cp azm-telegraf.conf /etc/telegraf/telegraf.conf 

참고

이전 코드는 cpumem의 두 입력 플러그 인만 사용하도록 설정합니다. 시스템에서 실행되는 워크로드에 따라 입력 플러그 인을 더 추가할 수 있습니다. 예를 들어, Docker, MySQL, NGINX 등이 있습니다. 입력 플러그 인의 전체 목록은 추가 구성 섹션을 참조하세요.

마지막으로, 새 구성을 사용하여 에이전트를 시작하려면 다음 명령을 실행하여 해당 에이전트를 강제로 중지하고 시작합니다.

# stop the telegraf agent on the VM 
sudo systemctl stop telegraf 
# start the telegraf agent on the VM to ensure it picks up the latest configuration 
sudo systemctl start telegraf 

이제 에이전트는 지정된 각 입력 플러그 인에서 메트릭을 수집하고 Azure Monitor로 내보냅니다.

Azure Portal에서 Telegraf 메트릭 그리기

  1. Azure Portal을 엽니다.

  2. 모니터 탭으로 이동한 후 메트릭을 선택합니다.

  3. 리소스 선택기에서 VM을 선택합니다.

    Metric chart

  4. Telegraf/CPU 네임 스페이스를 선택하고, usage_system 메트릭을 선택합니다. 이 메트릭의 차원으로 필터링하거나 차원을 분할하도록 선택할 수 있습니다.

    Select namespace and metric

추가 구성

앞의 연습에는 몇 가지 기본 입력 플러그인에서 메트릭을 수집하도록 Telegraf 에이전트를 구성하는 방법에 대한 정보가 나와 있습니다. Telegraf 에이전트는 일부 추가 지원 구성 옵션을 포함하여 150여 가지의 입력 플러그인을 지원합니다. InfluxData는 지원되는 플러그 인 목록구성 방법에 대한 지침을 게시합니다.

또한 이 연습에서는 Telegraf 에이전트를 사용하여 에이전트가 배포된 VM에 대한 메트릭을 내보냈습니다. Telegraf 에이전트를 다른 리소스에 대한 메트릭의 수집기와 전달자로 사용할 수도 있습니다. 다른 Azure 리소스에 대한 메트릭을 내보내도록 에이전트를 구성하는 방법을 알아보려면 Telegraf에 대한 Azure Monitor 사용자 지정 메트릭 출력을 참조하세요.

리소스 정리

더 이상 필요 없는 경우 리소스 그룹, 가상 머신 및 모든 관련 리소스를 삭제해도 됩니다. 삭제하려면 가상 머신의 리소스 그룹을 선택하고 삭제를 선택합니다. 삭제할 리소스 그룹의 이름을 확인합니다.

다음 단계