Sensu是一个免费且开源的工具,用于构建您所需的监控系统。它是用Ruby编写的,使用RabbitMQ处理消息,使用Redis存储数据。Sensu提供了一个用于监控基础设施和应用程序健康状况的框架。Sensu支持多种平台,如IBM AIX、Ubuntu、Debian、RedHat、CentOS、FreeBSD、Mac OS、Solaris、Windows等等。Sensu使组织能够构建满足其独特业务需求的全面监控解决方案。Sensu附带了数百个插件,为您的业务所依赖的工具和服务提供原生工具,包括Web服务器和代理、数据库、消息队列、日志聚合、索引、搜索、缓存、网络和系统资源、配置管理和发现、通用、Chef、Clack等等。
在本教程中,我们将逐步在Ubuntu 16.04上安装Redis、RabbitMQ和Sensu。
必要条件
您的系统上安装了Ubuntu 16.04服务器。
在您的系统上设置了sudo权限的非root用户。
在系统上配置静态IP地址192.168.0.227。
更新系统
在开始之前,建议将您的系统更新到最新的稳定版本。您可以通过运行以下命令来更新系统:
sudo apt-get update -y
sudo apt-get upgrade -y
更新系统后,使用以下命令重新启动系统以应用所有更新:
sudo reboot
重新启动后,使用sudo用户登录系统并继续下一步。
安装和配置RabbitMQ
在开始之前,RabbitMQ在Erlang上运行,因此您需要将Erlang安装到您的系统中。
首先,使用以下命令将Erlang存储库和Erlang公钥添加到您的可信密钥列表中:
wget https://packages.erlang-solutions.com/erlang-solutions_1.0_all.deb
sudo dpkg -i erlang-solutions_1.0_all.deb
wget -O- https://packages.erlang-solutions.com/ubuntu/erlang_solutions.asc | sudo apt-key add -
接下来,使用以下命令更新存储库:
sudo apt-get update -y
更新存储库后,通过运行以下命令安装Erlang:
sudo apt-get install socat erlang-nox -y
接下来,您需要下载最新版本的RabbitMQ存储库并将其安装到您的系统中。您可以通过运行以下命令来完成此操作:
wget http://www.rabbitmq.com/releases/rabbitmq-server/v3.6.10/rabbitmq-server_3.6.10-1_all.deb
sudo dpkg -i rabbitmq-server_3.6.10-1_all.deb
安装存储库后,使用以下命令更新存储库:
sudo apt-get update -y
最后,通过运行以下命令安装RabbitMQ服务器:
sudo apt-get install rabbitmq-server -y
安装完成后,启动RabbitMQ服务,并使用以下命令使其在引导时启动:
sudo systemctl start rabbitmq-server
sudo systemctl enable rabbitmq-server
接下来,您需要为Sensu创建一个RabbitMQ vhost和用户。您可以通过运行以下命令来完成此操作:
sudo rabbitmqctl add_vhost /sensu
sudo rabbitmqctl add_user sensu your-password
sudo rabbitmqctl set_permissions -p /sensu sensu ".*" ".*" ".*"
完成后,您可以继续安装Redis服务器。
安装Redis服务器
Sensu使用Redis服务器来存储他们的数据。默认情况下,Sensu在Ubuntu存储库中可用。您可以通过运行以下命令安装Redis服务器:
sudo apt-get install redis-server apt-transport-https -y
安装完成后,启动Redis服务器,并通过运行以下命令使其在启动时启动:
sudo systemctl start Redis-server
sudo systemctl enable Redis-server
完成后,您可以继续下一步。
安装和配置Sensu
默认情况下,Sensu在Ubuntu存储库中不可用。因此,您需要将公钥和存储库添加到您的系统中。
首先,使用以下命令添加GPG密钥:
wget -O- https://sensu.global.ssl.fastly.net/apt/pubkey.gpg | sudo apt-key add -
接下来,使用以下命令在/etc/apt/sources.list.d目录中创建Sensu.list文件,添加Sensu存储库:
sudo nano /etc/apt/sources.list.d/sensu.list
添加以下行:
deb https://sensu.global.ssl.fastly.net/apt sensu main
使用以下命令保存文件并更新存储库:
sudo apt-get update -y
更新存储库后,使用以下命令安装Sensu:
sudo apt-get install sensu -y
安装Sensu后,您需要为RabbitMQ和Redis配置Sensu。默认情况下,Sensu将从/etc/Sensu/conf.d/目录加载配置。因此,您需要为RabbitMQ、Redi和Api创建配置文件。
首先,通过运行以下命令在/etc/sensu/conf.d目录中创建一个rabbitmq.json文件,如下所示:
sudo nano /etc/sensu/conf.d/rabbitmq.json
添加以下行以连接RabbitMQ实例:
{
"rabbitmq": {
"host": "127.0.0.1",
"port": 5672,
"vhost": "/sensu",
"user": "sensu",
"password": "your-password"
}
}
完成后保存并关闭文件。
接下来,使用以下命令创建redis.json文件:
sudo nano /etc/sensu/conf.d/redis.json
添加以下行,以包含Sensu访问Redis的连接信息:
{
"redis": {
"host": "127.0.0.1",
"port": 6379
}
}
完成后保存并关闭文件。
接下来,通过运行以下命令,创建一个api.json文件,其中包含Sensu访问api服务的连接信息。
sudo nano /etc/sensu/conf.d/api.json
添加以下行:
{
"api": {
"host": "localhost",
"bind": "0.0.0.0",
"port": 4567
}
}
完成后保存并关闭文件,然后可以继续下一步。
安装和配置Sensu仪表板
默认情况下,Sensu不附带通过web界面监控Sensu的仪表板。
因此,您需要在系统中安装一个开源Dashboard Uchiwa。默认情况下,Uchiwa在Ubuntu存储库中不可用。因此,您需要将Uchiwa存储库添加到您的系统中。
首先,使用以下命令为Uchiwa添加公钥:
wget -O- https://sensu.global.ssl.fastly.net/apt/pubkey.gpg | sudo apt-key add -
接下来,通过creainguchiwa添加Uchiwa存储库。。使用以下命令在/etc/apt/sources.list.d目录中创建列表文件:
sudo nano /etc/apt/sources.list.d/uchiwa.list
添加以下行:
deb https://sensu.global.ssl.fastly.net/apt sensu main
保存文件,然后使用以下命令更新存储库:
sudo apt-get update -y
更新存储库后,使用以下命令安装Uchiwa:
sudo apt-get install uchiwa -y
安装Uchiwa后,使用以下命令为Uchiwa创建配置文件:
sudo nano /etc/sensu/conf.d/uchiwa.json
添加以下行:
{
"sensu": [
{
"name": "Sensu",
"host": "localhost",
"port": 4567,
"timeout": 10
}
],
"uchiwa": {
"host": "0.0.0.0",
"port": 3000,
"refresh": 10
}
}
完成后保存并关闭文件。
最后,重新启动Sensu和Uchiwa服务,并使用以下命令使其在启动时启动:
sudo systemctl start sensu-server
sudo systemctl enable sensu-server
sudo systemctl start sensu-api
sudo systemctl enable sensu-api
sudo systemctl start sensu-client
sudo systemctl enable sensu-client
sudo systemctl start uchiwa
sudo systemctl enable uchiwa
完成后,您可以继续下一步。
访问Sensu仪表板
在访问Sensu仪表板之前,您需要通过UFW防火墙允许端口3000。
首先,通过运行以下命令安装UFW防火墙:
sudo apt-get install ufw -y
安装UFW后,使用以下命令启用UFW服务:
sudo ufw enable
接下来,使用以下命令允许端口3000通过UFW防火墙:
sudo ufw allow 3000
配置防火墙后,打开web浏览器并键入URLhttp://192.168.0.227:3000,您应该看到以下页面:
![图片[1]_如何在Ubuntu 16.04上安装Sensu监控_马特资源网](http://www.iamlz.com/wp-content/uploads/2025/03/1742003191612.png)
接下来,单击数据中心图标,您应该看到Sensu服务器实例如下:
![图片[2]_如何在Ubuntu 16.04上安装Sensu监控_马特资源网](http://www.iamlz.com/wp-content/uploads/2025/03/1742003206308.png)
接下来,您需要添加客户端来监视Sensu服务器本身。你可以通过创建一个client.json文件来做到这一点:
sudo nano /etc/sensu/conf.d/client.json
添加以下行:
{
"client": {
"name": "sensu-server",
"address": "127.0.0.1",
"environment": "management",
"subscriptions": [
"dev",
"ubuntu"
],
"socket": {
"bind": "127.0.0.1",
"port": 3030
}
}
}
完成后保存并关闭文件,然后重新启动sensu客户端服务以应用这些更改:
sudo systemctl restart sensu-client
最后,通过单击客户端图标检查客户端的状态,如下所示:
![图片[3]_如何在Ubuntu 16.04上安装Sensu监控_马特资源网](http://www.iamlz.com/wp-content/uploads/2025/03/1742003284960.png)
结论
祝贺您已在Ubuntu 16.04服务器上成功安装并配置了Sensu服务器。现在,您可以根据需要轻松添加更多客户端。如果你有任何问题,请随时对我发表评论。
暂无评论内容