zabbix:

Zabbix是一个开源分布式监控平台,包含诸多监控功能,用于构建一个符合企业级的监控解决方案。
软件由开源社区提供开发和维护,遵循GPL协议,可以自由传播和使用,但开发团队提供收费的技术支持服务。

官方网站: http://www.zabbix.com
官方manual: http://www.zabbix.com/documentat ... llation_from_source
一、Zabbix的安装
安装前准备工作

环境:Mysql+apache+php
Php编译参数要加上--enable-sockets ,否则Zabbix无法正常安装
并且安装

  1. # yum install php-mbstring  php-gd*
  2. # yum install php-bcmath

复制代码

安装fping
由于 zabbix使用 fping替代了 ping作为 icmp的工具,所以要安装 fping。

  1. cd /usr/local/src
  2. wget http://fping.sourceforge.net/download/fping.tar.gz tar zxvf fping.tar.gz
  3. chmod a+x *
  4. ./configure
  5. make
  6. make install

复制代码

默认安装到/usr/local/sbin/fping ,些处我们要链接到

  1. ln -s /usr/sbin/fping
  2. //fping 只有ROOT权限才能运行。所以此处设定权限
  3. chmod  a+s /usr/local/sbin/fping
  4. chmod  a+s /usr/sbin/fping

复制代码

Zabbix安装

1、下载
#wget http://jaist.dl.sourceforge.net/ ... abbix-1.8.11.tar.gz

2、导入数据库
//先建立数据库zabbix

  1. #mysql -uroot -p
  2. #myslq> create database zabbix character utf8;
  3. #mysql> quit;
  4. //导入 zabbix库
  5. # tar zxvf zabbix-1.8.11.tar.gz
  6. # cd zabbix-1.8.11
  7. # mysql -u root -p --default-character-set=utf8 -D zabbix <create/schema/mysql.sql
  8. # mysql -u root -p --default-character-set=utf8 -D zabbix <create/data/data.sql
  9. # mysql -u root -p --default-character-set=utf8 -D zabbix <create/data/images_mysql.sql

复制代码

3、安装需要的包

  1. # yum -y install gcc gcc-c++ autoconf libjpeg libjpeg-devel libpng libpng-devel freetype freetype-devel libxml2 libxml2-devel zlib zlib-devel glibc glibc-devel glib2 glib2-devel bzip2 bzip2-devel ncurses ncurses-devel curl curl-devel e2fsprogs e2fsprogs-devel krb5 krb5-devel libidn libidn-devel openssl openssl-devel openldap openldap-devel nss_ldap openldap-clients openldap-servers
  2. # yum –y install net-snmp*

复制代码

4、安装zabbix

  1. # ./configure --with-mysql --with-net-snmp --enable-server --enable-agent    --prefix=/usr/local/zabbix
  2. # make
  3. # make install
  4. # vi /ect/services
  5. zabbix-agent    10050/tcp #Zabbix Agent
  6. zabbix-agent    10050/udp #Zabbix Agent
  7. zabbix-trapper  10051/tcp #Zabbix Trapper
  8. zabbix-trapper  10051/udp #Zabbix Trapper

复制代码

5、添加配置文件

  1. # mkdir -p /etc/zabbix
  2. # cp ./misc/conf/* /etc/zabbix
  3. # chown -R zabbix:zabbix /etc/zabbix/

复制代码

6、修改Server配置文件

  1. # vim /etc/zabbix/zabbix_server.conf
  2. DBUser=root
  3. DBPassword= sqlpassword
  4. LogFile=/usr/local/zabbix/zabbix_server.log

复制代码

7、复制 zabbix 到访问目录

  1. # mkdir /usr/local/apache/htdocs/zabbix
  2. # cp  -Rpf frontends/php/* /usr/local/apache/htdocs/zabbix/

复制代码

8、复制启动文件

  1. # cp misc/init.d/redhat/zabbix_server_ctl  /etc/init.d/zabbix_server
  2. # cp misc/init.d/redhat/zabbix_agentd_ctl /etc/init.d/zabbix_agentd
  3. 在编译配置中如果 --prefix=不是文档中所描述的, 需要在上面两个文件中改动项目“BASEDIR=“设置为新安装目录。
  4. # vi /etc/init.d/zabbix_agentd
  5. #base zabbix dir
  6. BASEDIR=/usr/local/zabbix

复制代码

9、开机自启动

  1. #echo '/etc/init.d/zabbix_server start &' >>/etc/rc.local
  2. #echo '/etc/init.d/zabbix_agentd start &' >>/etc/rc.local

复制代码

启动 zabbix

设置完成后,启动zabbix server与agent

  1. # /etc/init.d/zabbix_server start
  2. # /etc/init.d/zabbix_agentd start

复制代码

启动时提示错误:

zabbix_server: error while loading shared libraries: libmysqlclient.so.16: cannot open shared object file: No such file or directory
因为我的 mysql client 库不在系统默认库中,做以下修改后重新启动就可以了:

  1. echo "/usr/local/ mysql/lib/mysql" >> /etc/ld.so.conf
  2. ldconfig -v
  3. # /etc/init.d/zabbix_server start

复制代码

并且查看目标端口已打开

  1. #netstat -lnp |grep 1005
  2. tcp        0      0 0.0.0.0:10050               0.0.0.0:*                   LISTEN      9833/zabbix_agentd
  3. tcp        0      0 0.0.0.0:10051               0.0.0.0:*                   LISTEN      9774/zabbix_server

复制代码

ps 查看zabbix进程

  1. #ps aux |grep zabbix
  2. zabbix    9823  0.0  0.1  71800  1092 ?        S    14:33   0:00 /usr/local/zabbix/sbin/zabbix_server
  3. zabbix    9826  0.0  0.0  71800   936 ?        S    14:33   0:00 /usr/local/zabbix/sbin/zabbix_server
  4. zabbix    9833  0.0  0.0  14232   572 ?        S    14:33   0:00 /usr/local/zabbix/sbin/zabbix_agentd

复制代码

二、zabbix的WEB访问安装

首次访问进入安装界面:IP:/zabbix 
<ignore_js_op> 
访问过程中,页面会提示FAIL,根据FAIL项目更改PHP配置文件
根据需要修改PHP配置文件中如下项目

  1. vi /usr/local/php/ect/php.ini
  2. max_execution_time = 300
  3. max_input_time = 300
  4. date.timezone = Asia/Shanghai
  5. post_max_size = 32M
  6. memory_limit = 128M
  7. mbstring.func_overload = 2

复制代码

修改完成后, 使用 "Retry" 按钮刷新
<ignore_js_op> 
点击 "Next >> ", 进入第四步,请输入密码,然后点击 "Test connection" (注意默认不需要修改其他,只要填入密码就好,之后继续)
<ignore_js_op> 
<ignore_js_op> 
点击 “Save configuation file", 将下载的文件zabbix.conf.php, 拷贝到服务器的目录/usr/local/apache/htdocs/zabbix/conf/zabbix.conf.php去
之后安装成功
登录初始密码为:admin/zabbix
启动成功

三、zabbix client端设置
设置需要监控的服务器

1、首先需要下载安装包,由于Zabbix 在不同的操作系统上需要不同的安装包,应此首先需要去官方网站下载查看内核对应的安装包.
下载安装文件到需要监控的LINUX服务器,然后

  1. # mkdir /usr/local/zabbix
  2. # cd  /usr/local/zabbix
  3. # tar -zxvf  zabbix_agents_1.8.5.linux2_6.amd64.tar.gz
  4. # useradd zabbix
  5. #chown -R zabbix:zabbix /usr/local/zabbix

复制代码

2、登录到主服务器,将配置文件复制到需要监控的服务器上
放至/usr/local/zabbix中,并修改配置文件,参考如下:

  1. vi /usr/local/zabbix/zabbix_agentd.conf
  2. Hostname=hostname
  3. //本机主机名
  4. Server=server IP
  5. //Zabbix服务器IP
  6. LogFile=/usr/local/zabbix/zabbix_agentd.log

复制代码

3、运行:

  1. # /usr/local/zabbix/sbin/zabbix_agentd -c /usr/local/zabbix/zabbix_agentd.conf

复制代码

//可以使用命令查看是否运行:

  1. # ps aux | grep zabbix-agentd
  2. zabbix   27432  0.0  0.0  11460   884 ?        SN   15:30   0:00 /usr/local/zabbix/sbin/zabbix_agentd -c /usr/local/zabbix/zabbix_agentd.conf
  3. zabbix   27433  0.0  0.0  11456   596 ?        SN   15:30   0:00 /usr/local/zabbix/sbin/zabbix_agentd -c /usr/local/zabbix/zabbix_agentd.conf

复制代码

//查看日志:

  1. #tail -f /usr/local/zabbix/zabbix_agentd.log

复制代码

4、主机与client连接测试:

  1. # netstat -lnp|grep 1005
  2. //首先确定端口是否开启,主机10050, 10051说明系统服务已经启动, client端口10050启动
  3. //主机端测试
  4. # /usr/local/zabbix/bin/zabbix_get -s  client_IP -k "agent.version"
  5. 1.8.5

复制代码

//出现版本数,说明网络服务已经畅通

install :

yum install -y zabbix20 zabbix20-agent zabbix20-server zabbix20-server-mysql zabbix-web zabbix-web-mysql net-snmp-devel

start:

/etc/init.d/zabbix-server start;etc/init.d/zabbix-agent start

/etc/init.d/httpd start ; /etc/init.d/mysqld start

zabbix-server可能启动不起来,需连上mysql

configure mysql:

mysql -uroot -p -e "create database zabbix"

mysql -uroot -p --default-character-set=utf8 zabbix < /usr/share/zabbix-mysql/schema.sql

mysql -uroot -p --default-character-set=utf8 zabbix < /usr/share/zabbix-mysql/images.sql

mysql -uroot -p --default-character-set=utf8 zabbix </usr/share/zabbix-mysql/data.sql

mysql -uroot -e "grant all on *.* to 'zabbix'@'127.0.0.1' identified by  'passw0rd'"

vim /etc/zabbix/zabbix-server.conf

DBName....

192.168.1.15/zabbix

web install zabbix

PHP configure for adjust

vim /etc/php.ini

post_max_size = 16M

max_execution_time = 300

max_input_time =300

/etc/init.d/httpd restart

account:password,admin:zabbix

add client 接入要监控的主机:

yum install -y zabbix20-agent

vim /etc/zabbix_agentd.conf

Server=服务端的IP

ServerActive=监听的服务,0.0.0.0/10050监听所有的ip

HostName=自定义

启动:/etc/init.d/zabbix-agent start

服务端检测:zabbix_get -s 192.168.1.16 -p10050 -k "system.hostname"

web configure

配置邮件警告:

yum install -y sendmail or postfix

/etc/init.d/postfix start

mail -s "test" 3354509516@qq.com < /etc/inittab

mkdir -p /home/zabbix/bin 发邮件的脚本

vim /home/zabbix/bin/warn.sh

#!/sbin/bash($1:邮件接受者$2:主题$3:邮件内容)

echo "$3" |/bin/mail -s "$2" $1

chmod +x !$

vim /etc/zabbix-server.conf

AlertScriptsPath = /home/zabbix/bin

ExternaScripts=/home/zabbix/bin

Linux-监控与安全运维之zabbix的更多相关文章

  1. Linux监控和安全运维 1.9 zabbix增加客户端监控

    1.在客户端安装 zabbix20与服务器相对应. yum install zabbix20-agent 2.修改配置文件 vim /etc/zabbix_agentd.conf Server=127 ...

  2. Linux监控和安全运维 2.0 zabbix配置邮件告警

    1.发邮件启动postfix /etc/init.d/postfix start mail -s @qq.com < /etc/inittab mailq 查看发送结果 2.配置发邮件文件 mk ...

  3. Linux实战型企业运维工程师试题测评

    Linux实战型企业运维工程师试题答案 作者:尹正杰      最近在网上看到了一套有意思的面试题,我们一起来看一下这些题怎么破吧,哈哈~我先放在这里,有时间了一起来看看.多学点东西终究是没有坏处的! ...

  4. Python Linux系统管理与自动化运维

    Python Linux系统管理与自动化运维 前言 第1章Python语言与Linux系统管理1 1.1Python语言有多流行1 1.2Python语言为什么流行3 1.3Python语言有什么缺点 ...

  5. Linux实战型企业运维工程师试题

    1.如何通过Linux配置一个局域网或者IDC机房上网网关,请给出步骤及命令?答:上网网关配置(1)开启内核转发:sed -i 's#net.ipv4.ip_forward = 0#net.ipv4. ...

  6. Linux下性能调试工具运维笔记

    作为一名资深的linux运维工程师,为方便了解和追求服务器的高性能,如cpu.内存.io.网络等等使用情况,要求运维工程师必须要熟练运用一些必要的系统性能调试工具,liunx下提供了众多命令方便查看各 ...

  7. linux平台下server运维问题分析与定位

    结合我工作中碰到的运维问题,总结一下Linux下server常见的运维问题以及定位方式.这里的server主要指自主开发的逻辑server,web srv因为通常采用通用的架构所以问题比较少. 逻辑s ...

  8. 监控和安全运维 1.4 nagios安装

    1. Nagios 简介是一个开源软件,可以监控网络设备网络流量.Linux/windows主机状态,甚至可以监控打印机它可以运行在Linux上或windows上基于浏览器的web界面方便运维人员查看 ...

  9. linux系列之常用运维命令整理笔录

    目录 本博客记录工作中需要的linux运维命令,大学时候开始接触linux,会一些基本操作,可是都没有整理起来,加上是做开发,不做运维,有些命令忘记了,所以现在整理成博客,当然vi,文件操作等就不介绍 ...

  10. 基于Linux平台的自动化运维Devops-----之自动化系统部署

    一.自动化运维的背景网站业务上线,需要运维人员在短时间内完成几百台服务器部署,包括系统安装.系统初始化.软件的安装与配置.性能的监控......所谓运维自动化,即在最少的人工干预下,利用脚本与第三方工 ...

随机推荐

  1. Arcgis License的安装及破解

    1.双击LicenseManager安装目录下的Setup.exe. 2.点击“Next”. 3.选择“I accept the license agreement”,点击“Next”. 4.点击“C ...

  2. Python命令行执行.py文件提示ModuleNotFoundError:No module named 'XXX'解决办法

    原因:在命令行执行.py文件找不到包是因为我们没有把项目路径保存,可以通过sys.path.append()保存项目路径,执行后就能成功. ############################## ...

  3. Windows程序卡顿、无响应问题定位

    当windows程序出现异常.界面卡顿.无响应情况时,在有工程和源码的情况下,程序员通常是打开IDE,在DEBUG模式下进行调试.但如果是一个RELEASE程序,且无调试环境,该如何来定位呢. 这里介 ...

  4. Spring Boot 整合视图层技术,application全局配置文件

    目录 Spring Boot 整合视图层技术 Spring Boot 整合jsp Spring Boot 整合freemarker Spring Boot 整合视图层技术 Spring Boot 整合 ...

  5. 感染(low)bfs 、感染(mid) 二分、感染(high) 二分 + 维护单调 队列去除无用的点

    感染(low) Description n户人家住在一条直线上,从左往右依次编号为1,2,-,n.起初,有m户人家感染了COVID-19,而接下来的每天感染的人家都会感染他家左右两家的人,问t天后总共 ...

  6. MySQL 同步复制及高可用方案总结

    1.前言 mysql作为应用程序的数据存储服务,要实现mysql数据库的高可用.必然要使用的技术就是数据库的复制,如果主节点出现故障可以手动的切换应用到从节点,这点相信运维同学都是知道,并且可以实现的 ...

  7. 剖析手写Vue,你也可以手写一个MVVM框架

    剖析手写Vue,你也可以手写一个MVVM框架# 邮箱:563995050@qq.com github: https://github.com/xiaoqiuxiong 作者:肖秋雄(eddy) 温馨提 ...

  8. Windows之wsl简单配置

    Windows的wsl是Windows环境下启动的一个Linux环境,通常我们安装的是Ubuntu版本. 1.安装和简单配置 这里推荐一个文章,按照文章一步一步完全做就行 https://www.ji ...

  9. Spring MVC 笔记--配置基于JavaConfig

    主要使用基于 JavaConfig 方式配置 配置 DispatcherServlet 通过继承抽象类AbstractAnnotationConfigDispatcherServletInitiali ...

  10. MariaDB使用数据库查询《三》

                                                                 MariaDB使用数据库查询 案例5:使用数据库查询 5.1 问题 本例要求配 ...