• 如何在Ubuntu 20.04上安装Sensu Monitoring


    Sensu是一个免费的开源工具,用于监控基础设施和应用程序的健康状况。它用Ruby编写,使用 RabbitMQ 处理消息,使用Redis存储数据。它可以安装在大多数操作系统上,包括 Ubuntu、Debian、RHEL、CentOS、IBM、AIX、FreeBSD、Mac OS、Solaris、Windows 等。它是最流行的新一代平台之一,取代了其他监控系统,如Zabbix、Icinga和Nagios。Sensu使用客户端-服务器模式。你只需要在你要监控的每个系统上安装一个sensu客户端。
    在本教程中,我们将展示如何在Ubuntu 20.04服务器上安装Sensu监控服务器。
    1、先决条件
    运行Ubuntu 20.04的服务器。
    为服务器配置了root密码。
    2、入门指南
    首先,您需要将系统更新到最新的稳定版本。您可以通过使用以下命令更新所有系统软件包来做到这一点:
    apt-get update -y
    系统更新后,请使用以下命令安装其他依赖项:
    apt-get install gnupg2 curl wget unzip -y
    一旦安装了所有软件包,即可继续进行下一步。
    3、安装Redis和RabbitMQ
    Sensu使用RabbitMQ处理消息,并使用Redis存储数据。因此,两个软件包都必须安装在系统中。默认情况下,Ubuntu 20.04默认存储库中不提供RabbitMQ。因此,您将需要在系统中添加RabbitMQ存储库。
    首先,使用以下命令导入GPG密钥:
    wget -O- https://packages.erlang-solutions.com/ubuntu/erlang_solutions.asc | apt-key add -
    接下来,通过运行以下命令来添加存储库:
    echo "deb http://binaries.erlang-solutions.com/debian $(lsb_release -cs) contrib" | tee /etc/apt/sources.list.d/erlang-solutions.list
    接下来,更新存储库并使用以下命令安装RabbitMQ软件包:
    apt-get update -y
    apt-get install rabbitmq-server -y
    安装完成后,您将需要为Sensu创建RabbitMQ虚拟主机。您可以使用以下命令创建它:
    rabbitmqctl add_vhost /sensu
    您应该看到以下输出:
    Adding vhost "/sensu" ...
    接下来,使用以下命令创建一个用户来管理虚拟主机:
    rabbitmqctl add_user sensu password
    您应该看到以下输出:
    Adding user "sensu" ...
    接下来,您将需要为vhost / sensu分配完全权限。
    rabbitmqctl set_permissions -p /sensu sensu ".*" ".*" ".*"
    您应该获得以下输出:
    Setting permissions for user "sensu" in vhost "/sensu" ...
    接下来,使用以下命令安装Redis服务器:
    apt-get install redis-server -y
    安装完成后,请使用以下命令启动Redis服务并启用它以在系统重新引导时启动:
    systemctl start redis-server
    systemctl enable redis-server
    完成后,您可以继续下一步。
    4、安装Sensu服务器
    默认情况下,Sensu在Ubuntu官方存储库中不可用。因此,您将需要在系统中添加Sensu存储库。
    首先,使用以下命令导入存储库GPG密钥:
    wget -O- https://sensu.global.ssl.fastly.net/apt/pubkey.gpg | apt-key add -
    接下来,使用以下命令添加存储库:
    echo "deb https://sensu.global.ssl.fastly.net/apt bionic main" | tee /etc/apt/sources.list.d/sensu.list
    添加存储库后,请更新存储库并使用以下命令安装Sensu:
    apt-get update -y
    apt-get install sensu -y
    安装Sensu后,您可以继续执行下一步。
    5、配置Sensu
    接下来,您将需要为RabbitMQ,Redis和Api创建配置文件。首先,使用以下命令创建api.json文件:
    nano /etc/sensu/conf.d/api.json
    添加以下行:
    {
    "api": {
    "host": "localhost",
    "bind": "0.0.0.0",
    "port": 4567
    }
    }
    保存并关闭文件,然后使用以下命令创建redis.json文件:
    nano /etc/sensu/conf.d/redis.json
    添加以下行:
    {
    "redis": {
    "host": "127.0.0.1",
    "port": 6379
    }
    }
    保存并关闭文件,然后使用以下命令创建RabbitMQ配置文件:
    nano /etc/sensu/conf.d/rabbitmq.json
    添加以下行:
    {
    "rabbitmq": {
    "host": "127.0.0.1",
    "port": 5672,
    "vhost": "/sensu",
    "user": "sensu",
    "password": "password"
    }
    }
    完成后,保存并关闭文件。
    6、安装和配置Sensu仪表板
    接下来,您将需要在系统中安装Uchiwa仪表板。Uchiwa是一个开源仪表板,可通过Web界面监视Sensu。
    您可以使用以下命令安装Uchiwa:
    apt-get install uchiwa -y
    安装Uchiwa后,请使用以下命令为Uchiwa创建配置文件:
    nano /etc/sensu/uchiwa.json
    添加以下行:
    {
    "sensu": [
    {
    "name": "Sensu",
    "host": "127.0.0.1",
    "port": 4567,
    "timeout": 10
    }
    ],
    "uchiwa": {
    "host": "0.0.0.0",
    "port": 3000,
    "refresh": 10
    }
    }
    完成后,保存并关闭文件。
    接下来,您将需要创建一个client.json文件来监视Sensu服务器本身。您可以使用以下命令创建它:
    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服务器,Api,Uchiwa和Sensu客户端服务:
    systemctl start sensu-server
    systemctl start sensu-api
    systemctl start uchiwa
    systemctl start sensu-client
    启动所有服务后,您可以使用以下命令验证所有服务的状态:
    systemctl status sensu-server sensu-api sensu-client uchiwa
    您应该获得以下输出:


    完成后,您可以继续下一步。
    7、访问Sensu仪表板
    现在,打开您的Web浏览器并输入URL http:// your-server-ip:3000。您应该在以下屏幕中看到Sensu仪表板:


    现在,单击左窗格中的客户端图标。您应该在以下屏幕上查看Sensu客户端的状态:


    至此,您已在Ubuntu 20.04服务器上成功安装并配置了Sensu和Uchiwa。现在,您可以添加更多客户端,并从Uchiwa仪表板开始工作。

    A5互联https://www.a5idc.net/

  • 相关阅读:
    shell脚本day06-sed
    shell脚本day05-交互式输入与for语句
    shell脚本day04-if语句
    shell脚本day04-grep与正则表达式
    shell脚本day03-编程原理
    shell脚本day02-重定向与管道符
    编程原理大致介绍
    进程管理
    Linux网络
    shell脚本--grep以及正则表达式
  • 原文地址:https://www.cnblogs.com/a5idc/p/13630392.html
Copyright © 2020-2023  润新知