서버

구성 파일

Table 1. 공통
파일명 설명

ChangeLog.txt

에이전트 변경 내역

whatap.conf

서버의 데이터를 수집할 서버의 주소와 서버의 프로젝트 라이센스 키가 입력되는 파일

Table 2. Linux / FreeBSD
파일명 설명

whatap_infrad

데이터 수집 및 전송용 에이전트

whatap_infrad.pid

실행 중인 에이전트의 PID 값을 기록한 파일

VERSION

현재 설치된 에이전트의 버전이 기록된 파일

Table 3. Windows
파일명 설명

whatap_infra.exe

데이터 수집 및 전송용 에이전트

unins000.*

에이전트 삭제 파일

whatap.ico

와탭 인프라의 아이콘 이미지

에이전트 이름 식별

와탭은 모니터링 정보 수집 대상인 인프라 서버 식별을 위해 기본적으로 서버로부터 수집한 정보를 활용합니다. 기본값은 서버의 호스트명(hostname)입니다.

default

hostname

사용자 친화적인 이름을 지정할 경우 아래와 같이 설정파일에 지정가능합니다.

Linux Shell
export WHATAP_SERVER_NAME=사용자 친화적인 이름

echo "oname=$WHATAP_SERVER_NAME" |sudo tee -a /usr/whatap/infra/conf/whatap.conf
Windows Power Shell 관리자 권한 필요
$WHATAP_SERVER_NAME="사용자 친화적인 이름"

Add-Content "C:\Program Files\WhatapInfra\whatap.conf" "oname=$WHATAP_SERVER_NAME"

Network & security

와탭 서버모니터링 에이전트에 서버 방향을 TCP 연결 후 모니터링 데이터를 전송합니다.

WhaTap agent to server
Figure 1. 와탭 에이전트 네트워크

에이전트는 하나의 TCP 세션을 통해서 데이터 전송과 서버의 제어 요청을 처리합니다.

수집서버 주소와 포트

와탭 서버는 데이터 리전 서버와 프론트 서버로 유레카 등으로 구분합니다. 데이터 리전에는 다시 Proxy, Yard, Gateway, Keeper 등이 있습니다. 에이전트는 그중에 Proxy 서버와 통신을 합니다.

와탭 서버모니터링 에이전트에 와탭 서버의 proxy 서버의 주소를 지정합니다.(ex whatap.server.host=10.0.3.1/10.0.3.2) 서버 주소를 설정할 때는 proxy 서버 숫자만큼 지정합니다. 와탭 서버는 설치 방식에 따라서 proxy 서버를 1개 혹은 여러 개를 사용할 수 있습니다.

와탭 Proxy 서버는 6600포트에서 리스닝 합니다. 에이전트에서 특별한 설정을 하지 않으면 에이전트는 6600포트로 접속을 시도합니다.

두 개의 Proxy 서버가 서로 상이한 포트를 사용할 수 없습니다. 여러 대의 Proxy 서버를 사용하는 경우 리스닝 포트는 동일해야 합니다.
whatap.conf
whatap.server.port=6600

통신 연결 및 보안

와탭은 퍼블릭 네트워크에서 모니터링 데이터를 수집하는 것을 전제로 설계되었습니다. 따라서 모든 모니터링 데이터를 암호화하여 서버로 전송합니다.

많은 데이터를 암호화 전송하면 오버헤드를 유발할 수도 있습니다. 와탭은 데이터를 선별적으로 암호화합니다. 에이전트와 서버 사이의 통신 과정은 다음과 같습니다.

에이전트와 서버 간 통신 과정

  1. 프로젝트 설치 메뉴에서 액세스 키를 생성하고 이것을 복사합니다.

  2. 라이센스 키에는 비밀키가 포함되어 있습니다. 따라서 라이선스 키가 외부에 알려지지 않도록 합니다.

  3. 와탭 서버모니터링 에이전트를 다시 시작합니다.

  4. 와탭 서버모니터링 에이전트는 서버로 TCP 세션을 연결합니다.

  5. 라이선스 키에 포함된 통신용 비밀키를 가지고 데이터를 암호화하여 새로운 세션용 보안 키를 요청합니다.

  6. 서버는 에이전트가 요청한 세션용 보안 키를 새로 만들어 에이전트에 내려보냅니다.

  7. 세션용 보안 키는 2개의 암호 키를 포함하고 있습니다. AES 알고리즘용 암호 키와 단순 암호를 위한 암호 키입니다.

  8. 이후에 에이전트는 텍스트와 제어 등 중요한 데이터는 AES 암호 키를 사용합니다. 숫자 데이터와 같이 상대적으로 안전한 데이터는 단순 암호화를 거쳐 데이터를 서버에 전송합니다.