쿠버네티스 모니터링 서비스 가이드

제목 : 쿠버네티스 모니터링 서비스 가이드
작성자 : WhaTap Support
이메일 : support@whatap.io
날짜 : 2019-10-22
버전 : 1.0.0

설명 : 본 문서는 WhaTap 쿠버네티스 모니터링 서비스에 대해 설명합니다.

1. 와탭 쿠버네티스 모니터링 설치

와탭 쿠버네티스 모니터링 서비스는 다수의 네임스페이스 및 포드/컨테이너를 프로젝트로 그룹화 하여 관리합니다.

WhaTap Kubernetes Monitoring Dashboard
Figure 1. WhaTap Kubernetes Monitoring Dashboard

1.1. 프로젝트 생성

와탭 콘솔의 프로젝트 그룹에서 프로젝트 생성 버튼을 누릅니다.

Click Button to Create Kubernetes Project
Figure 2. Click Button to Create Kubernetes Project

쿠버네티스 아이콘 선택 후 각 입력란에 해당하는 정보를 입력하고 전송 버튼을 눌러 프로젝트를 추가합니다.

Create Kubernetes Project
Figure 3. Create Kubernetes Project

신규 생성한 쿠버네티스 모니터링 프로젝트를 선택하면 에이전트 설치 화면이 나타납니다. 프로젝트 관리 | 에이전트 설치 메뉴를 통해서도 확인 가능합니다.

에이전트 설치 절차는 쿠버네티스 환경 모니터링을 위한 마스터 및 노드 에이전트 설치와 애프리케이션 에이전트 설치의 두 가지 과정으로 진행됩니다.

1.2. 마스터 및 노드 에이전트 설치

설치 안내 페이지에 안내된 흐름을 따라 마스터 및 노드 에이전트의 설치 과정을 진행합니다.

Install Master and Node Agents
Figure 4. Install Master and Node Agents

1.2.1. 라이선스 등록

설치 페이지에 존재하는 “라이선스키를 생성해 주세요.” 밑에 있는 박스를 클릭하여 라이선스를 발급받습니다. 이후 생성되는 명령어를 copy 버튼을 눌러 복사하거나 아래의 명령어에 라이선스키와 서버 IP를 추가하여 설치하고자 하는 서버에 입력합니다.

1.2.2. yaml 문서 다운로드

Container Runtime에 맞게 yaml을 다운로드 합니다. Amazon, Google, Azure, 혹은 설치형 쿠버네티스에서 별도로 지정하지 않으면 Docker 탭을 선택하여 yaml을 다운로드 합니다. IBM Cloud, 혹은 설치시 Container Runtime을 Containerd로 지정하신 경우 ContainerD 탭을 선택하여 yaml을 다운로드 합니다.

Download YAML file
Figure 5. Download YAML file

쿠버네티스 서비스 제공자 및 소프트웨어 벤더 별로 필요한 권한을 설정합니다.

Grant Authorization
Figure 6. Grant Authorization

1.2.3. 쿠버네티스 모니터링 자원을 생성 (에이전트 설치)

아래 명령을 실행하여 와탭 에이전트를 설치합니다.

kubectl -f whatap_쿠버네티스_container_mon.yaml apply

설치가 성공적으로 완료되면 아래와 같이 Service, Deployment 및 DaemoSet 이 생성됩니다.

whatap@a-master:~$ kubectl get all -n whatap-monitoring
NAME                                                  READY   STATUS    RESTARTS   AGE
pod/whatap-master-에이전트-6b6f7dfd88-gqz8w   1/1     Running   0          96m
pod/whatap-node-에이전트-hhlf6                1/1     Running   0          93m
pod/whatap-node-에이전트-kqjg6                1/1     Running   0          94m
pod/whatap-node-에이전트-m7dn2                1/1     Running   0          94m
pod/whatap-node-에이전트-nttqb                1/1     Running   0          92m
pod/whatap-node-에이전트-x6mzt                1/1     Running   0          95m

NAME                                     TYPE        CLUSTER-IP   EXTERNAL-IP   PORT(S)    AGE
service/whatap-master-에이전트   ClusterIP   None         <none>        6600/TCP   4d6h

NAME                                          DESIRED   CURRENT   READY   UP-TO-DATE   AVAILABLE   NODE SELECTOR   AGE
daemonset.apps/whatap-node-에이전트   5         5         5       5            5           <none>          4d6h

NAME                                             READY   UP-TO-DATE   AVAILABLE   AGE
deployment.apps/whatap-master-에이전트   1/1     1            1           4d6h

마스터 및 노드 에이전트의 설치가 완료되면 쿠버네티스 환경의 자원 모니터링이 시작됩니다.

이후 후속 작업으로 애플리케이션 모니터링을 위한 에이전트 설치를 수행합니다.

1.3. 애플리케이션 에이전트 설치

애플리케이션 에이전트의 설치는 와탭의 "애플리케이션 모니터링"의 설치 절차와 동일하나 컨테이너라이징 작업이 수반됩니다.

본 절차 역시 설치 안내 페이지의 JAVA 탭에 명시된 설치 흐름을 따라 설치를 진행합니다.

하기 설치 과정은 docker로 구동될 java application의 JVM Option에 에이전트 적용을 위한 옵션을 추가하고, docker container 이미지를 패키징 하는 과정을 설명합니다.
Dockerize Java Application with WhaTap Java Agent
Figure 7. Dockerize Java Application with WhaTap Agent

애플리케이션 에이전트가 탑재된 Docker Image를 기반으로 Pod가 구동되면, 애플리케이션 모니터링이 시작됩니다.