1、zabbix server安装
1、配置yum源
vim /etc/yum.repos.d/zabbix.repo [zabbix] name=zabbix baseurl=https://repo.zabbix.com/zabbix/3.0/rhel/7/x86_64/ gpgcheck=0 enabled=1
2、
yum install zabbix-server-mysql zabbix-get # 若报以下错误 Error: Package: zabbix-server-mysql-3.0.32-1.el7.x86_64 (zabbix) Requires: libiksemel.so.3()(64bit) You could try using --skip-broken to work around the problem You could try running: rpm -Va --nofiles --nodigest # Requires: libiksemel.so.3()(64bit)依赖错误的解决 wget http://springdale.math.ias.edu/data/puias/unsupported/7/x86_64//iksemel-1.4-6.sdl7.x86_64.rpm yum install iksemel-1.4-6.sdl7.x86_64.rpm
3、安装mysql
# wget命令获得压缩包 wget https://mirrors.cloud.tencent.com/mysql/downloads/MySQL-5.7/mysql-5.7.34-el7-x86_64.tar.gz # 创建用户 groupadd mysql useradd -g mysql mysql -d /home/mysql passwd mysql # 解压mysql安装包,位置/opt/app tar -xf mysql-5.7.34-el7-x86_64.tar.gz mv mysql-5.7.34-el7-x86_64 mysql chown -R mysql:mysql mysql/ # 创建数据及log存放目录 mkdir -p /opt/app/MYINSTANCES/3306/{logs,data} # /opt/app/MYINSTANCES目录下可以放多个实例目录 # 实例子目录以实例启用端口做区别 # logs目录存放实例相关日志 # data目录存放实例数据文件 # 创建存放mysql.sock的目录,这个其实也可以创建在/opt/app/MYINSTANCES/3306目录下,只不过在部署好zabbix server后,页面配置数据库时mysql.sock不在此位置出现了报错 mkdir /var/lib/mysql # 授权 chown -R mysql:mysql /opt/app/MYINSTANCES chown -R mysql:mysql /var/lib/mysql # 初始化实例 mysqld --initialize-insecure \ # 非安全初始化, 初始化后MySQL的root可无密码登录, 之后需求手动修改 --datadir=/opt/app/MYINSTANCES/3306/data # 实例数据目录 --basedir=/opt/app/mysql # mysql软件目录 --user=mysql # 运行实例账户 # 配置实例 vi /opt/app/MYINSTANCES/3306/my.cnf [client] port = 3306 #socket = /opt/app/MYINSTANCES/3306/tmp/mysql.sock socket=/var/lib/mysql/mysql.sock [mysqld] character_set_server=utf8 init_connect='SET NAMES utf8' basedir=/opt/app/mysql datadir=/opt/app/MYINSTANCES/3306/data #socket=/opt/app/MYINSTANCES/3306/tmp/mysql.sock socket=/var/lib/mysql/mysql.sock log-error=/opt/app/MYINSTANCES/3306/logs/mysqld.log pid-file=/opt/app/MYINSTANCES/3306/tmp/mysqld.pid # 不区分大小写 lower_case_table_names = 1 sql_mode=STRICT_TRANS_TABLES,NO_ZERO_IN_DATE,NO_ZERO_DATE,ERROR_FOR_DIVISION_BY_ZERO,NO_AUTO_CREATE_USER,NO_ENGINE_SUBSTITUTION max_connections=5000 default-time_zone = '+8:00' # 启动实例 mysqld_safe --defaults-file=/opt/app/MYINSTANCES/3306/my.cnf > /opt/app/MYINSTANCES/3306/logs/sys.log 2>&1 & # 修改root密码 mysql -S /var/lib/mysql/mysql.sock -uroot mysql> ALTER USER 'root'@'localhost' IDENTIFIED WITH mysql_native_password BY 'XXXX'; # 创建zabbix库 create database zabbix;
4、初始化sql脚本
安装zabbix--server-mysql zabbix-get后输命令rpm -ql zabbix--server-mysql,可以找到sql脚本存放位置/usr/share/doc/zabbix-server-mysql-3.0.32,解压获取
执行命令
mysql -S /var/lib/mysql/mysql.sock -uroot -p -Dzabbix < /usr/share/doc/zabbix-server-mysql-3.0.32/create.sql
登入mysql查看
mysql -uroot -p
use zabbix;
show tables;
5、配置zabbix server端并启动
vim /etc/zabbix/zabbix_server.conf 此处列出我们可能会经常修改的参数,如下: ListenPort=10051 #服务端监听的端口,保持默认即可 SourceIP= #通过SourceIP参数可以指定服务端的源IP,当server端有多个IP地址时,我们可以指定服务端使用固定的IP与agent端进行通讯,为了安全起见,agent端会基于IP进行一定的访问控制,也就是说agent端只允许指定的IP以server端的身份采集被监控主机的数据,如果IP不对应,则不允许采集被监控主机的数据,所以,当server端有多个IP时,我们可以通过SourceIP参数,指定server端通过哪个IP采集被监控主机的数据。 LogType=file #通过LogType参数,可以指定通过哪种方式记录日志,此参数可以设置为三种值,system、file、console,system表示将日志发往syslog,file表示使用指定的文件作为日志文件,console表示将日志发往控制台,默认为file。 LogFile=/var/log/zabbix/zabbix_server.log #当LogType设置为file时,通过LogFile参数设置日志文件位置。 LogFileSize=0 #指明日志文件达到多大时自动滚动,单位为MB,如果设置LogFileSize为50,表示日志大小达到50MB滚动一次,设置为0表示日志文件不会滚动,所有日志保存在一个文件中。 DebugLevel=3 #通过DebugLevel参数可以定义日志的详细程度,即为日志级别。 DBHost=localhost #通过DBHost参数设置zabbix数据库所在的服务器IP,由于此处zabbix与mysql安装在同一服务器上,所以此处设置为localhost DBName=zabbix #通过DBName指定zabbix数据库对应的名称 DBUser=root #通过DBUser指定zabbix数据库用户名 DBPassword=123456 #通过DBPassword指定zabbix数据库用户的密码 DBPort=3306 #通过DBPort指定zabbix所在数据库服务监听的端口号 DBSocket=/var/lib/mysql/mysql.sock #如果数据库服务与server端在同一台服务器上,可以通过DBSocket指定数据库本地套接字文件位置,但是需要注意,即使设置了mysql套接字文件的位置,还是需要配合DBHost参数,否则在登录zabbix控制台时,可能会出现警告,在zabbix server的log中,也可能会出现无法连接到数据库的提示。 # 启动 systemctl start zabbix-server.service
6、安装zabbix web
yum install zabbix-web zabbix-web-mysql # zabbix web可以安装在单独的主机上,只要能连接到zabbix database所在的数据库即可,但是此处为了方便,我们将zabbix web与 mysql以及 zabbix server安装在同一台服务器上。因为zabbix web需要lamp环境,所以,此处我们将会依赖到的环境先安装好。 yum install zabbix-web zabbix-web-mysql # zabbix还是比较贴心的,针对httpd,zabbix-web包中已经包含了对应zabbix文档路径的配置文件。针对zabbix web的文档路径,此文件中已经为我们准备好了默认配置,如果不使用httpd的虚拟主机,只要将时区稍加改动即可直接使用。 <VirtualHost *:80> DocumentRoot /usr/share/zabbix Alias /zabbix /usr/share/zabbix <Directory "/usr/share/zabbix"> Options FollowSymLinks AllowOverride None Require all granted <IfModule mod_php5.c> 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 max_input_vars 10000 php_value always_populate_raw_post_data -1 php_value date.timezone Asia/Shanghai </IfModule> </Directory> <Directory "/usr/share/zabbix/conf"> Require all denied </Directory> <Directory "/usr/share/zabbix/app"> Require all denied </Directory> <Directory "/usr/share/zabbix/include"> Require all denied </Directory> <Directory "/usr/share/zabbix/local"> Require all denied </Directory> </VirtualHost> # 启动httpd systemctl start httpd
访问http://ip:80/zabbix
点击Next step要配置下mysql,server。。。配置完成后没问题则会到这个页面
接下来配置mysql,配置server都没问题后跳转到下面的界面
点击Finsh转到登录页面,默认账号Admin,密码zabbix,成功后进入zabbix首页
更改成中文显示
【参考:https://www.zsythink.net/archives/500】