LVS负载均衡群集--NAT模式

一、实验拓扑图

二、实验目标:实现地址转换模式(LVS-NAT)的群集

三、实验要求

1、按上图要求部署网络。Client使用宿主机,其他四台为linux服务器,将所有linux服务器的防火墙关闭,NetworkManager服务停止。web1和web2需要配置默认网关192.168.1.1

2、Lvs服务器:开启路由转发功能。配置防火墙SNAT规则。群集的虚拟服务器的IP地址为200.0.0.1,服务器节点的地址为:192.1681.2和192.168.1.3。

3、在web1和web2服务器配置httpd服务,网页目录为/var/www/html,为测试效果,两台服务器的网页内容不一样。

4、在客户端测试访问群集的虚拟服务器IP地址,验证是否能够看到两台web服务器的网页,实现负载均衡的功能。

5、nfs:在实际企业中,两台web服务器对应的网页来自于nfs服务器。所以在nfs服务器上部署nfs共享存储服务,网页存放在/var/www/html下。两台web服务器挂载nfs共享目录,并最后配置自动挂载。

6、在客户端测试访问群集的虚拟服务器IP地址,验证是否能看到nfs服务器发布的网页。

步骤:

1、如上图所示配置ip,Client使用宿主机,其他四台为linux服务器,将所有linux服务器的防火墙关闭,NetworkManager服务停止。web1和web2的eth0网卡需要配置默认网关192.168.1.1 ,新建网卡类型并修改:网卡1(200.0.0.10 ,200.0.0.1)网卡2:(192.168.1.1 , 192.168.1.2, 192.168.1.3)网卡3(192.168.2.1, 192.168.2.2 , 192.168.2.3)

2、Lvs服务器:开启路由转发功能。配置防火墙SNAT规则。群集的虚拟服务器的IP地址为200.0.0.1,服务器节点的地址为:192.1681.2和192.168.1.3。

(1)开启lvs服务器的路由转发功能,web1和web2也同样打开。

vim /etc/sysctl.conf

Sysctl -p

(2)配置防火墙SNAT规则。

(3)加载ip_vs模块,并安装ipvsadm管理工具。

(4)创建虚拟服务器,添加服务器节点。群集的虚拟服务器的IP地址为200.0.0.1,服务器节点的地址为:192.1681.2和192.168.1.3。

(5)存策略,设置开机自启动

3、在web1和web2服务器配置httpd服务,网页目录为/var/www/html,为测试效果,两台服务器的网页内容不一样。

4、在客户端测试访问群集的虚拟服务器IP地址,验证是否能够看到两台web服务器的网页,实现负载均衡的功能。(来回刷新查看是否有变化,实际应用中两个网页应该内容一样)

5、nfs:在实际企业中,两台web服务器对应的网页来自于nfs服务器。所以在nfs服务器上部署nfs共享存储服务,网页存放在/var/www/html下。两台web服务器挂载nfs共享目录,并最后配置自动挂载。

(1)首先NFS服务器需要安装nfs-utils和rpcbind软件包

(2)设置开机自启动以及设置共享目录,并在里面添加默认网页

(3)将共享目录共享给192.168.2.0/24使用

vim /etc/exports

(4)启动NFS服务程序

(5)分别在两个web主机中手动挂载NFS共享目录。

(6)fstab自动挂载设置

vim /etc/fstab

192.168.2.1:/opt/wwwroot /var/www/html nfs defaults,_netdev 0 0

另一台也是以上操作

6、在客户端测试访问群集的虚拟服务器IP地址,验证是否能看到nfs服务器发布的网页。

原文发布于微信公众号 - L宝宝聊IT(gh_b0e552aa80db)

原文发表时间:2018-03-18

本文参与腾讯云自媒体分享计划,欢迎正在阅读的你也加入,一起分享。

发表于

我来说两句

0 条评论
登录 后参与评论

相关文章

来自专栏码匠的流水账

java9系列(三)模块系统精要

如果A依赖B,B依赖C,B方法返回的类型是C中的类型,那么需要A也可以使用C,则需要在A中声明依赖C。不过这样子非常费劲,所以java9内置了个transiti...

1012
来自专栏ZKEASOFT

纸壳CMS可视化建站系统创建多语言网站

纸壳CMS已经从架构上支持多语言。但是多语言功能默认是没有开启的。您可以从设置中开启多语言,或者随时关闭它,您可以随时进行切换。

810
来自专栏技术小黑屋

自定义控件进阶:declare-styleable重用attr

最近接触了Android自定义控件,涉及到自定义xml中得属性(attribute),其实也很简单,但是写着写着,发现代码不完美了,就是在attrs.xml这个...

711
来自专栏我和PYTHON有个约会

python-应用层-网络编程-FTP

前面描述的基于TCP/UDP协议的网络程序开发,主要是针对传输层协议的底层代码实现 在实际操作过程中,更多的情况是直接操作应用层的数据协议的网络程序开发,如文...

963
来自专栏流柯技术学院

selenium + python自动化测试环境搭建

-------------------------------------------------------------

922
来自专栏技术博客

Google免费的SVN服务器管理VS2010代码

Google免费为我们提供了代码管理的SVN服务器。首先我这里用的Win7 64的电脑系统,用VS2010进行的代码开发。这里管理代码需要以下准备(现在用的都是...

1031
来自专栏Django中文社区

登录

用户已经能够在我们的网站注册了,注册就是为了登录,接下来我们为用户提供登录功能。和注册不同的是,Django 已经为我们写好了登录功能的全部代码,我们不必像之前...

4675
来自专栏SDNLAB

数据中心网络虚拟化 配置管理技术

在构建虚拟网络时,管理员需要进行大量的配置工作,例如端口的ip地址和VXLAN配置等等。显然,没有人愿意在系统每次启动时都将繁琐的配置工作重复一遍,所以将配置信...

3264
来自专栏老马寒门IT

Node入门教程(12)第十章:Node的HTTP模块

Ryan Dahl开发node的初衷就是:把Nginx非阻塞IO功能和一个高度封装的WEB服务器结合在一起的东东。所以Node初衷就是为了高性能的Web服务器去...

2796
来自专栏云计算教程系列

如何将您的Git存储库备份到腾讯云COS

依赖源代码存储库进行版本控制是一种最佳的方法,当代码更改导致应用程序崩溃或行为不正常时,可以恢复运行。但是,如果发生诸如不小心删除分支或无法访问存储库等严重性事...

1033

扫码关注云+社区