基于rhel7.2的Zabbix平台搭建和部署(一)

本文涉及的产品
云数据库 RDS MySQL Serverless,0.5-2RCU 50GB
简介:

基于rhel7.2的zabbix平台搭建和部署(一)


一、实验环境:

(1)虚拟机:rhel7.2 x86_64

(2)数据库:mysql5.7.13

(3)nginx1.10.2

(4)PHP5.6.27

(5)zabbix3.2.3

二、安装编译工具及库文件

[root@localhost ~]# yum-y install make apr* autoconf automake curl-devel gcc gcc-c++  openssl openssl-devel gd kernel keyutils patch perl kernel-headers compat* mpfr cpp glibc libgomp libstdc++-devel keyutils-libs-devel libcom_err-devel libsepol-devel libselinux-devel krb5-devel zlib-devel libXpm* freetype libjpeg* libpng* libtool* libxml2 libxml2-devel patch libcurl-devel bzip2-devel freetype-devel

三、安装mysql5.7.13

(1)安装具体步骤,请参考我的博文:http://wutengfei.blog.51cto.com/10942117/1931482

(2)mysql安装完毕后,看一下mysql的服务

[root@localhost ~]# ps -ef |grep mysql

wKiom1kw_hqTibZfAAAggoQC-jc845.png

[root@localhost ~]# netstat -lnp |grep mysql

wKioL1kw_irRGIVUAAAaWj0Ggto300.png

(3)防火墙开启3306端口例外

[root@localhost ~]# firewall-cmd --permanent --add-port=3306/tcp

success

[root@localhost ~]# firewall-cmd --reload

success

wKiom1kw_u_wlO5_AAARJgaqe3c931.png

(4)数据库密码:123456

四、安装nginx1.10.2

(1)解压zlib和pcre

[root@localhost src]# tar -zxvf zlib-1.2.8.tar.gz

[root@localhost src]# tar -zxvf pcre-8.39.tar.gz

说明:不需要编译,只需要解压就行。

(2)创建组账户和用户账户

[root@localhost ~]# groupadd www

[root@localhost ~]# useradd -g www -s /sbin/nologin www

[root@localhost ~]# grep www /etc/passwd

www:x:1000:1000::/home/www:/sbin/nologin

(3)下载安装nginx

[root@localhost src]# tar -zxvf nginx-1.10.3.tar.gz

[root@localhost src]# cd nginx-1.10.3

[root@localhost nginx-1.10.3]# ./configure --prefix=/usr/local/nginx1.10 --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=/usr/src/pcre-8.39 --with-zlib=/usr/src/zlib-1.2.8  --with-http_ssl_module --with-http_gzip_static_module --user=www  --group=www && make && make install

(4)做软链接

[root@localhost nginx-1.10.3]# ln -s /usr/local/nginx1.10/sbin/nginx  /usr/local/sbin/

(5)nginx语法检查

[root@localhost nginx-1.10.3]# nginx -t

wKioL1kxIh-gOzYYAAAU-5PG1S4909.png

(6)启动nginx并查看服务

[root@localhost nginx-1.10.3]# netstat -lnp |grep nginx

wKiom1kxIi7CqnNpAAAPo4i_pcc536.png

(7)防火墙开启80端口例外

[root@localhost ~]# firewall-cmd --permanent --add-port=80/tcp

success

[root@localhost ~]# firewall-cmd --reload

success

wKioL1kxIrCTc4lGAAARRiCHnbA363.png

(8)在一台客户端访问测试

wKioL1kxI3uSxqyJAABcKK4DTSM353.png

五、安装php5.6.27

(1)安装libmcrypt

[root@localhost src]# tar -zxvf libmcrypt-2.5.7.tar.gz

[root@localhost src]# cd libmcrypt-2.5.7

[root@localhost libmcrypt-2.5.7]# ./configure && make && make install

(2)做软链接

[root@localhost ~]# ln -s  /usr/local/mysql/lib/libmysqlclient.so.20.3.0 /usr/local/mysql/lib/libmysqlclient_r.so

(3)安装php

[root@localhost src]# tar -zxvf php-5.6.27.tar.gz

[root@localhost src]# cd php-5.6.27

[root@localhost php-5.6.27]# ./configure --prefix=/usr/local/php5.6  --with-config-file-path=/etc  --with-mysql=/usr/local/mysql --with-mysqli=/usr/local/mysql/bin/mysql_config --with-mysql-sock=/usr/local/mysql/mysql.sock --with-gd --with-iconv --with-libxml-dir=/usr --with-mhash --with-mcrypt --with-config-file-scan-dir=/etc/php.d --with-bz2 --with-zlib --with-freetype-dir --with-png-dir --with-jpeg-dir --enable-xml --enable-bcmath --enable-shmop --enable-sysvsem --enable-inline-optimization --enable-mbregex --enable-fpm --enable-mbstring --enable-ftp --enable-gd-native-ttf --with-openssl --enable-pcntl --enable-sockets --with-xmlrpc --enable-zip --enable-soap --without-pear --with-gettext --enable-session --with-mcrypt--with-curl && make && make install

(4)拷贝样例配置文件并修改

[root@ php-5.6.27]# cp php.ini-production  /etc/php.ini

[root@ php-5.6.27]# vim /etc/php.ini

在/etc/php.ini配置文件中修改如下内容:

wKiom1kXsD_CD9z_AAA9wsJPXY4338.jpg //设置时区


wKiom1kXsD_TLb2DAAAzRxOD-Hs442.jpg//禁止显示php版本的信息


wKioL1kXsECB2qVSAABC4mGUY20195.jpg//支持php短标签


wKioL1kXsECTwN01AAA7mYpXFhw871.jpg//上传文件大小

wKiom1kXsEDTA8aQAABJNrNggso332.jpg//php脚本最大执行时间

wKiom1kXsEDxEROSAAA8zJx_8fY701.jpg

//以秒为单位对通过POST、GET以及PUT方式接收数据时间进行限制


wKioL1kXsEGAWXC4AABcIAUSDq4596.jpg

wKioL1kXsELyKs4pAABQA0bc_CI988.jpg

(5)创建php-fpm服务启动脚本

[root@ php-5.6.27]# cp sapi/fpm/init.d.php-fpm /etc/init.d/php-fpm

[root@ php-5.6.27]# chmod +x /etc/init.d/php-fpm

[root@ php-5.6.27]# chkconfig --add php-fpm

[root@ php-5.6.27]# chkconfig php-fpm on

[root@ php-5.6.27]# chkconfig --list |grep php


Note: This output shows SysV services only and does not include native

      systemd services. SysV configuration data might be overridden by native

      systemd configuration.


      If you want to list systemd services use 'systemctl list-unit-files'.

      To see services enabled on particular target use

      'systemctl list-dependencies [target]'.

php-fpm         0:off   1:off   2:on    3:on    4:on    5:on    6:off

wKioL1kxWImCoBwJAABPBeS7D1k200.png

(6)提供php-fpm配置文件并编辑

[root@ php-5.6.27]# cp /usr/local/php5.6/etc/php-fpm.conf.default /usr/local/php5.6/etc/php-fpm.conf

[root@ php-5.6.27]# vim /usr/local/php5.6/etc/php-fpm.conf

在配置文件中修改如下内容:

wKiom1kXsEOC7PvzAAA_chZGfsE429.jpg

wKiom1kXsEShWCF4AABHf21NQQ4845.jpg

wKioL1kXsETCnyT_AABLmJz4ABE185.jpg

wKiom1kXsEThhZaXAABCf7hbdnM876.jpg

wKioL1kXsETAB8qSAAA738YGySY762.jpg

wKioL1kXsEWwrNXNAABEUqNOjjE195.jpg

wKioL1kXsHmyj4-QAABIDOPe_HM872.jpg

(7)启动php-fpm服务并查看

[root@ ~]# service php-fpm start

Starting php-fpm  done

[root@ ~]# netstat -lnp |grep php-fpm

tcp        0      0 127.0.0.1:9000          0.0.0.0:*               LISTEN      3203/php-fpm: maste

wKiom1kxXFGD7A9sAAAYYS_-QOo961.png

六、配置nginx支持php

[root@ ~]# vim /usr/local/nginx1.10/conf/nginx.conf

user  www www;

worker_processes  4;


#error_log  logs/error.log;

#error_log  logs/error.log  notice;

#error_log  logs/error.log  info;


#pid        logs/nginx.pid;



events {

    worker_connections  1024;

}



http {

    include       mime.types;

    default_type  application/octet-stream;


    #log_format  main  '$remote_addr - $remote_user [$time_local] "$request" '

    #                  '$status $body_bytes_sent "$http_referer" '

    #                  '"$http_user_agent" "$http_x_forwarded_for"';


    #access_log  logs/access.log  main;


    sendfile        on;

    #tcp_nopush     on;


    #keepalive_timeout  0;

    keepalive_timeout  65;


    #gzip  on;


    server {

        listen       80;

        server_name  localhost;


        charset utf-8;


        #access_log  logs/host.access.log  main;


        location / {

            root   html;

            index  index.php index.html index.htm;

        }


        #error_page  404              /404.html;


        # redirect server error pages to the static page /50x.html

        #

        error_page   500 502 503 504  /50x.html;

 error_page   500 502 503 504  /50x.html;

        location = /50x.html {

            root   html;

        }

        location /ststus {

        stub_status on;

        }

        # proxy the PHP scripts to Apache listening on 127.0.0.1:80

        #

        #location ~ \.php$ {

        #    proxy_pass   http://127.0.0.1;

        #}


        # pass the PHP scripts to FastCGI server listening on 127.0.0.1:9000

        #

        location ~ \.php$ {

            root           html;

            fastcgi_pass   127.0.0.1:9000;

            fastcgi_index  index.php;

        #    fastcgi_param  SCRIPT_FILENAME  /scripts$fastcgi_script_name;

            include        fastcgi.conf;

        }


        # deny access to .htaccess files, if Apache's document root

        # concurs with nginx's one

        #

        #location ~ /\.ht {

        #    deny  all;

        #}

    }



    # another virtual host using mix of IP-, name-, and port-based configuration

    #

    #server {

    #    listen       8000;

    #    listen       somename:8080;

    #    server_name  somename  alias  another.alias;


    #    location / {

    #        root   html;

    #        index  index.html index.htm;

    #    }

    #}



    # HTTPS server

    #

    #server {

 #    listen       443 ssl;

    #    server_name  localhost;


    #    ssl_certificate      cert.pem;

    #    ssl_certificate_key  cert.key;


    #    ssl_session_cache    shared:SSL:1m;

    #    ssl_session_timeout  5m;


    #    ssl_ciphers  HIGH:!aNULL:!MD5;

    #    ssl_prefer_server_ciphers  on;


    #    location / {

    #        root   html;

    #        index  index.html index.htm;

    #    }

    #}

}

[root@ ~]# nginx -t

nginx: the configuration file /usr/local/nginx1.10/conf/nginx.conf syntax is ok

nginx: configuration file /usr/local/nginx1.10/conf/nginx.conf test is successful

wKiom1kxgoKyJfSRAAASPcB6zuA598.png

[root@ ~]# nginx

[root@ ~]# netstat -lnp |grep nginx

tcp        0      0 0.0.0.0:80              0.0.0.0:*               LISTEN      3302/nginx: master

wKioL1kxgtDhneyiAAASpxXZG8c384.png

七、测试LNMP

(1)进入nginx默认的网页根目录,创建test.php的测试页:

[root@ ~]# vim /usr/local/nginx1.10/html/test1.php

<?php

    echo "PHP解析正常";

?>

[root@ ~]# vim /usr/local/nginx1.10/html/test2.php

<?php

$link=mysql_connect('localhost','root','123456');

if($link) echo "ok";

mysql_close();

?>

(2)在客户端上测试

有两种方法:

方法一:使用curl命令

[root@ ~]# curl localhost/test1.php

PHP解析正常

[root@ ~]# curl localhost/test2.php

ok

方法二:使用浏览器

wKioL1kxnKfSOD0vAABIE3HqxYA621.png

wKiom1kxnKjxJJTuAABG_1FwOck607.png

以上就是LNMP部署过程!







     本文转自品鉴初心51CTO博客,原文链接:http://blog.51cto.com/wutengfei/1931869,如需转载请自行联系原作者





相关实践学习
基于CentOS快速搭建LAMP环境
本教程介绍如何搭建LAMP环境,其中LAMP分别代表Linux、Apache、MySQL和PHP。
全面了解阿里云能为你做什么
阿里云在全球各地部署高效节能的绿色数据中心,利用清洁计算为万物互联的新世界提供源源不断的能源动力,目前开服的区域包括中国(华北、华东、华南、香港)、新加坡、美国(美东、美西)、欧洲、中东、澳大利亚、日本。目前阿里云的产品涵盖弹性计算、数据库、存储与CDN、分析与搜索、云通信、网络、管理与监控、应用服务、互联网中间件、移动服务、视频服务等。通过本课程,来了解阿里云能够为你的业务带来哪些帮助 &nbsp; &nbsp; 相关的阿里云产品:云服务器ECS 云服务器 ECS(Elastic Compute Service)是一种弹性可伸缩的计算服务,助您降低 IT 成本,提升运维效率,使您更专注于核心业务创新。产品详情: https://www.aliyun.com/product/ecs
相关文章
|
4月前
|
监控 Unix Windows
Zabbix【部署 04】 Windows系统安装配置agent及agent2
Zabbix【部署 04】 Windows系统安装配置agent及agent2
140 0
|
4月前
|
监控 Java 数据库
Zabbix【部署 05】 Docker部署Zabbix Server Agent Agent2 Web interface及 Java-Gate-Way(详细启动脚本及踩坑记录)不定时更新
Zabbix【部署 05】 Docker部署Zabbix Server Agent Agent2 Web interface及 Java-Gate-Way(详细启动脚本及踩坑记录)不定时更新
118 0
|
4月前
|
监控 Docker 容器
Zabbix【部署 03】zabbix-agent2安装配置使用(zabbix-agent2监控docker实例分享)
Zabbix【部署 03】zabbix-agent2安装配置使用(zabbix-agent2监控docker实例分享)
218 0
|
4月前
|
监控 Java
Zabbix【部署 02】Zabbix-Java-Gateway安装配置使用(使用Zabbix-Java-Gateway通过JMX监控Java应用程序实例分享)
Zabbix【部署 02】Zabbix-Java-Gateway安装配置使用(使用Zabbix-Java-Gateway通过JMX监控Java应用程序实例分享)
87 0
|
4月前
|
监控 前端开发 应用服务中间件
Zabbix【部署 01】Zabbix企业级分布式监控系统部署配置使用实例(在线安装及问题处理)程序安装+数据库初始+前端配置+服务启动+Web登录
Zabbix【部署 01】Zabbix企业级分布式监控系统部署配置使用实例(在线安装及问题处理)程序安装+数据库初始+前端配置+服务启动+Web登录
411 0
|
4月前
|
监控 关系型数据库 MySQL
zabbix部署以及配置
zabbix部署以及配置
73 3
|
6月前
|
存储 监控 前端开发
Zabbix分布式监控实战(一)——Zabbix 5.0监控平台搭建与被监控端的添加
Zabbix分布式监控实战(一)——Zabbix 5.0监控平台搭建与被监控端的添加
247 0
|
7月前
|
监控 安全 Ubuntu
用python部署zabbix
用python部署zabbix
59 1
|
3月前
|
存储 SQL 监控
修改Zabbix源码实现监控数据双写,满足业务需求!
虽然对接Elasticsearch后有诸多好处,但是它不往数据库写历史数据了,同时还不再计算趋势数据了。有这么一个场景...
修改Zabbix源码实现监控数据双写,满足业务需求!
|
4月前
|
数据采集 监控 数据库
OceanBase社区版可以通过Zabbix监控
OceanBase社区版可以通过Zabbix监控
75 4

推荐镜像

更多