如何在 Ubuntu 16.04 LTS 上安装 Sensu

在本教程中,我们将向您展示如何在 Ubuntu 16.04 LTS 上安装 Sensu。 对于那些不知道的人,Sensu 是一个免费的开源工具,用于编写您需要的监控系统。 它是用 Ruby 编写的,使用 RabbitMQ 处理消息并使用 Redis 存储数据。 Sensu 提供了一个用于监控基础架构和应用程序运行状况的框架。 Sensu 支持许多平台,例如 IBM AIX、Ubuntu、Debian、RedHat、CentOS、FreeBSD、Mac OS、Solaris、Windows 等等。

本文假设您至少具备 Linux 的基本知识,知道如何使用 shell,最重要的是,您将网站托管在自己的 VPS 上。 安装非常简单,假设您在 root 帐户下运行,如果不是,您可能需要添加 ‘sudo‘ 到命令以获取 root 权限。 我将向您展示在 Ubuntu 16.04 (Xenial Xerus) 上逐步安装 Sensu 监控。

在 Ubuntu 16.04 LTS 上安装 Sensu

步骤 1. 首先,通过运行以下命令确保所有系统包都是最新的 apt-get 终端中的命令。

sudo apt-get update sudo apt-get upgrade

步骤 2. 安装 RabbitMQ。

添加 Erlang 存储库,因为 RabbitMQ 在 Erlang 运行时上运行:

wget https://packages.erlang-solutions.com/erlang-solutions_1.0_all.deb sudo dpkg -i erlang-solutions_1.0_all.deb

将 Erlang 公钥添加到您的可信密钥列表中:

wget -O- https://packages.erlang-solutions.com/ubuntu/erlang_solutions.asc |  sudo apt-key add -

使用以下命令安装 RabbitMQ 和 Erlang:

apt-get update apt-get install -y socat erlang-nox=1:19.3-1

至此,我们就可以下载安装RabbitMQ了。 正如我们对 Erlang 所做的那样,首先需要添加 RabbitMQ 存储库:

wget https://www.rabbitmq.com/releases/rabbitmq-server/v3.6.10/rabbitmq-server_3.6.10-1_all.deb dpkg -i rabbitmq-server_3.6.10-1_all.deb

使用以下 apt 命令更新存储库并安装 RabbitMQ 服务器:

apt-get update apt-get install rabbitmq-server

安装完成后,启动 RabbitMQ 并使其在启动时启动。 执行命令:

systemctl start rabbitmq-server systemctl enable rabbitmq-server

步骤 3. 安装 Redis。

默认情况下,Redis 在 Ubuntu 存储库中可用,因此我们可以通过执行以下命令来安装它:

apt-get update apt-get -y install redis-server apt-transport-https

安装完成后,我们可以启动 Redis 并使其在启动时启动:

systemctl start redis-server systemctl enable redis-server

通过运行以下命令验证 Redis 是否已准备好使用:

redis-cli ping

步骤 4. 在 Ubuntu 16.04 上安装 Sensu。

首先,安装 GPG 公钥并在 /etc/apt/sources.list.d/sensu.list 中添加 APT 配置文件:

wget -O- https://sensu.global.ssl.fastly.net/apt/pubkey.gpg |  sudo apt-key add - echo "deb https://sensu.global.ssl.fastly.net/apt sensu main" | sudo tee /etc/apt/sources.list.d/sensu.list

使用以下命令安装 Sensu:

apt-get update apt-get install -y sensu

步骤 5. 配置 Sensu。

Sensu 进程需要额外的配置来告诉它们如何连接到 RabbitMQ 传输总线:

nano /etc/sensu/conf.d/rabbitmq.json

使用以下值更新文件。 用您在几步前选择的密码替换密码:

{   "rabbitmq": {     "host": "127.0.0.1",     "port": 5672,     "vhost": "/sensu",     "user": "sensu",     "password": "PASSSWD"   } }

接下来,创建 redis.json 包含 Sensu 访问 Redis 的连接信息的文件:

nano /etc/sensu/conf.d/redis.json

将以下行添加到上述文件中:

{   "redis": {     "host": "127.0.0.1",     "port": 6379   } }

创建 api.json 包含 Sensu 访问 API 服务的连接信息的文件:

nano /etc/sensu/conf.d/api.json

将以下行添加到上述文件中:

{   "api": {     "host": "localhost",     "bind": "0.0.0.0",     "port": 4567   } }

步骤 5. 安装 Uchiwa。

Sensu 核心不附带监控仪表板,因此您需要安装 Uchiwa,它是 Sensu 的开源仪表板:

apt-get install uchiwa

安装完成后,为 Uchiwa 创建一个配置文件:

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 并让它们在启动时启动:

systemctl start sensu-server systemctl enable sensu-server systemctl start sensu-api systemctl enable sensu-api systemctl start sensu-client systemctl enable sensu-client systemctl start uchiwa systemctl enable uchiwa

恭喜! 您已成功安装 Sensu。 感谢您使用本教程在 Ubuntu 16.04 上安装 Sensu 监控。 如需其他帮助或有用信息,我们建议您查看 Sensu 官方网站.