如何在Ubuntu 12.04安装和配置进研监视一个VPS实例

介绍

Shinken是一个基于Nagios Core的开源监视框架,已经在python中重写,以增强灵活性,可扩展性和易用性。 Shinken与Nagios完全兼容,并支持它的插件和配置,可以在旅途中使用,无需重写或调整。

Shinken对分布没有限制。 它可以扩展到LAN局域网,通过DMZ,甚至跨越几个数据中心。

Shinken超越了Nagios的经典监控功能,允许对资产进行分布式和高可用性监控,对VMware拓扑和不同管理程序(Xen,KVM,...)进行智能和自动管理,并且能够监控Amazon EC2托管的应用程序像mysql和Apache)。

Shinken被认为是Nagios的5倍,并且配备了大量的监视包,可以很容易地安装,提供了一种更快的方式来启动监视服务器,服务和应用程序。

在本指南中,我们将配置两个Droplet。 一个将被配置为服务器,另一个被配置为客户端。 他们都将运行Ubuntu 12.04 LTS。

安装Shinken服务器

我们将使用自动安装脚本从服务器开始。

curl -L http://install.shinken-monitoring.org | /bin/bash

安装脚本将创建用户和组。 安装所有依赖项,然后进行Shinken安装。

一旦安装完成后,进研WebUI中可以通过访问http://XXXX:7767和凭证admin/admin 该配置文件夹将位于/usr/local/shinken/etc

预配置Shinken服务器

在Shinken的配置过程中,我们需要保护其WebUI。

让我们编辑模块网络用户界面:

nano /usr/local/shinken/etc/shinken-specific.cfg

我们将通过改变开始auth_secret ,并更换CHANGE_ME强密码:

define module {
 modules Apache_passwd, ActiveDir_UI, Cfg_password, PNP_UI, Mongodb, Glances_UI
 manage_acl 1
 play_sound 0
 host 0.0.0.0
 module_type webui
 allow_html_output 0
 max_output_length 100
 module_name WebUI
 auth_secret CHANGE_ME         
 port 7767
}

保存并关闭文件。

然后我们的管理员用户也应该得到一个强密码。 为此,我们将通过在一个秘密的强烈替换他的默认密码contacts.cfg文件:

nano /usr/local/shinken/etc/contacts.cfg

define contact{
   use             generic-contact
   contact_name    admin
   email           shinken@localhost
   pager           0600000000   ; contact phone number
   password        admin
   is_admin        1
}

即使安装程序关心安装所有必要的依赖项和模块,我们需要安装mongodb支持来处理和保存webui上的用户首选项,否则我们将在Web UI上收到一条丑陋的警告消息:

错误:您没有定义用于保存用户首选项的WebUI模块,如Mongodb。 您将无法使用此页面!

要安装Mongodb支持:

cd /usr/local/shinken
./install -a mongodb

配置Shinken服务器

对于我们的场景,我们将首先声明Ubuntu 12.04受监视的主机(Shinken从站),安装和配置SNMP,然后使用自定义团体字符串进行监视。

SNMP模板将处理以下检查:

  • 主机检查每5分钟:检查与ping服务器是UP

  • 检查磁盘空间

  • 检查负载平均值

  • 检查CPU使用率

  • 检查物理内存和交换使用情况

  • 检查网络接口活动

一旦完成,我们将使用FTP和SSH包检查从属服务器上的FTP和SSH状态,作为如何使用包的示例。

软件包是通用或特定服务,应用程序服务器,操作系统和监视功能设备的预定义监控模板。 这些程序包位于以下目录中/usr/local/shinken/etc/packs按类型分类,并使用它们,我们只需要在主机定义文件中指定他们的名字。

由于Shinken完全兼容并支持Nagios,Nagios插件可以通过Shinken添加和使用。

定义Shinken上的Minion

一个监控服务器,让我们创建对应于我们的Linux设备(Ubuntu的MinionDroplet)上的主机文件/usr/local/shinken/etc/hosts directory

nano /usr/local/shinken/etc/hosts/shinken_slave.cfg

复制并粘贴以下内容,并将“host_name”和“address”字段更改为适当的值。

define host{
   use             linux
   host_name       Shinken_slave
   address         X.X.X.X
   _SNMPCOMMUNITY  DOmonitoring
}

  • “使用linux”是“模板”行。 这意味着这个主机将使用默认linux模板的属性。

  • “host_name”是主机的对象名称。 它对应于我们的客户端的主机名,并且必须是唯一的。

  • “地址”是从站的IP地址或其FQDN。

  • “_SNMPCOMMUNITY”是自定义SNMP团体字符串或密码。

正如我们之前提到的,我们将使用两个包来监视FTP和SSH服务。 这些包将检查公共可用的服务,应用程序和协议的状态,而没有任何特殊的访问要求。 为此,我们要将它们添加到主机定义文件中,在“use”行上,用逗号分隔。 我们可以尽可能多地使用,但我们需要记住,我们只需要监控什么是重要的。

以前/usr/local/shinken/etc/hosts/shinken_slave.cfg看起来就像这样:

define host{
   use             linux,ftp,ssh
   host_name       Shinken_slave
   address         X.X.X.X
   _SNMPCOMMUNITY  DOmonitoring
}

如前所述,我们将为客户端使用自定义的SNMP团体字符串(密码)。 对于本指南,我们选择“DOmonitoring” - 它将在客户端上相同。

现在我们宣布了主机,让我们重新启动Shinken来处理更改:

service shinken restart

配置客户端:

我们将从我们的客户端安装SNMP开始。

apt-get install snmpd

然后我们配置Community字符串和侦听接口。

编辑/etc/snmp/snmpd.conf和注释行:

agentAddress  udp:127.0.0.1:161

然后,取消注释行:

agentAddress udp:161,udp6:[::1]:161

如前所述,我们将通过更改默认值“public”来更改客户端的SNMP社区(密码)。 为了本教程的目的,将选择“DOmonitoring”。

替换:

rocommunity public

使用:

rocommunity DOmonitoring

重新启动snmpd守护程序:

service snmpd restart

访问WebUI

现在,我们的监控服务器和客户端已配置。 我们需要使用我们的服务器的IP地址来访问网络进研UI http://XXXX:7767

一旦验证,我们将看到一个空白页,说“你还没有任何小部件?

我们稍后将使用自定义小部件配置它以获取所需的信息,但首先我们需要检查服务器是否配置了客户端并且可以访问它。

单击所有选项卡,您将看到所有受监视计算机的列表,包括服务器(localhost)。

在同一个列表上,你应该找到Shinken_slave like:

让我们回到仪表板,通过添加三个小部件创建一个。 由于我们只有一个监控的Droplet,我们将添加图,问题和关系小部件。

点击add a widget ,然后选择您从面板想要的。 默认情况下,小部件将获得localhost(监视服务器)状态和信息。 我们可以通过单击并指定“元素名称”来编辑它们以反映我们想要的主机,如下所示:

我们的监控服务器会关注我们的VPS并跟踪所有更改。 服务器运行时间越长,图形和统计信息就越有趣。

文章提交者: Mouad Zahrane
赞(52) 打赏
未经允许不得转载:优客志 » 系统运维
分享到:

觉得文章有用就打赏一下文章作者

支付宝扫一扫打赏

微信扫一扫打赏