Zabbix安装部署

JM_steven 2019-04-23 02:09:49
1. 依赖环境准备
yum install -y autoconf make automake imake cmake gcc gcc-c++ libaio libaio-devel bzr bison expat-devel libtool ncurses5-devel gd-devel libjpeg-devel libpng-devel libxml2-devel bzip2-devel libcurl-devel
yum install pcre* -y
yum install openssl* -y
yum install epel-release -y
yum clean all
yum repolist

2. 安装MySql5.7
• 首先下载MySQL Yum repository,CentOS 7对应的下载链接如下
wget http://dev.mysql.com/get/mysql57-community-release-el7-7.noarch.rpm
• 下载完成之后安装下载好的rpm文件
yum localinstall mysql57-community-release-el7-7.noarch.rpm
•安装完成之后验证MySQL YUM repository
yum repolist enabled | grep "mysql.*-community.*"
• 如下图所示,表示验证成功:



• 安装最新版的MySQL

yum install mysql-community-server
• 安装完成之后启动并查看MySQL状态:
systemctl start mysqld
systemctl status mysqld


• 手动验证MySQL安装的版本:
mysql --version
• 安装MySQL 5.7之后,MySQL会生成一个随机密码
在/var/log/mysqld.log文件中,使用如下命令查看密码:
grep 'temporary password' /var/log/mysqld.log
• 记录密码之后,运行 mysql_secure_installation初始化MySQL,初始化过程中会提示输入随机密码
mysql_secure_installation
• 使用新设置的密码连接MySQL:(ps:有密码复杂要求)
mysql -u root -p
• 至此,MySQL 5.7安装完成。

3. 安装Nginx
• 首先下载Nginx的最新稳定版,本示例使用的版本是1.10.2,下载之后解压压缩包:
tar zxvf nginx-1.10.2.tar.gz
• 进入解压之后的Nginx目录,运行configure
./configure --prefix=/usr/local/nginx --with-http_ssl_module --with-http_stub_status_module --with-pcre
• 编译安装
make
make install
• 测试Nginx
/usr/local/nginx/sbin/nginx -t

4. 安装PHP
• 首先安装开发软件包:
yum -y groupinstall "Development Tools"
• 下载PHP最新稳定版,解压安装包,本示例使用的是PHP 5.6.27
tar -zxvf php-5.6.27.tar.gz
• 切换到PHP目录,运行configure:
./configure -prefix=/usr/local/php -with-config-file-path=/usr/local/php/etc -with-bz2 -with-curl -enable-ftp -enable-sockets -disable-ipv6 -with-gd -with-jpeg-dir=/usr/local -with-png-dir=/usr/local -with-freetype-dir=/usr/local -enable-gd-native-ttf -with-iconv-dir=/usr/local -enable-mbstring -enable-calendar -with-gettext -with-libxml-dir=/usr/local -with-zlib -with-pdo-mysql=mysqlnd -with-mysqli=mysqlnd -with-mysql=mysqlnd -enable-dom -enable-xml -enable-fpm -with-libdir=lib64 -enable-bcmath
make
make install
• 复制安装包中的php.ini-production到 /usr/local/php/etc/php.ini
cp php.ini-production /usr/local/php/etc/php.ini
cp /usr/local/php/etc/php-fpm.conf.default.conf /usr/local/php/etc/php-fpm.conf
• 测试PHP安装是否成功。
/usr/local/php/sbin/php-fpm -t
• 测试成功之后启动PHP
cp /usr/local/src/php-5.3.27/sapi/fpm/init.d.php-fpm /etc/init.d/php-fpm
chmod 755 /etc/init.d/php-fpm
systemctl restart php-fpm
• 添加到开机启动
systemctl enable php-fpm
• 检查是否启动
ps aux |grep php-fpm
netstat -ant |grep 9000

5. 配置Nginx运行PHP
修改Nginx配置文件如下

vim /usr/local/nginx/conf/nginx.conf
user nobody nobody;
worker_processes 2;
error_log /usr/local/nginx/logs/nginx_error.log crit;
pid /usr/local/nginx/logs/nginx.pid;
worker_rlimit_nofile 51200;

events
{
use epoll;
worker_connections 6000;
}

http
{
include mime.types;
default_type application/octet-stream;
server_names_hash_bucket_size 3526;
server_names_hash_max_size 4096;
log_format combined_realip '$remote_addr $http_x_forwarded_for [$time_local]'
'$host "$request_uri" $status'
'"$http_referer" "$http_user_agent"';
sendfile on;
tcp_nopush on;
keepalive_timeout 30;
client_header_timeout 3m;
client_body_timeout 3m;
send_timeout 3m;
connection_pool_size 256;
client_header_buffer_size 1k;
large_client_header_buffers 8 4k;
request_pool_size 4k;
output_buffers 4 32k;
postpone_output 1460;
client_max_body_size 10m;
client_body_buffer_size 256k;
client_body_temp_path /usr/local/nginx/client_body_temp;
proxy_temp_path /usr/local/nginx/proxy_temp;
fastcgi_temp_path /usr/local/nginx/fastcgi_temp;
fastcgi_intercept_errors on;
tcp_nodelay on;
gzip on;
gzip_min_length 1k;
gzip_buffers 4 8k;
gzip_comp_level 5;
gzip_http_version 1.1;
gzip_types text/plain application/x-javascript text/css text/htm application/xml;

server
{
listen 80;
server_name localhost;
index index.html index.htm index.php;
root /usr/local/nginx/html;

location ~ \.php$ {
include fastcgi_params;
fastcgi_pass 127.0.0.1:9000;
fastcgi_index index.php;
fastcgi_param SCRIPT_FILENAME /usr/local/nginx/html$fastcgi_script_name;
}

}
}



创建PHP测试网页

vim /usr/local/nginx/html/test.php
<?php
phpinfo();
?>

• 启动nginx
/usr/local/nginx/sbin/nginx -c /usr/local/nginx/conf/nginx.conf

• 在浏览器中输入localhost/test.php,测试php页面


配置PHP参数,Zabbix的硬件要求

vim /usr/local/php/etc/php.ini
max_execution_time = 300
max_input_time = 300
memory_limit = 128M
post_max_size = 16M
upload_max_filesize = 2M
date.timezone = Asia/Shanghai
always_populate_raw_post_data = -1

• 重启PHP
systemctl restart php-pfm


6. 安装Zabbix
下载安装zabbix的YUM源

rpm -ivh http://repo.zabbix.com/zabbix/3.0/rhel/7/x86_64/zabbix-release-3.0-1.el7.noarch.rpm

安装Zabbix
yum -y install zabbix-server-mysql zabbix-web-mysql zabbix-get
配置数据库
create database zabbix character set utf8 collate utf8_bin;
grant all privileges on zabbix.* to 'zabbix'@'%' identified by '密码';
flush privileges;
导入Zabbix到数据库
cd /usr/share/doc/zabbix-server-mysql-3.0.1/
zcat create.sql.gz |mysql -uroot -p密码 zabbix
配置zabbix用户
groupadd zabbix
useradd -g zabbix -s /bin/false zabbix
配置Zabbix服务器端
vim /etc/zabbix/zabbix_server.conf
DBHost=localhost
DBName=zabbix
DBUser=zabbix
DBPassword=zabbixpass
拷贝zabbix文件到html目录
cd /usr/share/
cp -r zabbix /usr/local/nginx/html
chown -R zabbix:zabbix /etc/zabbix
chown -R zabbix:zabbix /usr/share/zabbix
chown -R zabbix:zabbix /usr/lib/zabbix
Zabbix加入开机启动并启
systemctl enable zabbix-server
systemctl start zabbix-server
在浏览器中测试Zabbix


错误
• 在网页打开zabbix时报错
Warning: require_once(/etc/zabbix/web/maintenance.inc.php): failed to open stream: Permission denied in /usr/local/nginx/html/zabbix/include/classes/core/ZBase.php on line 269

Fatal error: require_once(): Failed opening required '/etc/zabbix/web/maintenance.inc.php' (include_path='.:/usr/local/php/lib/php') in /usr/local/nginx/html/zabbix/include/classes/core/ZBase.php on line 269
• 解决办法
chmod -R 755 /etc/zabbix/web/
错误现象
• 网页访问失败
• 解决办法
关闭防火墙
systemctl disable firewalld
systemctl stop firewalld
...全文
66 回复 打赏 收藏 转发到动态 举报
写回复
用AI写文章
回复
切换为时间正序
请发表友善的回复…
发表回复

18,779

社区成员

发帖
与我相关
我的任务
社区描述
Linux/Unix社区 专题技术讨论区
社区管理员
  • 专题技术讨论区社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧