nginx+keepalived构建负载均衡代理服务器

实验环境:

1、centos7.3 centos6.8
2、两台VS提供nginx代理和keepalived
3、两台RS提供httpd服务并部署wordpress
4、另外一台提供Mysql数据库服务

实验拓扑图:

nginx+keepalived构建负载均衡代理服务器

拓扑图

实验步骤

1、在vs1(172.18.251.4)上配置,用yum安装keepalived和nginx

yum install -y keepalived nginx

2、配置vs1中keepalived配置文件

vim /etc/keepalived/keepalived.com

配置keepalived.com 实现vs1为主服务提供VIP:172.18.10.82,vs2为备用的,这里提供vs1主备的配置,vs2上只需要修改:

state BACKUP
priority 98

通过嵌入脚本获取nginx的进程状况来调整主备的工作模式。
具体配置如下:

nginx+keepalived构建负载均衡代理服务器

keepalived配置.jpg

通过写通知脚本发送邮件给root,具体脚本如下:

nginx+keepalived构建负载均衡代理服务器

notify


3、配置nginx
编辑nginx的配置文件,实现nginx反向代理功能

vim /etc/nginx/conf/nginx.conf

修改nginx.conf文件

nginx+keepalived构建负载均衡代理服务器

nginx.conf


修改nginx下的server配置文件:

vim /etc/nginx/conf.d/defualt.conf

修改配置如下:

nginx+keepalived构建负载均衡代理服务器

default.conf


修改完毕后,可以检测nginx修改是否正确:

nginx -t
nginx
ss -tnl | grep 80

为了防止rs1和rs2访问错误,可以在vs上安装httpd服务操作如下:

yum install -y httpd
vim /var/www/html/index.html
-------index.html--------------  Sorry !
-----------end---------------------- vim /etc/httpd/conf/httpd.conf
---------httpd.conf----------  listen 8080
----------------end------------------- systemctl start httpd
ss -tnl | grep 8080

vs2(172.18.251.40)和vs1(172.18.251.4)的配置差不多,需要注意的地方以上已经说明这里就不再复述。

4、部署rs中web服务
在rs1(172.18.250.237)通过yum安装httpd等

yum -y httpd php php-mysql

下载wordpress并解压!

cd /var/www/html
lftp 172.18.0.1
>mget pub/Sources/sources/httpd/wordpress.zip unzip wordpress.zip

修改httpd的配置文件:

vim /etc/httpd/conf/httpd.conf
----------------httpd.conf----------------------
DocmentRoot /var/www/html/wordpress
<Dirctory /var/www/html/wordpress
----------------------end---------------------------

启动httpd服务:

systemctl start httpd
ss -tnl | grep 80

rs2(172.18.253.233)配置和rs1相同。
5、部署mysql服务器
通过yum安装mysql

yum install mysql -y
service mysql start 注意确保iptables和selinux不影响,以上也是一样:
iptables -F
setenforce 0 getenforce

进入mysql数据库,新建数据库wpdb,并授权用户

mysql
>>CRTEATE DATABASE wpdb;
>> GRANT ALL ON wpdb.* TO 'wpuser'@'172.18.%.%' IDENTIFIED BY 'wppasswd'

6、启动vs服务器上的keepalived
在vs1和vs2上启动keepalived服务

systemctl start keepalived
ip a l

此处为了测试效果,在rs1和rs2新建测试页如下:

nginx+keepalived构建负载均衡代理服务器

查看rs1页面.jpg
nginx+keepalived构建负载均衡代理服务器

rs2查看页面.jpg

7、测试高可用效果
通过停止服务检测高可用的效果。

vs1:
systemctl stop nginx
ss -tnl
nginx+keepalived构建负载均衡代理服务器

note1停止后note2自动获得地址
nginx+keepalived构建负载均衡代理服务器

note1恢复后

可以通过tcpdump命令查看检测过程如下

nginx+keepalived构建负载均衡代理服务器

抓包检测

经过试验可以看出keepalived和nginx调度后,可实现高可用
8、通过网页访问,配置wordpress

原创文章,作者:elene@leo,如若转载,请注明出处:http://www.178linux.com/76568

(0)
elene@leoelene@leo
上一篇 2017-05-21
下一篇 2017-05-21

相关推荐

  • 硬盘基础知识及 MBR、GPT分区格式

    一,硬盘知识     硬盘接口类型:          并行:             IDE: 133MB/s &n…

    Linux干货 2016-09-19
  • CentOS程序包管理

    对于Linux系统而言,其能执行的程序为二进制格式,而对于程序开发者而言,直接利用二进制开发程序是不太现实的,所以一般都是利用高级语言来进行软件开发,其程序也即称为源代码;那么我们在对一个程序进行安装、升级、卸载、 查询、校验等操作时,需要对每个源代码进行编译成为二进制程序,那么显然是不太现实的。所以在各Linux发行版中一般都带有程序包管理器。 所谓程序包…

    Linux干货 2016-08-25
  • 堡垒机-麒麟开源堡垒机 V 1.3 正式发布

    麒麟开源堡垒机团队经过1个月的努力,发布V 1.3版本,本版本主要收集了5月开发的小功能,并且增加了大用户量、大设备量,纵深目录层级的优化支持,产品 V1.3  光盘主要新增功能如下(相对 V1.2光盘) 1.增加苹果MAC OS系统客户端的WEB访问支持 2.增加CA认证支持,内置CA证书  3.增加ssh 公私钥认证方式中,私钥中有密…

    Linux干货 2016-06-09
  • Tomcat基础及常见使用入门

    Tomcat的简单介绍,安装,以及简单的配置运用

    2017-09-11
  • CentOS 6开机启动流程理论篇

    CentOS 6开机启动流程理论篇 centos 系统的启动流程 grub 破坏Linux的核心文件再修复体验系统启动流程 概述 任 何系统启动的第一步必然是加电,然后计算机硬件会主动地读取BIOS来加载硬件设备信息并检测,之后系统会主动地读取第一个有引导程序的设备,该引导程序 (grub)可以指定使用哪个内核来启动,并将其加载至内存当中运行,同时内核还要加…

    Linux干货 2016-09-19
  • java基础与环境

    java 简述 java基础 jvm java环境搭建 简述 什么是java? java是一门面向对象的编程语言,具有简单性、面向对象、分布式、健壮性、安全性、平台独立与可移植性、多线程、动态性等特点,特别是可移植性,java所有的代码都需要在一个特定的虚拟环境中实现,所以可移植性方面非常好,一次编译,永久使用。 java可以做到什么? Java可以编写桌面…

    2016-06-24