博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
nginx高可用,构建LNAMMP架构
阅读量:6535 次
发布时间:2019-06-24

本文共 1693 字,大约阅读时间需要 5 分钟。

  keepalived实现nginx高可用:

  Directory1:

   IP:172.16.72.5

  Directory2:

   IP:172.16.72.4

  RS1:

   IP:172.16.72.6

  RS2:

   IP:172.16.72.7

  Virtual IP:172.16.72.1

  ①安装nginx,keepalived

  yum -y install nginx keepalived

  ②校准时间,设置ntpd服务,时间服务器

  ③配置Directory1的nginx

  配置文件/etc/nginx/nginx.conf

  

  upstream设置后端服务器的相关信息

  在servver中设置Directory反代

    proxy_pass

  Directory2的nginx配置相同;

  配置keepalived:

  

  keepalived脚本接口,用于判断nginx服务是否开启

  若nginx服务已关闭,则返回exit 1,权重-10,这样在抢占模式下BACKUP就会转为MASTER;

  

  

  

  Directory2的配置:

  nginx配置

  

  keepalived配置:

  

  

  

  nginx高可用验证:

  MASTER为Directory1:

   

  浏览器访问:

  

  

  关闭Directory1的nginx服务

  [root@localhost 桌面]# nginx -s stop

  MASTER转到Directory2上:

  

  

  访问浏览器:

  

  

  构建LNAMMP架构:

    1) Nginx既是前端调度器,又是缓存服务器;

    2) 将php的session缓存于memcached中;

    3) 在Apache和php上部署Discuz论坛程序;

    4) 使用https连接,即使用户使用的是http协议也可以以https协议进行访问;

    

   ①配置Nginx前端调度器,缓存服务器:

    如上所述;

    

   ②后端真实服务器上配置Discuz程序

   将Discuz程序导入,使用unzip解压缩;

   配置Mariadb

   如:

   

   解压后产生文件有upload,readme,utility;

   安装php-fpm;

   

   ③配置后端服务器的httpd

   两个Real Server的配置均相同,配置密钥的方式在这里不说了

   

    #yum install -y mod_ssl

    安装httpd下的https插件

   ④前端nginx的rewrite与反代

    在nginx高可用的基础上进行的修改

   

   rewrite重写为https模式;

  

   

   当访问80端口后,重写为https的域名,由443端口获取,再将其反代到wjq这个服务器组中;

   

   访问结果:

   直接访问https://www.wujunqi1.com/upload/install/index.php

   

   访问:

   断掉Directory1的nginx服务:

   #nginx -s stop

   访问第二台Directory2,结果相同

   

   

  设置memcached缓存服务器:

    缓存服务器IP为172.16.72.5即第一台MASTER主机

    安装memcached

    #yum install -y memcached

    启动memcached

    #systemctl start memcached.service

    并在后端RS的php上设置会话缓存,主要配置/etc/php-fpm.d/

    若安装的是php,则修改/etc/php.ini配置文件;

    

    需要注意的是,在配置php会话缓存时,需要与memcached相对应的配置项,如php-pecl-memcache   或者php-pecl-memcached;

    使用如下代码,去验证php缓存是否成功:

    

    修改缓存服务器IP地址即可;

    该代码的主要意义在于,连接远程缓存服务器,并将hellokey作为键值,Hello World作为缓存数   据保存在缓存服务器中,保存时间600秒;

    访问nginx的虚拟IP,172.16.72.1,反代至后端的172.16.72.6主机得出缓存成功的结果;

    

    

    本文转自 wujunqi1996 51CTO博客,原文链接:http://blog.51cto.com/12480612/1979122

  

转载地址:http://rukdo.baihongyu.com/

你可能感兴趣的文章
什么是 A 轮融资?有 B轮 C轮么?
查看>>
55、Android网络图片 加载缓存处理库的使用
查看>>
svn文件提交时强制写注释
查看>>
【转载】千万级规模高性能、高并发的网络架构经验分享
查看>>
jsp字段判空
查看>>
OC基础--OC中的类方法和对象方法
查看>>
ubuntu samba服务器多用户配置【转】
查看>>
母线的种类与作用是什么(转)
查看>>
【Xamarin 挖墙脚系列:IOS 开发界面的3种方式】
查看>>
Atitit.工作流系统的本质是dsl 图形化的dsl 4gl
查看>>
I.MX6 Android USB Touch eGTouchA.ini文件存放
查看>>
4-5-创建索引表-串-第4章-《数据结构》课本源码-严蔚敏吴伟民版
查看>>
java 操作 RabbitMQ 发送、接受消息
查看>>
go run main.go undefined? golang main包那点事
查看>>
前端进阶(13) - 搭建自己的前端脚手架
查看>>
数据挖掘(二):认识数据
查看>>
从零开始写一个npm包,一键生成react组件(偷懒==提高效率)
查看>>
Golang中的路由
查看>>
【期末考试季】JAVA进阶复习提纲
查看>>
Volley(二)—— 基本Request对象 & RequestQueue&请求取消
查看>>