如何在 CentOS 6 上安装 Nagios

news2024/12/27 12:39:57

前些天发现了一个巨牛的人工智能学习网站,通俗易懂,风趣幽默,忍不住分享一下给大家。点击跳转到网站。

Status: 已弃用

本文涵盖的 CentOS 版本已不再受支持。如果您目前正在运行 CentOS 6 服务器,我们强烈建议升级或迁移到受支持的 CentOS 版本。

原因: CentOS 6 已于2020年11月30日到达生命周期终点(EOL),不再接收安全补丁或更新。因此,本指南已不再维护。

请参阅替代方案:
本指南可能仍然作为参考有用,但可能不适用于其他 CentOS 版本。如果有的话,我们强烈建议使用针对您正在使用的 CentOS 版本编写的指南。

以下 DigitalOcean 教程可能会立即引起您的兴趣,因为它概述了在 CentOS 7 服务器上安装 Nagios:

  • 如何在 CentOS 7 上安装 Nagios 4 并监视您的服务器

步骤 1 - 在监控服务器上安装软件包

rpm -Uvh http://dl.fedoraproject.org/pub/epel/6/x86_64/epel-release-6-8.noarch.rpm
rpm -Uvh http://rpms.famillecollet.com/enterprise/remi-release-6.rpm
yum -y install nagios nagios-plugins-all nagios-plugins-nrpe nrpe php httpd
chkconfig httpd on && chkconfig nagios on
service httpd start && service nagios start

我们还应该在此 droplet 上启用 SWAP 内存,至少为 2GB:

dd if=/dev/zero of=/swap bs=1024 count=2097152
mkswap /swap && chown root. /swap && chmod 0600 /swap && swapon /swap
echo /swap swap swap defaults 0 0 >> /etc/fstab
echo vm.swappiness = 0 >> /etc/sysctl.conf && sysctl -p

步骤 2 - 设置密码保护

设置 Nagios 管理面板密码:

htpasswd -c /etc/nagios/passwd nagiosadmin

确保将此用户名保持为 "nagiosadmin" - 否则您将不得不更改 /etc/nagios/cgi.cfg 并重新定义授权管理员。

现在您可以转到 droplet 的 IP 地址 http://IP/nagios 并登录。

您将被提示输入步骤 2 中设置的密码:

这就是 Nagios 管理面板的外观:

由于这是一个全新的安装,我们目前没有任何正在监视的主机。

现在我们应该添加将由 Nagios 监视的主机。例如,我们将使用 cloudmail.tk(198.211.107.218)和 emailocean.tk(198.211.112.99)。

从公共端口,我们可以监视 ping,任何开放的端口,如 web 服务器,电子邮件服务器等。

对于在本地主机上监听的内部服务,例如 MySQL、memcached、系统服务,我们需要使用 NRPE。

步骤 4 - 在客户端上安装 NRPE

rpm -Uvh http://dl.fedoraproject.org/pub/epel/6/x86_64/epel-release-6-8.noarch.rpm
rpm -Uvh http://rpms.famillecollet.com/enterprise/remi-release-6.rpm
yum -y install nagios nagios-plugins-all nrpe
chkconfig nrpe on

下一步是您可以指定监控服务器可以通过 NRPE 发送的任何手动命令到这些客户端主机。

确保将 allowed_hosts 更改为您自己的值。

编辑 /etc/nagios/nrpe.cfg

log_facility=daemon
pid_file=/var/run/nrpe/nrpe.pid
server_port=5666
nrpe_user=nrpe
nrpe_group=nrpe
allowed_hosts=198.211.117.251
dont_blame_nrpe=1
debug=0
command_timeout=60
connection_timeout=300
include_dir=/etc/nrpe.d/
command[check_users]=/usr/lib64/nagios/plugins/check_users -w 5 -c 10
command[check_load]=/usr/lib64/nagios/plugins/check_load -w 15,10,5 -c 30,25,20
command[check_disk]=/usr/lib64/nagios/plugins/check_disk -w 20% -c 10% -p /dev/vda
command[check_zombie_procs]=/usr/lib64/nagios/plugins/check_procs -w 5 -c 10 -s Z
command[check_total_procs]=/usr/lib64/nagios/plugins/check_procs -w 150 -c 200
command[check_procs]=/usr/lib64/nagios/plugins/check_procs -w $ARG1$ -c $ARG2$ -s $ARG3$

注意:

在上面的 check_disk 中,正在检查的分区是 /dev/vda - 通过运行 df -h / 确保您的 droplet 具有相同的分区。 您还可以修改何时触发警告或严重警报 - 上面的配置设置剩余可用磁盘空间为 20% 时触发警告,并在剩余可用空间为 10% 时触发严重警报。

我们还应该设置防火墙规则,以允许来自我们的监控服务器到这些客户端的连接,并拒绝其他所有人:

iptables -N NRPE
iptables -I INPUT -s 0/0 -p tcp --dport 5666 -j NRPE
iptables -I NRPE -s 198.211.117.251 -j ACCEPT
iptables -A NRPE -s 0/0 -j DROP
/etc/init.d/iptables save

现在您可以在所有客户端主机上启动 NRPE:

service nrpe start

步骤 5 - 在监控服务器上添加服务器配置

回到我们的监控服务器,我们将不得不为每个客户端服务器创建配置文件:

echo "cfg_dir=/etc/nagios/servers" >> /etc/nagios/nagios.cfg
cd /etc/nagios/servers
touch cloudmail.tk.cfg
touch emailocean.tk.cfg

编辑每个客户端的配置文件,并定义您想要监视的服务。

nano /etc/nagios/servers/cloudmail.tk.cfg

添加以下行:

define host {
        use                     linux-server
        host_name               cloudmail.tk
        alias                   cloudmail.tk
        address                 198.211.107.218
        }

define service {
        use                             generic-service
        host_name                       cloudmail.tk
        service_description             PING
        check_command                   check_ping!100.0,20%!500.0,60%
        }

define service {
        use                             generic-service
        host_name                       cloudmail.tk
        service_description             SSH
        check_command                   check_ssh
        notifications_enabled           0
        }

define service {
        use                             generic-service
        host_name                       cloudmail.tk
        service_description             Current Load
        check_command                   check_local_load!5.0,4.0,3.0!10.0,6.0,4.0
        }

您可以根据需要添加更多要监视的服务。对于第二个客户端 emailocean.tk,应添加相同的配置,但 IP 地址和 host_name 不同:

这是 /etc/nagios/servers/emailocean.tk.cfg 的片段:

define host {
        use                     linux-server
        host_name               emailocean.tk
        alias                   emailocean.tk
        address                 198.211.112.99
        }

...

您可以添加要监视的其他客户端,如 /etc/nagios/servers/AnotherHostName.cfg

最后,在添加所有客户端配置后,您应该正确设置文件夹权限,并在监控服务器上重新启动 Nagios:

chown -R nagios. /etc/nagios
service nagios restart

步骤 6 - 在 Nagios 中监视主机

转到您的监控服务器的 IP 地址 http://IP/nagios 并输入步骤 2 中设置的密码。

现在您应该能够看到所有主机和服务:

至此,您已完成所有步骤!

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/2096690.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

什么是单片机?为什么要学习单片机?

实现目标 1、熟悉单片机定义、特点、应用场景、发展历史等; 2、理解为什么要学习单片机?怎样学习单片机? 一、单片机是什么? 1、定义 单片机是集成在一块(单)芯片上的微型计算机。平时我们把 MCU&#x…

E. Sheep Eat Wolves

https://codeforces.com/gym/104869/problem/E 赛时队友想贪心,贪不了一点,我想了数学办法每次都送固定的发现送过去就不满足了 赛后补,暴力做O(n4) 至少要几次才能把安全所有羊送到对岸去 考虑最短路,bfs,用数组存下所有状态 …

nerf论文代码理解

近年来,生成式AI(AGI)快速发展,各类生成式模型层出不群,但我更觉得具有物理意义的生成式AI将是未来革命性技术。因此也在抽空看看关于三维重建的知识,这篇文章就是记录我对nerf的理解。 一、论文理解 首先,需要知道ne…

车载冰箱的介绍

车载冰箱产业链的上游环节主要涉及制冷模块的研发与制造,这一环节根据所采用的制冷技术不同而展现出各自的特点。压缩机制冷模块和半 导体制冷模块是车载冰箱制冷系统的核心组成部分,它们在设计、材料选择和制造工艺上各有千秋。 车载冰箱的原理图 车载…

HTB-Three(云服务)

前言 各位师傅大家好,我是qmx_07,今天给大家讲解Three靶机 渗透过程 信息搜集 服务器开启了22 SSH 和 80 HTTP服务端口 扫描目录 服务器只有一个image图片文件,ssh 需要账号名密码 绑定域名 进行子域名扫描探测 疑似域名,尝…

中秋之美——html5+css+js制作中秋网页

中秋之美——html5cssjs制作中秋网页 一、前言二、功能展示三、系统实现四、其它五、源码下载 一、前言 八月十五,秋已过半,是为中秋。 “但愿人长久,千里共婵娟”,中秋时节,气温已凉未寒,天高气爽&#x…

支付平台构建支付接口供整个公司调用—支付代理商

一、支付平台一般需要对外开放用于满足一体化平台调用 支付平台提供支付接口具有以下必要性: 1. 拓展业务范围:使各类商家和服务提供商能够接入支付服务,从而扩大支付平台的用户群体和业务覆盖范围。 2. 提升用户体验:为不同的应…

音视频-图像篇(YUV和RGB)

文章目录 一、图像基础概念二、YUV与RGB1.YUV分类方式2.YUV“空间-间”的数据划分1)UV按照“空间-间”的划分方式,分为YUV444、YUV422、YUV4202)YUV“空间-内”的数据划分 3.RGB 三、比较JPG、PNG、GIF、BMP图片格式 一、图像基础概念 像素&…

Python OpenCV 入门指南

引言 OpenCV(Open Source Computer Vision Library)是一个开源的计算机视觉库,它包含了大量的用于实时图像分析和视频处理的功能。Python 作为一种流行的编程语言,以其易用性和灵活性成为了进行快速原型设计和开发的理想选择。结…

【python2C】排序算法

题&#xff1a;逆序对&#xff08;NXD&#xff09; 对于给定的一段正整数序列a&#xff0c;逆序对就是序列中 a[i]​>a[j]​ 且 i<j 的有序对。 输入格式 第一行&#xff0c;一个正整数 n&#xff0c;表示序列中有 n个数&#xff0c;n<5e5 第二行&#xff0c; n 个正整…

学习之git

github 创建远程仓库 代码推送 Push 代码拉取 Pull 代码克隆 Clone SSH免密登录 Idea集成GitHubGitee码云 码云创建远程仓库 Idea集成Gitee码云 码云连接Github进行代码的复制和迁移GitLab gitlab服务器的搭建和部署 Idea集成GitLabgit概述 一切皆本地 版本控制工具 集中…

读软件开发安全之道:概念、设计与实施15安全测试

1. 安全测试 1.1. 测试是开发可靠、安全代码中的关键一环 1.2. 测试安全漏洞的目的是主动检测 1.3. 模糊测试是一种强大的补充技术&#xff0c;可以帮助我们找到更深层次的问题 1.4. 针对当前漏洞创建的安全回归测试&#xff0c;目的是确保我们不会再犯相同的错误 1.5. 大…

LabVIEW焊缝视觉识别系统

随着自动化技术的发展&#xff0c;焊接工艺也在向智能化和自动化转型。介绍了一种基于LabVIEW开发的自动化焊接机器人视觉识别系统&#xff0c;用于提高焊接质量和效率&#xff0c;特别适用于复杂或危险环境下的操作。 项目背景 在传统焊接工艺中&#xff0c;焊接质量和效率受…

linux 文件管理命令

Ctrl h, 在对应的文件夹路径下显示文件内容 2.“~”、“/”、“./”分别代表什么&#xff1f; https://blog.csdn.net/shuaiqidexiaojiejie/article/details/132563658 2.1&#xff0c;“~”表示主目录&#xff0c;也就是当前登录用户的用户目录 cd ~, 表示返回到Home目录 2.2…

使用 GZCTF 结合 GitHub 仓库搭建独立容器与动态 Flag 的 CTF 靶场以及基于 Docker 的 Web 出题与部署

写在前面 关于 CTF 靶场的搭建&#xff08;使用 CTFd 或者 H1ve&#xff09;以及 AWD 攻防平台的搭建&#xff0c;勇师傅在前面博客已经详细写过&#xff0c;可以参考我的《网站搭建》专栏&#xff0c;前段时间玩那个 BaseCTF&#xff0c;发现它的界面看着挺不错的&#xff0c…

esp8266根据httpserver状态,调用网络唤醒,实现一键开机

esp8266根据httpserver状态&#xff0c;调用网络唤醒&#xff0c;实现一键开机 一.开发板程序二. 服务端三.服务端状态变更 一.开发板程序 #include <ESP8266WiFi.h> #include <ESP8266HTTPClient.h> #include <WiFiUdp.h> #include <ArduinoJson.h>/…

C语言深入理解指针1

1. 内存和地址 1.1内存 内存空间如何高效管理?把内存划分一个个的内存单元&#xff0c;每个内存单元的大小取一个字节一个比特位可以存储一个2进制的位1或者0&#xff0c;那么一个内存单元可以放8个比特位&#xff0c;每个内存单元都有一个编号&#xff0c;有了内存单元的编…

Golang | Leetcode Golang题解之第389题找不同

题目&#xff1a; 题解&#xff1a; func findTheDifference(s, t string) (diff byte) {for i : range s {diff ^ s[i] ^ t[i]}return diff ^ t[len(t)-1] }

自然美景短视频素材哪里找?9个美景视频素材库网站分享

你是否曾被窗外的落日余晖震撼&#xff0c;或是被雄伟的山脉和蔚蓝的大海深深吸引&#xff1f;想要分享这世界的美好&#xff0c;却苦于没有合适的视频素材&#xff1f;今天&#xff0c;就让我带你探索那些充满自然韵味的素材宝库&#xff0c;帮你捕捉和分享自然的美丽&#xf…

Linux下安装MySQL8.0

一、安装 1.下载安装包 先创建一个mysql目录&#xff0c;在将压缩包下载到此 # 下载tar包 wget https://dev.mysql.com/get/Downloads/MySQL-8.0/mysql-8.0.20-linux-glibc2.12-x86_64.tar.xz等待下载成功 2.解压mysql8.0安装包 tar xvJf mysql-8.0.20-linux-glibc2.12-x86…