Apache APISIX는 실시간 고성능 동적 API 게이트웨이로, 로드밸런싱, 동적 업스트림, 카나리아 릴리스, 회로 차단, 인증, 관찰 가능성 등과 같은 풍부한 트래픽 관리 기능을 제공합니다. 예를 들어, Apache APISIX를 사용하여 전통적인 남북 트래픽과 서비스 사이의 동서 트래픽을 처리할 수 있습니다. 또한 쿠버네티스(Kubernetes) 수신 컨트롤러로도 사용할 수 있습니다.
APISIX-Datadog 플러그인은 커스텀 메트릭을 DogStatsD 서버로 푸시하고 UDP 연결을 통해 Datadog 에이전트와 함께 번들로 제공됩니다. DogStatsD 은 StatsD 프로토콜을 구현한 것입니다. Apache APISIX]2 에이전트용 커스텀 메트릭을 수집하여 단일 데이터 포인트로 집계한 후 설정된 Datadog 서버로 보냅니다.
설정
설치
아래의 설정 지침을 따릅니다.
구성
이미 Datadog 을 사용 중이고 Datadog 에이전트가 설치되어 있는 경우 방화벽에 포트 8125/UDP가 허용되는지 확인하세요. 예를 들어 Apache APISIX 에이전트 는 Datadog 에이전트 포트 8125에 연결할 수 있습니다. 이미 설정한 경우 3단계로 건너뛸 수 있습니다.
먼저, Datadog 웹사이트를 방문하여 계정을 생성한 다음 무료 시작하기 버튼을 클릭합니다.
API 키를 생성합니다.
APISIX-Datadog 플러그인은 datadog/agent 의 DogStatsD 구성 요소로만 필요하며, 플러그인은 표준 UDP 소켓을 통해 statsd 프로토콜에 따라 메트릭을 DogStatsD 서버로 비동기적으로 전송합니다. 그렇기 때문에 APISIX에서는 전체 에이전트 대신 독립형 datadog/dogstatsd 이미지를 사용할 것을 권장합니다. 이는 2.8GB에 달하는 datadog/agent 이미지에 비해 매우 작은 크기입니다(단 11MB).
컨테이너로 실행하는 방법:
# pull the latest image$ docker pull datadog/dogstatsd:latest
# run a detached container$ docker run -d --name dogstatsd-agent -e DD_API_KEY=<Your API Key from step 2> -p 8125:8125/udp datadog/dogstatsd
프로덕션 환경에서 쿠버네티스(Kubernetes)를 사용 중인 경우 Apache APISIX 에이전트와 함께 dogstatsd를 Daemonset 또는 Multi-Container Pod로 배포할 수 있습니다.
다음은 특정 경로에 대해 Datadog 플러그인을 활성화하는 방법 예시입니다. dogstatsd 에이전트가 이미 설치되어 실행 중인 것으로 간주됩니다.