夜莺-Nightingale
夜莺V6
项目介绍 架构介绍
快速开始
黄埔营
安装部署
升级
采集器
使用手册
API
数据库表结构
FAQ
夜莺专业版
开源生态
Prometheus
版权声明
第1章:天降奇兵
第2章:探索PromQL
第3章:Prometheus告警处理
第4章:Exporter详解
第5章:数据与可视化
第6章:集群与高可用
第7章:Prometheus服务发现
第8章:监控Kubernetes
第9章:Prometheus Operator
参考资料

使用 Docker compose 的方式一键部署夜莺

使用Docker Compose一键启动夜莺,快速尝试。更多Docker Compose相关知识请参考Docker官网 操作演示

先去 github releases 页面下载最新的 release 包,或者从 flashcat 下载中心 下载最新的发布包。解压缩,可以看到三个目录:

  • compose-bridge:bridge 网络模式的 docker compose 部署方式,数据库使用 MySQL
  • compose-host-network:host 网络模式的 docker compose 部署方式,数据库使用 MySQL
  • compose-postgres: bridge 网络模式的 docker compose 部署方式,数据库使用 PostgreSQL

通常使用 bridge 模块做测试即可。因为 MacOS 不支持 host network,所以,MacOS 用户只能使用 bridge 模式。如果你还不知道 bridge 模式和 host network 的区别,就直接用 bridge 模式即可,或者用二进制部署,不要使用 docker compose 了。进入 compose-bridge 目录,执行 docker-compose up -d 即可启动。

# docker compose V2版本执行 docker compose up -d (https://docs.docker.com/compose/#compose-v2-and-the-new-docker-compose-command)
docker-compose up -d
# 正常会有以下输出
# Creating mysql      ... done
# Creating redis      ... done
# Creating prometheus ... done
# Creating ibex       ... done
# Creating agentd     ... done
# Creating n9e        ... done
# Creating telegraf   ... done
# docker compose V2版本执行 docker compose ps (https://docs.docker.com/compose/#compose-v2-and-the-new-docker-compose-command)
docker-compose ps
# 正常情况会有以下输出
# NAME                IMAGE                              COMMAND                  SERVICE             CREATED             STATUS              PORTS
# categraf            flashcatcloud/categraf:latest      "/entrypoint.sh"         categraf            2 days ago          Up 2 days
# ibex                ulric2019/ibex:0.3                 "sh -c '/wait && /ap…"   ibex                2 days ago          Up 2 days
# mysql               mysql:5.7                          "docker-entrypoint.s…"   mysql               2 days ago          Up 2 days
# n9e                 flashcatcloud/nightingale:latest   "sh -c '/wait && /ap…"   n9e                 2 days ago          Up 2 days
# prometheus          prom/prometheus                    "/bin/prometheus --c…"   prometheus          2 days ago          Up 2 days
# redis               redis:6.2                          "docker-entrypoint.s…"   redis               2 days ago          Up 2 days

💡启动成功之后,建议把 initsql 目录下的内容挪走,这样下次重启的时候,DB 就不会重新初始化了。否则下次启动 mysql 还是会自动执行 initsql 下面的 sql 文件导致 DB 重新初始化,页面上创建的规则、大盘等都会丢失。Docker Compose 这种部署方式,只是用于简单测试,不推荐在生产环境使用,当然了,如果您是 Docker Compose 专家,另当别论。

服务启动之后,浏览器访问 n9e 的端口,即17000,默认用户是root,密码是root.2020

开源版
Flashcat
Flashduty