zabbix 的安装
01、最小化安装操作系统
02、升级系统组件到最新版本
sudo yum -y update
03、关闭 SELinux
sudo sed -i "s/SELINUX=enforcing/SELINUX=disabled/g" /etc/selinux/config
04、关闭防火墙
sudo systemctl stop firewalld.service && systemctl disable firewalld.service
完成3、4两步,重启一下。
05、安装mysql
#获取sql源 sudo rpm -Uvh https://dev.mysql.com/get/mysql57-community-release-el7-11.noarch.rpm #安装mysql sudo yum install mysql-* --skip-broken #有冲突的软件跳过
06、安装apache
#安装apache
sudo yum -y install httpd #启动apache systemctl start httpd.service #启动
systemctl enable httpd.service #开机启动
#其他
systemctl stop httpd.service #停止
systemctl restart httpd.service #重启
systemctl disable httpd.service #开机不启动
备注:因为apache 监听端口默认为80,此时最好校验一下apache 80端口是否正常
apache 80端口验证: 1.浏览器是否能打开网页 http://ip/ 若打开网页成功,代表80端口没有问题。如果打不开: 2.验证httpd进程是否开启 ps aux | grep httpd 3.查看网络端口是否正常 netstat -anltp | grep 80 4.查看httpd的状态,看是什么错误。
systemctl status httpd
5.根据错误信息,去百度查错。
如:1.Could not reliably determine the server's fully qualified domain name 办法:vi /.../httpd.conf 加入一句 ServerName localhost:80
· 2.查看status也没有问题,那么就要考虑防火墙和selinux 是否关闭了。
07、安装php
#安装php sudo yum install php
#安装php扩展(共两步) sudo yum install php-mysqlnd php-gd libjpeg* php-snmp php-ldap php-odbc php-pear php-xml php-xmlrpc php-mbstring php-bcmath php-mhash php-common php-ctype php-xml php-xmlreader php-xmlwriter php-session php-mbstring php-gettext php-ldap php-mysqli --skip-broken sudo yum install wget telnet net-tools python-paramiko gcc gcc-c++ dejavu-sans-fonts python-setuptools python-devel sendmail mailx net-snmp net-snmp-devel net-snmp-utils freetype-devel libpng-devel perl unbound libtasn1-devel p11-kit-devel OpenIPMI unixODBC
08、设置 MySQL 参数(8GB 内存为例)
sudo vim /etc/my.cnf 不然没权限保存
在文件最后添加以下内容:
innodb_file_per_table = 1 innodb_status_file = 1 innodb_buffer_pool_size = 6G #原则上这个为物理内存的2/3 innodb_flush_log_at_trx_commit = 2 innodb_log_buffer_size = 16M innodb_log_file_size = 64M innodb_support_xa = 0 default-storage-engine = innodb bulk_insert_buffer_size = 8M join_buffer_size = 16M max_heap_table_size = 32M tmp_table_size = 32M max_tmp_tables = 48 read_buffer_size = 32M read_rnd_buffer_size = 16M key_buffer_size = 32M thread_cache_size = 32 innodb_thread_concurrency = 8 innodb_flush_method = O_DIRECT innodb_rollback_on_timeout = 1 query_cache_size = 16M query_cache_limit = 16M collation_server = utf8_bin character_set_server = utf8
09、启动mysql
sudo systemctl enable mysqld && systemctl start mysqld
10、获取mysql初始密码
grep 'temporary password' /var/log/mysqld.log
11.更改初始密码
配置开始时会用到第 10获取的初始密码,建议修改为自定义密码,其它选项选择 y 即可,new 密码设置成简单密码就行:123456
mysql_secure_installation
也许此时的你就会发现,他会一直提示密码过于简单,或者在第10步你就发现mysql并没有初始密码怎么办?
1、关闭MySQL sudo service mysqld stop 2、使用--skip-grant-tables 重启MySQL sudo mysqld --skip-grant-tables --skip-grant-tables:此选项会让MySQL服务器跳过验证步骤,允许所有用户以匿名的方式,无需做密码验证直接登陆MySQL服务器,并且拥有所有的操作权限。
3、本地连接mysql shell> mysql
4、设置密码强度
mysql>set global validate_password_policy=0; #密码强度设为最低等级
mysql>set global validate_password_length=4; #密码允许最小长度为4
5、重置密码
在重置密码前,先要重载授权表:
mysql> flush privileges;
MySQL 5.7.6+:
mysql> ALTER USER 'root'@'localhost' IDENTIFIED BY 'MyNewPass';
MySQL 5.7.5以及之前的版本
mysql> SET PASSWORD FOR 'root'@'localhost' = PASSWORD('MyNewPass');
6、重启服务器
service mysqld restart
7、登录mysql
mysql -u root -p
8、登录后,可能提示你需要更新密码。那么就再重复第11步(更改初始密码),即可
12、配置 MySQL 中 zabbix所需的库和账号权限
mysql -u root -p(需要输入第 11步中设置的自定义密码) mysql>create database zabbix character set utf8; #创建一个叫zabbix的数据库 mysql>create user zabbix@'%' identified by '123456'; #创建用户和密码 mysql>grant all privileges on zabbix.* to zabbix@'%'; #赋权,将zabbix数据库的访问权限赋给zabbix 用户, mysql>flush privileges; mysql>exit;
13、安装 Zabbix源
sudo rpm -ivh http://repo.zabbix.com/zabbix/3.4/rhel/7/x86_64/zabbix-release-3.4-2.el7.noarch.rpm
此处坑又来了,因为后面要下载安装zabbix配套软件,所以这就要求zabbix版本和后面软件版本配套。
我们知道yum时,系统会自动选择最新版的下载,所以建议zabbix也直接去官网中获取,官网地址:https://www.zabbix.com/download
14、安装配套软件
yum install zabbix-server-mysql zabbix-web-mysql zabbix-agent
15、将表结构导入zabbix 数据库中
zcat /usr/share/doc/zabbix-server-mysql*/create.sql.gz | mysql -uroot -p zabbix
16、修改zabbix_server,保证zabbixserver能访问mysql
cd /etc/zabbix/zabbix_server.conf
修改DBPassword=password,将密码改为mysql数据库的zabbix用户对应的密码
17、更改时区,让时间变成真实的
cd /etc/httpd/conf.d/zabbix.conf php_value date.timezone Europe/Riga 取消注释
18、启动zabbix 服务
# systemctl restart zabbix-server zabbix-agent httpd
# systemctl enable zabbix-server zabbix-agent httpd
19、网页上登录zabbix
地址为:http://server_ip_or_name/zabbix
备注:此时坑再次出现,前面所有东西感觉都没有错,为啥就是登不进去呢
这是因为,zabbix 对应的html欢迎页并没有配置到httpd中
1.修改httpd.conf
# vi /.../httpd.conf
更改内容如下:
2.重启httpd
systemctl restart httpd.service
3.重启zabbix
# systemctl restart zabbix-server zabbix-agent httpd
20、结束
浙公网安备 33010602011771号