Linux下Sensu如何安装使用
发表于:2025-11-14 作者:千家信息网编辑
千家信息网最后更新 2025年11月14日,这篇文章主要介绍Linux下Sensu如何安装使用,文中介绍的非常详细,具有一定的参考价值,感兴趣的小伙伴们一定要看完!Sensu 是一款开源的监控框架。 Sensu 采用 C/S 结构,有用来发送指
千家信息网最后更新 2025年11月14日Linux下Sensu如何安装使用
这篇文章主要介绍Linux下Sensu如何安装使用,文中介绍的非常详细,具有一定的参考价值,感兴趣的小伙伴们一定要看完!
Sensu 是一款开源的监控框架。 Sensu 采用 C/S 结构,有用来发送指令、存储数据的 Sensu Server 和被监控的对象 Sensu Client。
安装 Sensu
条件
一个 Linux 系统作为服务器节点(本文使用了 CentOS 7)
要监控的一台或多台 Linux 机器(客户机)
服务器侧
Sensu 需要安装 Redis。要安装 Redis,启用 EPEL 仓库:
$ sudo yum install epel-release -y
然后安装 Redis:
$ sudo yum install redis -y
修改 /etc/redis.conf 来禁用保护模式,监听每个地址并设置密码:
$ sudo sed -i 's/^protected-mode yes/protected-mode no/g' /etc/redis.conf$ sudo sed -i 's/^bind 127.0.0.1/bind 0.0.0.0/g' /etc/redis.conf$ sudo sed -i 's/^# requirepass foobared/requirepass password123/g' /etc/redis.conf
启用并启动 Redis 服务:
$ sudo systemctl enable redis$ sudo systemctl start redis
Redis 现在已经安装并准备好被 Sensu 使用。
现在让我们来安装 Sensu。
首先,配置 Sensu 仓库并安装软件包:
$ sudo tee /etc/yum.repos.d/sensu.repo让我们为 Sensu 创建最简单的配置文件:$ sudo tee /etc/sensu/conf.d/api.json然后,配置 sensu-api 在本地主机上使用端口 4567 监听:$ sudo tee /etc/sensu/conf.d/redis.json ", "port": 6379, "password": "password123" }}EOF$ sudo tee /etc/sensu/conf.d/transport.json在这两个文件中,我们将 Sensu 配置为使用 Redis 作为传输机制,还有 Reids 监听的地址。客户端需要直接连接到传输机制。每台客户机都需要这两个文件。$ sudo tee /etc/sensu/uchiwa.json在这个文件中,我们配置 Uchiwa 监听每个地址(0.0.0.0)的端口 3000。我们还配置 Uchiwa 使用 sensu-api(已配置好)。出于安全原因,更改刚刚创建的配置文件的所有者:$ sudo chown -R sensu:sensu /etc/sensu启用并启动 Sensu 服务:$ sudo systemctl enable sensu-server sensu-api sensu-client$ sudo systemctl start sensu-server sensu-api sensu-client$ sudo systemctl enable uchiwa$ sudo systemctl start uchiwa尝试访问 Uchiwa 网站:http://:3000对于生产环境,建议运行 RabbitMQ 集群作为 Transport 而不是 Redis(虽然 Redis 集群也可以用于生产环境),运行多个 Sensu 服务器实例和 API 实例,以实现负载均衡和高可用性。Sensu 现在安装完成,让我们来配置客户端。客户端侧要添加一个新客户端,你需要通过创建 /etc/yum.repos.d/sensu.repo 文件在客户机上启用 Sensu 仓库。$ sudo tee /etc/yum.repos.d/sensu.repo启用仓库后,安装 Sensu:$ sudo yum install sensu -y要配置 sensu-client,创建在服务器中相同的 redis.json 和 transport.json,还有 client.json 配置文件:$ sudo tee /etc/sensu/conf.d/client.json在 name 字段中,指定一个名称来标识此客户机(通常是主机名)。environment 字段可以帮助你过滤,而 subscriptions 定义了客户机将执行哪些监视检查。最后,启用并启动服务并签入 Uchiwa,因为客户机会自动注册:$ sudo systemctl enable sensu-client$ sudo systemctl start sensu-clientSensu 检查Sensu 检查有两个组件:一个插件和一个定义。Sensu 与 Nagios 检查插件规范兼容,因此无需修改即可使用用于 Nagios 的任何检查。检查是可执行文件,由 Sensu 客户机运行。检查定义可以让 Sensu 知道如何、在哪以及何时运行插件。客户端侧让我们在客户机上安装一个检查插件。请记住,此插件将在客户机上执行。启用 EPEL 并安装 nagios-plugins-http:$ sudo yum install -y epel-release$ sudo yum install -y nagios-plugins-http现在让我们通过手动执行它来了解这个插件。尝试检查客户机上运行的 Web 服务器的状态。它应该会失败,因为我们并没有运行 Web 服务器:$ /usr/lib64/nagios/plugins/check_http -I 127.0.0.1connect to address 127.0.0.1 and port 80: Connection refusedHTTP CRITICAL - Unable to open TCP socket不出所料,它失败了。检查执行的返回值:$ echo $?2Nagios 检查插件规范定义了插件执行的四个返回值:
| 插件返回码 | 状态 |
|---|---|
| 0 | OK |
| 1 | WARNING |
| 2 | CRITICAL |
| 3 | UNKNOWN |
有了这些信息,我们现在可以在服务器上创建检查定义。
服务器侧
在服务器机器上,创建 /etc/sensu/conf.d/check_http.json 文件:
{ "checks": { "check_http": { "command": "/usr/lib64/nagios/plugins/check_http -I 127.0.0.1", "interval": 10, "subscribers": [ "frontend" ] } }}在 command 字段中,使用我们之前测试过的命令。interval 会告诉 Sensu 这个检查的频率,以秒为单位。最后,subscribers 将定义执行检查的客户机。
重新启动 sensu-api 和 sensu-server 并确认新检查在 Uchiwa 中可用。
$ sudo systemctl restart sensu-api sensu-server
以上是"Linux下Sensu如何安装使用"这篇文章的所有内容,感谢各位的阅读!希望分享的内容对大家有帮助,更多相关知识,欢迎关注行业资讯频道!
客户
检查
服务
配置
插件
文件
服务器
客户机
运行
客户端
仓库
监听
两个
地址
字段
监控
内容
实例
机制
机器
数据库的安全要保护哪些东西
数据库安全各自的含义是什么
生产安全数据库录入
数据库的安全性及管理
数据库安全策略包含哪些
海淀数据库安全审计系统
建立农村房屋安全信息数据库
易用的数据库客户端支持安全管理
连接数据库失败ssl安全错误
数据库的锁怎样保障安全
易方达软件开发
银行业网络安全的例子
创景网络技术有限公司
山西省中职网络安全技能大赛
数据库设置标题
表导入数据库失败
北京r630服务器报价
焦作会计金蝶软件开发
新型网络技术影响研究
0元云服务器购买
联想高密度服务器
外包软件开发会计凭证
连接mysql数据库很慢
长沙dsp软件开发
长沙采购管理软件开发
宝山区数据网络技术服务报价
txt小说 源码带数据库
腾讯服务器配置技巧
手机搭建云免流服务器
管理数据库实例
软件开发的前期准备工作
开设网络安全的大学
网络安全事故应急处置机制
飞机加速器手动添加服务器教程
广安软件开发报价
洲明科技互联网
软件开发甄选瀚诺科技好
网络安全管理难不难
win7 ftp服务器开启
网络安全周宣传2021年