共计 6507 个字符,预计需要花费 17 分钟才能阅读完成。
Zabbix 的进程
默认情况下 zabbix 包含 5 个程序:zabbix_agentd、zabbix_get、zabbix_proxy、zabbix_sender、zabbix_server,另外一个 zabbix_java_gateway 是可选,这个需要另外安装。下面来分别介绍下他们各自的作用。
zabbix_agentd 客户端守护进程,此进程收集客户端数据,例如 cpu 负载、内存、硬盘使用情况等。
zabbix_getzabbix 工具,单独使用的命令,通常在 server 或者 proxy 端执行获取远程客户端信息的命令。通常用户排错。例如在 server 端获取不到客户端的内存数据,我们可以使用 zabbix_get 获取客户端的内容的方式来做故障排查。
zabbix_senderzabbix 工具,用于发送数据给 server 或者 proxy,通常用于耗时比较长的检查。很多检查非常耗时间,导致 zabbix 超时。于是我们在脚本执行完毕之后,使用 sender 主动提交数据。
zabbix_serverzabbix 服务端守护进程。zabbix_agentd、zabbix_get、zabbix_sender、zabbix_proxy、zabbix_java_gateway 的数据最终都是提交到 server
备注:当然不是数据都是主动提交给 zabbix_server, 也有的是 server 主动去取数据。
zabbix_proxyzabbix 代理守护进程。功能类似 server,唯一不同的是它只是一个中转站,它需要把收集到的数据提交 / 被提交到 server 里。为什么要用代理?代理是做什么的?卖个关子,请继续关注运维生存时间 zabbix 教程系列。
zabbix_java_gatewayzabbix2.0 之后引入的一个功能。顾名思义:Java 网关,类似 agentd,但是只用于 Java 方面。需要特别注意的是,它只能主动去获取数据,而不能被动获取数据。它的数据最终会给到 server 或者 proxy。
1. 官方文档地址:
https://www.zabbix.com/documentation/3.2/manual/installation/install_from_packages
2. 导入源:
rpm -ivh http://repo.zabbix.com/zabbix/3.0/rhel/7/x86_64/zabbix-release-3.0-1.el7.noarch.rpm
3. 安装 zabbix 包
yum install zabbix-server-mysql zabbix-web-mysql
清楚的看一下要安装那些包(httpd php 基本都依赖安装了)
Package Arch Version Repository Size
=====================================================================================================================
Installing:
zabbix-server-mysql x86_64 3.0.1-1.el7 zabbix 1.7 M
zabbix-web-mysql noarch 3.0.1-1.el7 zabbix 3.5 k
Installing for dependencies:
OpenIPMI-libs x86_64 2.0.19-11.el7 base 501 k
OpenIPMI-modalias x86_64 2.0.19-11.el7 base 15 k
dejavu-fonts-common noarch 2.33-6.el7 base 64 k
dejavu-sans-fonts noarch 2.33-6.el7 base 1.4 M
fping x86_64 3.10-4.el7 epel 46 k
httpd x86_64 2.4.6-40.el7.CentOS base 2.7 M
httpd-tools x86_64 2.4.6-40.el7.centos base 82 k
iksemel x86_64 1.4-6.el7 epel 50 k
libtool-ltdl x86_64 2.4.2-21.el7_2 updates 49 k
libzip x86_64 0.10.1-8.el7 base 48 k
mailcap noarch 2.1.41-2.el7 base 31 k
net-snmp-libs x86_64 1:5.7.2-24.el7 base 747 k
php x86_64 5.4.16-36.el7_1 base 1.4 M
php-bcmath x86_64 5.4.16-36.el7_1 base 56 k
php-cli x86_64 5.4.16-36.el7_1 base 2.7 M
php-common x86_64 5.4.16-36.el7_1 base 563 k
php-gd x86_64 5.4.16-36.el7_1 base 126 k
php-ldap x86_64 5.4.16-36.el7_1 base 51 k
php-mbstring x86_64 5.4.16-36.el7_1 base 503 k
php-mysql x86_64 5.4.16-36.el7_1 base 99 k
php-pdo x86_64 5.4.16-36.el7_1 base 97 k
php-xml x86_64 5.4.16-36.el7_1 base 124 k
t1lib x86_64 5.1.2-14.el7 base 166 k
unixODBC x86_64 2.3.1-11.el7 base 413 k
zabbix-web noarch 3.0.1-1.el7 zabbix 3.3 M
Transaction Summary
=============================================================================================================================================
Install 2 Packages (+25 Dependent packages)
Total download size: 17 M
4. 我们给本机也安装上客户端(如果服务端不需要监控略过此步)
yum install zabbix-agent
5. 安装 mysql 数据库
CentOS 7 版本将 MySQL 数据库软件从默认的程序列表中移除,用 mariadb 代替了。用 mariadb 也行。我还是选择了 mysql
# 导入安装源
rpm -ivh mysql-community-release-el7-5.noarch.rpm
# 用 yum 安装 Mysql
yum install mysql-community-server
systemctl enable mysqld #设置开机启动
systemctl start mysqld #启动服务
=================================================
备注:1 mysql 安装完成之后,在 /var/log/mysqld.log 文件中给 root 生成了一个默认密码
2 grep ‘temporary password’ /var/log/mysqld.log 找到 root 默认密码
3 mysql5.7 默认安装了密码安全检查插件(validate_password),默认密码检查策略要求密码必须包含:大小写字母、数字和特殊符号,并且长度不能少于 8 位。否则会提示 ERROR 1819 (HY000): Your password does not satisfy the current policy requirements 错误
===================================================
# 修改 root 本地登录密码
mysqladmin -u root -p oldpass password “Admin@123”
# 登录 mysql
mysql -uroot -p
mysql> create database zabbix character set utf8 collate utf8_bin;
Query OK, 1 row affected (0.00 sec)
mysql> grant all privileges on zabbix.* to zabbix@localhost identified by ‘Admin@123’;
Query OK, 0 rows affected (0.00 sec)
mysql> quit
Bye
(2)进入到这个目录
cd /usr/share/doc/zabbix-server-mysql-3.0.8
运行命令
zcat create.sql.gz | mysql -uroot -p zabbix
6. 启动 zabbix server 服务
修改配置文件:
vi /etc/zabbix/zabbix_server.conf
DBHost=localhost
DBName=zabbix
DBUser=zabbix
DBPassword=Admin@123
备注:实际上我的配置文件修改的是 DBHost 和 DBPassword 去掉前面的 #号。
启动 zabbix 服务,设置开机自启动
systemctl start zabbix-server
systemctl enable zabbix-server
7. 编辑 zabbix 前端的 PHP 配合配置
vi /etc/httpd/conf.d/zabbix.conf
php_value max_execution_time 300
php_value memory_limit 128M
php_value post_max_size 16M
php_value upload_max_filesize 2M
php_value max_input_time 300
php_value always_populate_raw_post_data -1
php_value date.timezone Asia/Shanghai
备注:实际上我就是修改了时区
启动 apache 服务,设置开机自启动
systemctl start httpd
systemctl enable httpd
8. 登陆 zabbix
http://IP/zabbix/
显示的界面
点击 next 会出现检查状态:
点击 next 配置 mysql:
点击下一步。此步出现错误,发现无法连接数据库,最后发现 zabbix 这个数据库中,没有任何数据,检查时加红色的那部分出问题。
next 到最后
默认用户名 / 密码:Admin/zabbix
进入主页面:下面进行,将语言改为中文。
[zabbix@linuxidc zabbix-server-mysql-.]$ vim /usr/share/zabbix/include/locales.inc.php
找到第 55 行,将 false 改为 true
点击 zabbix 右上角小人,进行修改:
一些 Zabbix 相关教程集合:
Ubuntu 14.04 下 Zabbix2.4.5 源码编译安装 http://www.linuxidc.com/Linux/2015-05/117657.htm
安装部署分布式监控系统 Zabbix 2.06 http://www.linuxidc.com/Linux/2013-07/86942.htm
《安装部署分布式监控系统 Zabbix 2.06》http://www.linuxidc.com/Linux/2013-07/86942.htm
CentOS 6.3 下 Zabbix 安装部署 http://www.linuxidc.com/Linux/2013-05/83786.htm
Zabbix 分布式监控系统实践 http://www.linuxidc.com/Linux/2013-06/85758.htm
CentOS 6.3 下 Zabbix 监控 apache server-status http://www.linuxidc.com/Linux/2013-05/84740.htm
CentOS 6.3 下 Zabbix 监控 MySQL 数据库参数 http://www.linuxidc.com/Linux/2013-05/84800.htm
64 位 CentOS 6.2 下安装 Zabbix 2.0.6 http://www.linuxidc.com/Linux/2014-11/109541.htm
ZABBIX 的详细介绍:请点这里
ZABBIX 的下载地址:请点这里
本文永久更新链接地址:http://www.linuxidc.com/Linux/2017-03/141716.htm