DR模式下LVS负载均衡聚集部署实验

目录

1、实验准备

2、配置负载调度器(ens33:192.168.80.9  VIP:192.168.80.188)

2.1 配置虚拟ip地址(VIP:192.168.80.188)

2.2 调整proc响应参数

2.3 设置负载分配策略

3、部署共享存储(NFS服务器:192.168.80.10)

4、节点服务器(192.168.223.11、192.168.223.12,web1和web2同等配置) 

5、测试,用本机浏览器访问192.1168.80.188


1、实验准备

DR 服务器:192.168.80.9
Web 服务器1:192.168.80.11
Web 服务器2:192.168.80.12
nfs 服务器: 192.168.80.10
客户端:192.168.80.100
vip:192.168.80.188

2、配置负载调度器(ens33:192.168.80.9  VIP:192.168.80.188)

2.1 配置虚拟ip地址(VIP:192.168.80.188)

#关闭防火墙和selinux服务器
[root@localhost ~]#systemctl stop firewalld
[root@localhost ~]#setenforce 0#加载模块并查看版本
[root@localhost ~]#modprobe ip_vs
[root@localhost ~]#cat /proc/net/ip_vs
IP Virtual Server version 1.2.1 (size=4096)
Prot LocalAddress:Port Scheduler Flags-> RemoteAddress:Port Forward Weight ActiveConn InActConn#下载ipvsadm工具
[root@localhost ~]#yum -y install ipvsadm

[root@localhost network-scripts]#cd /etc/sysconfig/network-scripts/
[root@localhost network-scripts]#cp ifcfg-ens33 ifcfg-ens33:0
#配置虚拟网卡,若为隧道模式ifcfg-tunl0
[root@localhost network-scripts]#vim ifcfg-ens33:0
#删除dns与网关,注意子网
NAME=ens33:0
DEVICE=ens33:0
IPADDR=192.168.91.188
NETMASK=255.255.255.255
[root@localhost network-scripts]#systemctl restart network
[root@localhost network-scripts]#ifup ifcfg-ens33:0
#启动网卡
[root@localhost network-scripts]#ifconfig ifcfg-ens33:0

 

2.2 调整proc响应参数


#调整/proc响应参数  
#对于 DR 群集模式来说,由于 LVS 负载调度器和各节点需要共用 VIP 地址,
关闭 Linux 内核的重定向参数。响应服务器不是一台路由器,那么它不会发送重定向,所以可以关闭该功能
[root@localhost network-scripts]# vim /etc/sysctl.conf
net.ipv4.ip_forward = 0
net.ipv4.conf.all.send_redirects = 0
net.ipv4.conf.default.send_redirects = 0
net.ipv4.conf.ens33.send_redirects = 0[root@localhost network-scripts]#sysctl -p
#刷新配置

2.3 设置负载分配策略

#配置负载分配策略
[root@localhost ~]#modprobe ip_vs
[root@localhost ~]#cat /proc/net/ip_vs#加载模块
[root@localhost network-scripts]#ipvsadm-save >/etc/sysconfig/ipvsadm
[root@localhost network-scripts]#systemctl start ipvsadm.service[root@localhost network-scripts]#ipvsadm -C
#清除原有的策略[root@localhost ~]#ipvsadm -A -t 192.168.80.188:80 -s rr
[root@localhost ~]#ipvsadm -a -t 192.168.80.188:80 -r 192.168.80.11:80 -g
[root@localhost ~]#ipvsadm -a -t 192.168.80.188:80 -r 192.168.80.12:80 -g
#添加真实服务器-a  指定VIP地址及TCP端口-t   指定RIP地址及TCP端口 -r 指定DR模式-g[root@localhost network-scripts]#ipvsadm
#启用策略       [root@localhost network-scripts]#ipvsadm-save >/etc/sysconfig/ipvsadm
#保存设置

3、部署共享存储(NFS服务器:192.168.80.10)

systemctl stop firewalld.service
systemctl disable firewalld.service
setenforce 0yum install nfs-utils rpcbind -y
systemctl start nfs.service
systemctl start rpcbind.service
systemctl enable nfs.service
systemctl enable rpcbind.servicemkdir /opt/lic /opt/zhangbin
chmod 777 /opt/lic /opt/zhangbinvim /etc/exports
/opt/accp 192.168.80.0/24(rw,sync)
/opt/benet 192.168.80.0/24(rw,sync)--发布共享---
exportfs -rv

4、节点服务器(192.168.223.11、192.168.223.12,web1和web2同等配置) 

[root@localhost ~]#systemctl stop firewalld.service
[root@localhost ~]#setenforce 0
[root@localhost ~]#yum install httpd -y
[root@localhost ~]#systemctl start httpd
[root@localhost ~]#cd /etc/sysconfig/network-scripts/
[root@localhost network-scripts]#cp ifcfg-lo ifcfg-lo:0
[root@localhost ~]#ifconfig lo:0 192.168.80.188 32
[root@localhost ~]#ifconfig lo:0 192.168.80.188 255.255.255.255
[root@localhost network-scripts]#vim ifcfg-lo:0
#修改回环网卡名,IP地址,子网掩码
DEVICE=lo:0
IPADDR=192.168.80.188
NETMASK=255.255.255.255
NETWORK=127.0.0.0
[root@localhost network-scripts]#route add -host 192.168.80.188 dev lo:0
#设置路由
[root@localhost network-scripts]#route -n
#开机执行命令,或者写入 /etc/profile 文件
[root@localhost network-scripts]#vim /etc/rc.d/rc.local 
/usr/sbin/route add -host 192.168.80.188 dev lo:0
[root@localhost network-scripts]#chmod +x /etc/rc.d/rc.local
[root@localhost network-scripts]#ll /etc/rc.d/rc.local 
-rwxr-xr-x. 1 root root 484 11月 17 16:56 /etc/rc.d/rc.local[root@localhost network-scripts]#vim /etc/sysctl.conf 
#添加系统只响应目的IP为本地IP的ARP请求
#系统不使用原地址来设置ARP请求的源地址,而是物理mac地址上的IP
[root@localhost network-scripts]#sysctl -p
net.ipv4.conf.all.arp_ignore = 1
net.ipv4.conf.all.arp_announce = 2
net.ipv4.conf.default.arp_ignore = 1
net.ipv4.conf.default.arp_announce = 2
net.ipv4.conf.lo.arp_ignore = 1
net.ipv4.conf.lo.arp_announce = 2#开启httpd,rpcbind
[root@localhost network-scripts]#systemctl start rpcbind
[root@localhost network-scripts]#systemctl start httpd
#查看共享目录列表
[root@localhost network-scripts]#showmount -e 192.168.80.10
Export list for 192.168.80.10:
/opt/web2 192.168.80.0/24
/opt/web1 192.168.80.0/24#挂载
[root@localhost network-scripts]#mount.nfs 192.168.80.10:/opt/web1 /var/www/html
[root@localhost network-scripts]#df -h
文件系统                 容量  已用  可用 已用% 挂载点
/dev/mapper/centos-root   50G  3.9G   47G    8% /
devtmpfs                 1.9G     0  1.9G    0% /dev
tmpfs                    1.9G     0  1.9G    0% /dev/shm
tmpfs                    1.9G   18M  1.9G    1% /run
tmpfs                    1.9G     0  1.9G    0% /sys/fs/cgroup
/dev/sda1                5.0G  179M  4.9G    4% /boot
tmpfs                    378M   36K  378M    1% /run/user/0
192.168.80.10:/opt/web1   40G  3.5G   37G    9% /var/www/html[root@localhost network-scripts]#echo "this is web1" >/var/www/html/index.html
[root@localhost network-scripts]#

 

 

5、测试,用本机浏览器访问192.1168.80.188

隔一段时间刷新一下,发现两个页面来回切换

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/725261.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

LeetCode1394. Find Lucky Integer in an Array

文章目录 一、题目二、题解 一、题目 Given an array of integers arr, a lucky integer is an integer that has a frequency in the array equal to its value. Return the largest lucky integer in the array. If there is no lucky integer return -1. Example 1: Inp…

【算法可视化】搜索算法专题

运行平台 Algorithm Visualizer 选数 [NOIP2002 普及组] 选数 // 导入可视化库 { const { Tracer, Array1DTracer, LogTracer, Layout, VerticalLayout } require(algorithm-visualizer); // }const N 4, K 3; //从包含4个元素的集合中选出3个数 let ans 0 //方案数 co…

static详解

前言 大家好我是jiantaoyab,这篇文章来谈一谈c中的static,根据对static的使用,我分为类内和类外2种情况 static简介 static是c常用的修饰符,它用来控制变量的存储方式和可见性,在变量前面加上一个static&#xff0c…

代码随想录算法训练营第五十二天 300.最长递增子序列 、674. 最长连续递增序列 、718. 最长重复子数组

代码随想录算法训练营第五十二天 | 300.最长递增子序列 、674. 最长连续递增序列 、718. 最长重复子数组 300.最长递增子序列 题目链接:300. 最长递增子序列 - 力扣(LeetCode) class Solution {public int lengthOfLIS(int[] nums) {int l…

ECMAScript 语法

ECMAScript 语法 一、ECMAScript1.ECMAScript简介2.ECMAScript历史 二、ECMAScript 语法区分大小写变量是弱类型的每行结尾的分号可有可无注释与 Java、C 和 PHP 语言的注释相同括号表示代码块 一、ECMAScript ECMAScript是一种由Ecma国际(前身为欧洲计算机制造商协…

大唐杯学习笔记:Day6

1.1小区选择 一、概述 1.UE在RRC_IDLE和RRC——INACTIVATE状态下进行的过程; 2.UE首先需要完成PLMN的选择,在已选择的PLMN上寻找合适的小区,获取合适的服务,监听控制信道,这个过程即小区选择过程; 3.根据小区重选准则,UE寻找其他更适合的小区进行小区…

论文《Exploring CLIP for Assessing the Look and Feel of Images》阅读

论文《Exploring CLIP for Assessing the Look and Feel of Images》阅读 论文概述Preliminary方法论Experiments结论 论文概述 今天带来的是论文《Exploring CLIP for Assessing the Look and Feel of Images》,论文主要通过 CLIP 模型来完成图像的质量&#xff0…

js五星评价的制作方法

方法有两种&#xff0c;1、jquer插件&#xff1b;2、图片循环&#xff1b; 第一种、效果图 代码 <!DOCTYPE html> <html lang"zh"> <head><meta charset"UTF-8"><meta http-equiv"X-UA-Compatible" content"…

装饰器模式详解

8.9.6 装饰器模式 ​ 装饰器模式是一种结构型模式&#xff0c;主要是给一个类添加更多功能&#xff1b; 示例代码&#xff1a; #include <iostream> #include <string>// 抽象基类&#xff1a;文本修饰器 class TextDecorator { public:virtual std::string dec…

软件中级设计师——计算机系统知识

前言 计算机系统知识点&#xff08;第一章&#xff09;。 文章目录 前言一、计算机系统1、CPU2、运算器3、控制器 一、计算机系统 1、CPU 主要由控制器和运算器组成&#xff1b; 控制器 功能 程序控制&#xff1b;操作控制&#xff1b;时间控制&#xff1b; 运算器 功能 数据…

自定义过滤器实现对请求报文统一解密对响应加密

工作中经常会遇到这样的情况,前端(Android或vue等)跟后台通讯时需要对报文做加密和签名处理,但是后端微服务之间调用是明文,这种情况可以考虑通过自定义过滤器的方式实现。 前端在请求头里增加特定字段表示是前端请求,报文是否需要加密,后端自定义过滤器获取请求时根据请…

一文了解 ArrayList 的扩容机制

了解 ArrayList 在 Java 中常用集合类之间的关系如下图所示&#xff1a; 从图中可以看出 ArrayList 是实现了 List 接口&#xff0c;并是一个可扩容数组&#xff08;动态数组&#xff09;&#xff0c;它的内部是基于数组实现的。它的源码定义如下&#xff1a; public class A…

通过hyperbeam创建梁单元截面属性

1、为模型中标准的圆柱形创建梁单元和赋予属性&#xff1b; 2、为模型中不标准的对称性实体创建梁单元和赋予属性&#xff1b; 3、为模型中壳体部分创建梁单元和赋予属性&#xff1b;

Linux系统之rename命令的基本使用

Linux系统之rename命令的基本使用 一、rename命令介绍二、raname工具版本2.1 C语言版本2.2 Perl版本 三、centos下的rename使用3.1 基本语法3.2 命令选项3.3 rename的基本使用 四、ubuntu下的rename使用4.1 基本语法4.2 命令选项4.3 rename命令的基本操作 五、rename注意事项 一…

“色狼”用英语怎么说?柯桥日常英语,成人英语口语学习

最近有粉丝问我"色狼"英文翻译是啥 首先声明不是"colour wolf"哈 关于“色狼”的英文表达有很多 快和C姐一起来看看吧&#xff01; 1.pervert 这个单词的意思是变态、色狼 是对性变态者最直观的描述 He is such a pervert&#xff01; I saw him lo…

【Java】Spring的ReflectionUtils类常用方法学习笔记

目录 ReflectionUtils介绍 常用方法 访问字段 方法调用 处理回调 示例 脑容量不够了&#xff0c;以简单的小知识作为一天的结尾吧(悲 ReflectionUtils介绍 ReflectionUtils是Spring Framework中非常实用的一个工具类&#xff0c;为开发人员提供了简便的反射操作方法&am…

三星Foundry决定对其第二代3纳米级别的制造技术SF3进行重新命名

三星Foundry被报道已决定对其第二代3纳米级别的制造技术SF3进行重新命名&#xff0c;将其改为2纳米级别的生产工艺SF2&#xff0c;这意味着相关的合同需要重写。据ZDNet报道&#xff0c;这次更名可能是三星为了简化工艺命名&#xff0c;并试图在视觉上更好地与英特尔Foundry竞争…

学习基于 JavaScript 语言 的计算机界三大神书”之一 ——SICP

如何阅读“计算机界三大神书”之一 ——SICP 《计算机程序的构造和解释》&#xff08;Structure and Interpretation of Computer Programs&#xff0c;简记为SICP&#xff09;是MIT的基础课教材&#xff0c;出版后引起计算机教育界的广泛关注&#xff0c;对推动全世界大学计算…

Vue3组件通信之二_defineExpose编译器宏函数

Vue3组件通信之二_defineExpose编译器宏函数 文章目录 Vue3组件通信之二_defineExpose编译器宏函数1. defineExpose2.简单理解3. 实战案例1. 父子组件之间通信1. 子组件中通过defineExpose暴露属性或方法2. 父组件中使用子组件暴露的方法 2. 同级(兄弟)组件之间方法调用或传值1…

【算法可视化】模拟算法专题

运行平台 Algorithm Visualizer 神奇的幻方 [NOIP2015 提高组] 神奇的幻方 // import visualization libraries { const { Tracer, Array2DTracer, Array1DTracer, LogTracer, Randomize, Layout, VerticalLayout } require(algorithm-visualizer); // } function filledA…