본문으로 건너뛰기

Docker Node.js 설치

관리 > 에이전트 설치 > 하단의 애플리케이션 설치 클릭 > 설치 안내 중 Docker Node.js 탭 선택

Docker 컨테이너 기반으로 실행하는 Node.js 애플리케이션에 와탭 모니터링 에이전트를 적용하고 컨테이너 이미지를 패키징하는 과정을 다음과 같이 안내합니다.

노트
  • EKS Fargate는 지원 예정입니다.

  • Node.js 애플리케이션 연동 과정에 대한 이해를 돕고자 Git 예시 코드를 제공합니다. 다음 문서를 참조하세요.

에이전트 다운로드

다음 명령어를 통해 whatap을 설치하세요.

npm install --save whatap

업데이트를 진행하려면 다음 명령어를 실행하세요.

npm update whatap

에이전트 설정

애플리케이션 메인 모듈의 첫 줄에 다음 코드를 추가하세요.

Example
const WhatapAgent = require('whatap').NodeAgent;
WhatapAgent.NodeAgent;

ECMAScript(ES) 활용 시 다음 코드를 추가하세요.

import WhatapAgent from 'whatap';
WhatapAgent.NodeAgent;

컨테이너 환경변수 설정

Docker 빌드 후 쿠버네티스 환경 내 컨테이너 환경변수를 설정하세요. 애플리케이션 배포 yaml 파일에 다음 내용을 추가하세요.

env:
- name: NODE_IP
valueFrom: {fieldRef: {fieldPath: status.hostIP}}
- name: NODE_NAME
valueFrom: {fieldRef: {fieldPath: spec.nodeName}}
- name: POD_NAME
valueFrom: {fieldRef: {fieldPath: metadata.name}}
- name: OKIND
value: {YOUR_OKIND_NAME}
- name: WHTAP_LICENSE
value: {licenseKey}
- name: WHATAP_SERVER_HOST
value: {proxyServer}
- name: WHATAP_MICRO_ENABLED
value: "true"

다음 예시를 참조하세요.

apiVersion: apps/v1
kind: Deployment
metadata:
name: #DeploymentName
labels:
app: #AppLabel
spec:
selector:
matchLabels:
app: #AppLabel
replicas: 3
template:
metadata:
labels:
app: #AppLabel
spec:
containers:
- name: #ContainerName
image: nginx
ports:
- containerPort: 80
env:
- name: NODE_IP
valueFrom: {fieldRef: {fieldPath: status.hostIP}}
- name: NODE_NAME
valueFrom: {fieldRef: {fieldPath: spec.nodeName}}
- name: POD_NAME
valueFrom: {fieldRef: {fieldPath: metadata.name}}
- name: OKIND
value: #DeploymentName
- name: WHTAP_LICENSE
value: {licenseKey}
- name: WHATAP_SERVER_HOST
value: {proxyServer}
- name: WHATAP_MICRO_ENABLED
value: "true"
노트

환경변수 역할

  • NODE_IP: 현재 Pod가 호스팅된 노드(Node)의 IP 주소를 수집합니다.

  • NODE_NAME: 현재 Pod가 실행 중인 노드의 이름을 수집합니다.

  • POD_NAME: 현재 Pod의 이름을 수집합니다.

  • OKIND(선택사항): Pod에 해당하는 애플리케이션들을 그룹화합니다. 디플로이먼트(Deployment) 이름으로 설정하면 해당하는 Pod들을 하나로 그룹화합니다.

  • license: 에이전트 인증 확인을 위한 키입니다.

  • whatap_server_host: 와탭 수집 서버 호스트 IP입니다.

  • whatap_micro_enabled: 컨테이너와의 연동을 활성화합니다.

에이전트 설치 확인

  • 에이전트를 제대로 설치했는지 확인하려면 대시보드 > 애플리케이션 서비스 대시보드 메뉴로 이동하세요.

  • 다운로드한 파일을 직접 설치한 다음 대시보드 메뉴에서 에이전트를 확인할 수 없다면 다음 사항을 확인하세요.

    • 컨테이너에서 ps -ef | grep whatap 명령어를 실행해 에이전트 옵션을 적용했는지 확인하세요.

    • 컨테이너의 /whatap/logs 경로의 내용을 확인하세요.