네트워크 분석 (Network Analytics)
스택 전반에서 각 출발지와 목적지 사이의 네트워크 데이터를 탐색하는 방법을 알아봐요. 전체 네트워크 건강 상태에 대한 통찰을 제공하고 페이지 상단에 권장 쿼리를 보여줘요.
출처: 문서
본문
개요 (Overview)
Network Analytics 페이지는 전체 네트워크 건강 상태에 대한 통찰을 제공하고 페이지 상단에 권장 쿼리를 보여줘요. 이 권장 쿼리들은 일반적인 쿼리를 실행하고 관련 메트릭의 스냅샷을 볼 수 있게 해 줘서, 처리량(throughput), 지연 시간, DNS 오류 등의 변화를 확인할 수 있어요. 권장 쿼리를 클릭하면 검색창, 그룹 바이(group bys), 요약 그래프가 자동으로 채워져 네트워크에 대한 관련 통찰을 제공해요.
{% image source="https://docs.dd-static.net/images/network_performance_monitoring/network_analytics/cnm_network_analytics_3.664a290127580fe67cee38ee4965a096.png?auto=format&fit=max&w=850 1x, https://docs.dd-static.net/images/network_performance_monitoring/network_analytics/cnm_network_analytics_3.664a290127580fe67cee38ee4965a096.png?auto=format&fit=max&w=850&dpr=2 2x" alt="Network Analytics landing page under Cloud Network Monitoring" /%}
쿼리 (Queries)
특정 엔드포인트 간 트래픽으로 검색을 좁히려면 네트워크 연결을 태그로 집계하고 필터링해요. Datadog 통합 또는 Unified Service Tagging의 태그를 집계·필터링에 자동으로 사용할 수 있어요. Network Monitoring에서 태깅을 활용하면 특정 서비스나 전체 인프라에 대해 가용 영역(availability zone)을 가로지르는 네트워크 트래픽 흐름을 활용할 수 있어요. client와 server 태그로 그룹화하면 이 두 태그 집합 사이의 네트워크 흐름을 시각화해요.
또한 Datadog은 필요에 가장 관련된 네트워크 트래픽을 효율적으로 쿼리·분석할 수 있는 기본 제공 태그 목록을 제공해요.
{% image source="https://docs.dd-static.net/images/network_performance_monitoring/network_analytics/network_diagram_with_tags.dbf9a99fde1da56a16a1de5fd1282643.png?auto=format&fit=max&w=850 1x, https://docs.dd-static.net/images/network_performance_monitoring/network_analytics/network_diagram_with_tags.dbf9a99fde1da56a16a1de5fd1282643.png?auto=format&fit=max&w=850&dpr=2 2x" alt="network diagram showing how requests are seen when grouping by tags" /%}
예를 들어 orders-app이라는 주문 서비스와 모든 가용 영역 사이의 네트워크 트래픽을 보려면 검색창에 client_service:orders-app을 입력하고, Group By 드롭다운에 client_service와 server_availability-zone 태그를 추가해 이 두 태그 집합 사이의 트래픽 흐름을 시각화해요:
{% image source="https://docs.dd-static.net/images/network_performance_monitoring/network_analytics/network_analytics_with_client_and_server_tag_2.57a0d1a5cfb00fb2d9cc67ea4d56c023.png?auto=format&fit=max&w=850 1x, https://docs.dd-static.net/images/network_performance_monitoring/network_analytics/network_analytics_with_client_and_server_tag_2.57a0d1a5cfb00fb2d9cc67ea4d56c023.png?auto=format&fit=max&w=850&dpr=2 2x" alt="Network Analytics page showing how requests are seen when filtering on service and grouping by availability zone" /%}
기본 뷰는 service 태그로 클라이언트와 서버를 집계해요. 따라서 테이블의 각 행은 1시간 기간 동안 집계될 때 서비스 간 집계 연결을 나타내요. Auto-grouped traffic을 선택하면 service, kube_service, short_image, container_name 같은 여러 자주 사용되는 태그로 버켓팅된 트래픽을 볼 수 있어요.
참고: NA/Untagged 트래픽 경로에 대한 정보는 Unresolved traffic을 참고하세요.
트래픽 방향과 관련된 클라이언트·서버 역할 이해하기 (Understanding client and server roles in relation to traffic direction)
Network Analytics 페이지는 한 영역의 클라이언트에서 다른 영역의 서버로 가는 방향성 트래픽 흐름을 보여줘요. 이 흐름은 대칭적이지 않으며, 반대로 할 때 "보낸 바이트(bytes sent)"와 "받은 바이트(bytes received)"가 같지 않을 수 있어요.
이 맥락에서:
- 클라이언트(Client)는 연결을 시작하는 쪽을 의미해요.
- 서버(Server)는 해당 연결에 응답하는 쪽이에요.
Datadog은 누가 연결을 열었는지에 따라 트래픽을 모니터링해요. 역방향(서버→클라이언트)은 별도의 흐름으로 표시되며 다른 볼륨 메트릭을 갖거나, 해당 방향으로 연결이 시작되지 않으면 데이터가 전혀 없을 수 있어요.
예를 들어 us-east-1d의 클라이언트가 us-east-1c의 서버와 통신하면 상당한 트래픽을 볼 수 있어요. 그러나 us-east-1d에 서버가 없다면 역방향 행(us-east-1c → us-east-1d)은 데이터가 거의 없거나 전혀 없을 수 있어요.
참고: 트래픽의 비대칭성은 애플리케이션 동작이나 인프라 요소(예: 프록시, NAT), 또는 한 방향에서의 연결 시작 부족으로 인해 발생할 수도 있어요.
권장 쿼리 (Recommended queries)
{% image source="https://docs.dd-static.net/images/network_performance_monitoring/network_analytics/recommended_queries_3.23b557813d834087587aac5f3b6b9801.png?auto=format&fit=max&w=850 1x, https://docs.dd-static.net/images/network_performance_monitoring/network_analytics/recommended_queries_3.23b557813d834087587aac5f3b6b9801.png?auto=format&fit=max&w=850&dpr=2 2x" alt="The Network Analytics page in Datadog displaying three recommended queries" /%}
권장 쿼리는 특정 문제를 해결하든 네트워크에 대한 더 나은 전반적 이해를 얻든 네트워크 조사를 시작할 수 있게 해 줘요. 권장 쿼리는 트래픽을 검색하거나 그룹화하지 않고도 관련 네트워크 정보를 찾도록 도와줘요. 예를 들어 Find dependencies of service: web-store 권장 쿼리는 검색창에 client_service: web-store 쿼리를 채우고, web-store 서비스가 네트워크 내에서 트래픽을 보내는 상위 서비스, 즉 다운스트림 종속성을 표시해요.
사용 가능한 권장 쿼리는 Analytics 페이지 상단에 제공되며, DNS 페이지 상단에도 세 개의 권장 쿼리가 있어요. 이 쿼리들을 사용해 자주 사용하는 데이터에 접근하고 지난 1시간 동안의 데이터 변화를 확인해요.
권장 쿼리를 실행하려면 타일을 클릭해요. 타일에 마우스를 올리면 쿼리가 반환하는 데이터에 대한 설명과 요약이 표시돼요.
{% image source="https://docs.dd-static.net/images/network_performance_monitoring/network_analytics/recommended_query_detail.bb5d5f8f7b00010b81b0d92ed1605f35.png?auto=format&fit=max&w=850 1x, https://docs.dd-static.net/images/network_performance_monitoring/network_analytics/recommended_query_detail.bb5d5f8f7b00010b81b0d92ed1605f35.png?auto=format&fit=max&w=850&dpr=2 2x" alt="The detail view of a recommended query displaying a description and query information, with four query dimensions displayed: Search for, View clients as, View servers as, and Visualize as" /%}
Datadog MCP 서버의 analyze_cloud_network_monitoring 도구로 AI 에이전트에서 네트워크 트래픽 데이터를 쿼리할 수도 있어요.
패싯 패널 (Facet panels)
패싯 패널을 사용해 흐름의 사용 가능한 모든 태그를 탐색하거나 정확한 태그 이름을 기억할 필요 없이 트래픽을 필터링해요. 패싯 패널은 검색창 쿼리의 태그를 반영해요. Client와 Server 탭을 사용해 패싯 패널을 전환해요.
커스텀 패싯 (Custom facets)
네트워크 분석 페이지에서 아무 태그로 트래픽 데이터를 집계·필터링해요. 포함된 태그 목록은 화면 왼쪽의 Client, Server 탭 아래와 Group By 드롭다운 메뉴에 있어요.
포함된 태그는 service, availability zone, env, environment, pod, host, ip, port 등을 포함해요. 메뉴에 아직 없는 태그로 트래픽을 집계·필터링하려면 커스텀 패싯으로 추가해요:
- 패싯 패널 오른쪽 상단의 + Add 버튼을 선택해요.
- 커스텀 패싯을 만들 태그를 입력해요.
- Add를 클릭해요.
커스텀 패싯이 만들어지면 이 태그를 사용해 네트워크 분석 페이지와 네트워크 맵에서 트래픽을 필터링·집계해요. 모든 커스텀 패싯은 패싯 패널 하단의 Custom 섹션에서 볼 수 있어요.
와일드카드 검색 (Wildcard search)
다중 문자 와일드카드 검색을 수행하려면 다음과 같이 * 기호를 사용해요:
client_service:web*는 web으로 시작하는 모든 클라이언트 서비스와 일치해요.client_service:*web는 web으로 끝나는 모든 클라이언트 서비스와 일치해요.client_service:*web*는 문자열 web을 포함하는 모든 클라이언트 서비스와 일치해요.
와일드카드 검색은 이 구문으로 패싯 내에서 동작해요. 다음 쿼리는 "mongo" 문자열로 끝나는 모든 클라이언트 서비스를 반환해요:
client_service:*mongo
자세한 내용은 검색 구문 (search syntax) 문서를 참고해요.
중립 태그 (Neutral tags)
중립 태그는 특정 클라이언트나 서버에 특화되지 않고 전체 흐름에 적용되는 태그예요. 이 중립 태그들로 트래픽을 검색·필터링할 수 있어요. 예를 들어 이 태그들을 사용해 TLS로 암호화된 트래픽을 필터링할 수 있어요.
중립 태그의 전체 목록과 설명은 Tags Reference의 Neutral tags를 참고해요.
그룹 바이 (Group by)
그룹을 사용하면 주어진 태그의 값으로 데이터를 그룹화할 수 있어요. 예를 들어 host 같은 그룹화를 선택하면 결과가 개별 호스트별로 그룹화돼요. 또한 관심 있는 그룹화로 태그되지 않은 큰 데이터 덩어리가 있을 수 있어요. 이런 경우 Auto-grouped traffic을 사용해 사용 가능한 태그로 데이터를 그룹화할 수 있어요.
단일 그룹화에서 모든 호스트의 연결을 조사하려면 Group By 드롭다운에 client_host와 Auto-Grouped-Servers 태그를 추가해요.
{% image source="https://docs.dd-static.net/images/network_performance_monitoring/network_analytics/cnm_auto-grouped_client.948cc2f9a11367849424c938d4763a0d.png?auto=format&fit=max&w=850 1x, https://docs.dd-static.net/images/network_performance_monitoring/network_analytics/cnm_auto-grouped_client.948cc2f9a11367849424c938d4763a0d.png?auto=format&fit=max&w=850&dpr=2 2x" alt="NPM analytics page sorting by host and grouped by Auto-grouped traffic" /%}
Auto-grouped traffic 옵션은 태그의 출처를 식별하는 데 도움이 될 수 있어요. 예를 들어 개별 아이콘 위에 마우스를 올리면 태그의 출처를 나타내는 툴팁이 표시돼요:
{% image source="https://docs.dd-static.net/images/network_performance_monitoring/network_analytics/npm_icon_tooltip.ddeabc44554b6deb01df0445fc5ec714.png?auto=format&fit=max&w=850 1x, https://docs.dd-static.net/images/network_performance_monitoring/network_analytics/npm_icon_tooltip.ddeabc44554b6deb01df0445fc5ec714.png?auto=format&fit=max&w=850&dpr=2 2x" alt="Hovering over the icon tooltip to display the tag source" /%}
요약 그래프 (Summary graphs)
요약 그래프는 네트워크의 축약된 뷰로, 필요에 따라 볼륨, 처리량, 연결 또는 지연 시간을 표시하도록 수정할 수 있어요. 한 번에 최대 3개의 요약 그래프를 표시하고, 데이터와 시각화 유형을 조직에 맞게 변경해요. 그래프의 데이터 소스를 업데이트하려면 그래프 제목을 클릭하고 드롭다운 메뉴에서 선택해요.
{% image source="https://docs.dd-static.net/images/network_performance_monitoring/network_analytics/summary_graph_options.3ffef9034006796d5bf56b09bfdc4240.png?auto=format&fit=max&w=850 1x, https://docs.dd-static.net/images/network_performance_monitoring/network_analytics/summary_graph_options.3ffef9034006796d5bf56b09bfdc4240.png?auto=format&fit=max&w=850&dpr=2 2x" alt="The summary graph section of the Network Analytics page, displaying the available options to filter the data: Volume Sent, Throughput Sent, Volume Received, Throughput Received, Established Connections, Closed Connections, Established Connections / Second, Closed Connections / Second, and TCP Latency" /%}
시각화 유형을 변경하려면 그래프 오른쪽 상단의 연필 아이콘을 클릭해요. 아래 스크린샷에 표시된 것처럼 사용 가능한 옵션 중에서 선택해요.
{% image source="https://docs.dd-static.net/images/network_performance_monitoring/network_analytics/summary_graph_visualization_options.7bf99e1996122c56c6dfa4a037222848.png?auto=format&fit=max&w=850 1x, https://docs.dd-static.net/images/network_performance_monitoring/network_analytics/summary_graph_visualization_options.7bf99e1996122c56c6dfa4a037222848.png?auto=format&fit=max&w=850&dpr=2 2x" alt="The summary graph visualization options, displaying options to adjust Y-Axis Scale with Linear, Log, Pow, and Sqrt, and to adjust Graph Type with Area, Line, Bars, Toplist, Change, and Piechart" /%}
특정 그래프를 숨기려면 연필 아이콘 옆의 그래프 숨기기 아이콘을 클릭해요. 그래프를 최소 1개에서 최대 3개까지 표시할 수 있어요. 그래프를 추가하려면 요약 그래프 오른쪽의 더하기 아이콘 +을 클릭하고 추가할 그래프를 선택해요. 새 그래프를 추가할 때 그래프를 기본 그래프로 재설정할 수도 있어요.
테이블 (Table)
네트워크 테이블은 쿼리로 정의된 각 출발지(source) 와 목적지(destination) 사이의 Volume, Throughput, TCP Retransmits, Round-trip Time(RTT), RTT 분산 메트릭을 분류해요.
{% image source="https://docs.dd-static.net/images/network_performance_monitoring/network_analytics/network_table_3.609db5caa8b20d786772a457c421d997.png?auto=format&fit=max&w=850 1x, https://docs.dd-static.net/images/network_performance_monitoring/network_analytics/network_table_3.609db5caa8b20d786772a457c421d997.png?auto=format&fit=max&w=850&dpr=2 2x" alt="Network data table showing auto-grouped traffic and throughput columns." /%}
테이블 오른쪽 상단의 Customize 기어 아이콘(⚙️)을 사용해 테이블의 열을 구성할 수 있어요.
페이지 오른쪽 상단의 Filter Traffic 버튼으로 표시되는 트래픽을 구성해요.
{% image source="https://docs.dd-static.net/images/network_performance_monitoring/network_analytics/filter_traffic_toggle.752562f745e94cc586d222f736206d1b.png?auto=format&fit=max&w=850 1x, https://docs.dd-static.net/images/network_performance_monitoring/network_analytics/filter_traffic_toggle.752562f745e94cc586d222f736206d1b.png?auto=format&fit=max&w=850&dpr=2 2x" alt="Flow Details" /%}
외부 트래픽(공용 IP로)과 Datadog Agent 트래픽은 기본적으로 표시돼요. 뷰를 좁히려면 Show Datadog Traffic과 Show External Traffic 토글을 끄도록 선택할 수 있어요.
미해결 트래픽 (Unresolved traffic)
해결되지 않은 클라이언트·서버 태그는 N/A로 표시돼요. 트래픽 클라이언트 또는 서버 엔드포인트는 출발지·목적지 정보 같은 식별 가능한 메타데이터가 부족하기 때문에 해결되지 않을 수 있어요. 이는 Datadog이 로드 밸런서, 클라우드 서비스, 모니터링되는 인프라 내 특정 IP 주소 같은 알려진 엔터티로 트래픽을 해결할 수 없을 때 발생할 수 있어요. 일반적으로 미해결 트래픽은 다음으로 인해 발생할 수 있어요:
- 호스트 또는 컨테이너의 클라이언트·서버 IP가 트래픽 집계에 사용되는 클라이언트·서버 태그로 태그되지 않음.
- 엔드포인트가 사설 네트워크 외부에 있어 Datadog Agent로 태그되지 않음.
- 엔드포인트가 Datadog Agent를 설치할 수 없는 방화벽, 서비스 메시 또는 기타 엔터티임.
- 목적지가 서비스로 태그되지 않았거나, IP가 어떤 서비스에도 매핑되지 않음.
미해결 트래픽을 모니터링하는 것은 네트워크 가시성의 블라인드 스팟을 식별하고 성능·보안 분석에서 모든 관련 트래픽이 계산되도록 하는 데 필수적이에요.
데이터 테이블 오른쪽 상단의 Show N/A (Unresolved Traffic) 토글을 사용해 해결되지 않은(N/A) 클라이언트 또는 서버가 있는 집계 연결을 필터링해요.
네트워크 경로로 피벗 (Pivot to network path)
분석 테이블의 세 점 메뉴를 클릭해 네트워크 경로 (network path)로 피벗하고 CNM에 지정된 출발지와 목적지 사이의 경로를 확인해요.
{% image source="https://docs.dd-static.net/images/network_performance_monitoring/network_analytics/view_network_path_3.4cf10b4ab22ca5712e61085886f481cf.png?auto=format&fit=max&w=850 1x, https://docs.dd-static.net/images/network_performance_monitoring/network_analytics/view_network_path_3.4cf10b4ab22ca5712e61085886f481cf.png?auto=format&fit=max&w=850&dpr=2 2x" alt="Clicking on the three dots menu in the Analytics table to show the Network Path toggle" /%}
저장된 뷰 (Saved views)
트래픽 데이터의 뷰를 구성하고 공유해요. 저장된 뷰(Saved Views)는 디버깅을 더 빠르게 만들고 협업을 강화해요. 예를 들어 뷰를 만들고, 일반적인 쿼리를 위해 미래에 대비해 저장하고, 링크를 복사해 팀원과 네트워크 데이터를 공유할 수 있어요.
- 뷰 저장: + Save 버튼을 클릭하고 뷰에 이름을 붙여 현재 쿼리, 테이블 구성, 그래프 메트릭 선택을 기록해요.
- 뷰 로드: 왼쪽 상단의 Views를 클릭해 저장된 뷰를 확인하고 목록에서 뷰를 선택해요.
- 뷰 이름 변경: 저장된 뷰 목록에서 뷰에 마우스를 올리고 기어 아이콘을 클릭해 이름을 편집해요.
- 뷰 공유: 저장된 뷰 목록에서 뷰에 마우스를 올리고 링크 아이콘을 클릭해 영구 링크(permalink)를 복사해요.
자세한 내용은 저장된 뷰 (Saved Views) 문서를 참고해요.
사이드 패널 (Sidepanel)
사이드 패널은 네트워크 종속성을 디버깅하는 데 도움이 되는 컨텍스트 텔레메트리를 제공해요. Flows, Logs, Traces, Processes 탭을 사용해 두 엔드포인트 간 트래픽에서 높은 재전송 수 또는 지연 시간이 다음 중 무엇 때문인지 판단해요:
- 특정 포트나 IP의 트래픽 볼륨 급증.
- 목적지 엔드포인트의 CPU 또는 메모리를 소비하는 무거운 프로세스.
- 클라이언트 엔드포인트 코드의 애플리케이션 오류.
{% image source="https://docs.dd-static.net/images/network_performance_monitoring/network_analytics/cnm_sidepanel_2.222c14586cb144690ab60ca972aadb95.png?auto=format&fit=max&w=850 1x, https://docs.dd-static.net/images/network_performance_monitoring/network_analytics/cnm_sidepanel_2.222c14586cb144690ab60ca972aadb95.png?auto=format&fit=max&w=850&dpr=2 2x" alt="CNM sidepanel detailing traffic between the client service traffic." /%}
공통 태그 (Common tags)
사이드 패널 상단은 조사 중인 종속성의 가장 최근 연결에 공유되는 일반적인 클라이언트·서버 태그를 표시해요. 공통 태그를 사용해 결함이 있는 엔드포인트에 대한 추가 컨텍스트를 얻어요. 예를 들어 특정 서비스로의 지연 통신을 해결할 때 공통 목적지 태그는 다음을 표면화해요:
- 트래픽이 흐르는 컨테이너, 작업, 호스트 같은 세분화된 컨텍스트.
- 서비스가 실행되는 가용 영역, 클라우드 제공자 계정, 배포 같은 더 넓은 컨텍스트.
트레이스 (Traces)
Traces 탭은 선택한 네트워크 흐름과 연결된 APM 트레이스를 보여줘요. 이 탭을 사용해 높은 지연 시간이나 높은 재전송 수 같은 네트워크 수준 이슈에서 관련 서비스의 애플리케이션 트레이스로 피벗해요.
자세한 내용은 APM을 참고해요.
보안 (Security)
Security 탭은 Workload Protection과 Cloud Security Misconfigurations이 감지한 잠재적 네트워크 위협과 결과를 강조해요. Datadog이 탐지·준수 규칙 (detection or compliance rule)과 일치하는 네트워크 활동을 감지하거나 다른 위협이 있으면 이러한 신호가 생성돼요.
메트릭 (Metrics)
| 메트릭 (Metric) | 설명 (Description) |
|---|---|
| Closed Connections | 닫힌 상태의 TCP 연결 수. 클라이언트 기준 초당 연결로 측정. |
| Established Connections | 설정된(established) 상태의 TCP 연결 수. 클라이언트 기준 초당 연결로 측정. |
| Host Unreachable | 대상 호스트가 오프라인이거나 라우터·방화벽이 트래픽을 차단했음을 나타내요. **Agent 7.68+**에서 사용 가능. |
| Network Unreachable | Agent 호스트 머신의 로컬 네트워킹 문제를 나타내요. **Agent 7.68+**에서 사용 가능. |
| Connection Cancels | Go와 Node.js 같은 언어 런타임에서 TCP 연결 취소와 사용자 공간 연결 시간 초과를 추적해요. **Agent 7.70+**에서 사용 가능. |
| TCP Jitter | TCP 평활 왕복 시간(smoothed round-trip time) 분산으로 측정. |
| TCP Latency | TCP 평활 왕복 시간, 즉 TCP 프레임이 전송되고 확인되는 사이의 시간으로 측정. |
| TCP Refusals | 서버가 거부한 TCP 연결 수. 일반적으로 연결을 받지 않는 IP/포트에 연결을 시도하거나 방화벽/보안 잘못된 구성을 나타내요. |
| TCP Resets | 서버가 재설정한 TCP 연결 수. |
| TCP Retransmits | TCP 재전송은 전달을 보장하기 위해 재전송되는 감지된 실패를 나타내요. 클라이언트 기준 재전송 수로 측정. |
| TCP Timeouts | 운영 체제 관점에서 시간 초과된 TCP 연결 수. 일반적인 연결성과 지연 문제를 나타낼 수 있어요. |
가능하면 모든 메트릭은 연결의 client 쪽에서 측정하며, 그렇지 않으면 서버 쪽에서 측정해요.
클라우드 서비스 자동 감지 (Cloud service autodetection)
S3나 Kinesis 같은 관리형 클라우드 서비스에 의존한다면 내부 애플리케이션에서 해당 서비스로 가는 트래픽의 성능을 모니터링할 수 있어요. 특정 AWS, Google Cloud 또는 Azure 종속성으로 뷰 범위를 지정해 지연 시간을 정확히 찾고, 데이터베이스 성능을 평가하고, 네트워크를 더 완전하게 시각화해요.
{% image
source="https://docs.dd-static.net/images/network_performance_monitoring/network_analytics/cloud_service.0837006aff871fd804bf0e9d97f4805c.png?auto=format&fit=max&w=850 1x, https://docs.dd-static.net/images/network_performance_monitoring/network_analytics/cloud_service.0837006aff871fd804bf0e9d97f4805c.png?auto=format&fit=max&w=850&dpr=2 2x"
alt="Side panel of a network connection, scoped by server_service:aws.s3" /%}
예를 들어 다음을 할 수 있어요:
- 네트워크 맵 (Network Map)에서 내부 Kubernetes 클러스터에서
server_service:aws.s3로의 데이터 흐름을 시각화. - 네트워크 페이지로 피벗해 해당 서비스에 가장 많은 연결을 설정하는 파드를 격리.
- 주어진 종속성의 사이드 패널 Integration Metrics 탭에서 트래픽 성능과 직접 상관되는 S3 성능 메트릭을 분석해 요청이 성공하는지 검증.
CNM은 자동으로 다음을 매핑해요:
- S3(
s3_bucket로 분류 가능), RDS(rds_instance_type으로 분류 가능), Kinesis, ELB, Elasticache 및 기타 AWS 서비스에 대한 네트워크 호출. - AppEngine, Google DNS, Gmail 및 기타 Google Cloud 서비스에 대한 API 호출.
Agent를 설치할 수 없는 다른 엔드포인트(공용 API 등)를 모니터링하려면 목적지를 domain 태그로 그룹화해요. 또는 아래 섹션의 클라우드 서비스 해석을 참고해요.
클라우드 서비스 강화 해석 (Cloud service enhanced resolution)
AWS 또는 Azure에 대해 강화 해석(enhanced resolution)이 구성되어 있으면 CNM은 이 클라우드 제공자에서 수집한 리소스를 사용해 네트워크 트래픽을 필터링·그룹화해요. 사용 가능한 태그는 클라우드 제공자와 리소스에 따라 달라져요. Datadog은 사용자 정의 태그 외에 아래 나열된 태그를 자동으로 적용해요.
Amazon Web Services
{% tab title="Loadbalancers" %}
- name
- loadbalancer
- load_balancer_arn
- dns_name (format loadbalancer/dns:)
- region
- account_id
- scheme
- custom (user-defined) tags applied to AWS Loadbalancers
{% /tab %}
{% tab title="NAT Gateways" %}
- gateway_id
- gateway_type
- aws_nat_gateway_id
- aws_nat_gateway_public_ip
- aws_account
- availability-zone
- region
- custom (user) tags applied to AWS Nat Gateways
{% /tab %}
{% tab title="VPC Internet Gateway" %}
- gateway_id
- gateway_type
- aws_internet_gateway_id
- aws_account
- region
- custom (user) tags applied to VPC Internet Gateways
{% /tab %}
{% tab title="VPC Endpoint" %}
- gateway_id
- gateway_type
- aws_vpc_endpoint_id
- custom (user) tags applied to VPC Internet Endpoints
{% /tab %}
Azure
{% tab title="Loadbalancers and Application Gateways" %}
- name
- loadbalancer
- cloud_provider
- region
- type
- resource_group
- tenant_name
- subscription_name
- subscription_id
- sku_name
- custom (user-defined) tags applied to Azure Loadbalancers and Application Gateways
{% /tab %}
도메인 해석 (Domain resolution)
Agent 7.17+부터 Agent는 외부·내부 트래픽에 대해 IP를 사람이 읽을 수 있는 도메인 이름으로 해석해요. domain을 사용하면 Datadog Agent를 설치할 수 없는 S3 버킷, 애플리케이션 로드 밸런서, API 같은 클라우드 제공자 엔드포인트를 모니터링할 수 있어요. C&C 서버의 DGA 도메인 같은 알아볼 수 없는 도메인 이름은 네트워크 보안 위협을 가리킬 수 있어요. domain 은 Datadog에서 태그로 인코딩되므로, 트래픽을 집계·필터링하기 위해 검색창 쿼리와 패싯 패널에서 사용할 수 있어요.
{% image source="https://docs.dd-static.net/images/network_performance_monitoring/network_analytics/domain_aggregation_2.ba943765aeb7e200ea0160a2a45b5653.png?auto=format&fit=max&w=850 1x, https://docs.dd-static.net/images/network_performance_monitoring/network_analytics/domain_aggregation_2.ba943765aeb7e200ea0160a2a45b5653.png?auto=format&fit=max&w=850&dpr=2 2x" alt="Domain aggregation" /%}
참고: DNS 해석은 시스템 프로브가 루트 네트워크 네임스페이스에서 실행되는 호스트에서 지원돼요. 이는 보통 호스트 네트워크를 사용하지 않고 컨테이너에서 system-probe를 실행할 때 발생해요.
네트워크 주소 변환 (NAT) (Network Address Translation)
NAT는 Kubernetes 및 기타 시스템에서 컨테이너 간 트래픽을 라우팅하는 데 사용하는 도구예요. 특정 종속성(예: 서비스 간)을 조사할 때 사전-NAT IP의 존재 여부를 사용해 자체 라우팅을 수행하는 Kubernetes 네이티브 서비스와 라우팅을 외부 클라이언트에 의존하는 서비스를 구분할 수 있어요. 이 기능은 NAT 게이트웨이의 해석을 포함하지 않아요.
사전-NAT 및 사후-NAT IP를 보려면 테이블 설정에서 Show pre-NAT IPs 토글을 사용해요. 이 설정을 끄면 Client IP와 Server IP 열에 표시되는 IP는 기본적으로 사후-NAT IP예요. 하나의 사후-NAT IP에 대해 여러 사전-NAT IP가 있는 경우 가장 흔한 상위 5개 사전-NAT IP가 표시돼요. pre_nat.ip는 제품의 다른 태그와 같은 태그이므로, 이를 사용해 트래픽을 집계·필터링할 수 있어요.
{% image source="https://docs.dd-static.net/images/network_performance_monitoring/network_analytics/prenat_ip2.646e23dbaf281ac495aa07d22da67911.png?auto=format&fit=max&w=850 1x, https://docs.dd-static.net/images/network_performance_monitoring/network_analytics/prenat_ip2.646e23dbaf281ac495aa07d22da67911.png?auto=format&fit=max&w=850&dpr=2 2x" alt="pre-NAT IPs" /%}
네트워크 ID (Network ID)
CNM 사용자는 네트워크가 겹치는 IP 공간을 갖도록 구성할 수 있어요. 예를 들어 겹치는 주소 범위를 가진 여러 VPC(가상 사설 클라우드)에 배포하고 로드 밸런서나 클라우드 게이트웨이를 통해서만 통신하고 싶을 수 있어요.
트래픽 목적지를 올바르게 분류하기 위해 CNM은 태그로 표현되는 네트워크 ID 개념을 사용해요. 네트워크 ID는 서로 통신할 수 있는 IP 주소 집합에 대한 영숫자 식별자예요. 서로 다른 네트워크 ID를 가진 여러 호스트에 매핑되는 IP 주소가 감지되면 이 식별자를 사용해 네트워크 트래픽이 가거나 오는 특정 호스트를 판단해요.
AWS와 Google Cloud에서 네트워크 ID는 자동으로 VPC ID로 설정돼요. 다른 환경에서는 아래와 같이 datadog.yaml에서, 또는 프로세스·코어 Agent 컨테이너에 DD_NETWORK_ID를 추가해 네트워크 ID를 수동으로 설정할 수 있어요.
network:
Id: <your-network-id>
더 알아보기 (Learn more)
도움이 되는 추가 문서, 링크, 아티클이에요: