在这两个文件中,我们将 Sensu 配置为使用 Redis 作为传输机制,还有 Reids 监听的地址。客户端需要直接连接到传输机制。每台客户机都需要这两个文件。
$ sudo tee /etc/sensu/uchiwa.json << EOF { "sensu": [ { "name": "sensu", "host": "127.0.0.1", "port": 4567 } ], "uchiwa": { "host": "0.0.0.0", "port": 3000 } } EOF
在这个文件中,我们配置 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://<服务器的 IP 地址>:3000
对于生产环境,建议运行 RabbitMQ 集群作为 Transport 而不是 Redis(虽然 Redis 集群也可以用于生产环境),运行多个 Sensu 服务器实例和 API 实例,以实现负载均衡和高可用性。
Sensu 现在安装完成,让我们来配置客户端。
客户端侧
要添加一个新客户端,你需要通过创建 /etc/yum.repos.d/sensu.repo 文件在客户机上启用 Sensu 仓库。
$ sudo tee /etc/yum.repos.d/sensu.repo << EOF [sensu] name=sensu baseurl=https://sensu.global.ssl.fastly.net/yum/$releasever/$basearch/ gpgcheck=0 enabled=1 EOF
启用仓库后,安装 Sensu:
$ sudo yum install sensu -y
要配置 sensu-client ,创建在服务器中相同的 redis.json 和 transport.json ,还有 client.json 配置文件:
$ sudo tee /etc/sensu/conf.d/client.json << EOF { "client": { "name": "rhel-client", "environment": "development", "subscriptions": [ "frontend" ] } } EOF
在 name 字段中,指定一个名称来标识此客户机(通常是主机名)。environment 字段可以帮助你过滤,而 subscriptions 定义了客户机将执行哪些监视检查。
最后,启用并启动服务并签入 Uchiwa,因为客户机会自动注册:
$ sudo systemctl enable sensu-client $ sudo systemctl start sensu-client
Sensu 检查
Sensu 检查有两个组件:一个插件和一个定义。
Sensu 与 Nagios 检查插件规范兼容,因此无需修改即可使用用于 Nagios 的任何检查。检查是可执行文件,由 Sensu 客户机运行。
检查定义可以让 Sensu 知道如何、在哪以及何时运行插件。
客户端侧
让我们在客户机上安装一个检查插件。请记住,此插件将在客户机上执行。 (编辑:源码门户网)
【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!
|