본문 바로가기

모니터링/Datadog

Cloud환경의 모니터링을 위한 Datadog 구축하기

반응형

Cloud환경 모니터링으로 SaaS서비스를 제공하는 Datadog의 설치방법을 설명한다.

이번 포스팅은 Linux환경과 kubernetes환경 각각에서 진행한다.


1. Datadog 계정 생성

  • Datadog설치를 위해선 api_key값이 필요하며 api_key생성을 위해 Datadog계정생성 및 ORG 생성이 필요하다.
    아래 URL에 접속해 계정을 생성하자.
  • https://app.datadoghq.com/account/login
 

Datadog: Log In

 

app.datadoghq.com

  • 계정을 생성하고 나면 ORG 페이지가 보인다. 왼편에 Datadog에서 제공하는 기능들의 목록을 볼 수 있다.
  • Integrations메뉴로 이동 후 Agent탭을 누르면 설치를 진행할 환경을 선택할 수 있고 환경별로 설치방법을 설명한다.

 

2. Linux 환경에 Datadog-agent 설치

  • Agent탭에서 설치하려는 OS를 선택하면 설치가능한 명령어를 전달해 준다. 자신의 api_key를 포함하여 명령어를 수행하면 매우 간단하게 Agent설치가 완료된다.
[root@localhost ~]# DD_API_KEY=xxxxxxxxxx DD_SITE="datadoghq.com" bash -c "$(curl -L https://s3.amazonaws.com/dd-agent/scripts/install_script_agent7.sh)"
  % Total    % Received % Xferd  Average Speed   Time    Time     Time  Current
                                 Dload  Upload   Total   Spent    Left  Speed
100 37554  100 37554    0     0   5684      0  0:00:06  0:00:06 --:--:--  9177

* Datadog Agent 7 install script v1.15.0

...

  If you ever want to stop the Datadog Agent, run:

       systemctl stop datadog-agent

  And to run it again run:

       systemctl start datadog-agent

 

 

3. kubernetes환경에서 Datadog-agent 설치

 

GitHub - DataDog/helm-charts: Helm charts for Datadog products

Helm charts for Datadog products. Contribute to DataDog/helm-charts development by creating an account on GitHub.

github.com

  • helm install을 통해 Datadog-Agent를 설치하고 나면 아래와 같이 demonset형태로 node마다 pod가 생성된다.
[root@localhost ~]# k get po -n datadog
NAME                                     READY   STATUS    RESTARTS   AGE
datadog-cluster-agent-4ad6g6fdc4-2vt2h   1/1     Running   0          3d15h
datadog-g789a                            3/3     Running   0          3d15h
datadog-kju88                            3/3     Running   0          3d15h

 

4. Datadog values.yaml파일 설정

  • 몇가지 수정사항을 기록한다.
apm:
  enabled: true               # apm기능 사용시 enable true로 설정

logs:
  enabled: true               # log기능 사용시 enable true로 설정

containerExcludeLogs: "kube_namespace:^datadog&"      # log 수집 대상에서 제외할 조건. namespace datadog은 제외.
  • apm 및 log 기능 사용여부 수정(사용시 true로 설정한다.)
  • log기능을 사용하는 kubernetes환경의 경우 datadog이 설치된 namespace에서 발생하는 log를 수집하지 않도록 설정한다. (log양에 따라 과금이 발생하기 때문에 아낄 수 있는건 아끼자)
반응형

무료버전의 경우 host제한, metric보관 기간 등 제약사항이 많다. 가볍게 혼자 테스트하는 정도로의 사용하면 될 것 같다.

Monitoring방법에 대하여 추가로 포스팅 하도록 하겠다.

반응형

'모니터링 > Datadog' 카테고리의 다른 글

Datadog 리소스 쉽게 관리하기(datadog-sync)  (0) 2023.07.07
Datadog으로 kubernetes 모니터링  (0) 2023.03.16