본문으로 건너뛰기

퀵 가이드

플로우캣 서비스를 빠르게 만나볼 수 있는 가이드 문서입니다.

설치 단계 요약

  1. 플로우캣 서버 설치 파일(flowkat-package.tar.gz)을 준비된 서버(Ubuntu 22.04)에 업로드합니다.
  2. 설치 계정은 root를 제외한 계정으로 준비합니다. ex) flowkat, apm 등등
  3. 설치 파일 압축 해제
  4. 수집 서버 설치
  5. API 서버 설치
  6. 대시보드 서버 설치
  7. 에이전트 설치
  8. 플로우캣 서비스 확인

환경 변수 설정

원활한 설치 진행을 위해 다음과 같이 사용자 계정의 환경 변수를 수정합니다.

~/.bashrc
  $vi ~/.bashrc
...
# 예시
export JAVA_HOME=/home/ubuntu/jdk8u402-b06
export FLOWKAT_HOME=/home/ubuntu/flowkat
export FLOWKAT_COLLECTOR_SERVER_HOME=$FLOWKAT_HOME/collect.server
export FLOWKAT_API_SERVER_HOME=$FLOWKAT_HOME/api.server
export FLOWKAT_DASHBOARD_SERVER_HOME=$FLOWKAT_HOME/dashboard.server
...

  • JAVA_HOME 자바 홈 디렉터리를 설정합니다.
  • FLOWKAT_HOME 플로우캣 홈 디렉터리를 설정합니다.
  • FLOWKAT_COLLECTOR_SERVER_HOME 플로우캣 수집 서버 설치 경로를 설정합니다.
  • FLOWKAT_API_SERVER_HOME 플로우캣 API 서버 설치 경로를 설정합니다.
  • FLOWKAT_DASHBOARD_SERVER_HOME 플로우캣 대시보드 서버 설치 경로를 설정합니다.

사용자 계정의 환경 변수를 적용하기 위해 source ~/.bashrc 실행합니다.

수집 서버 기동

  • 수집 서버를 기동합니다.
$FLOWKAT_HOME/collect.server/bin/startup.sh
$ cd /home/kranian/program/flowkat/collect.server
$ bin/startup.sh
  • 수집 서버의 로그가 출력됩니다.
$FLOWKAT_HOME/api.server/logs/server-${오늘날짜}.log
2024-04-08 13:22:25.847:INFO:oejs.session:flowkat.server.http.HttpServer: Scavenging every 600000ms
2024-04-08 13:22:25.849:INFO:oejsh.ContextHandler:flowkat.server.http.HttpServer: Started o.e.j.s.ServletContextHandler@42c33175{/,null,AVAILABLE}
2024-04-08 13:22:25.857:INFO:oejs.AbstractConnector:flowkat.server.http.HttpServer: Started ServerConnector@65fda59e{HTTP/1.1,[http/1.1]}{0.0.0.0:6180}
2024-04-08 13:22:25.857:INFO:oejs.Server:flowkat.server.http.HttpServer: Started @898ms
  • 수집 서버의 프로세스를 점검합니다.
ps -ef | grep java | grep collect.server
apm       101175       1 58 13:22 pts/0    00:00:06 /app/jdk-11.0.227/bin/java -Xms2024m -Xmx2024m -Dflowkat.collect.server.home=/app/flowkat/collect.server -Dflowkat.config.home=/app/flowkat/collect.server/conf/ -Dflowkat.config=/app/flowkat/collect.server/conf/flowkat.conf -Ddb_dir=/app/flowkat/collect.server/database -Dlog_dir=/app/flowkat/collect.server/logs -Dplugin_dir

API 서버 기동

  • API 서버를 기동합니다.
$FLOWKAT_HOME/api.server/bin/startup.sh
$ cd /home/kranian/program/flowkat/api.server
$ bin/startup.sh
  • API 서버의 로그가 출력됩니다.
$FLOWKAT_HOME/api.server/logs/api-server-${오늘날짜}.log
 13:31:54.061 [main]  INFO  f.a.s.framework.client.net.TcpProxy[58] - TcpProxy created : pool-size:4, flowkat.api.server.framework.client.net.TcpProxy@3e11f9e9
...
13:31:54.087 [main] INFO org.eclipse.jetty.util.log[192] - Logging initialized @598ms to org.eclipse.jetty.util.log.Slf4jLog
13:31:54.176 [main] INFO org.eclipse.jetty.server.Server[372] - jetty-9.4.6.v20170531
13:31:54.187 [main] INFO o.e.j.server.AbstractNCSARequestLog[230] - Opened /app/flowkat/api.server/logs/http-request-2024_04_08.log
13:31:54.193 [main] INFO org.eclipse.jetty.server.session[364] - DefaultSessionIdManager workerName=node0
13:31:54.193 [main] INFO org.eclipse.jetty.server.session[369] - No SessionScavenger set, using defaults
13:31:54.194 [main] INFO org.eclipse.jetty.server.session[149] - Scavenging every 600000ms
  • API 서버의 프로세스를 점검합니다.
ps -ef | grep java | grep api.server
apm       101583       1 51 13:31 pts/0    00:00:05 /app/jdk-11.0.227/bin/java -Xms2024m -Xmx2024m -Dflowkat.api.server.home=/app/flowkat/api.server -Dflowkat.config=/app/flowkat/api.server/conf/flowkat.conf -cp /app/flowkat/api.server/flowkat.api.server.jar:/app/flowkat/api.server/lib/*:. flowkat.api.server.main.WebAppMain

대시보드 서버 기동

  • 대시보드 서버를 기동합니다.
$FLOWKAT_HOME/dashboard.server/bin/startup.sh
$ cd /home/kranian/program/flowkat/dashboard.server
$ bin/startup.sh
  • 대시보드 서버의 로그가 출력됩니다.
$FLOWKAT_HOME/dashboard.server/logs/flowkat.log
2024-04-08 13:33:57.905  INFO 101680 --- [main] o.apache.catalina.core.StandardService   : Starting service [Tomcat]
2024-04-08 13:33:57.906 INFO 101680 --- [main] org.apache.catalina.core.StandardEngine : Starting Servlet engine: [Apache Tomcat/9.0.65]
2024-04-08 13:33:57.951 INFO 101680 --- [main] o.a.c.c.C.[Tomcat].[localhost].[/] : Initializing Spring embedded WebApplicationContext
2024-04-08 13:33:57.951 INFO 101680 --- [main] w.s.c.ServletWebServerApplicationContext : Root WebApplicationContext: initialization completed in 1583 ms
2024-04-08 13:33:58.124 INFO 101680 --- [main] com.zaxxer.hikari.HikariDataSource : DB-prod-h2-pool - Starting...
2024-04-08 13:33:58.340 INFO 101680 --- [main] com.zaxxer.hikari.HikariDataSource : DB-prod-h2-pool - Start completed.
2024-04-08 13:33:58.396 INFO 101680 --- [main] o.hibernate.jpa.internal.util.LogHelper : HHH000204: Processing PersistenceUnitInfo [name: default]
...
  • 대시보드 서버의 프로세스를 점검합니다.
ps -ef | grep java | grep dashboard.server
apm       101680       1 99 13:33 pts/0    00:00:19 /app/jdk-11.0.227/bin/java -Xms2024m -Xmx2024m -Xloggc:/app/flowkat/dashboard.server/logs/gc/gc.log -server -XX:+UseParallelGC -XX:ParallelGCThreads=4 -XX:+HeapDumpOnOutOfMemoryError -XX:HeapDumpPath=/app/flowkat/dashboard.server/logs/dump/java_pid.hprof -Dfile.encoding=UTF-8 -Djava.security.egd=file:///dev/urandom -Dflowkat.dashboard.server.home=/app/flowkat/dashboard.server -Dflowkat.dashboard.folder=/app/flowkat/dashboard.server/config/dashboard -Dflowkat.site.config=/app/flowkat/dashboard.server/config/site.yml -Dflowkat.license.folder=/app/flowkat/dashboard.server/config/license -jar /app/flowkat/dashboard.server/flowkat.jar

에이전트 설치

수집 서버에 데이터를 제공할 에이전트를 모니터링 대상 서버에 설치하는 과정입니다.

에이전트 설치 단계 요약

  1. 모니터링 대상 서버의 환경을 확인합니다.
  2. 플로우캣 에이전트 설치 파일을 모니터링 대상 서버에 업로드합니다.
  3. 에이전트 환경 설정을 합니다.
  4. 모니터링 대상의 서비스를 재시작합니다.

퀵 가이드에서는 TOMCAT, JEUS 6/7 버전을 사용합니다.


모니터링 대상 서버 환경 파악

실행 중인 Java 미들웨어의 프로세스를 검색하여 모니터링 대상의 Java 버전을 확인합니다.

  • Java 프로세스 검색 명령어 예시

    • linux ps -ef | grep java
    • sunos ps -auxww | grep java
    • hp-ux ps -efx | grep java
    • aix ps -ef | grep java
  • Java 버전 확인 방법 예시

C:\Users\flowkat\Downloads\apache-tomcat-8.5.100\lib>java -cp catalina.jar org.apache.catalina.util.ServerInfo
Server version: Apache Tomcat/8.5.100
Server built: Mar 19 2024 13:54:42 UTC
Server number: 8.5.100.0
OS Name: Windows 10
OS Version: 10.0
Architecture: amd64
JVM Version: 11.0.22+7
JVM Vendor: Eclipse Adoptium
C:\Users\flowkat\Downloads\apache-tomcat-8.0.46\lib>java -cp catalina.jar org.apache.catalina.util.ServerInfo
Server version: Apache Tomcat/8.0.46
Server built: Aug 10 2017 10:10:31 UTC
Server number: 8.0.46.0
OS Name: Windows 10
OS Version: 10.0
Architecture: amd64
JVM Version: 1.8.0_251-b08
JVM Vendor: Oracle Corporation

에이전트 파일 업로드

플로우캣 에이전트 설치 파일(flowkat-all-5.0.0.bxxx.tar.gz)의 압축을 해제하고 모니터링 대상 서버에 업로드합니다.

JVM 버전 8 미만: agent.java_6_7
JVM 버전 8 이상: agent.java

에이전트 업로드 예시

TOMCAT

  • TOMCAT 환경 설정
$CATALINA_HOME/bin/catalina.sh(bat)
JAVA_OPTS=" ${JAVA_OPTS} -javaagent:${FLOWKAT_AGENT_DIR}/flowkat.agent.jar"
JAVA_OPTS=" ${JAVA_OPTS} -Dflowkat.config=${FLOWKAT_AGENT_DIR}/conf/flowkat.conf"
JAVA_OPTS=" ${JAVA_OPTS} -Dobj_name=tomcat
  • TOMCAT 서비스 재시작
$ cd $CATALINA_HOME/bin
$ ./shutdown.sh
$ ./startup.sh

JEUS

  • JEUS 7 환경 설정
$JEUS_HOME/domains/jeus_domain/config.xml
        <domain>
<servers>
<server>
<name>server1</name>
<jvm-config>
<jvm-option>
-Xmx1024m -XX:MaxPermSize=128m
-javaagent:/home/tmax/flowkat/agent.java/flowkat.agent.jar
-Dobj_type=jeus
-Dflowkat.config=/home/tmax/flowkat/agent.java/conf/flowkat.conf
</jvm-option>
</jvm-config>
</server>
</servers>
...
</domain>
  • JEUS6 환경 설정
$JEUS_HOME/config/$hostname/JEUSMain.xml
        <node>
<name>node01</name>
<engine-container1>
<name>container1</name>
...
<command-option>
-Xmx1024m -XX:MaxPermSize=128m
-javaagent:/home/tmax/flowkat/agent.java/flowkat.agent.jar
-Dobj_type=jeus
-Dflowkat.config=/home/tmax/flowkat/agent.java/conf/flowkat.conf
</command-option>
...
</engine-container1>
</node>
  • JEUS 서비스 재시작
$ jdown && jboot

기본적인 구성이 완료되면 대시보드 서버와 API 서버를 연결하는 작업이 필요합니다. API 서버 연결을 위해 플로우캣 대시보드에 접속합니다.

대시보드 서버 접속

접속 주소는 설치 서버의 IP 혹은 설정된 도메인의 8082 포트를 통해서 접속 가능합니다. 설치 과정에서 별도로 설정을 변경하지 않았다면, 접속 URL은 http://설치서버_IP:8082 입니다. 설치 과정 중이나 운영 중에 특정 포트를 사용하도록 설정하였다면, 해당 포트로 접속해야 합니다.

로그인 화면

페이지가 열리지 않을 경우, 방화벽 포트(8082) 오픈 여부를 확인하거나 서비스의 상태를 점검합니다.

로그인

플로우캣 대시보드를 사용하기 위해서는 등록된 계정으로 접근해야 하며, 기본으로 제공되는 관리자 계정 정보는 다음과 같습니다.

IDPW
flowkatflowkat!123

플로우캣 API 서버 등록

수집되는 데이터를 확인하려면 플로우캣 API 서버를 연결해야 합니다.

초기 화면

등록 버튼 클릭

플로우캣 API 서버 필수 정보 입력

  1. 서버 이름을 입력합니다.
  2. 서버 주소는 http://수집서버:6188 를 입력합니다.
  3. 다음 버튼을 눌러 연동 정보를 확인합니다.

플로우캣 연동 정보 확인

플로우캣 API 서버 설정 완료

  1. 수집서버와 연동된 정보를 확인할 수 있습니다.
  2. 다음 버튼을 눌러 설정된 정보를 확인합니다.
  3. 플로우캣 API 서버 설정 정보를 확인하고 완료 버튼을 클릭합니다.

모든 설정이 완료된 후에는 워크 그룹 버튼에 사용자가 등록한 워크 그룹 이름이 자동 갱신됩니다.

플로우캣 API 서버 목록

워크 그룹 버튼을 클릭하면 등록한 워크 그룹 목록을 확인할 수 있습니다.

모니터링 대상 선택

오브젝트를 클릭하고 서버 네비게이터에서 서버 목록과 오브젝트 목록에 등록되어 있는 에이전트를 선택합니다.

모니터링 대상이 선택된 화면

모니터링

에이전트까지 설치가 완료되면 플로우캣의 기본 제공 대시보드를 이용하여 모니터링을 시작합니다.

기본 제공 대시보드는 실시간 > 대시보드 메뉴에서 확인할 수 있습니다.