配置网络yum_CentOS7下部署开源网络监控工具Observium

2023-05-16

点击上方"walkingcloud"关注,并选择"星标"公众号

Observium简单介绍

Observium是一个免费的开源网络管理和监控工具,可用于监控所有的网络设备。

Observium是用PHP编写的,使用SNMP从连接的设备收集数据并使用Web界面监视它们。

Observium支持大量的网络硬件和操作系统,包括Linux,Windows,FreeBSD,思科,戴尔,NetApp等等。

Observium提供了一个功能强大,简单易用的界面来监视网络的健康和状态

(图片可放大查看)

目前有两种不同的 observium 版本。

1、Observium 社区版本是一个在 QPL 开源许可证下的免费工具,这个版本是对于较小部署的最好解决方案。该版本每6个月进行一次安全性更新。

2、第2个版本是 Observium 专业版,该版本采用基于 SVN 的发布机制。会得到每日安全性更新。该工具适用于服务提供商和企业级部署

CentOS7下部署开源网络监控工具Observium

下面介绍CentOS7下部署开源网络管理和监控工具Observium

环境说明:

1、CentOS7.9 VM虚拟机192.168.31.84部署Observium,作为服务端

2、CentOS7.9 VM虚拟机192.168.31.121监控主机,作为Observium的被监控设备

具体部署步骤如下

1、基础环境准备

1)关闭SELINUX

setenforce 0sed -i 's/^SELINUX=.*$/SELINUX=disabled/' /etc/selinux/config

2)yum源配置

wget -O /etc/yum.repos.d/CentOS-Base.repo https://mirrors.aliyun.com/repo/Centos-7.reposed -i -e '/mirrors.cloud.aliyuncs.com/d' -e '/mirrors.aliyuncs.com/d' /etc/yum.repos.d/CentOS-Base.repowget -O /etc/yum.repos.d/epel.repo http://mirrors.aliyun.com/repo/epel-7.repo

添加opennms-repo和remi源

yum -y install http://yum.opennms.org/repofiles/opennms-repo-stable-rhel7.noarch.rpmyum -y install http://rpms.remirepo.net/enterprise/remi-release-7.rpm

启用remi-php72源

yum install yum-utilsyum-config-manager --enable remi-php72

yum安装Observium所需组件httpd,php72,net-snmp,fping,mariadb-server,rrdtool,ipmitool等等

yum install wget.x86_64 httpd.x86_64 php.x86_64 php-opcache.x86_64 php-mysql.x86_64 php-gd.x86_64             php-posix php-pear.noarch cronie.x86_64 net-snmp.x86_64 net-snmp-utils.x86_64             fping.x86_64 mariadb-server.x86_64 mariadb.x86_64 MySQL-python.x86_64 rrdtool.x86_64             subversion.x86_64  jwhois.x86_64 ipmitool.x86_64 graphviz.x86_64 ImageMagick.x86_64             php-sodium.x86_64

2、下载observium社区版本最新安装包并解压

下载地址

http://www.observium.org/observium-community-latest.tar.gz

创建/opt/observium目录,并将社区版本安装包解压到此路径

mkdir -p /opt/observium && cd /opttar -zxf observium-community-latest.tar.gz

3、MariaDB数据库设置

1)MariaDB数据库服务启动,密码初始化

systemctl enable mariadbsystemctl start mariadb/usr/bin/mysqladmin -u root password 'MySQL@2021'

2)创建observium数据库,并设置observium库的账号与密码

mysql -uroot -pMySQL@2021CREATE DATABASE observium DEFAULT CHARACTER SET utf8 COLLATE utf8_general_ci;GRANT ALL PRIVILEGES ON observium.* TO 'observium'@'localhost' IDENTIFIED BY 'observium@2021';exit;

3)修改config.php中数据库连接参数

cp config.php.default config.phpvi config.php修改数据库的账户与密码为上面设置的mariadb的账户与密码$config['db_user']      = 'observium';$config['db_pass']      = 'observium@2021';

4)Insert MySQL Schema

./discovery.php -u

4、在config.php中添加fping工具配置

which fping/usr/sbin/fpingvi config.php$config['fping'] = "/usr/sbin/fping";

5、rrd及httpd服务相关配置

1)Create the rrd directory to store RRDs in:

cd /opt/observiummkdir rrdchown apache:apache rrd

2)httpd服务配置文件添加与修改

vi /etc/httpd/conf.d/observium.conf    DocumentRoot /opt/observium/html/   ServerName  observium.domain.com   CustomLog /opt/observium/logs/access_log combined   ErrorLog /opt/observium/logs/error_log        AllowOverride All     Options FollowSymLinks MultiViews     Require all granted    

3)Create logs directory for apache

mkdir /opt/observium/logschown apache:apache /opt/observium/logs

6、设置observium crond定时任务脚本

vi /etc/cron.d/observium# Run a complete discovery of all devices once every 6 hours33  */6   * * *   root    /opt/observium/discovery.php -h all >> /dev/null 2>&1# Run automated discovery of newly added devices every 5 minutes*/5 *     * * *   root    /opt/observium/discovery.php -h new >> /dev/null 2>&1# Run multithreaded poller wrapper every 1 minutes*/1 *     * * *   root    /opt/observium/poller-wrapper.py >> /dev/null 2>&1# Run housekeeping script daily for syslog, eventlog and alert log13 5 * * * root /opt/observium/housekeeping.php -ysel# Run housekeeping script daily for rrds, ports, orphaned entries in the database and performance data47 4 * * * root /opt/observium/housekeeping.php -yrptbsystemctl reload crond

7、web管理员用户添加并开启httpd服务

./adduser.php admin admin2021 10
systemctl enable httpdsystemctl start httpdfirewall-cmd --permanent --zone=public --add-service=httpfirewall-cmd --reload

8、监控主机snmpd服务安装与配置

监控主机上安装并配置snmpd服务

yum install net-snmp net-snmp-utilssystemctl enable snmpdvi /etc/snmp/snmpd.conf

1)OID修改

原先view    systemview    included   .1.3.6.1.2.1.1修改为view    systemview    included   .1.3.6.1.2.1

2)系统位置信息修改

syslocation Unknown (edit /etc/snmp/snmpd.conf)#syslocation Unknown (edit /etc/snmp/snmpd.conf)syslocation HangZhou,Zhejiang,Chinacat /etc/snmp/snmpd.conf | grep systemviewcat /etc/snmp/snmpd.conf | grep syslocation
systemctl start snmpdnetstat -anp | grep 161firewall-cmd --permanent --zone=public --add-service=snmpfirewall-cmd --reload

9、登录web界面,并添加监控设备

(图片可放大查看)

(图片可放大查看)

(图片可放大查看)

当然你可也可以后台用命令添加

./add_device.php   v2cDo an initial discovery and polling run to populate the data for the new device:

拉取设备数据

./discovery.php -h all./poller.php -h all

监控效果展示

(图片可放大查看)

(图片可放大查看)

(图片可放大查看)

(图片可放大查看)

10、syslog日志监控功能启用

config.php最后行加入

// Enable Syslog$config['enable_syslog']                = 1;

observium服务器开启rsyslog接收,并配置接收的配置文件

监控主机开启rsyslog外送

vi /etc/rsyslog.conf最后行添加*.* @192.168.31.84systemctl restart rsyslog

日志监控效果展示

(图片可放大查看)

(图片可放大查看)

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

配置网络yum_CentOS7下部署开源网络监控工具Observium 的相关文章

  • Jenkins 中的 Android 模拟器

    我尝试在 Jenkins 中使用 Android 模拟器 我遵循这个指南 詹金斯插件 我在无头构建机器 CentOS 上完成此操作 我尝试从詹金斯创建模拟器 就像示例一样 当我尝试像这个例子一样做 但是在我的版本中 我从詹金斯那里得到了这个
  • 使用 crontab/cron 安排 python 3.6 脚本

    我只是在我的 Centos 开发服务器上设置一个 crontab job 在我的 crontab 中 我有以下内容 忽略时间设置 这是在 UTC 服务器时间 15 32 左右添加的 只是为了获得下一次计划运行 34 15 cd welcom
  • 使用 yum 下载包的所有依赖项的 RPM

    我正在尝试在我的系统上创建一个本地 yum 存储库 其中包含主要来自 CentOS 基础存储库的各种软件包 默认情况下 托管 yum 存储库的服务器不一定安装与将使用 yum 存储库的服务器相同的基础软件包 出于这个原因 我需要确保我的存储
  • centos 7安装pymssql时出错

    我在虚拟机 Centos 7 中安装 pymssql 时遇到了这个问题 我安装的python版本是2 7 6 用于安装 pymssql 的命令 pip intall pymssql 错误信息 root dpitstsvr013 magend
  • 如何在centOS 7中启动apache

    我使用以下命令启动 Apache service httpd start in centOS6 今天我下载了centOS7 64bit minimal并想在安装后启动 Apache 当我使用service httpd start 操作系统会
  • tcsh 脚本不退出

    我正在运行 CentOS 7 并且 tcsh 脚本出现问题 我有一个名为 quittest 的简单脚本 bin tcsh echo Simple Test exit 0 当我从终端运行 quittest 时 我得到 Simple Test
  • 在子域上安装 GitLab

    我正在尝试在子域上安装 GitLab 我对网络服务器之类的东西不是很熟悉 知识很少 我目前通过以下方式连接到子域ssh email protected cdn cgi l email protection在 Mac 的终端上 然后我ls到子
  • centos 7 获取最新的 apache 包

    这个问题来自于我对包管理器缺乏了解 我跑yum list并得到httpd 2 4 6 40 el7 centos 4 x86 64 https rpmfind net linux RPM centos updates 7 2 1511 x8
  • 安装 hunspell 包

    我期待使用 pip 安装 hunspell 包 但它会抛出以下错误 Collecting hunspell Using cached hunspell 0 4 1 tar gz Building wheels for collected p
  • 使用 yum 在 CentOS 上安装 OpenJDK 11

    我想使用 yum 安装 OpenJDK 11 然而 当我检查 OpenJDK 手册时 它说你只能使用 yum 安装 Java 8 但是 对于 Java 9 及以上版本 它说你必须下载 zip 或 tar 文件 https openjdk j
  • Composer proc_open():分叉失败 - 无法分配内存

    我在运行时遇到与其他人相同的错误php composer phar update The following exception is caused by a lack of memory and not having swap confi
  • git-http-backend 与 apache2.4 Centos 7

    我尝试在我的 apache 服务器上设置 Git 服务器 但它不起作用 我得到了以下 git conf SetEnv GIT PROJECT ROOT var www html git project1 SetEnv GIT HTTP EX
  • 如何在 Apache 网站内托管 ASP.NET Core Web 应用程序?

    我有一个旧的php使用开发的应用程序Yii2框架托管在Centos路径上的服务器 var www html 该应用程序可在以下位置访问http somedomain com 我正在开发使用新的 API 项目ASP NET MVC Core需
  • 如何仅获取 yum 更新列表

    好吧 我一直有这个问题 我只想使用 yum 从 Linux 系统 RHEL 或 Fedora 通过 bash 脚本在文件中列出可用的更新 但我总是必须处理创建的标头信息 如下所示 Loaded plugins XXXX repo XXXX
  • Dotnet 构建失败:Linux 中的代理背后的 NuGet

    这看起来可能是一个类似的issue https stackoverflow com questions 9232160 nuget behind a proxy但在 CentOS 上 我已经尝试过此线程以及其他线程上的所有解决方案 但是我仍
  • 无法在 CentOS 7 上的 PHP 中打开 file_put_contents 上的流

    我知道这是许多线程的常见错误 但我厌倦了搜索 但仍然没有解决它 当我尝试运行该函数时文件放置内容我收到以下错误 Warning file put contents test txt failed to open stream Permiss
  • 禁用 yum 事务检查文件冲突

    如何禁用文件的 yum 事务检查 Transaction check error file usr local xenco backend current from install of xenco rr 1 9 6 104 x86 64
  • 如何使用 devtoolset-8-gcc 安装 gcc8

    我使用的是 CentOS Linux 版本 7 3 1611 其中安装了 gcc 4 8 5 20150623 我正在寻找一种安装较新版本的 gcc 的方法 特别是 8 1 我找到了以下关于如何安装 gcc v7 的网站link 1 htt
  • Composer 已安装,但获取 /usr/bin/env: php: No such file or directory

    在 CentOS 7 上 我安装了 PHP 7 1 然后我安装了作曲家 cd tmp curl sS https getcomposer org installer php71 gt used php71 instead of php ph
  • 如何在CentOS7中更改docker守护进程根目录

    我在 CentOS7 上运行 docker 我想更改我的基本目录 var lib docker to data docker I found this https docs docker com engine reference comma

随机推荐