Dynatrace 사용하여 Kubernetes Monitoring 해보기
[테스트 환경]
- 관제 대상인 쿠버네티스 환경 : k8s 1.25.6 버전 / master1, worker2 클러스터 환경
가트너 리더 기준에 속하는 Dynatrace를 활용하여 쿠버네티스 모니터링 하는 방법은 비교적 다른 모니터링 도구에 비해 굉장히 쉬웠다.
먼저, https://www.dynatrace.com/ Dynatrace의 공식 홈페이지로 들어가서 [Free trial] 키를 선택한다.

그러면 이런식으로 15일간 이용할 수 있는 계정을 만들 수 있는데, 이메일 주소를 입력하고 각 정보를 맞게 입력해서 계정을 생성해주면 된다.
계정 생성 후에 dynatrace UI 런처를 해주면 아래와 같은 데모 화면을 볼 수 있고,
이제 모니터링할 대상에 agent 를 심어주면 해당 화면에서 모니터링된 정보들을 확인할 수 있다.

Account(계정)을 만든 이후에 Dynatrace의 DOCS 가 굉장히 잘 설명해주고 있어서 보고 따라하면 쉽다. (해당 링크는 맨 하단 참조)

원래 dynatrace에서 제공되는 DOCS에서 Data ingest token은 옵셔너블하게 되어있는데,
필자의 경우 kubernetes 환경의 어플리케이션(서비스)도 추후 관제 예정이라 같이 발급 받았다.

해당 화면에서 Cluster Name을 입력하고 두가지의 [ Create token ] 버튼을 누르면 토큰이 생성된다.
그리고 혹시 몰라 SSL certificate check 스킵도 활성화 하였다..
(어차피 테스트용이기 때문에 왠만한 보안 관련 설정은 다 피하는중,,)
그 이후에 [ Download dynakube.yaml ] 버튼을 누르면 내 다운로드 목록에 dynakube.yaml 이 다운받아진다.


dynakube.yaml 파일에는 UI에서 설정한 항목들과 apiToken, dataIngestToken이 발급되어 있고,
metadata.name 에는 내가 설정한 "Name" 값이 들어있다.
또한 yaml 파일을 보면 Dynakube 유형의 리소스가 배포된다는 것을 알 수 있는데, Dynakube 리소스의 spec.apiUrl은 데모 화면 주소이다.
해당 dynakube.yaml 파일은 쿠버네티스 환경의 작엽 경로에 옮겨놓는다.
해당 dynakube.yaml 파일이 있는 위치에서 아래의 명령을 차례로 실행해준다.
kubectl create namespace dynatrace
kubectl apply -f https://github.com/Dynatrace/dynatrace-operator/releases/download/v0.12.1/kubernetes.yaml
kubectl -n dynatrace wait pod --for=condition=ready --selector=app.kubernetes.io/name=dynatrace-operator,app.kubernetes.io/component=webhook --timeout=300s
kubectl apply -f dynakube.yaml

몇분 뒤에 내 쿠버네티스 환경에 dynatrace-operator와 webhook, activegate, oneagent 들이 배포된 것을 확인할 수 있다.
그리고 아까 yaml파일에서 보았던 Dynakube 유형의 리소스도 잘 배포되었다.
모니터링시 필요한 secret, configMap, service 들도 잘 생성이 되었다.

설정 화면의 맨 하단 "Show deployment status"를 확인하면,

나의 k8s 클러스터 환경의 노드들이 보여진다.

분석을 원하는 노드를 선택하면 dynatrace에서 분석된 내용이 보여진다.
참고 문서
https://www.dynatrace.com/support/help/setup-and-configuration/setup-on-k8s/quickstart
Quickstart
Deploy Dynatrace Operator on Kubernetes
www.dynatrace.com
'컨테이너 > Kubernetes' 카테고리의 다른 글
| Kubernetes(쿠버네티스) 환경에 Mariadb 배포하기 (Manifest 방식) (0) | 2023.08.18 |
|---|---|
| Application on Kubernetes Montioring (Dynatrace) : Dynatrace로 쿠버네티스 환경의 어플리케이션 모니터링하기 (0) | 2023.08.11 |
| 쿠버네티스(k3s) OpenEBS 스토리지 클래스 설치 및 openEBS를 기본 스토리지 클래스로 설정 (0) | 2023.04.12 |
| kubernetes Container Timezone Set (쿠버네티스 컨테이너 타임존 설정) 방법 (0) | 2023.04.08 |
| kubernetes default namespace setting 하기 (0) | 2023.04.04 |