듀얼 쉬핑 (Dual Shipping)
메트릭, 로그, 트레이스를 여러 Datadog 조직에 동시에 보내도록 Datadog Agent를 구성하는 방법을 알려드릴게요. 데이터 유형별 예시를 하나씩 살펴볼게요.
출처: 문서
본문
듀얼 쉬핑은 여러 Datadog 조직에 데이터를 보낼 때 청구에 영향을 줄 수 있어요. 이 구성이 청구에 미치는 영향에 대해 자세히 알아보려면 Datadog 지원팀에 문의하세요.
개요 (Overview)
이 가이드는 서로 다른 유형의 데이터(예: APM, 로그, Cluster Agent 메트릭)를 여러 Datadog 조직과 사이트로 듀얼 쉬핑하기 위한 Agent 구성 예시를 제공해요. Datadog 사이트에 대한 자세한 내용은 Datadog 사이트 시작하기를 참고하세요.
참고: 로그를 듀얼 쉬핑하거나 로그 트래픽을 다른 로깅 벤더, 클라우드 스토리지, SIEM 제공자에 분할하고 싶다면 Observability Pipelines을 사용하세요.
네트워크 트래픽 목적지의 전체 목록은 네트워크 트래픽을 참고하세요.
메트릭 및 서비스 체크 (Metrics and service checks)
YAML 구성을 datadog.yaml에 추가하거나 적절한 환경 변수로 Agent를 실행할 수 있어요.
YAML 구성
Agent 6.17 이상 또는 7.17 이상이 필요해요.
datadog.yaml에서:
additional_endpoints:
"https://app.<YOUR_DATADOG_SITE>":
- apikey2
- apikey3
"https://app.<DD_SITE>": # <DD_SITE>를 Datadog 사이트 파라미터로 바꾸세요 (예: datadoghq.eu).
- apikey4
환경 변수 구성
Agent 6.18 이상 또는 7.18 이상이 필요해요.
DD_ADDITIONAL_ENDPOINTS='{\"https://app.<YOUR_DATADOG_SITE>\": [\"apikey2\", \"apikey3\"], \"https://app.<DD_SITE>\": [\"apikey4\"]}' # <DD_SITE>를 Datadog 사이트 파라미터로 바꾸세요 (예: datadoghq.eu).
APM
YAML 구성
Agent 6.7.0 이상이 필요해요.
datadog.yaml에서:
apm_config:
[...]
additional_endpoints:
"https://trace.agent.<YOUR_DATADOG_SITE>":
- apikey2
- apikey3
"https://trace.agent.<DD_SITE>": # <DD_SITE>를 Datadog 사이트 파라미터로 바꾸세요 (예: datadoghq.eu).
- apikey4
환경 변수 구성
Agent 6.19 이상 또는 7.19 이상이 필요해요.
DD_APM_ADDITIONAL_ENDPOINTS='{\"https://trace.agent.<YOUR_DATADOG_SITE>\": [\"apikey2\", \"apikey3\"], \"https://trace.agent.<DD_SITE>\": [\"apikey4\"]}' # <DD_SITE>를 Datadog 사이트 파라미터로 바꾸세요 (예: datadoghq.eu).
Continuous Profiler
YAML 구성
Agent 6.7.0 이상이 필요해요.
datadog.yaml에서:
apm_config:
[...]
profiling_additional_endpoints:
"https://intake.profile.<YOUR_DATADOG_SITE>/api/v2/profile":
- apikey2
- apikey3
"https://intake.profile.<DD_SITE>/api/v2/profile": # "<DD_SITE>"를 Datadog 사이트 파라미터로 바꾸세요 (예: datadoghq.eu).
- apikey4
환경 변수 구성
Agent 6.19 이상 또는 7.19 이상이 필요해요.
DD_APM_PROFILING_ADDITIONAL_ENDPOINTS='{\"https://intake.profile.<YOUR_DATADOG_SITE>/api/v2/profile\": [\"apikey2\", \"apikey3\"], \"https://intake.profile.<DD_SITE>/api/v2/profile\": [\"apikey4\"]}' # <DD_SITE>를 Datadog 사이트 파라미터로 바꾸세요 (예: datadoghq.eu).
참고: Continuous Profiler 제품의 추가 엔드포인트 업로드는 best-effort 전달로 이뤄져요.
- 메인 엔드포인트가 가장 높은 우선순위를 가져요. 추가 엔드포인트로의 업로드는 메인 엔드포인트 업로드가 성공적으로 완료된 후에만 처리돼요.
- 추가 엔드포인트의 응답은 profiler로 다시 전달되지 않아요. 추가 엔드포인트로의 전달 중 발생한 오류는 Agent 오류 로그에 기록돼요.
Live Processes
YAML 구성
Agent 6.4.0 이상이 필요해요.
datadog.yaml에서:
process_config:
[...]
additional_endpoints:
"https://process.<YOUR_DATADOG_SITE>":
- apikey2
- apikey3
"https://process.<DD_SITE>": # <DD_SITE>를 Datadog 사이트 파라미터로 바꾸세요 (예: datadoghq.eu).
- apikey4
환경 변수 구성
Agent 6.20 이상 또는 7.20 이상이 필요해요.
DD_PROCESS_ADDITIONAL_ENDPOINTS='{\"https://process.<YOUR_DATADOG_SITE>\": [\"apikey2\", \"apikey3\"], \"https://process.<DD_SITE>\": [\"apikey4\"]}' # <DD_SITE>를 Datadog 사이트 파라미터로 바꾸세요 (예: datadoghq.eu).
Cluster Agent 메트릭 (Cluster Agent metrics)
Kubernetes State Metrics Core 같은 Cluster Agent 메트릭을 추가 엔드포인트로 보내도록 Agent를 구성하세요.
HELM 구성
Datadog values.yaml에서:
clusterAgent:
env:
- name: DD_ADDITIONAL_ENDPOINTS
value: '{"https://app.<YOUR_DATADOG_SITE>": ["apikey2"]}'
Cluster Agent 메트릭 제공자 (Cluster Agent metrics provider)
자동 확장이 장애에 탄력적으로 대응하도록, Cluster Agent가 듀얼 쉬핑된 데이터로 여러 Datadog 리전에 대해 HPA용 메트릭 쿼리를 실행하도록 구성하세요. Datadog Cluster Agent 매니페스트를 여러 엔드포인트로 구성하세요:
cluster-agent-deployment.yaml 파일에서:
external_metrics_provider:
endpoints:
- api_key: <DATADOG_API_KEY>
app_key: <DATADOG_APP_KEY>
url: https://app.<DD_SITE>
- api_key: <DATADOG_API_KEY>
app_key: <DATADOG_APP_KEY>
url: https://app.<DD_SITE>
Orchestrator
HELM 구성
Datadog values.yaml에서:
agents:
customAgentConfig:
process_config:
additional_endpoints:
"https://process.<YOUR_DATADOG_SITE>":
- apikey2
orchestrator_explorer:
orchestrator_additional_endpoints:
"https://orchestrator.<YOUR_DATADOG_SITE>":
- apikey3
clusterAgent:
...
datadog_cluster_yaml:
orchestrator_explorer:
orchestrator_additional_endpoints:
"https://orchestrator.<DD_SITE>": # <DD_SITE>를 Datadog 사이트 파라미터로 바꾸세요 (예: ddog-gov.com).
- apikey4
환경 변수 구성
DD_ORCHESTRATOR_EXPLORER_ORCHESTRATOR_ADDITIONAL_ENDPOINTS='{\"https://orchestrator.<YOUR_DATADOG_SITE>\": [\"apikey2\", \"apikey3\"], \"https://orchestrator.<DD_SITE>\": [\"apikey4\"]}' # <DD_SITE>를 Datadog 사이트 파라미터로 바꾸세요 (예: ddog-gov.com).
CI Visibility
YAML 구성
Agent 6.38 이상 또는 7.38 이상이 필요해요.
datadog.yaml에서:
evp_proxy_config:
[...]
additional_endpoints:
"https://<VERSION>-app.agent.<YOUR_DATADOG_SITE>":
- apikey2
- apikey3
"https://<VERSION>-app.agent.<DD_SITE>": # <VERSION>과 <DD_SITE>를 Agent 버전과 Datadog 사이트 파라미터로 바꾸세요 (예: 7-38-0 및 datadoghq.eu).
- apikey4
환경 변수 구성
DD_EVP_PROXY_CONFIG_ADDITIONAL_ENDPOINTS='{\"https://<VERSION>-app.agent.<YOUR_DATADOG_SITE>\": [\"apikey2\", \"apikey3\"], \"https://<VERSION>-app.agent.<DD_SITE>\": [\"apikey4\"]}' # <VERSION>과 <DD_SITE>를 Agent 버전과 Datadog 사이트 파라미터로 바꾸세요 (예: 7-38-0 및 datadoghq.eu).
로그 (Logs)
여러 Datadog 조직으로 로그를 듀얼 쉬핑하고 싶다면 Agent를 사용하세요. Datadog과 외부 목적지에 로그를 보내고 싶다면 Observability Pipelines을 사용하세요.
TCP에는 Agent 6.6 이상이, HTTPS에는 Agent 6.13 이상이 필요해요.
YAML 구성
datadog.yaml에서:
logs_config:
force_use_http: true
additional_endpoints:
- api_key: "apiKey2"
Host: "agent-http-intake.logs.<YOUR_DATADOG_SITE>"
Port: 443
is_reliable: true
환경 변수 구성
Agent 6.18 이상 또는 7.18 이상이 필요해요.
DD_LOGS_CONFIG_FORCE_USE_HTTP=true
DD_LOGS_CONFIG_ADDITIONAL_ENDPOINTS="[{\"api_key\": \"apiKey2\", \"Host\": \"agent-http-intake.logs.<YOUR_DATADOG_SITE>\", \"Port\": 443, \"is_reliable\": true}]"
추가 엔드포인트를 설정할 때는 Agent에 어떤 전송을 사용할지 알려주기 위해 명시적으로 use_http를 설정해야 해요. 동일한 전송 구성이 모든 추가 엔드포인트에 공유돼요.
is_reliable 설정(Agent 7.34.0에서 처음 제공)은 이 엔드포인트를 기본 엔드포인트와 동일한 우선순위로 처리하도록 Agent에 지시해요. 기본 엔드포인트는 항상 신뢰할 수 있어요. 이는 목적지 하나가 사용 불가능해져도 데이터가 누락되지 않도록 보장해요.
예를 들어 메인 엔드포인트와 is_reliable: true인 추가 엔드포인트에 데이터를 보내는데 한 엔드포인트가 사용 불가능해지면, 데이터는 계속 다른 엔드포인트로 흘러가요. 두 엔드포인트 모두 사용 불가능해지면 적어도 하나의 엔드포인트가 복구될 때까지 Agent는 데이터 읽기와 전송을 중지해요. 이는 모든 데이터가 적어도 하나의 신뢰할 수 있는 엔드포인트에 도달하도록 보장해요.
is_reliable 설정은 Agent 7.37.0+에서 기본값이 true예요. 신뢰할 수 없는 엔드포인트는 적어도 하나의 신뢰할 수 있는 엔드포인트를 사용할 수 있을 때만 데이터를 보내요. 여러 추가 엔드포인트를 is_reliable 값을 혼합해 정의할 수 있어요. Datadog은 기본 is_reliable 설정을 사용할 것을 권장해요.
YAML 구성을 datadog.yaml에 추가하거나 적절한 환경 변수로 Agent를 실행할 수 있어요.
Database Monitoring
YAML 구성
Agent 6.29 이상 또는 7.29 이상이 필요해요.
datadog.yaml에서:
database_monitoring:
samples:
force_use_http: true
additional_endpoints:
- api_key: "apiKey2"
Host: "dbm-metrics-intake.<YOUR_DATADOG_SITE>"
Port: 443
is_reliable: true
activity:
force_use_http: true
additional_endpoints:
- api_key: "apiKey2"
Host: "dbquery-intake.<YOUR_DATADOG_SITE>"
Port: 443
is_reliable: true
metrics:
force_use_http: true
additional_endpoints:
- api_key: "apiKey2"
Host: "dbm-metrics-intake.<YOUR_DATADOG_SITE>"
Port: 443
is_reliable: true
환경 변수 구성
DD_DATABASE_MONITORING_SAMPLES_USE_HTTP=true
DD_DATABASE_MONITORING_SAMPLES_ADDITIONAL_ENDPOINTS="[{\"api_key\": \"apiKey2\", \"Host\": \"dbm-metrics-intake.<YOUR_DATADOG_SITE>\", \"Port\": 443, \"is_reliable\": true}]"
DD_DATABASE_MONITORING_ACTIVITY_USE_HTTP=true
DD_DATABASE_MONITORING_ACTIVITY_ADDITIONAL_ENDPOINTS="[{\"api_key\": \"apiKey2\", \"Host\": \"dbquery-intake.<YOUR_DATADOG_SITE>\", \"Port\": 443, \"is_reliable\": true}]"
DD_DATABASE_MONITORING_METRICS_USE_HTTP=true
DD_DATABASE_MONITORING_METRICS_ADDITIONAL_ENDPOINTS="[{\"api_key\": \"apiKey2\", \"Host\": \"dbm-metrics-intake.<YOUR_DATADOG_SITE>\", \"Port\": 443, \"is_reliable\": true}]"
추가 엔드포인트를 설정할 때는 Agent에 어떤 전송을 사용할지 알려주기 위해 명시적으로 use_http를 설정해야 해요. 동일한 전송 구성이 모든 추가 엔드포인트에 공유돼요.
is_reliable 설정(Agent 7.34.0에서 처음 제공)은 이 엔드포인트를 기본 엔드포인트와 동일한 우선순위로 처리하도록 Agent에 지시해요. 기본 엔드포인트는 항상 신뢰할 수 있어요. 이는 목적지 하나가 사용 불가능해져도 데이터가 누락되지 않도록 보장해요.
예를 들어 메인 엔드포인트와 is_reliable: true인 추가 엔드포인트에 데이터를 보내는데 한 엔드포인트가 사용 불가능해지면, 데이터는 계속 다른 엔드포인트로 흘러가요. 두 엔드포인트 모두 사용 불가능해지면 적어도 하나의 엔드포인트가 복구될 때까지 Agent는 데이터 읽기와 전송을 중지해요. 이는 모든 데이터가 적어도 하나의 신뢰할 수 있는 엔드포인트에 도달하도록 보장해요.
is_reliable 설정은 Agent 7.37.0+에서 기본값이 true예요. 신뢰할 수 없는 엔드포인트는 적어도 하나의 신뢰할 수 있는 엔드포인트를 사용할 수 있을 때만 데이터를 보내요. 여러 추가 엔드포인트를 is_reliable 값을 혼합해 정의할 수 있어요. Datadog은 기본 is_reliable 설정을 사용할 것을 권장해요.
YAML 구성을 datadog.yaml에 추가하거나 적절한 환경 변수로 Agent를 실행할 수 있어요.
네트워크 디바이스 (Network Devices)
YAML 구성
Agent 6.29 이상 또는 7.29 이상이 필요해요.
datadog.yaml에서:
network_devices:
metadata:
force_use_http: true
additional_endpoints:
- api_key: "apiKey2"
Host: "ndm-intake.<YOUR_DATADOG_SITE>"
Port: 443
is_reliable: true
snmp_traps:
forwarder:
force_use_http: true
additional_endpoints:
- api_key: "apiKey2"
Host: "ndm-intake.<YOUR_DATADOG_SITE>"
Port: 443
is_reliable: true
netflow:
forwarder:
force_use_http: true
additional_endpoints:
- api_key: "apiKey2"
Host: "ndm-intake.<YOUR_DATADOG_SITE>"
Port: 443
is_reliable: true
환경 변수 구성
DD_NETWORK_DEVICES_METADATA_USE_HTTP=true
DD_NETWORK_DEVICES_METADATA_ADDITIONAL_ENDPOINTS="[{\"api_key\": \"apiKey2\", \"Host\": \"ndm-intake.<YOUR_DATADOG_SITE>\", \"Port\": 443, \"is_reliable\": true}]"
추가 엔드포인트를 설정할 때는 Agent에 어떤 전송을 사용할지 알려주기 위해 명시적으로 use_http를 설정해야 해요. 동일한 전송 구성이 모든 추가 엔드포인트에 공유돼요.
is_reliable 설정(Agent 7.34.0에서 처음 제공)은 이 엔드포인트를 기본 엔드포인트와 동일한 우선순위로 처리하도록 Agent에 지시해요. 기본 엔드포인트는 항상 신뢰할 수 있어요. 이는 목적지 하나가 사용 불가능해져도 데이터가 누락되지 않도록 보장해요.
예를 들어 메인 엔드포인트와 is_reliable: true인 추가 엔드포인트에 데이터를 보내는데 한 엔드포인트가 사용 불가능해지면, 데이터는 계속 다른 엔드포인트로 흘러가요. 두 엔드포인트 모두 사용 불가능해지면 적어도 하나의 엔드포인트가 복구될 때까지 Agent는 데이터 읽기와 전송을 중지해요. 이는 모든 데이터가 적어도 하나의 신뢰할 수 있는 엔드포인트에 도달하도록 보장해요.
is_reliable 설정은 Agent 7.37.0+에서 기본값이 true예요. 신뢰할 수 없는 엔드포인트는 적어도 하나의 신뢰할 수 있는 엔드포인트를 사용할 수 있을 때만 데이터를 보내요. 여러 추가 엔드포인트를 is_reliable 값을 혼합해 정의할 수 있어요. Datadog은 기본 is_reliable 설정을 사용할 것을 권장해요.
YAML 구성을 datadog.yaml에 추가하거나 적절한 환경 변수로 Agent를 실행할 수 있어요.
네트워크 경로 (Network Path)
YAML 구성
Agent 6.55 이상 또는 7.55 이상이 필요해요.
datadog.yaml에서:
network_path:
forwarder:
use_http: true
additional_endpoints:
- api_key: "apiKey2"
Host: "netpath-intake.<YOUR_DATADOG_SITE>"
Port: 443
is_reliable: true
환경 변수 구성
DD_NETWORK_PATH_FORWARDER_USE_HTTP=true
DD_NETWORK_PATH_FORWARDER_ADDITIONAL_ENDPOINTS="[{\"api_key\": \"apiKey2\", \"Host\": \"netpath-intake.<YOUR_DATADOG_SITE>\", \"Port\": 443, \"is_reliable\": true}]"
추가 엔드포인트를 설정할 때는 Agent에 어떤 전송을 사용할지 알려주기 위해 명시적으로 use_http를 설정해야 해요. 동일한 전송 구성이 모든 추가 엔드포인트에 공유돼요.
is_reliable 설정(Agent 7.34.0에서 처음 제공)은 이 엔드포인트를 기본 엔드포인트와 동일한 우선순위로 처리하도록 Agent에 지시해요. 기본 엔드포인트는 항상 신뢰할 수 있어요. 이는 목적지 하나가 사용 불가능해져도 데이터가 누락되지 않도록 보장해요.
예를 들어 메인 엔드포인트와 is_reliable: true인 추가 엔드포인트에 데이터를 보내는데 한 엔드포인트가 사용 불가능해지면, 데이터는 계속 다른 엔드포인트로 흘러가요. 두 엔드포인트 모두 사용 불가능해지면 적어도 하나의 엔드포인트가 복구될 때까지 Agent는 데이터 읽기와 전송을 중지해요. 이는 모든 데이터가 적어도 하나의 신뢰할 수 있는 엔드포인트에 도달하도록 보장해요.
is_reliable 설정은 Agent 7.37.0+에서 기본값이 true예요. 신뢰할 수 없는 엔드포인트는 적어도 하나의 신뢰할 수 있는 엔드포인트를 사용할 수 있을 때만 데이터를 보내요. 여러 추가 엔드포인트를 is_reliable 값을 혼합해 정의할 수 있어요. Datadog은 기본 is_reliable 설정을 사용할 것을 권장해요.
YAML 구성을 datadog.yaml에 추가하거나 적절한 환경 변수로 Agent를 실행할 수 있어요.
Cloud Security Misconfigurations
YAML 구성
datadog.yaml에서:
compliance_config:
endpoints:
force_use_http: true
additional_endpoints:
- api_key: "apiKey2"
host: "cspm-intake.<YOUR_DATADOG_SITE>.:443"
is_reliable: true
환경 변수 구성
DD_COMPLIANCE_CONFIG_ENDPOINTS_USE_HTTP=true
DD_COMPLIANCE_CONFIG_ENDPOINTS_ADDITIONAL_ENDPOINTS="[{\"api_key\": \"apiKey2\", \"host\": \"cspm-intake.<YOUR_DATADOG_SITE>.:443\", \"is_reliable\": true}]"
추가 엔드포인트를 설정할 때는 Agent에 어떤 전송을 사용할지 알려주기 위해 명시적으로 use_http를 설정해야 해요. 동일한 전송 구성이 모든 추가 엔드포인트에 공유돼요.
is_reliable 설정(Agent 7.34.0에서 처음 제공)은 이 엔드포인트를 기본 엔드포인트와 동일한 우선순위로 처리하도록 Agent에 지시해요. 기본 엔드포인트는 항상 신뢰할 수 있어요. 이는 목적지 하나가 사용 불가능해져도 데이터가 누락되지 않도록 보장해요.
예를 들어 메인 엔드포인트와 is_reliable: true인 추가 엔드포인트에 데이터를 보내는데 한 엔드포인트가 사용 불가능해지면, 데이터는 계속 다른 엔드포인트로 흘러가요. 두 엔드포인트 모두 사용 불가능해지면 적어도 하나의 엔드포인트가 복구될 때까지 Agent는 데이터 읽기와 전송을 중지해요. 이는 모든 데이터가 적어도 하나의 신뢰할 수 있는 엔드포인트에 도달하도록 보장해요.
is_reliable 설정은 Agent 7.37.0+에서 기본값이 true예요. 신뢰할 수 없는 엔드포인트는 적어도 하나의 신뢰할 수 있는 엔드포인트를 사용할 수 있을 때만 데이터를 보내요. 여러 추가 엔드포인트를 is_reliable 값을 혼합해 정의할 수 있어요. Datadog은 기본 is_reliable 설정을 사용할 것을 권장해요.
YAML 구성을 datadog.yaml에 추가하거나 적절한 환경 변수로 Agent를 실행할 수 있어요.
Workload Protection
YAML 구성
datadog.yaml에서:
runtime_security_config:
endpoints:
force_use_http: true
additional_endpoints:
- api_key: "apiKey2"
host: "cws-intake.<YOUR_DATADOG_SITE>.:443"
is_reliable: true
환경 변수 구성
DD_RUNTIME_SECURITY_CONFIG_ENDPOINTS_USE_HTTP=true
DD_RUNTIME_SECURITY_CONFIG_ENDPOINTS_ADDITIONAL_ENDPOINTS="[{\"api_key\": \"apiKey2\", \"host\": \"cws-intake.<YOUR_DATADOG_SITE>.:443\", \"is_reliable\": true}]"
추가 엔드포인트를 설정할 때는 Agent에 어떤 전송을 사용할지 알려주기 위해 명시적으로 use_http를 설정해야 해요. 동일한 전송 구성이 모든 추가 엔드포인트에 공유돼요.
is_reliable 설정(Agent 7.34.0에서 처음 제공)은 이 엔드포인트를 기본 엔드포인트와 동일한 우선순위로 처리하도록 Agent에 지시해요. 기본 엔드포인트는 항상 신뢰할 수 있어요. 이는 목적지 하나가 사용 불가능해져도 데이터가 누락되지 않도록 보장해요.
예를 들어 메인 엔드포인트와 is_reliable: true인 추가 엔드포인트에 데이터를 보내는데 한 엔드포인트가 사용 불가능해지면, 데이터는 계속 다른 엔드포인트로 흘러가요. 두 엔드포인트 모두 사용 불가능해지면 적어도 하나의 엔드포인트가 복구될 때까지 Agent는 데이터 읽기와 전송을 중지해요. 이는 모든 데이터가 적어도 하나의 신뢰할 수 있는 엔드포인트에 도달하도록 보장해요.
is_reliable 설정은 Agent 7.37.0+에서 기본값이 true예요. 신뢰할 수 없는 엔드포인트는 적어도 하나의 신뢰할 수 있는 엔드포인트를 사용할 수 있을 때만 데이터를 보내요. 여러 추가 엔드포인트를 is_reliable 값을 혼합해 정의할 수 있어요. Datadog은 기본 is_reliable 설정을 사용할 것을 권장해요.
YAML 구성을 datadog.yaml에 추가하거나 적절한 환경 변수로 Agent를 실행할 수 있어요.
Kubernetes에서의 듀얼 쉬핑 (Dual shipping in Kubernetes)
Helm — Datadog Agent Helm 차트를 사용한다면 configmap으로 이 설정들을 구성할 수 있어요. values.yaml에서 useConfigMap: true로 설정하고 관련 설정을 customAgentConfig에 추가하세요.
# agents.useConfigMap -- Configures a configmap to provide the agent configuration. Use this in combination with the `agents.customAgentConfig` parameter.
useConfigMap: true
# agents.customAgentConfig -- Specify custom contents for the datadog agent config (datadog.yaml)
## ref: https://docs.datadoghq.com/agent/configuration/agent-configuration-files/?tab=agentv6
## ref: https://github.com/DataDog/datadog-agent/tree/main/pkg/config/example
## Note the `agents.useConfigMap` needs to be set to `true` for this parameter to be taken into account.
customAgentConfig:
additional_endpoints:
"https://app.<DD_SITE>": # <DD_SITE>를 Datadog 사이트 파라미터로 바꾸세요 (예: datadoghq.com).
- apikey2
- apikey3
"https://app.<DD_SITE>": # <DD_SITE>를 Datadog 사이트 파라미터로 바꾸세요 (예: datadoghq.eu).
- apikey4
logs_config:
force_use_http: true
additional_endpoints:
- api_key: "apiKey2"
Host: "agent-http-intake.logs.<DD_SITE>" # <DD_SITE>를 Datadog 사이트 파라미터로 바꾸세요 (예: datadoghq.com).
Port: 443
is_reliable: true
ConfigMap 안에서 API 키를 평문으로 노출하지 않으려면 환경 변수 구성을 사용하고 Kubernetes 시크릿을 참조할 수도 있어요. 추가 리전으로 메트릭을 보내는 예시는 다음과 같아요:
- 이 가이드의 환경 변수 구성 값으로 Kubernetes 시크릿을 만드세요:
kubectl create -n <DATADOG AGENT NAMESPACE> secret generic dual-shipping --from-literal metrics='{"https://app.<DD_SITE>": ["apikey4"]}' # <DD_SITE>를 Datadog 사이트 파라미터로 바꾸세요 (예: datadoghq.eu). - Helm 차트 파라미터
datadog.env또는datadog.envFrom을 사용해 구성에서 이 시크릿을 참조하세요:datadog: [...] env: - name: DD_ADDITIONAL_ENDPOINTS valueFrom: secretKeyRef: name: dual-shipping key: metrics
Datadog Operator — Datadog Agent operator를 사용한다면 [key].customConfigurations.[key].configData override 키로 이 설정들을 지정할 수 있어요. 아래 예시는 node Agent의 datadog.yaml 설정 파일을 교체해 메트릭과 로그를 추가 리전으로 보내요.
apiVersion: datadoghq.com/v2alpha1
kind: DatadogAgent
metadata:
name: datadog
spec:
override:
nodeAgent:
customConfigurations:
datadog.yaml:
## <DD_SITE>를 Datadog 사이트 파라미터로 바꾸세요 (예: `apikey2`와 `apikey3`는 datadoghq.com (US1), `apikey4`는 datadoghq.eu (EU)).
configData: |-
additional_endpoints:
"https://app.<DD_SITE>":
- apikey2
- apikey3
"https://app.<DD_SITE>":
- apikey4
logs_config:
force_use_http: true
additional_endpoints:
- api_key: "apiKey2"
Host: "agent-http-intake.logs.<DD_SITE>"
Port: 443
is_reliable: true
ConfigMap 안에서 API 키를 평문으로 노출하지 않으려면 환경 변수 구성을 사용하고 Kubernetes 시크릿을 참조할 수도 있어요. 추가 리전으로 메트릭을 보내는 예시는 다음과 같아요:
- 이 가이드의 환경 변수 구성 값으로 Kubernetes 시크릿을 만드세요:
kubectl create -n <DATADOG AGENT NAMESPACE> secret generic dual-shipping --from-literal metrics='{"https://app.<DD_SITE>": ["apikey4"]}' # <DD_SITE>를 Datadog 사이트 파라미터로 바꾸세요 (예: datadoghq.eu). [key].env파라미터를 사용해 구성에서 이 시크릿을 참조하세요:apiVersion: datadoghq.com/v2alpha1 kind: DatadogAgent metadata: name: datadog spec: override: nodeAgent: env: - name: DD_ADDITIONAL_ENDPOINTS valueFrom: secretKeyRef: name: dual-shipping key: metrics
더 알아보기 (Learn more)
도움이 되는 추가 문서, 링크, 글: