Telegraf 에이전트가 일부 애플리케이션 서비스에 대한 메트릭을 수집하려면 엔드포인트 VM에서 수정해야 합니다. 사용자가 이를 수정하면 에이전트는 메트릭을 수집하기 시작합니다. 에이전트를 배포한 가상 시스템에 SSH를 사용하고 구성 파일을 수정해야 합니다.

Apache HTTPD

에이전트가 메트릭을 수집하려면 /etc/httpd/conf.modules.d/status.conf에서 사용할 수 있는 conf 파일을 수정하고 HTTPD 플러그인에 대한 mod_status를 활성화합니다.

<IfModule mod_status.c>

<Location /server-status>

    SetHandler server-status

</Location>

ExtendedStatus On

</IfModule>

conf 파일을 사용할 수 없으면 사용자가 파일을 하나 만들어야 합니다. 다음 명령을 사용하여 conf 파일을 수정한 후 HTTPD 서비스를 다시 시작합니다.

systemctl restart httpd

Java 애플리케이션

Java 애플리케이션 모니터링에 대한 지원은 현재 jolokia 기반 JMX 모니터링을 지원하는 애플리케이션으로 제한됩니다. 현재 Java 플러그인 활성화의 일부로 jolokia.jar 및 jolokia.war 파일이 모두 "설치된 경로"에 배치됩니다. 모니터링할 Java 애플리케이션이 서블릿 컨테이너인 경우 jolokia.war 파일은 vRealize Operations에서 Java 애플리케이션을 구성할 때 제공한 "설치된 경로"에 자동으로 배포됩니다. 자동 배포가 지원되지 않거나 활성화되지 않은 경우 플러그인을 활성화한 후 애플리케이션을 다시 시작하거나 수동 .war 배포에 대한 애플리케이션의 제품 설명서를 참조하십시오.

다른 모든 Java 애플리케이션의 경우 먼저 플러그인을 활성화한 다음 jolokia.jar 파일의 경로를 "-javaagent:" JVM flag에 명령줄 매개 변수로 포함합니다. 예를 들어, "-javaagent:/<path_to_jolokia>/jolokia.jar", <path_to_jolokia>는 애플리케이션 구성 중에 제공된"설치된 경로"입니다. 애플리케이션을 다시 시작합니다.

참고: 사용자 지정된 타사 Java 애플리케이션을 모니터링하려면 다음을 확인합니다.
  • jolokia 기반 JMX 모니터링이 지원됩니다.
  • 자동 배포가 해제된 경우 서블릿 컨테이너 애플리케이션에 대해 수동 .war 배포가 지원됩니다.
  • "-javaagent:" JVM flag가 명령줄 매개 변수(JVM_OPTS)의 일부로 추가됩니다.

Nginx

다음 줄을 /etc/nginx/nginx.conf:에서 이용 가능한 conf 파일에 추가합니다.

http {
    server {
        location /status {
            stub_status on;
   access_log off;
   allow all;
  }
    }
}

다음 명령을 사용하여 Nginx 서비스를 다시 시작합니다.

systemctl restart nginx

Postgres

/var/lib/pgsql/data/pg_hba.conf에서 이용 가능한 conf 파일에서 local all postgres peer의 값을 local all postgres md5로 변경하고 다음 명령을 사용하여 서비스를 다시 시작합니다.

sudo service postgresql restart

Cassandra

Cassandra 데이터베이스 애플리케이션을 모니터링하려면 Jolokia jar이 Cassandra 데이터베이스 애플리케이션에 JVM 입력으로 포함되어야 합니다. 다음 단계를 완료하십시오.

  1. /etc/default/cassandra를 수정합니다.

    echo "export JVM_EXTRA_OPTS=\"-javaagent:/usr/share/java/jolokia-jvm-1.6.0-agent.jar=port=8778,host=localhost\"" | sudo tee -a /etc/default/cassandra
    참고:

    https://jolokia.org/download.html에서 최신 버전의 Jolokia 에이전트를 다운로드할 수 있습니다. .JAR 파일을 배포하는 경우에는 모니터링하고 있는 JAVA 프로세스의 JMX 인수에 JAR의 전체 파일 경로를 포함한 다음 애플리케이션 서비스를 다시 시작해야 합니다.

  2. 또는 cassandra-env.sh를 수정하여 에이전트를 활성화할 수 있습니다. cassandra-env.sh 끝에 다음 줄을 포함합니다.

    JVM_OPTS="$JVM_OPTS -javaagent:/usr/share/java/jolokia-jvm-1.6.0-agent.jar=port=8778,host=localhost"

    JVM 입력을 확인한 후 Cassandra 서비스를 다시 시작합니다.

Oracle 데이터베이스

Oracle 데이터베이스를 모니터링하려면 다음 단계를 완료하십시오.

  1. https://www.oracle.com/database/technologies/instant-client/downloads.html에서 인스턴스 클라이언트 라이브러리를 다운로드합니다.

    Oracle 인스턴트 라이브러리를 다운로드하여 경로에 포함해야 합니다.

  2. Python 3.6 이상을 설치합니다. cx_Oracle 모듈을 설치합니다.
    python3 -m pip install cx_Oracle --upgrade
  3. 사용자를 생성합니다.

    CREATE USER <UserName> IDENTIFIED BY <yourpassword>;
     GRANT select_catalog_role TO <UserName>;
     GRANT CREATE SESSION TO <UserName>;
  4. Windows VM의 경우:
    1. Oracle 인스턴트 클라이언트 라이브러리 경로와 Python 경로를 PATH 환경 변수에 추가합니다.
    2. ARC 에이전트를 설치합니다.
  5. Linux VM의 경우:
    1. ARC 에이전트를 설치합니다.
    2. /opt/vmware/ucp/에서 exec_oracle_python.sh(wget --no-check-certificate https://<CP_IP>/downloads/salt/content-accessories/exec_oracle_python.sh) 파일을 가져옵니다.
    3. /opt/vmware/ucp/exec_oracle_python.shLD_LIBRARY_PATH, ORACLE_HOME, PYTHON_BINTNS_ADMIN에 대한 절대 값을 입력합니다.

      LD_LIBRARY_PATH: Oracle 인스턴트 클라이언트 라이브러리의 경로입니다. 예: /opt/vmware/ucp/instantclient_21_4.

      ORACLE_HOME: Oracle 소프트웨어가 설치된 파일 시스템의 디렉토리입니다. 예: /u01/app/oracle/product/19.3.0/dbhome_1/.

      PYTHON_BIN: Python 실행 파일의 경로입니다. 예: /usr/bin/python.

      TNS_ADMIN: SQL*Net 구성 파일이 있는 디렉토리를 가리키는 환경 변수입니다. 예: /u01/app/oracle/product/19.3.0/dbhome_1/network/admin.

    4. Oracle DB 플러그인을 활성화합니다.

활성 MQ 5.16 이상 버전

활성 MQ 5.16 이상 버전을 활성화하려면 다음 단계를 완료합니다.

  • /opt/activemq/apache-activemq-5.16.0/webapps/api/WEB-INF/classes/jolokia-access.xml로 이동

  • 다음 줄을 제거하거나 주석 처리합니다.

    <cors>
      <strict-checking/>
    </cors>
  • 활성 MQ 서비스를 다시 시작합니다.

Microsoft SQL Server

Telegraf로 Microsoft SQL Server 애플리케이션 서비스를 모니터링하려면 사용자 계정에 다음과 같은 권한이 있어야 합니다.

USE master;
GO
CREATE LOGIN [telegraf] WITH PASSWORD = N'mystrongpassword';
GO
GRANT VIEW SERVER STATE TO [telegraf];
GO
GRANT VIEW ANY DEFINITION TO [telegraf];
GO
참고: Microsoft SQL Server 애플리케이션 서비스의 명명된 인스턴스를 모니터링하려는 경우 플러그인 활성화 입력에 포트 필드가 구성되어 있지 않아야 합니다. 서버에 인스턴스가 없는 경우에만 포트를 사용합니다(기본값 1433).