프로젝트 소개
Hubble은 Cilium과 eBPF를 기반으로 구축된 클라우드 네이티브 워크로드용 완전 분산형 네트워킹 및 보안 관측 플랫폼입니다. 애플리케이션 변경 없이 서비스 통신과 동작, 그리고 네트워킹 인프라에 대한 깊은 가시성을 제공합니다.
README에 설명된 주요 기능:
- 서비스 의존성 및 통신 매핑: 어떤 서비스가 통신하는지, 얼마나 자주 통신하는지, 그에 따른 서비스 의존성 그래프를 보여줍니다. HTTP 호출과 Kafka 토픽 소비/생산을 드러낼 수 있습니다.
- 운영 모니터링 및 경고: 네트워크 통신이 실패하는지와 그 이유를 판단하는 데 도움을 주며, DNS 문제, 애플리케이션 문제와 네트워크 문제의 구분, 실패가 계층 4(TCP)에서 발생하는지 계층 7(HTTP)에서 발생하는지를 포함합니다. DNS 해석 문제, 중단되거나 시간 초과된 TCP 연결, 응답 없는 TCP SYN 요청 비율을 보고할 수 있습니다.
- 애플리케이션 모니터링: 서비스 또는 클러스터 전반의 HTTP 4xx/5xx 응답 비율을 추적하고, 요청과 응답 사이의 지연 백분위수(95번째 및 99번째)를 보고하며, 두 서비스 간의 지연도 포함합니다.
- 보안 관측: 네트워크 정책에 의해 차단된 연결, 클러스터 외부에서 접근한 서비스, 특정 DNS 이름을 해석한 서비스를 식별합니다.
이 프로젝트는 eBPF를 활용하여 프로그래밍 가능하고 동적인 가시성을 제공하며, 오버헤드를 최소화하면서 필요한 곳에 상세한 통찰을 제공하는 것을 목표로 합니다. README는 Hubble CLI가 모든 지원되는 Cilium 릴리스와 하위 호환되며, 최신 CLI 버전만 유지 관리된다고 명시합니다.
구성 요소 안정성은 다음과 같이 문서화되어 있습니다: Hubble CLI, Hubble Server, Hubble Metrics는 Stable로 표시되고, Hubble Relay는 Stable, Hubble UI는 Beta입니다.
강조된 기능으로는 L3/L4 및 L7에서의 무설정 자동 서비스 의존성 그래프와 Service Map 시각화, 네트워킹 동작에 대한 메트릭과 모니터링, 네트워크 정책 관측, HTTP 요청/응답 비율과 지연, DNS 요청/응답 모니터링이 있습니다. 흐름 가시성은 개별 TCP 연결, DNS 쿼리, HTTP 요청, Kafka 통신 등을 포괄합니다.
README는 또한 허용 목록 및 거부 목록 의미 체계를 사용하는 원시 흐름 필터, JSON으로 인코딩된 FlowFilters, 환경 변수 HUBBLE_ALLOWLIST와 HUBBLE_DENYLIST, 필터 구성을 저장하고 재사용하기 위한 --print-raw-filters 및 --config 플래그를 문서화합니다.
Hubble은 Cilium 프로젝트의 거버넌스 규칙을 따르는 Apache 2.0 라이선스 오픈 소스 프로젝트이며, Cilium Slack #hubble 채널을 통해 커뮤니티 지원을 제공합니다.
Comments
0 Rating appears after 10 ratings
Sign in to join the discussion.