업데이트로 돌아가기
New releaseJul 25, 2026

nightingale v9.0.0

시계열 모니터링 데이터를 위한 오픈소스 알림 엔진입니다. Prometheus, VictoriaMetrics, ElasticSearch 및 기타 데이터 소스에 연결됩니다. 20개 이상의 알림 채널, 알림 노이즈 감소, 에스컬레이션 및 자가 치유 자동화를 지원합니다.

공유

Nightingale

기존 스택을 위한 오픈소스 알림

Latest release Apache-2.0 license GitHub stars Docker pulls Join the Nightingale Slack community

빠른 시작 · 문서 · 다운로드 · 릴리스 · 커뮤니티

English | 中文

Nightingale은 알림 규칙, 이벤트 처리, 알림 라우팅을 한곳에 모아 줍니다. 이미 운영 중인 Prometheus, VictoriaMetrics, Elasticsearch, Loki, ClickHouse 및 기타 데이터 소스를 연결한 다음, 알림을 Slack, PagerDuty 및 팀의 기존 도구로 전달하세요.

셀프 호스팅 · Apache-2.0 · 내장 AI 에이전트 · MCP 서버

Nightingale은 Prometheus, VictoriaMetrics, Elasticsearch, Loki, ClickHouse, PostgreSQL을 쿼리하고, 알림 규칙을 평가하고, 이벤트를 처리하고, 알림을 Slack, PagerDuty, Discord, Email, Telegram, Jira로 라우팅합니다. 이 엔진에는 AI 에이전트와 MCP 서버가 포함되어 있습니다.

Nightingale을 선택하는 이유

  • 팀이 자신의 알림을 직접 관리하도록 하세요. 규칙을 비즈니스 그룹으로 구성하고, 팀 권한을 할당하며, UI와 API를 통해 규칙과 알림 설정을 관리하세요.
  • 흩어진 알림을 한곳으로 모으세요. 기존 수집기, 스토리지, Grafana 대시보드를 그대로 유지하면서 메트릭, 로그, SQL 데이터 소스에 대해 규칙을 평가하세요.
  • 알림에 무슨 일이 있었는지 파악하세요. 규칙 평가 기록, 과거 이벤트, 알림 결과를 검사하여 쿼리부터 전달까지 추적하세요.

빠른 시작

Git과 Docker Compose가 설치되어 있다면, 포함된 평가 스택을 시작하세요:

git clone https://github.com/ccfos/nightingale.git
cd nightingale/docker/compose-bridge
docker compose up -d

이것은 Nightingale, MySQL, Redis, VictoriaMetrics, Categraf를 시작합니다. http://localhost:17000을 열고 **root / root.2020**으로 로그인하세요.

첫 번째 알림을 받으려면:

  1. 데이터 소스를 연결하세요. 기존 Prometheus 호환 엔드포인트를 추가하거나, 이 Compose 스택의 VictoriaMetrics 인스턴스에 대해 http://victoriametrics:8428을 사용하세요.
  2. 알림 규칙을 생성하세요. 비즈니스 그룹과 데이터 소스를 선택한 다음 PromQL 표현식을 입력하세요. 항상 발생하는 테스트의 경우 vector(1) > 0을 사용하고 기간을 0으로 설정하세요.
  3. 전달을 구성하세요. 알림 채널을 설정하고, 알림 규칙을 생성한 다음, 알림 규칙에 연결하세요. 테스트 알림이 도착하는지 확인한 다음 테스트 알림을 비활성화하세요.

Compose 스택은 예제 자격 증명을 사용하며 로컬 평가를 위해 서비스 포트를 노출합니다. 공유 또는 공용 호스트에 배포하기 전에 자격 증명을 변경하고 네트워크 액세스를 검토하세요. Nightingale을 실행하는 다른 방법은 배포 옵션을 참조하세요.

스택에 통합되는 방식

Nightingale은 데이터 소스를 쿼리하고, 알림 조건을 평가하고, 이벤트를 처리하고, 알림을 라우팅합니다. 기존 데이터는 현재 저장소에 그대로 유지됩니다.

시각화에는 Grafana를, 스케줄링, 에스컬레이션, 인시던트 대응에는 온콜 플랫폼을 유지하세요. Nightingale은 알림과 함께 데이터를 탐색하려는 팀을 위한 대시보드도 포함합니다.

모니터링 스택 없이 시작하시나요? 독립 실행형 구성에는 소규모 단일 인스턴스 배포를 위한 선택적 내장 TSDB가 포함되어 있습니다. Categraf는 호스트, 미들웨어, 데이터베이스, 네트워크 장치를 위한 선택적 수집기입니다.

주요 기능

기능수행할 수 있는 작업
데이터 소스 전반의 알림PromQL, 로그 쿼리 또는 SQL을 사용하여 조건을 정의합니다. 동일한 데이터 소스 유형의 여러 인스턴스에 규칙을 적용합니다.
팀 소유권비즈니스 그룹별로 규칙과 대시보드를 그룹화하고, 팀 권한을 할당하고, 로그인을 위해 OIDC, OAuth2, LDAP 또는 CAS를 연결합니다.
이벤트 처리 및 라우팅알림을 음소거하고, 알림을 구독하고, 레이블을 보강하거나 재작성하고, 조건부 파이프라인을 통해 이벤트를 라우팅합니다.
알림 실행 기록평가 쿼리와 결과, 활성 및 과거 이벤트, 알림 전달 기록을 검토합니다.
재사용 가능한 통합번들로 제공되는 수집기 구성, 알림 규칙, 대시보드로 시작합니다. 활성화하기 전에 환경에 맞게 쿼리와 임계값을 검토하세요.
분산 평가알림 엔진 전반에 규칙을 분산하고 n9e-edge를 사용하여 원격 데이터 소스 가까이에서 알림을 평가합니다.

알림 통합에는 Slack, PagerDuty, Discord, Email, Telegram, Mattermost, Jira, Jira Service Management가 포함되며, 사용자 지정 대상에 대한 HTTP 웹훅과 스크립트도 지원합니다. 구성 세부 정보는 네이티브 알림 채널 참조를 참조하세요.

자동화된 대응을 위해 ibex를 연결하여 알림이 발생할 때 미리 정의된 교정 스크립트를 실행하세요.

내장 AI 에이전트

Nightingale에는 웹 UI에서 직접 사용할 수 있는 AI 에이전트가 포함되어 있습니다. 이 에이전트는 Nightingale 내부에서 실행되며, 도구를 호출하여 모니터링 데이터와 구성을 검사하고, 여러 단계에 걸쳐 작업을 수행합니다.

  • 알림을 조사합니다. 관련 메트릭과 로그를 쿼리하고, 영향을 받은 호스트를 검사하며, 검색한 데이터를 사용해 결과를 설명합니다.
  • 알림 프로세스를 트러블슈팅합니다. 규칙, 평가 로그, 음소거 설정, 이벤트 처리, 알림 결과를 검사하여 알림이 발생하지 않았거나 목적지에 도달하지 못한 이유를 찾습니다.
  • 구성을 생성하고 업데이트합니다. 대화를 통해 알림 규칙과 대시보드를 구축하고, PromQL과 SQL을 생성하며, 알림 규칙, 음소거, 구독을 구성합니다. 기존 알림 규칙과 대시보드를 업데이트하기 위한 내장 도구는 확인을 위해 제안된 변경 사항을 제시합니다.
  • Skills로 확장합니다. 번들로 제공되는 Skills는 일반적인 모니터링 워크플로를 다룹니다. 팀의 절차, 참고 자료, 스크립트를 사용자 정의 Skills로 추가할 수 있으며, Git에서 가져온 Skills도 포함됩니다.

예를 들어:

이 알림은 왜 발생했나요? 트리거 시점 전후의 영향을 받은 호스트의 메트릭과 로그를 확인해 주세요.

프로덕션 호스트에 대한 메모리 사용량 알림을 생성하고 Slack으로 우리 팀에 알려 주세요.

시작하려면 모델 엔드포인트를 구성하세요. 에이전트는 OpenAI 호환 API, Claude, Gemini, 그리고 호환되는 자체 호스팅 모델을 지원합니다. 모델 서비스와 자격 증명은 사용자가 선택하며, 핵심 알림 기능은 에이전트와 독립적으로 작동합니다.

모델 제공자 구성 · Skill 관리 · 번들 Skills

외부 에이전트 연결

  • MCP를 사용하면 외부 어시스턴트가 Nightingale의 도구를 호출할 수 있습니다. 서버는 Nightingale 내부의 /mcp에서 실행되며, 기본적으로 읽기 도구를 노출하고 호출자의 기존 API 권한을 적용합니다. 쓰기 도구는 명시적인 구성이 필요합니다. MCP 설정을 참조하세요.
  • A2A를 사용하면 다른 에이전트가 Nightingale의 내장 에이전트에 작업을 위임할 수 있습니다. A2A 통합을 참조하세요.

제품 스크린샷

데이터 소스 및 비즈니스 그룹별로 알림 규칙을 관리합니다:

Nightingale에서 데이터 소스 및 비즈니스 그룹별로 알림 규칙 관리

배포

옵션시작하기
Docker Compose를 사용한 로컬 평가포함된 Compose 스택
amd64 및 arm64용 Linux 바이너리릴리스 다운로드 및 구성 참조
KubernetesHelm 차트 및 설치 지침

프로덕션 환경에서는 릴리스를 고정하고, 자격 증명과 TLS를 구성하고, 메타데이터 데이터베이스를 백업하고, 규칙 평가 및 알림 실패를 모니터링하세요. 여러 Nightingale 인스턴스는 메타데이터 데이터베이스와 Redis를 공유하며, 다중 인스턴스 배포에는 외부 시계열 스토리지를 사용하세요. 내장 TSDB는 한 인스턴스의 로컬 디스크에 데이터를 저장합니다.

추가 지침과 지원되는 버전은 문서, 설치 가이드, 릴리스 노트, 보안 정책을 참조하세요.

FAQ

수집기를 교체하거나 모니터링 데이터를 이전해야 하나요?

아니요. Nightingale은 기존 데이터 소스를 직접 쿼리할 수 있습니다. exporter와 수집기를 그대로 유지하세요. 수집이나 로컬 스토리지가 필요할 때 Categraf와 내장 TSDB를 사용할 수 있습니다.

기존 Prometheus 알림 규칙을 가져올 수 있나요?

예. 규칙 가져오기는 표현식, 기간, 레이블, 주석을 포함한 Prometheus YAML을 지원합니다. 변환된 규칙을 검토하고 Nightingale에서 알림 라우팅을 다시 구축하세요. 가져오기는 alertmanager.yml의 완전한 변환이 아니므로, 알림을 전환하기 전에 평가 기간 동안 두 시스템을 모두 실행하세요.

Git과 CI를 통해 규칙을 관리할 수 있나요?

규칙은 JSON으로 내보낼 수 있고 HTTP API를 통해 생성하거나 업데이트할 수 있으므로, 버전 관리되는 구성을 중심으로 워크플로를 구축할 수 있습니다. Nightingale은 현재 내장된 규칙 개정 이력이나 이전 개정으로의 롤백을 제공하지 않습니다.

AI가 필수인가요? 모델 요청은 어디로 전송되나요?

카테고리