环境:lapp
操作系统:
rhel7.0
apache:
apache-2.4
数据库:
postgresql-9.2.10
php:
php-5.4.16-21
zabbix:
zabbix-3.2.3
各个主机selinux Firewalld 关闭
各主机的hosts文件中添加各主机的hostname
192.168.28.20
zabbix
192.168.28.11
rs1
192.168.28.12
rs2
192.168.28.8
lvs
一、数据库部分
1.数据库安装
源码位置:https://www.postgresql.org/ftp/source/
1.1 解压源码包之后进入postgresql-9.2.10目录进行配置
tar
-xf /opt/postgresql-9.2.10.tar.bz2
cd /opt/postgresql-9.2.10
./configure --prefix=/opt/postgresql --enable-profiling --with-blocksize=8 --with-wal-blocksize=8
1.2 编译安装,在编译过程中请确定是否有gcc,make等工具
make
make install
1.3 创建postgres用户,将postgresql属主改为postgres,并以postgres身份进行初始化
useradd postgres;
chown postgres /opt/postgresql
su - postgres
cd /opt/postgress/bin
./initdb --encoding=utf8 -D /opt/postgresql/data
1.4 初始化完数据库后会有下面提示,按照提示启动数据库。
Success. You can now start the database server using:
./postgres -D /opt/postgresql/data
or
./pg_ctl -D /opt/postgresql/data -l logfile start
2 设置环境变量
2.1 在/etc/profile添加PATH路径及如下两行
PATH=$PATH:$HOME/.local/bin:$HOME/bin:/opt/postgresql/bin
export PGHOME=/opt/postgresql
export PGDATA=/opt/postgresql/data
执行如下命令使环境变量生效 source /etc/profile
2.2 启动和停止数据库
pg_ctl start
pg_ctl stop
在后续的zabbix安装中需要给zabbix账号及数据库,所以在这部分提前设置
3 创建zabbix账号及远程登录设置
3.1 psql -U postgres -d postgres
postgres#create role zabbix superuser login; //创建zabbix角色
postgres#\c topwalk zabbix //切换登录账号
postgres#create database zabbix //创建zabbix数据库
postgres#alter user zabbix with password 'zabbix'; //修改zabbix用户密码
3.2 数据库访问
PostgreSQL数据库为了安全,它不会监听除本地以外的所有连接请求,当用户通过远程或JDBC访问时,会报一些如下的异常:
FATAL: no pg_hba.conf entry for host
要解决这个问题,只需要在PostgreSQL数据库的安装目录下找到/opt/postgresql/data/pg_hba.conf,找到“# IPv4 local connections:” 在其下加上请求连接的机器IP
#TYPE
DATABASE
USER
ADDRESS
METHOD
host
all
all
127.0.0.1/32
md5
32是子网掩码的网段;md5是密码验证方法,可以改为trust。在此,本次实验改为如下
host zabbix zabbix 192.168.28.0/24 trust
在远程主机客户端工具psql验证
psql -U zabbix -d zabbix -好192.168.28.20 -W
4.常见问题(不定时更新)
4.1 编译过程中遇到configure: error: readline library not found 或 configure: error: zlib library not found 一般是缺少开发包,只需安装readline-devel和zlib-devel即可
4.2
二、php和apache部分
php和apache都是通过rhel自带yum源进行安装,直接利用yum install php php-gd php-pgsql php-xml php-bcmath php-mbstring httpd 即可
这里需要注意的是php-bcmath和php-mbstring两个模块在自带yum源里不存在,需要额外下载,下面为下载地址
http://rpm.pbone.net/index.php3/stat/4/idpl/27387023/dir/scientific_linux_7/com/php-mbstring-5.4.16-21.el7.x86_64.rpm.html
http://rpm.pbone.net/index.php3/stat/4/idpl/27387012/dir/scientific_linux_7/com/php-bcmath-5.4.16-21.el7.x86_64.rpm.html
三、zabbix部分
源码包位置:https://www.zabbix.com/download
1 zabbix源码安装
tar -xf zabbix-3.2.3.tar.gz
./zabbix-3.2.3/configure --prefix=/opt/zabbix --enable-server --enable-agent --with-postgresql=/opt/postgresql/bin/pg_config
make && make install
2配置postgresql
将zabbix相关数据库信息导入数据库
cd /root/zabbix-3.2.3/database/postgresql
psql -U zabbix -d zabbix -W -f schema.sql
psql -U zabbix -d zabbix -W -f images.sql
psql -U zabbix -d zabbix -W -f data.sql
3 配置zabbix server
grep -Ev '^$|^#' /opt/postgresql/etc/zabbix_server.conf
LogFile=/tmp/zabbix_server.log
PidFile=/tmp/zabbix_server.pid
DBHost=
DBName=zabbix
DBUser=zabbix
DBPassword=zabbix
VMwareTimeout=30
Timeout=30
LogSlowQueries=3000
4 配置zabbix agent
[root@zabbix ~]# grep -Ev '^$|^#' /opt/zabbix/etc/zabbix_agentd.conf
LogFile=/tmp/zabbix_agentd.log
Server=zabbix
StartAgents=10
ServerActive=zabbix
Hostname=zabbix
Timeout=30
5 配置php
修改/etc/php.ini中的如下内容
max_input_time = 360
max_execution_time = 300
post_max_size = 16M
date.timezone ="Asia/Shanghai"
将zabbix中的php项目放入到/var/www/html/zabbix/下面
mkdir -p /var/www/html/zabbix
cp -rf /root/zabbix-3.2.3/frontends/php/* /var/www/html/zabbix/
chown apache.apache /var/www/html/zabbix -R
四、登录web进程安装
到此为止,包括页面安装所需的相关配置也已配置完毕,只需点击next即可,知道看到登录页面说明已安装成功(默认登录用户:Admin,密码:zabbix)