Zabbix学习之路(一)之Zabbix安装
-
一、Zabbix环境准备
[root@linux-node1 ~]# cat /etc/redhat-release CentOS Linux release 7.4.1708 (Core) [root@linux-node1 ~]# uname -r 3.10.0-693.5.2.el7.x86_64 [root@linux-node1 ~]# getenforce Disabled [root@linux-node1 ~]# systemctl stop firewalld Failed to stop firewalld.service: Unit firewalld.service not loaded. [root@linux-node1 ~]# ifconfig eth0|awk -F '[ :]+' 'NR==2{print $3}' 192.168.56.11 [root@linux-node1 ~]# hostname linux-node1 [root@linux-node1 ~]# yum install -y ntpdate [root@linux-node1 ~]# ntpdate time1.aliyun.com [root@linux-node1 ~]# crontab -e */5 * * * * /usr/sbin/ntpdate time1.aliyun.com &>/dev/null
-
二、Zabbix安装
Zabbix存储配置包以及yum配置文件 [root@linux-node1 ~]# rpm -ivh http://mirrors.aliyun.com/zabbix/zabbix/3.0/rhel/7/x86_64/zabbix-release-3.0-1.el7.noarch.rpm [root@linux-node1 ~]# yum list |grep zabbix Zabbix程序包安装,以及MySQL、Zabbix-agent [root@linux-node1 ~]# yum install -y zabbix-server-mysql zabbix-web-mysql mariadb-server zabbix-agent
-
三、初始化数据库
创建Zabbix数据库以及用户 [root@linux-node1 ~]# systemctl start mariadb [root@linux-node1 ~]# mysql_secure_installation NOTE: RUNNING ALL PARTS OF THIS SCRIPT IS RECOMMENDED FOR ALL MariaDB SERVERS IN PRODUCTION USE! PLEASE READ EACH STEP CAREFULLY! In order to log into MariaDB to secure it, we'll need the current password for the root user. If you've just installed MariaDB, and you haven't set the root password yet, the password will be blank, so you should just press enter here. Enter current password for root (enter for none): OK, successfully used password, moving on... Setting the root password ensures that nobody can log into the MariaDB root user without the proper authorisation. Set root password? [Y/n] Y New password: 123456 Re-enter new password: 123456 Password updated successfully! Reloading privilege tables.. ... Success! [root@linux-node1 ~]# mysql -uroot -p Enter password: 123456 Welcome to the MariaDB monitor. Commands end with ; or \g. Your MariaDB connection id is 10 Server version: 10.1.20-MariaDB MariaDB Server Copyright (c) 2000, 2016, Oracle, MariaDB Corporation Ab and others. Type 'help;' or '\h' for help. Type '\c' to clear the current input statement. MariaDB [(none)]> create database zabbix character set utf8 collate utf8_bin; Query OK, 1 row affected (0.00 sec) MariaDB [(none)]> grant all privileges on zabbix.* to zabbix@localhost identified by 'zabbix'; Query OK, 0 rows affected (0.00 sec) MariaDB [(none)]> flush privileges; Query OK, 0 rows affected (0.00 sec) MariaDB [(none)]> quit; Bye 导入初始模式和数据: [root@linux-node1 ~]# zcat /usr/share/doc/zabbix-server-mysql-3.0.13/create.sql.gz |mysql -uzabbix -p zabbix Enter password: zabbix [root@linux-node1 ~]# mysql -uroot -p123456 -e "use zabbix;show tables;" +----------------------------+ | Tables_in_zabbix | +----------------------------+ | acknowledges | | actions | | alerts | | application_discovery | | application_prototype | | application_template | | applications | | auditlog | | auditlog_details | | autoreg_host | | conditions | | config | |...... | +----------------------------+
-
四、Zabbix服务器进程启动
在Zabbix_server.conf编辑数据库配置 [root@linux-node1 ~]# grep ^[a-Z] /etc/zabbix/zabbix_server.conf LogFile=/var/log/zabbix/zabbix_server.log LogFileSize=0 PidFile=/var/run/zabbix/zabbix_server.pid DBHost=localhost DBName=zabbix DBUser=zabbix DBPassword=zabbix SNMPTrapperFile=/var/log/snmptrap/snmptrap.log Timeout=4 AlertScriptsPath=/usr/lib/zabbix/alertscripts ExternalScripts=/usr/lib/zabbix/externalscripts LogSlowQueries=3000 启动Zabbix服务器进程 [root@linux-node1 ~]# systemctl enable zabbix-server#默认端口为10051 [root@linux-node1 ~]# systemctl start zabbix-server
-
五、编辑Zabbix前端PHP配置
Apache的配置文件/etc/httpd/conf.d/zabbix.conf,取消注释,设置正确的时区:Asia/Shanghai [root@linux-node1 ~]# vim /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 Web服务器 [root@linux-node1 ~]# vim /etc/httpd/conf/httpd.conf Severname 127.0.0.1:80 [root@linux-node1 ~]# systemctl enable httpd.service Created symlink from /etc/systemd/system/multi-user.target.wants/httpd.service to /usr/lib/systemd/system/httpd.service. [root@linux-node1 ~]# systemctl start httpd.service [root@linux-node1 ~]# netstat -lntp Active Internet connections (only servers) Proto Recv-Q Send-Q Local Address Foreign Address State PID/Program name tcp 0 0 0.0.0.0:22 0.0.0.0:* LISTEN 863/sshd tcp 0 0 127.0.0.1:25 0.0.0.0:* LISTEN 2085/master tcp6 0 0 :::80 :::* LISTEN 21955/httpd tcp6 0 0 :::22 :::* LISTEN 863/sshd tcp6 0 0 ::1:25 :::* LISTEN 2085/master tcp6 0 0 :::3306 :::* LISTEN 21820/mysqld
-
六、Zabbix的web安装
step1:
在浏览器中,打开Zabbix URL:http:// <server_ip_or_name> / zabbix
step2:
确保满足所有软件的先决条件。
step3:
输入连接到数据库的详细信息。Zabbix数据库必须已经创建。
step4:
输入Zabbix服务器的详细信息。
step5:
查看设置摘要。
step6:
完成安装,会在/etc/zabbix/web/zabbix.conf.php生成配置文件
当数据库遇到瓶劲,在进行数据库拆分的时候,需要修改配置文件/etc/zabbix/web/zabbix.conf.php,指向新的数据库地址。 [root@linux-node1 ~]# vim /etc/zabbix/web/zabbix.conf.php <?php // Zabbix GUI configuration file. global $DB; $DB['TYPE'] = 'MYSQL'; $DB['SERVER'] = 'localhost'; $DB['PORT'] = '0'; $DB['DATABASE'] = 'zabbix'; $DB['USER'] = 'zabbix'; $DB['PASSWORD'] = 'zabbix'; // Schema name. Used for IBM DB2 and PostgreSQL. $DB['SCHEMA'] = ''; $ZBX_SERVER = 'localhost'; $ZBX_SERVER_PORT = '10051'; $ZBX_SERVER_NAME = ''; $IMAGE_FORMAT_DEFAULT = IMAGE_FORMAT_PNG;
step7:
Zabbix前端准备就绪!默认的用户名是Admin,密码zabbix。
Don't forget the beginner's mind