设为首页 收藏本站
查看: 894|回复: 0

[经验分享] zabbix+LNMP搭建

[复制链接]

尚未签到

发表于 2019-1-21 10:46:39 | 显示全部楼层 |阅读模式
  系统
  Centos 6.5
  安装包
  mysql-5.6.29.tar.gz
  nginx-1.10.2.tar.gz
  php-5.6.20.tar.gz
  zabbix-3.4.1.tar.gz
  

  Nginx安装
  依赖安装
$ yum -y install pcre-devel openssl openssl-devel  zlib-devel  gcc*  

  新建用户
  
$ groupadd nginx && useradd -g nginx -s /sbin/nologin nginx  

$ tar xf nginx-1.10.2.tar.gz
$ cd nginx-1.10.2
$ ./configure --prefix=/soft/nginx --with-http_dav_module  \
--with-http_stub_status_module --with-http_addition_module \
--with-http_sub_module --with-http_flv_module --with-http_mp4_module \
--with-pcre --user=nginx --group=nginx
$ make && make install
$ cd /soft/nginx/conf/  过滤配置文件
$ grep -Ev "#|^$" nginx.conf.default > nginx.conf$ vim nginx.conf
user nginx;
worker_processes  1;
events {
    worker_connections  1024;
}
http {
    include       mime.types;
    default_type  application/octet-stream;
    sendfile        on;
    keepalive_timeout  65;
    server {
        listen       80;
        server_name  localhost;
        location / {
            root   /soft/nginx/html;
            index index.php index.html index.htm;
        }
        error_page   500 502 503 504  /50x.html;
        location = /50x.html {
            root   html;
        }
        location ~ \.(php|php6)?$ {
                root    /soft/nginx/html;
                fastcgi_pass    127.0.0.1:9000;
                fastcgi_index   index.php;
        # fastcgi_param  SCRIPT_FILENAME  /scripts$fastcgi_script_name;
                fastcgi_param  SCRIPT_FILENAME  /soft/nginx/html$fastcgi_script_name;
                include        fastcgi_params;
        }
    }
}  测试配置文件,返回OK!
$ /soft/nginx/sbin/nginx -t
nginx: the configuration file /soft/nginx/conf/nginx.conf syntax is ok
nginx: configuration file /soft/nginx/conf/nginx.conf test is successful  

  MySQL安装
$ yum -y  install tree nmap lrzsz dos2unix cmake bison ncurses ncurses-devel
$ groupadd mysql && useradd -g mysql -s /sbin/nologin mysql
$ cd /soft/mysql-5.6.29
$ cmake -DCMAKE_INSTALL_PREFIX=/soft/mysql \
-DMYSQL_DATADIR=/soft/mysql/data1 \
-DSYSCONFDIR=/etc \
-DWITH_MYISAM_STORAGE_ENGINE=1 \
-DWITH_INNOBASE_STORAGE_ENGINE=1 \
-DWITH_MEMORY_STORAGE_ENGINE=1 \
-DMYSQL_UNIX_ADDR=/tmp/mysqld.sock \
-DMYSQL_TCP_PORT=3306 \
-DENABLED_LOCAL_INFILE=1 \
-DWITH_PARTITION_STORAGE_ENGINE=1 \
-DEXTRA_CHARSETS=all \
-DDEFAULT_CHARSET=utf8 \
-DDEFAULT_COLLATION=utf8_general_ci
$ make && make install
$ cp /soft/mysql-5.6.29/support-files/mysql.server /etc/init.d/mysqld
$ chmod +x /etc/init.d/mysqld  

  初始化数据库

$ /soft/mysql/scripts/mysql_install_db --baseir=/soft/mysql --datadir=/soft/mysql/data1 --user=mysql  

  MySQL配置文件
$ vim /etc/my.cnf
[client]
socket = /tmp/mysql.sock
[mysqld]
datadir = /soft/mysql/data1
socket = /tmp/mysql.sock
user = mysql
# Disabling symbolic-links is recommended to prevent assorted security risks
symbolic-links = 0
[mysqld_safe]
log-error = /var/log/mysqld.log
pid-file = /var/run/mysqld/mysqld.pid  

  修改密码,启动服务

$ mysqladmin -u root password 'testmysql'
$ service msyqld start  

  PHP安装
  依赖包安装;
$ yum -y install libxslt libxslt-devel bison bison-devel libmcrypt-devel mcrypt \
mhash-devel libxml2-devel libcurl-devel bzip2-devel readline-devel libedit-devel \
sqlite-devel jemalloc jemalloc-devel
$  groupadd www-data && useradd -g www-data -s /sbin/nologin www-data  如果出现libiconv和libmcrypt安装不上。可用编译安装;
  libiconv安装;
$ wget http://ftp.gnu.org/pub/gnu/libiconv/libiconv-1.14.tar.gz
$ tar xf libiconv-1.14.tar.gz
$ cd libiconv-1.14
$ ./configure
$ make && make install  libmcrypt安装;
$ wget ftp://mcrypt.hellug.gr/pub/crypto/mcrypt/libmcrypt/libmcrypt-2.5.7.tar.gz
$ tar xf libmcrypt-2.5.7.tar.gz
$ cd libmcrypt-2.5.7
$ ./configure
$ make && make install  编译安装PHP
$ cd /soft/php-5.6.20
$ ./configure --prefix=/soft/php --with-iconv-dir=/usr --with-freetype-dir \
--with-jpeg-dir --with-png-dir --with-zlib --with-libxml-dir=/usr --with-gettext \
--enable-xml --disable-rpath --enable-bcmath --enable-shmop --enable-sysvsem \
--enable-inline-optimization --with-curl --enable-mbregex --enable-fpm \
--enable-mbstring --with-mcrypt --with-gd --enable-gd-native-ttf --with-openssl \
--with-mhash --enable-pcntl --enable-sockets --with-xmlrpc --enable-soap \
--enable-short-tags --enable-static --with-xsl --with-fpm-user=www-data \
--with-fpm-group=www-data --enable-ftp --enable-opcache --with-mysql=mysqlnd \
--with-mysqli=mysqlnd --with-pdo-mysql=mysqlnd
$ make && make install
$ cp php.ini-development /soft/php/lib/php.ini
$ cd /soft/php/etc
$ cp php-fpm.conf.default php-fpm.conf  编译PHP可能会遇到的问题:
ext/iconv/.libs/iconv.o: In function `php_iconv_stream_filter_ctor':
/home/king/php-5.6.20/ext/iconv/iconv.c:2491: undefined reference to `libiconv_open'
collect2: ld returned 1 exit status
make: *** [sapi/cli/php] Error 1  make的时候出现如上错误可修改Makefile文件:
$  vim ./MakefileEXTRA_LIBS = -lcrypt -lexslt -lcrypt -lrt -lmcrypt -lpng -lz -ljpeg -lcurl -lz -lrt -lm -ldl -lnsl -lrt -lxml2 -lz
-lm -lssl -lcrypto -lcurl -lxml2 -lz -lm -lssl -lcrypto -lfreetype -lxml2 -lz -lm -lxml2 -lz -lm -lcrypt -lxml2 -
lz -lm -lxml2 -lz -lm -lxml2 -lz -lm -lxml2 -lz -lm -lxslt -lxml2 -lz -lm -lssl -lcrypto -lcrypt -liconv
在EXTRA_LIBS字段最末尾加上-liconv,重新make即可  配置文件主要修改如下:
$ vim /soft/php/lib/php.ini
max_execution_time = 300
max_input_time = 300
memory_limit = 128M
post_max_size = 30M
date.timezone = Asia/Shanghai
always_populate_raw_post_data = -1  启动PHP:
$ /soft/php/sbin/php-fpm  Zabbix安装
  编译参数加了JAVA的话,需要安装JDK,不然会报错;
$ tar xf jdk-8u91-linux-x64.tar.gz
$ mv jdk1.8.0_91 /soft/jdk1.8  

  写入环境变量;
$ vim /etc/profile
export JAVA_HOME=/soft/jdk1.8
export CLASSPATH=$CLASSPATH:$JAVA_HOME/lib:$JAVA_HOME/jre/lib
export PATH=$JAVA_HOME/bin:$JAVA_HOME/jre/bin:$PATH:$HOMR/bin  立即生效;
$ source /etc/profile  安装依赖;
$ yum install net-snmp-devel libevent-devel -y
$ cd /soft/zabbix-3.4.1
$ groupadd zabbix && useradd -g zabbix -s /sbin/nologin zabbix
$ ./configure --prefix=/soft/zabbix \
--enable-server --enable-agent --with-mysql \
--enable-ipv6 --with-net-snmp --with-libcurl --with-libxml2  \
--enable-java
$ make && make install  复制启动脚本,注意修改调用路径:BASEDIR=指定安装的目录
$ cp misc/init.d/fedora/core/* /etc/rc.d/init.d/
$ cp -R frontends/php/* /soft/nginx/html/zabbix$ vim /soft/zabbix/etc/zabbix_server
. /etc/init.d/functions
        BASEDIR=/soft/zabbix
        BINARY_NAME=zabbix_server
        FULLPATH=$BASEDIR/sbin/$BINARY_NAME
        PIDFILE=/tmp/$BINARY_NAME.pid
        ERROR=0
        STOPPING=0
if [ -f $PIDFILE  ] && [ -s $PIDFILE ]
        then
        PID=`cat $PIDFILE`
        if [ "x$PID" != "x" ] && kill -0 $PID 2>/dev/null && [ $BINARY_NAME == `ps -e | grep $PID | awk '{print $4}'` ]
        then
                STATUS="$BINARY_NAME (pid `pidof $APP`) running.."
                RUNNING=1
        else
                rm -f $PIDFILE
                STATUS="$BINARY_NAME (pid file existed ($PID) and now removed) not running.."
                RUNNING=0
        fi
else
        if [ `ps -e | grep $BINARY_NAME | head -1 | awk '{ print $1 }'` ]
                then
                STATUS="$BINARY_NAME (pid `pidof $APP`, but no pid file) running.."
        else
                STATUS="$BINARY_NAME (no pid file) not running"
        fi
        RUNNING=0
fi
start() {
        if [ $RUNNING -eq 1 ]
                then
                echo "$0 $ARG: $BINARY_NAME (pid $PID) already running"
        else
                action $"Starting $BINARY_NAME: " $FULLPATH
                touch /var/lock/subsys/$BINARY_NAME
    fi
}
stop() {
        echo -n $"Shutting down $BINARY_NAME: "
        killproc $BINARY_NAME
        RETVAL=$?
        echo
        [ $RETVAL -eq 0 ] && rm -f /var/lock/subsys/$BINARY_NAME
        RUNNING=0
}
case "$1" in
        start)
                start
                ;;
        stop)
                stop
                ;;
        status)
                status $BINARY_NAME
                ;;
        restart)
                stop
                sleep 10
                start
                ;;
        help|*)
        echo $"Usage: $0 {start|stop|status|restart|help}"
                cat   create  user  'zabbix_rw'@'%' identified  by  'zabbix';
mysql> grant all on zabbix.* to zabbix_rw@'%' identified by 'zabbix';
mysql> flush privileges;
mysql> quit;  

  导入数据
$ cd database/mysql/
$ mysql -uzabbix -pzabbix zabbix < schema.sql
$ mysql -uzabbix -pzabbix zabbix < images.sql
$ mysql -uzabbix -pzabbix zabbix < data.sql  

  服务端
$ vim /soft/zabbix/etc/zabbix_server.conf
LogFile=/var/log/zabbix/zabbix_server.log
DBName=zabbix
DBUser=zabbix
DBPassword=zabbix
DBSocket=/tmp/mysql.sock
DBPort=3306
PidFile=/soft/zabbix/pid/zabbix_server.pid
JavaGateway=127.0.0.1
JavaGatewayPort=10052
StartJavaPollers=5
CacheSize=1024M
Timeout=30
AlertScriptsPath=/soft/zabbix/share/zabbix/alertscripts
#FpingLocation=/soft/fping/sbin/fping
LogSlowQueries=3000  客户端
$ vim /soft/zabbix/etc/zabbix_agentd.conf
LogFile=/tmp/zabbix_agentd.log
EnableRemoteCommands=1
Server=192.168.10.128
ServerActive=192.168.10.128
Hostname=zk-192.168.10.128
HostMetadataItem=system.uname
Include=/soft/zabbix/etc/zabbix_agentd.conf.d/*.conf  

  启动
$ service zabbix_server start  #服务端
$ service zabbix_agentd start  #客户端  WEB认证文件
cat /soft/nginx/html/conf/zabbix.conf.php

运维网声明 1、欢迎大家加入本站运维交流群:群②:261659950 群⑤:202807635 群⑦870801961 群⑧679858003
2、本站所有主题由该帖子作者发表,该帖子作者与运维网享有帖子相关版权
3、所有作品的著作权均归原作者享有,请您和我们一样尊重他人的著作权等合法权益。如果您对作品感到满意,请购买正版
4、禁止制作、复制、发布和传播具有反动、淫秽、色情、暴力、凶杀等内容的信息,一经发现立即删除。若您因此触犯法律,一切后果自负,我们对此不承担任何责任
5、所有资源均系网友上传或者通过网络收集,我们仅提供一个展示、介绍、观摩学习的平台,我们不对其内容的准确性、可靠性、正当性、安全性、合法性等负责,亦不承担任何法律责任
6、所有作品仅供您个人学习、研究或欣赏,不得用于商业或者其他用途,否则,一切后果均由您自己承担,我们对此不承担任何法律责任
7、如涉及侵犯版权等问题,请您及时通知我们,我们将立即采取措施予以解决
8、联系人Email:admin@iyunv.com 网址:www.yunweiku.com

所有资源均系网友上传或者通过网络收集,我们仅提供一个展示、介绍、观摩学习的平台,我们不对其承担任何法律责任,如涉及侵犯版权等问题,请您及时通知我们,我们将立即处理,联系人Email:kefu@iyunv.com,QQ:1061981298 本贴地址:https://www.yunweiku.com/thread-665920-1-1.html 上篇帖子: centos6.5安装zabbix2.4.5 下篇帖子: zabbix 微信报警( python 2.x )
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

扫码加入运维网微信交流群X

扫码加入运维网微信交流群

扫描二维码加入运维网微信交流群,最新一手资源尽在官方微信交流群!快快加入我们吧...

扫描微信二维码查看详情

客服E-mail:kefu@iyunv.com 客服QQ:1061981298


QQ群⑦:运维网交流群⑦ QQ群⑧:运维网交流群⑧ k8s群:运维网kubernetes交流群


提醒:禁止发布任何违反国家法律、法规的言论与图片等内容;本站内容均来自个人观点与网络等信息,非本站认同之观点.


本站大部分资源是网友从网上搜集分享而来,其版权均归原作者及其网站所有,我们尊重他人的合法权益,如有内容侵犯您的合法权益,请及时与我们联系进行核实删除!



合作伙伴: 青云cloud

快速回复 返回顶部 返回列表