前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >如何在Debian 8上安装Munin监视工具

如何在Debian 8上安装Munin监视工具

原创
作者头像
心语花束
修改2018-10-22 12:05:12
8100
修改2018-10-22 12:05:12
举报

介绍

Munin是一个系统,网络和基础设施监控应用程序,通过Web浏览器以图形形式提供信息。它是围绕客户端 - 服务器架构设计的,可以配置为监控它所安装的机器(Munin主机)和任何数量的客户端机器,在Munin的说法中称为Munin节点

在本文中,我们将安装和配置Munin以监控它安装在一个节点上的服务器。要在多个节点上安装Munin,只需按照在每个系统上创建节点的说明进行操作。

准备

  • 2台已经设置好可以使用sudo命令的非root账号的Debian服务器,并且已开启防火墙。没有服务器的同学可以在这里购买,不过我个人更推荐您使用免费的腾讯云开发者实验室进行试验,学会安装后再购买服务器

除非另有说明,否则本教程中的所有命令都应作为具有sudo权限的非root用户运行。

第1步 - 安装必需的包

我们将首先开始研究Munin大师。在安装Munin之前,需要安装一些依赖项。

虽然Munin可以与大多数流行的Web服务器(如Nginx和Lighttpd)一起使用,但默认情况下,它可以与Apache Web服务器一起使用。因此,请确保在Munin主服务器上安装并配置了Apache。如果尚未安装,请执行以下操作:

sudo apt-get update
sudo apt-get install -y apache2
  • 要确保负责放大生成的图形的dynazoom功能在单击时正常工作,请安装以下内容:
sudo apt-get install -y libcgi-fast-perl libapache2-mod-fcgid

安装这两个软件包后,fcgid应该已启用该模块。要仔细检查,请键入:

/usr/sbin/apachectl -M | grep -i cgi

输出应该是:

fcgid_module (shared)

如果输出为空,则表示未启用。然后您可以使用以下方法启用它

sudo a2enmod fcgid

执行apachectl命令时,您可以忽略以下警告:

Could not reliably determine the server's fully qualified domain name ...

Apache仍将与Munin合作发出此警告。

将使图形缩放正常工作的其余配置将在步骤3中介绍。

第2步 - 在Munin Master上安装Munin

Munin的安装包可以在Debian存储库中找到,因此可以使用发行版的包管理器进行安装。在此步骤中,您将从稳定分支安装Munin主程序包。Debian存储库中的版本Munin 2.0.25与最新的稳定版本相同。

要安装它,请键入:

sudo apt-get install -y munin

第3步 - 配置Munin Master

可以在/etc/munin目录及其子目录中找到Munin master的主配置文件munin.conf和其运行所需的其他文件。

配置文件至少由两个部分组成 - 全局部分和至少一个主机部分。可选地,可以存在部分。主机和组部分以方括号中的相应名称开头。此文件包含变量定义,指示Munin监视服务器和服务的方式以及要监视的服务器。

要开始修改它:

cd /etc/munin
sudo nano munin.conf

查找这些行并取消注释。也就是说,删除它们之前的符号。该DBDIR存储所有包含实际监视信息的rrdfiles的; htmldir存储图像和站点文件; logdir维护日志; rundir持有州档案; 和tmpldir是HTML模板的位置。请务必将htmldir更改/var/cache/munin/www为您的Web目录。在这个例子中,我们将使用/var/www/munin

dbdir     /var/lib/munin
htmldir   /var/www/munin
logdir    /var/log/munin
rundir    /var/run/munin
...
tmpldir /etc/munin/templates

由于htmldir不存在,让我们创建和CHOWN它,以便它是由拥有munin系统用户:

sudo mkdir /var/www/munin
sudo chown munin:munin /var/www/munin

最后,在munin.conf查找第一个主机树。它应该是:

[localhost.localdomain]
    address 127.0.0.1
    use_node_name yes

将该树的名称更改为唯一标识服务器的名称。在这个例子中,我们将使用MuninMaster

[MuninMaster]
    address 127.0.0.1
    use_node_name yes

这是配置文件的全部内容,因此保存并关闭它。

在同一/etc/munin目录中,我们要修改的下一个文件apache24.conf是Munin的Apache 2.4配置文件。它与/etc/apache2/conf-available/munin.conf通过sym链接。要开始修改它,请使用以下nano命令打开它:

sudo nano apache24.conf

在文件的最顶部,修改第一行,使其反映您在之前在munin.conf指定并创建的htmldir路径。根据本文中使用的目录路径,它应如下所示,这使得您可以通过将munin附加到服务器的IP地址或服务器上托管的域来访问Munin的Web界面:

Alias /munin /var/www/munin

要确保您可以远程访问Munin的Web界面,请删除目录部分并将其替换为:

<Directory /var/www/munin>
        Require all granted
        Options FollowSymLinks SymLinksIfOwnerMatch
</Directory>

对最后一个位置部分执行相同操作。删除该Require local行并将其替换为以下内容:

<Location /munin-cgi/munin-cgi-graph>
        Require all granted
        Options FollowSymLinks SymLinksIfOwnerMatch
        ...
</Location>

保存并关闭文件。然后重启Munin和Apache:

sudo systemctl restart munin-node
sudo systemctl restart apache2

您现在可以通过将Web浏览器指向server-ip-address / munin 来访问Munin的Web界面

第4步 - 向Munin Master添加节点

在这一步中,我们将展示如何将节点添加到Munin主站。这涉及修改Munin主站的配置文件以指定节点的主机树,在节点上安装Munin节点包,以及修改其配置文件以便Munin主站监视它。

让我们从Munin节点开始 - 你创建的另一个Debian 8 腾讯云CVM。

登录Munin节点,更新包数据库,然后安装Munin节点包:

sudo apt-get update
sudo apt-get install -y munin-node

安装成功完成后,节点的配置应该在/etc/munin目录中。打开它nano

sudo nano /etc/munin/munin-node.conf

在文件的中间,查找允许^ 127.0.0.1 $行并修改它以便它反映Munin主站的IP地址。请注意,IP地址采用正则表达式格式,因此假设主服务器IP地址为123.46.78.100,该行应为:

allow ^123\.456\.78\.100$

保存并关闭文件。然后重启Munin:

sudo systemctl restart munin-node

回到Munin master,打开主配置文件:

sudo nano /etc/munin/munin.conf

我们在此文件中需要做的就是为(远程)节点插入主机树。最简单的方法是复制和修改主服务器的主机树。请务必将node-ip-address替换为要添加的节点的IP地址:

[MuninNode]
    address node-ip-address
    use_node_name yes

保存并关闭文件。然后重启Apache:

sudo systemctl restart apache2

Munin每5分钟检查一次新节点。等几分钟,然后重新加载Munin master的web界面。您应该看到节点的条目。如果您还没有看到,请在5分钟后再试一次。使用此方法,您可以添加尽可能多的节点以进行监视。

第5步 - 启用额外插件

Munin使用插件脚本监视系统,默认情况下,安装并激活了大约十几个插件。/usr/share/munin/plugins目录中包含可用插件的完整列表。要查看系统上可以使用哪些插件,Munin提供以下命令:

sudo munin-node-configure --suggest

输出应该是这样的:

Plugin                     | Used | Suggestions
------                     | ---- | -----------
cps_                       | no   | no
cpu                        | yes  | yes
cpuspeed                   | no   | no [missing /sys/devices/system/cpu/cpu0/cpufreq/stats/time_in_state]
cupsys_pages               | no   | no [could not find logdir]
df                         | yes  | yes
df_inode                   | yes  | yes
fail2ban                   | no   | yes
ip_                        | no   | yes

有一个插件使用的列意味着正是它表明,当一个有建议栏中意味着它可以使用。其中有没有在两列意味着它不是在使用,无法在系统上使用。最后,如果插件在Used列中有no并且在Suggestions中yes,则它不会被使用,但可以在系统上启用和使用。

在Munin主服务器和节点上,您还可以在/etc/munin/plugins目录中看到已安装插件的列表。

安装Munin时应该已经安装了一个munin-plugins-extra软件包。如果不是,请使用。

sudo apt-get install munin-plugins-extra

要启用当前未使用的可用插件,请为/usr/share/munin/plugins目录中的/etc/munin/plugin目录创建符号链接。

例如,要启用Fail2ban插件,请先安装Fail2ban:

sudo apt-get install fail2ban

然后,创建启用Munin插件的符号链接:

sudo ln -s /usr/share/munin/plugins/fail2ban /etc/munin/plugins

重新启动Munin:

sudo systemctl restart munin-node

等待几分钟,重新加载Web界面,您应该看到在Mandin 网络类别下标题为由fail2ban列入黑名单的Fail2ban的图表。

故障排除

如果您在配置Munin主节点,Munin节点或让主节点查看节点时遇到问题,请查看日志文件以获取错误消息:

  • Munin主机: /var/log/munin/munin-update.log
  • Munin节点: /var/log/munin/munin-node.log

您还可以查看项目页面以获取其他疑难解答提示。

结论

Munin可以配置为监视安装它的系统。将远程服务器添加到受监视系统就像在远程服务器(或节点)上安装munin-node软件包,然后修改服务器和节点的配置文件以指向其他IP地址一样简单。

Munin使用插件工作,但并非所有插件都是开箱即用的。有关插件的信息可在项目页面上找到

更多Debian教程请前往腾讯云+社区学习更多知识。

参考文献:《How To Install the Munin Monitoring Tool on Debian 8》

原创声明:本文系作者授权腾讯云开发者社区发表,未经许可,不得转载。

如有侵权,请联系 cloudcommunity@tencent.com 删除。

原创声明:本文系作者授权腾讯云开发者社区发表,未经许可,不得转载。

如有侵权,请联系 cloudcommunity@tencent.com 删除。

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
目录
  • 介绍
    • 准备
      • 第1步 - 安装必需的包
        • 第2步 - 在Munin Master上安装Munin
          • 第3步 - 配置Munin Master
            • 第4步 - 向Munin Master添加节点
              • 第5步 - 启用额外插件
                • 故障排除
                  • 结论
                  相关产品与服务
                  云开发 CloudBase
                  云开发(Tencent CloudBase,TCB)是腾讯云提供的云原生一体化开发环境和工具平台,为200万+企业和开发者提供高可用、自动弹性扩缩的后端云服务,可用于云端一体化开发多种端应用(小程序、公众号、Web 应用等),避免了应用开发过程中繁琐的服务器搭建及运维,开发者可以专注于业务逻辑的实现,开发门槛更低,效率更高。
                  领券
                  问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档