Centos7(LAMP)源码安装zabbix

一、为了顺利安装,先关闭防火墙和selinux。

#systemctl  stop  firewalld.service

#setenforce  0

二、安装Apache

1、卸载原有Apache

在源码安装apache之前,我们要先卸载系统中,已经通过rpm包安装的apache,没有的话就不用操作。

#rpm -qa|grep httpd

#rpm  -e  --nodeps  httpd-*

2、安装依赖插件

#yum clean all
#yum install -y gcc gcc-c++ openssl*
3、上传并解压源码安装包
#cd  /data/soft

#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
4、安装(apr,apr-util,pcre,apache)
过程每一步执行如果想确认是否安装正常,可执行echo $?命令,结果为0代表正常。
4.1 安装apr
# cd apr-1.5.2
#./configure  --prefix=/data/app/apr
#make && make install
4.2 安装apr-util
#cd  apr-util-1.5.4
#./configure  --prefix=/data/app/apr-util  --with-apr=/data/app/apr/bin/apr-1-config
#make  &&  make  install
4.3 安装pcre
# cd pcre-8.39
#./configure  --prefix=/data/app/pcre
#make  && make install
4.4 安装apache
#cd httpd-2.4.25
     // 参数解释:

         //--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调优的一个重要选项之一。

#./configure  --prefix=/data/app/apache  --with-apr=/data/app/apr  --with-apr-util=/data/app/apr-util   --with-pcre=/data/app/pcre --enable-rewrite   --enable-ssl  --enable-so  --enable-headers   --enable-modules=most  --enable-deflate  --enable-expires  --with-mpm=worker  
#make && make install
二、安装PHP
1、安装依赖包
确保安装之前有安装gd,png,curl,xml等等lib开发库。如果不确定,执行以下命令:
#yum install -y gcc make libjpeg-devel libpng-devel libxml2-devel  libcurl-devel bzip2-devel  gd-devel  libxml2 libjpeg libpng  freetype freetype-devel
2、上传并解压源码安装包
#cd  /data/soft
#tar  -zxvf  php-5.6.30.tar.gz
3、安装PHP
 #cd   php-5.6.30
#./configure  --prefix=/data/app/php --with-config-file-path=/data/app/php/etc  --with-apxs2=/data/app/apache/bin/apxs  --with-bz2  --with-curl  --with-gd  --with-gettext --with-png-dir  --with-jpeg-dir  --with-freetype-dir  --with-pdo-mysql=mysqlnd --with-mysqli=mysqlnd --with-mysql=mysqlnd --with-mysql-sock=/tmp/mysql.sock     --enable-mbstring   --enable-bcmath  --enable-sockets   --with-libdir=lib64
#make  &&  make  install
4、提供PHP配置文件
#cp  php.ini-development  /data/app/php/etc/php.ini
5、添加环境变量

#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、初始化数据库

zabbix server与proxy需要数据库,angent不需要。尤其要注意的是proxy只需要导入一个schema.sql文件,而server一共要导入3个sql文件。数据库用户root,密码为dlkja888。

#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、查看客户端是否安装配置成功

在客户端上执行命令:
#/data/app/zabbix/bin/zabbix_get  -s 192.168.201.131  -p 10050 -k "system.hostname"
13、zabbix管理网站配置
13.1拷贝zabbix  web管理端文件到 Apahce目录下

#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
13.2重启apache
#systemc restart  httpd
13.3登陆zabbix,完成网站配置
在window客户端上访问http://192.168.201.131/zabbix,按提示点击下一步和输入相关信息,完成网站配置。见以下截图:

登陆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安装部署完成。

 
 

猜你喜欢

转载自www.cnblogs.com/techle/p/12575388.html