监控工具夜莺V6部署纯净版

监控工具夜莺V6部署纯净版

摘要

本文实践采用的是夜莺V6 + VictoriaMetrics + Categraf的纯正标准组合,且采用最推荐的二进制部署方式,在CentOS 8环境从零搭建而成。夜莺的官方文档已经非常详实友好了,鉴于其各部有些分散,一些重要配置与最新版本有所差异,撰此文以飨同仁。

物料准备

这套环境一共需要Nightingale V6(运维监控带页面的夜莺本尊)+VictoriaMetrics(存数据的)+Categraf(采数据的苦工)+ Mysql (存放配置类信息)+ Redis (令牌、心跳等)。

版本信息

核心三件均为撰文时的最新发布版。

组件名 版本
Nightingale 6.3.1
VictoriaMetrics 1.93.6
Categraf 0.3.36
MySQL 8.x
Redis 5.x
CentOS 8.x

物理环境为x86_64架构,也即amd64.

下载直通车

开始安装

1.MySQL

我的环境里已经安装过了。没安装的小伙伴:

ini 复制代码
# install mysql
yum -y install mariadb*
systemctl enable mariadb
systemctl restart mariadb
mysql -e "SET PASSWORD FOR 'root'@'localhost' = PASSWORD('1234');"
  • 这里的1234是可修改的密码,信息安全形势日渐严峻,请不要在内网或者生产环境使用这种弱密码,养成好习惯,从我做起。
  • 在论坛看到说改了这个密码导致无法打开页面,或者说改了这里要修改很多配置的,这都是谬论。首先,我使用的是已经存在的mysql,密码是改过的也能用;其次,改了这个密码,在配置文件里也只需要修改一行,并不麻烦!

2. Redis

如果你有现成的redis也可以拿来用,否则的话:

bash 复制代码
# install redis
yum install -y redis
systemctl enable redis
systemctl restart redis
  • Redis 的默认端口号是6379
  • 我这个环境也修改了这个端口号

3. Nightingale + VictoriaMetrics + Categraf 三联

如果前面都整好了,以下安装启动过程3分钟搞定。

bash 复制代码
# 创建个 n9e 的目录,后面把 n9e 相关的文件解压到这里
mkdir -p /opt/n9e && cd /opt/n9e
tar zxvf n9e-v6.3.1-linux-amd64.tar.gz
# 如果你的mysql在其他主机上,就把n9e.sql复制到mysql安装节点,执行
mysql -uroot -p密码 < n9e.sql
# 修改n9e配置文件里的mysql地址和密码,redis地址和端口号,分别第89行和第107行!
vim etc/config.toml
​
# 启动 n9e,先使用 nohup 简单测试,如果需要 systemd 托管,请自行准备 service 文件
nohup ./n9e &> n9e.log &
# 检查 n9e.log 是否有异常日志,检查端口是否在监听,正常应该监听在 17000
ss -tlnp|grep 17000
​
# 安装启动victoria-metrics
tar zxvf victoria-metrics-linux-amd64-v1.93.6.tar.gz
nohup ./victoria-metrics-prod &> stdout.log &
# 确认端口监听
ss -tlnp|grep 8428
​
# 安装/配置启动categraf,先解压
tar zxvf categraf-v0.3.36-linux-amd64.tar.gz
# cd到解压的目录修改配置,一个是heartbeat、一个是writers主要修改那个17000端口也就是夜莺的安装地址!
# 高版本的categraf可以直接这样启动和停止,很方便
sudo ./categraf  --install
sudo ./categraf  --start
sudo ./categraf  --status

踩坑总结

  1. 打不开夜莺页面,但是17000端口监听正常,一度去注册论坛搜索无果,最后发现是浏览器版本过低导致的,升级浏览器解决了;

  2. 日志有个访问github version失败的报错?一开始访问不了页面有个这样的ERROR,但这个其实无所谓,内网本来就访问不了;

  3. VM安装后确认那里,官网把查询端口命令写错写成了12632;

  4. categraf默认配置的地址都是本地的,建议直接写成夜莺所在机器的实际IP ,这样把categraf拷贝到其他机器就能直接启动了,比如我的夜莺所在节点IP为192.168.1.123

    ini 复制代码
    [heartbeat]
    enable = true
    url = "http://192.168.1.123:17000/v1/n9e/heartbeat"
    ......
    [[writers]]
    url = "http://192.168.1.123:17000/prometheus/v1/write"

    官网有说,夜莺的地址都是:127.0.0.1:17000,因为我的 Categraf 和 夜莺 在一台机器上,如果你的 Categraf 和夜莺在不同的机器,注意改成合适的 IP。

配置使用

  1. 浏览器访问:http://夜莺IP:17000,如我的是"http://192.168.1.123:17000"。

  2. 登录页面输入默认的用户名root 密码root.2020

  3. 【系统配置】-->【数据源】-->【Prometheus Like】--> 【添加】。

  4. 名称填写"VM001",自定义任何有意义的名称即可。

  5. URL填写"http://VM-IP:8428",例如我写的是"http://192.168.1.123:8428"。

  6. 相比原文档UI已经改变,与文档有差异的是以下两项:

    Remote Write URL: http://192.168.1.123:8428/api/v1/write

    Remote Read URL: http://192.168.1.123:8428/api/v1/read

  7. 上面就完成了所有配置,【时序指标】-【即时查询】->【关联数据源】 --> VM001,然后随便查点东西。

  8. 还可以点【基础设施】--> 【机器列表】--> 【全部对象】,可以看到已经有了机器的心跳信息,只要把categraf复制到其他机器启动,其他机器的信息就会被收集到啦。

  9. Good Bye!

相关推荐
某某4 小时前
DashBoard安装使用
大数据·开发语言·kubernetes
丸卜7 小时前
Hadoop复习(九)
大数据·hadoop·分布式
IT成长日记8 小时前
Elasticsearch集群最大分片数设置详解:从问题到解决方案
大数据·elasticsearch·最大分片数·shards
HUTAC8 小时前
MapReduce(期末速成版)
大数据·mapreduce
Elastic 中国社区官方博客9 小时前
连接关键点:使用 ES|QL 联接实现更丰富的可观测性洞察
大数据·数据库·sql·elasticsearch·搜索引擎·全文检索
蚂蚁数据AntData10 小时前
⼤模型驱动的DeepInsight Copilot在蚂蚁的技术实践
大数据·人工智能·数据分析·copilot·数据库架构
TDengine (老段)11 小时前
TDengine 的 AI 应用实战——运维异常检测
大数据·数据库·人工智能·物联网·时序数据库·tdengine·涛思数据
MyikJ12 小时前
Java面试实战:从Spring Boot到微服务与AI的全栈挑战
java·大数据·spring boot·微服务·ai·面试·架构设计
AI设计小站13 小时前
AI 赋能名片设计:告别模板化,创造独特视觉风格
大数据·人工智能·设计规范
fanTuanye13 小时前
JavaWeb是什么?总结一下JavaWeb的体系
java·大数据·javaweb·基础·体系