一、为了顺利安装,先关闭防火墙和selinux。
#systemctl stop firewalld.service
#setenforce 0
二、安装Apache
1、卸载原有Apache
#rpm -qa|grep httpd
#rpm -e --nodeps httpd-*
2、安装依赖插件
#tar -zxvf apr-1.5.2.tar.gz
#tar -zxvf apr-util-1.5.4.tar.gz
#tar -zxvf pcre-8.39.tar.gz
#tar -zxvf httpd-2.4.25.tar.gz//--enable-rewrite提供URL规则的重写更嫩那个,即根据已知的URL地址,转换为其它想要的URL地址
//--enable-so激活apache服务的DSO(Dynamic Shared Objects动态共享目标),即在以后可以以DSO的方式编译安装共享模块,这个模块本身不能以DSO方式编译。
//--enable-headers提供允许对HTTP请求头的控制。
//--enable-expires激活配置文件控制HTTP的“Expires:”和“Cache-Control:”头内容,即对网站图片、js、css等内容,提供客户端浏览器缓存的设置。这个是apache调优的一个重要选项之一。
//--with-mpm=worker选择apache mpm的模式为worker模式。为worker模式原理是更多的使用线程来处理请求,所以可以处理更多的并发请求。而系统 资源的开销小玉基于进程的MPM prefork。如果不指定此参数,默认的模式是prefork进程模式。这个是apache调优的一个重要选项之一。
//--enable-deflate提供对内容的压缩传输编码支持,一般是html、js、css等内容的站点。使用此参数会打打提高传输速度,提升访问者访问的体验。在生产环境中,这是apache调优的一个重要选项之一。
#vi /etc/profile
export PATH=$PATH:/data/app/php/bin
#source /etc/profile
三、配置apache
1、修改apahce配置文件httpd.conf支持php
1.1找到:
AddType application/x-compress .Z
AddType application/x-gzip .gz .tgz
在后面添加:
AddType application/x-httpd-php .php
AddType application/x-httpd-php-source .php5
1.2找到:
DirectoryIndex index.html
在index.html后面添加index.php
2、找到:
#ServerName www.example.com:80
修改为ServerName 127.0.0.1:80
3、启动apache 服务
/data/app/apache/bin/apachectl start
4、设置Apache开机启动
#vim /usr/lib/systemd/system/httpd.service
//填写以下内容
[Unit] Description=The Apache HTTP Server After=network.target [Service] Type=forking PIDFile=/data/app/apache/logs/httpd.pid ExecStart=/data/app/apache/bin/apachectl $OPTIONS ExecReload=/bin/kill -HUP $MAINPID KillMode=process Restart=on-failure RestartSec=42s [Install] WantedBy=multi-user.target
然后执行以下命令即可
#systemctl enable httpd
四、安装mariadb数据库
1、使用rpm -qa | grep mariadb搜索 MariaDB 现有的包:
如果存在,使用rpm -e --nodeps mariadb-* 全部删除
2、安装依赖包:
yum -y install ncurses-devel openssl-devel libevent-devel jemalloc-devel cmake
3、添加mysql运行组及用户、创建数据库数据文件夹并授予合适权限
groupadd mysql
useradd -g mysql -M -s /sbin/nologin mysql
mkdir -p /data/mysql
chown -R mysql:mysql /data/mysql
4、上传并解压源码安装包
#cd /data/soft/
#tar -zxvf mariadb-5.5.54.tar.gz
5、安装mariadb
#cd /data/soft/mariadb-5.5.54
//指定安装文件的安装路径时常用的选项:
-DCMAKE_INSTALL_PREFIX=/data/app/mysql //安装路径
-DMYSQL_DATADIR=/data/mysql //数据库文件存放路径
-DSYSCONFDIR=/etc
其它常用的选项:
-DMYSQL_TCP_PORT=3306 //监听端口
-DMYSQL_UNIX_ADDR=/tmp/mysql.sock
-DENABLED_LOCAL_INFILE=1
-DEXTRA_CHARSETS=all //扩展字符支持
-DDEFAULT_CHARSET=utf8 //字符编码方式
-DDEFAULT_COLLATION=utf8_general_ci //默认排序规则
-DWITH_DEBUG=0
-DENABLE_PROFILING=1
#cmake . -DCMAKE_INSTALL_PREFIX=/data/app/mysql -DMYSQL_DATADIR=/data/mysql -DDEFAULT_CHARSET=utf8 -DDEFAULT_COLLATION=utf8_general_ci -DEXTRA_CHARSETS=all
#make && make install
6、配置mariadb
#mkdir /var/log/mysql
#chmod 777 /var/log/mysql
#cp /data/app/mysql/support-files/my-small.cnf /etc/my.cnf
//编辑配置文件,在 [mysqld] 部分增加一些配置
#vi /etc/my.cnf
datadir = /data/mysql //添加MariaDB数据库路径
skip_name_resolve = ON
log-error=/var/log/mysql/mysql.log //错误日志
7、初始化数据库
#chown -R mysql:mysql /data/app/mysql
#/data/app/mysql/scripts/mysql_install_db --basedir=/data/app/mysql --datadir=/data/mysql --user=mysql //生成MariaDB系统数据库
8、调整PATH变量
#vi /etc/profile //把MariaDB服务加入系统环境变量:在最后添加下面这一行
export PATH=$PATH:/data/app/mysql/bin
//重新加载配置
#source /etc/profile
9、设置mariadb数据库自启动
#vim /usr/lib/systemd/system/mysqld.service
//填写以下内容
[Unit]
Description=MySQL Server
After=network.target
[Service]
User=mysql
Group=mysql
ExecStart=/data/app/mysql/bin/mysqld --defaults-file=/etc/my.cnf
[Install]
WantedBy=multi-user.target
然后执行以下命令即可
#systemctl enable mysqld
10、设置数据库root用户密码(默认没有密码)
#mysqladmin -u root -p password "dlkja888" //修改密码,要求输入原密码,原密码为空
11、测试登录
#mysql -u root -p
MariaDB [(none)]> select version();
五、安装和配置Zabbix
1、配置PHP参数
打开php.ini配置文件,修改如下参数为如下值,否则zabbix安装不了。
#vi /data/app/php/etc/php.ini
max_execution_time = 300
max_input_time = 300
memory_limit = 128M
post_max_size = 32M
date.timezone = Asia/Shanghai
always_populate_raw_post_data = -1
2、启动apache和mariadb数据库
3、安装依赖包
yum -y install net-snmp-devel curl-devel libcurl-devel libxml2-devel
4、创建系统用户
为了安全考虑zabbix只使用普通用户运行,假如你当前用户叫test,那么你运行他,他便使用test身份运行。但是如果你在root环境下运行zabbix,那么zabbix将会主动使用zabbix用户来运行。但是如果你的系统没有名叫zabbix的用户,你需要创建一个用户,如下:
#groupadd zabbix
#useradd -g zabbix -M -s /sbin/nologin zabbix
5、上传并解压源码安装包
tar -zxvf zabbix-4.4.7.tar.gz
6、安装zabbix
#cd zabbix-4.4.7
#./configure --prefix=/data/app/zabbix --enable-server --enable-agent --enable-java --with-mysql --with-net-snmp --with-libcurl --with-libxml2
//configure参数详解
enable-server 安装Zabbix Server
enable-agent 安装Zabbix Agent
enable-proxy 安装Zabbix proxy
enable-java 监控jmx/jvm需要,前提需要安装了zabbix-java-gateway
with-mysql 使用Mysql数据库
with-net-snmp 支持snmp监控,常用于网络设备监控
with-libcurl 支持web监控
with-libxml2 支持VMware监控
with-openipmi IPMI监控,用于物理属性如温度,湿度,电压等监控
#make && make install
7、初始化数据库
#mysql -u root -p
MariaDB [(none)]> create database zabbix character set utf8 collate utf8_bin; //字符集非utf8,会有中文识别问题。
MariaDB [(none)]> grant all on zabbix.* to zabbix @'localhost' identified by 'dlkja888';
MariaDB [(none)]> flush privileges;
MariaDB [(none)]>quit;
#cd /data/soft/zabbix-4.4.7/database/mysql
#mysql -uroot -pdlkja888 zabbix < schema.sql
#mysql -uroot -pdlkja888 zabbix < images.sql
#mysql -uroot -pdlkja888 zabbix < data.sql
8、配置zabbix(server端)
#mkdir /var/log/zabbix
#chown -R zabbix:zabbix /var/log/zabbix
#vi /data/app/zabbix/etc/zabbix_server.conf
LogFile=/var/log/zabbix/zabbix_server.log
DBName=zabbix
DBUser=zabbix
DBPassword=dlkja888 //指定zabbix数据库密码
ListenIP=192.168.201.131 //服务器IP地址,不能写127.0.0.1
DBSocket=/tmp/mysql.sock
DBPort=3306
9、设置开机自启动并启动zabbix server
#vi /usr/lib/systemd/system/zabbix-server.service
//填写以下内容
[Unit]
Description=Zabbix Server
After=network.target
[Service]
Environment="CONFFILE=/data/app/zabbix/etc/zabbix_server.conf"
Type=forking
Restart=on-failure
PIDFile=/tmp/zabbix_server.pid
KillMode=control-group
ExecStart=/data/app/zabbix/sbin/zabbix_server -c $CONFFILE
ExecStop=/bin/kill -SIGTERM $MAINPID
RestartSec=10s
[Install]
WantedBy=multi-user.target
//执行以下命令即可
#systemctl enable zabbix-server
#systemctl start zabbix-server
10、配置zabbix(agent客户端)
(服务器上不需要安装,安装在客户机上就行,服务器在编译安装时已经安装上了客户端。参考步骤“五、安装和配置Zabbix”的第4,5,6步骤。其中,步骤6调整成以下命令:
#./configure --prefix=/data/app/zabbix --enable-agent
#make && make install
)
#mkdir /var/log/zabbix
#chown -R zabbix:zabbix /var/log/zabbix //server端执行过就不用再执行以上2条命令
#vi /data/app/zabbix/etc/zabbix_agentd.conf
LogFile=/var/log/zabbix/zabbix_agentd.log
EnableRemoteCommands=1
Server=127.0.0.1 //被动工作模式,多个监控服务器IP,用逗号隔开
ServerActive=127.0.0.1 //主动工作模式,多个监控服务器IP,用逗号隔开
Hostname=Zabbix server //必须与zabbix web上配置的host name相同
11、设置开机自启动并启动zabbix agent
#vi /usr/lib/systemd/system/zabbix-agent.service
//填写以下内容
[Unit]
Description=Zabbix Agent
After=network.target
[Service]
Environment="CONFFILE=/data/app/zabbix/etc/zabbix_agentd.conf"
Type=forking
Restart=on-failure
PIDFile=/tmp/zabbix_agentd.pid
KillMode=control-group
ExecStart=/data/app/zabbix/sbin/zabbix_agentd -c $CONFFILE
ExecStop=/bin/kill -SIGTERM $MAINPID
RestartSec=10s
[Install]
WantedBy=multi-user.target
//执行以下命令即可
#systemctl enable zabbix-agent
#systemctl start zabbix-agent
12、查看客户端是否安装配置成功
#cd /data/soft/zabbix-4.4.7
#cp -r frontends/php /data/app/apache/htdocs/zabbix
#cd /data/app/apache/htdocs/zabbix
#chmod o+w /data/app/apache/htdocs/zabbix/conf登陆zabbix,默认用户名:Admin,密码:zabbix
14、修改语言为中文
15、为了解决中文下识别图表数据乱码问题,需要做一下处理
添加中文库,从windows的字体库拷贝一个到服务器这个路径下
/data/app/apache/htdocs/zabbix/assets/fonts
不同字体文件,修改的名称不同。以下例子是用了华文宋体(STSONG.TTF)
#vi /data/app/apache/htdocs/zabbix/include/defines.inc.php
在末行模式执行%s/DejaVuSans/stsong/g
将里面关于字体设置从DejaVuSans替换成stsong
16、zabbix Server安装部署完成。