【LVS-NAT配置】

配置

node1:128(客户端)
node2:135(调度器)
RS:
node3:130
node4:132

node2添加网络适配器(仅主机模式)
在这里插入图片描述

[root@node2 ~]# nmtui

在这里插入图片描述

在这里插入图片描述
在这里插入图片描述

[root@node2 ~]# nmcli connection up ens36
Connection successfully activated (D-Bus active path: /org/freedesktop/NetworkManager/ActiveConnection/3)#在虚拟机node3、node4上
[root@node3 ~]# yum install httpd -y
[root@node4 ~]# yum install httpd -y

将node3、node4适配器改为仅主机模式
#此时在虚拟机上
网关是node2的内网接口

node3
在这里插入图片描述
node4
在这里插入图片描述

#通过node2连node3
[root@node2 ~]# ssh 10.0.0.13
root@10.0.0.13's password: 
Last login: Sun Aug 13 18:06:01 2023
[root@node3 ~]# 
#连接node4
[root@node2 ~]# ssh 10.0.0.14
root@10.0.0.14's password: 
Last login: Sun Aug 13 18:13:23 2023 from gateway
[root@node4 ~]# [root@node3 ~]# echo "web test page,ip is `hostname -I`." > /var/www/html/index.html
[root@node3 ~]# systemctl start httpd
[root@node4 ~]# echo "web test page,ip is `hostname -I`." > /var/www/html/index.html
[root@node4 ~]# systemctl start httpd#开启路由转发功能(任意一种即可)
#一、临时开启
#1、
[root@node2 ~]# cat /proc/sys/net/ipv4/ip_forward
0
[root@node2 ~]# echo 1 > /proc/sys/net/ipv4/ip_forward
[root@node2 ~]# cat /proc/sys/net/ipv4/ip_forward
1
#2、
[root@node2 ~]# sysctl -w net.ipv4.ip_forward=1
net.ipv4.ip_forward = 1
[root@node2 ~]# cat /proc/sys/net/ipv4/ip_forward
1
#二、永久开启
[root@node2 ~]# vim /etc/sysctl.conf
net.ipv4.ip_forward = 1  #添加
#立即生效
[root@node2 ~]# sysctl -p
net.ipv4.ip_forward = 1[root@node2 ~]# yum install ipvsadm -y
[root@node2 ~]# ipvsadm -At 192.168.40.135:80 -s rr
[root@node2 ~]# ipvsadm -at 192.168.40.135:80 -r 10.0.0.13:80 -m
[root@node2 ~]# ipvsadm -at 192.168.40.135:80 -r 10.0.0.14:80 -m[root@node2 ~]# ipvsadm -Ln
IP Virtual Server version 1.2.1 (size=4096)
Prot LocalAddress:Port Scheduler Flags-> RemoteAddress:Port           Forward Weight ActiveConn InActConn
TCP  192.168.40.135:80 rr-> 10.0.0.13:80                 Masq    1      0          0         -> 10.0.0.14:80                 Masq    1      0          0  #node1 curl
[root@node1 ~]# for ((i=1;i<=8;i++));do curl 192.168.40.135;done
web test page,ip is 10.0.0.14 .
web test page,ip is 10.0.0.13 .
web test page,ip is 10.0.0.14 .
web test page,ip is 10.0.0.13 .
web test page,ip is 10.0.0.14 .
web test page,ip is 10.0.0.13 .
web test page,ip is 10.0.0.14 .
web test page,ip is 10.0.0.13 .

设置权重的配置

[root@node2 ~]# ipvsadm -Et 192.168.40.135:80 -s wrr
[root@node2 ~]# ipvsadm -et 192.168.40.135:80 -r 10.0.0.13:80 -m -w 1
[root@node2 ~]# ipvsadm -et 192.168.40.135:80 -r 10.0.0.14:80 -m -w 2
[root@node1 ~]# for ((i=1;i<=8;i++));do curl 192.168.40.135;done
web test page,ip is 10.0.0.14 .
web test page,ip is 10.0.0.14 .
web test page,ip is 10.0.0.13 .
web test page,ip is 10.0.0.14 .
web test page,ip is 10.0.0.14 .
web test page,ip is 10.0.0.13 .
web test page,ip is 10.0.0.14 .
web test page,ip is 10.0.0.14 .

需要node3、4可以上网

在这里插入图片描述

#node2上
[root@node2 ~]# iptables -t nat -A POSTROUTING -s 10.0.0.0/24 -o ens33 -j SNAT --to-source 192.168.40.135

在这里插入图片描述

保存恢复

[root@node2 ~]# ipvsadm -S
-A -t node2:http -s wrr
-a -t node2:http -r 10.0.0.13:http -m -w 1
-a -t node2:http -r 10.0.0.14:http -m -w 2
#保存到ipvs.txt
[root@node2 ~]# ipvsadm -S > ipvs.txt
[root@node2 ~]# ls
anaconda-ks.cfg  ipvs.txt#删除完成
[root@node2 ~]# ipvsadm -C
[root@node2 ~]# ipvsadm -Ln
IP Virtual Server version 1.2.1 (size=4096)
Prot LocalAddress:Port Scheduler Flags-> RemoteAddress:Port           Forward Weight ActiveConn InActConn#恢复
[root@node2 ~]# ipvsadm -R < ipvs.txt 
[root@node2 ~]# ipvsadm -Ln
IP Virtual Server version 1.2.1 (size=4096)
Prot LocalAddress:Port Scheduler Flags-> RemoteAddress:Port           Forward Weight ActiveConn InActConn
TCP  192.168.40.135:80 wrr-> 10.0.0.13:80                 Masq    1      0          0         -> 10.0.0.14:80                 Masq    2      0          0

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

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

相关文章

软件测试基础篇——Linux

1、Linux系统的特征 开源免费&#xff1a; 开源&#xff1a;开放源代码&#xff0c;指的是底层的源代码是可以开放出来&#xff0c;给相关的开发者&#xff0c;根据实际的需求做出修改的。 免费&#xff1a;不花钱&#xff0c;自由传播。 ​ Linux是一种免费使用和自由传播的…

设计模式(2)工厂方法模式

一、 1、介绍&#xff1a;定义一个用于创建对象的接口&#xff0c;让子类决定实例化哪一个类。工厂方法使一个类的实例化延迟到其子类。简单工厂模式的最大优点在于工厂类中包含了必要的逻辑判断&#xff0c;根据客户端的选择条件动态实例化相关的类&#xff0c;对于客户端来说…

Docker启动、停止、删除容器的相关指令

关闭容器指令&#xff1a; docker stop name启动命令&#xff1a; docker start name删除容器&#xff1a; docker rm name 或 id查看所有容器id&#xff1a; docker ps -aq删除所有容器&#xff1a; docker rm docker ps -aq开启着的容器是不能被删除的。 查看容器信息&…

【LangChain学习】基于PDF文档构建问答知识库(二)创建项目

这里我们使用到 fastapi 作为项目的web框架&#xff0c;它是一个快速&#xff08;高性能&#xff09;的 web 框架&#xff0c;上手简单。 一.创建 FastAPI 项目 我们在IDE中&#xff0c;左侧选择 FastAPI &#xff0c;右侧选择创建一个新的虚拟环境。 创建成功&#xff0c;会有…

Java 的 Stream

一、创建 Stream 1.1、创建 Stream 流 1.1.1、List 集合获取 Stream 流 Collection<String> list new ArrayList<>(); Stream<String> s1 list.stream(); 1.1.2、Map 集合获取 stream 流 Map<String, Integer> map new HashMap<>(); // …

R语言中的函数24:Combinat:combn(), permn()

介绍 combinat中的combn()和permn()函数可以得到所有的排列组合的情况 combn()函数 combn(x, m, funNULL, simplifyTRUE, …)x – 组合的向量源m – 要取的元素的数量fun – 应用于每个组合的函数(可能为空)simplify – 逻辑的&#xff0c;如果是FALSE&#xff0c;返回一个列…

爬虫如何应对网站的反爬机制?如何查找user-agent对应的值

import requestsurl https://movie.douban.com/top250 response requests.get(url) # 查看结果 print(response)在requests使用一文中我们有讲到&#xff0c;当状态码不是200时表示爬虫不可用&#xff0c;也就是说我们获取不到网页源代码。但是我们还是可以挣扎一下&#xff…

数据结构----哈夫曼树

这里写目录标题 基本概念引子基本概念各种路径长度各种带权路径长度结点的带权路径长度树的带权路径长度哈夫曼树 哈夫曼树的构造理论基础构造思想总结 一级目录二级目录二级目录二级目录 一级目录二级目录二级目录二级目录 一级目录二级目录二级目录二级目录 一级目录二级目录…

云原生K8S------Yaml文件详解

目录 一&#xff1a;K8S支持的文件格式 1&#xff0c;yaml和json的主要区别 2&#xff0c;YAML语言格式 二&#xff1a;yuml 1、查看 api 资源版本标签 2、写一个yaml文件demo 3、创建service服务对外提供访问并测试 4、详解k8s中的port 三&#xff1a;文件生成 1、kubec…

32位M0核单片机XL32F003芯片特征和功能介绍

XL32F003 系列微控制器采用高性能的 32 位 ARMCortex- M0 内核&#xff0c;宽电压工作范围的MCU。嵌入高达64 Kbytes flash和8 Kbytes SRAM存储器&#xff0c;最高工作频率32 MHz。包含多种不同封装类型多款产品。芯片集成多路I2C、SPI、 USART等通讯外设&#xff0c;1路12 bit…

FPGA应用学习笔记----CORDIC 算法和小结

加减移位操作来运算三角函数&#xff0c;开根号&#xff0c;求对数 圆周旋转模式

MySQL数据库表的增删查改 - 进阶

一&#xff0c;数据库约束 1.1 约束对象 not null - 该列不能为空unique - 保证该列的每一行都不一样default - 规定没有给列赋值时的默认值&#xff08;自定义&#xff09;primary key - not null 和 unique 的结合&#xff0c;会给该列添加一个索引&#xff0…

Java-方法

在编程中&#xff0c;我们也可以将频繁使用的代码封装成"帖子"(方法)&#xff0c;需要时直接拿来链接 方法就是一个代码片段. 类似于 C 语言中的 “函数” 方法定义 修饰符 返回值类型 方法名称([参数类型 形参 …]){ 方法体代码; [return 返回值]; } 这里比得C语言…

【ES6】深入理解ES6(1)

一、块级作用域绑定 var声明及变量提升机制 二、字符串和正则表达式 字符串&#xff08;String&#xff09;是JavaScript6大原始数据类型。其他几个分别是Boolean、Null、Undefined、Number、Symbol&#xff08;es6新增&#xff09;。 更好的Unicode支持 1. UTF-16码位 字…

【Hystrix技术指南】(4)故障切换的运作流程

[每日一句] 也许你度过了很糟糕的一天&#xff0c;但这并不代表你会因此度过糟糕的一生。 [背景介绍] 分布式系统的规模和复杂度不断增加&#xff0c;随着而来的是对分布式系统可用性的要求越来越高。在各种高可用设计模式中&#xff0c;【熔断、隔离、降级、限流】是经常被使…

接口测试之Jmeter+Ant+Jenkins接口自动化测试平台

平台简介 一个完整的接口自动化测试平台需要支持接口的自动执行&#xff0c;自动生成测试报告&#xff0c;以及持续集成。Jmeter支持接口的测试&#xff0c;Ant支持自动构建&#xff0c;而Jenkins支持持续集成&#xff0c;所以三者组合在一起可以构成一个功能完善的接口自动化…

【数学建模】--时间序列分析

时间序列分析概念与时间序列分解模型 定义&#xff1a;时间序列也称动态序列&#xff0c;是指将某种现象的指标数值按照时间顺序排列而成的数值序列。时间序列分析大致可分成三大部分&#xff0c;分别是描述过去&#xff0c;分线规律和预测未来&#xff0c;本讲将主要介绍时间序…

两天入门Linux、搭建Spring环境 第一天

一、Linux简介 1.什么是Linux 一个操作系统&#xff0c;未来公司里面会用到、接触的新操作系统。 2.为什么学Linux (1)个人职务需要&#xff0c;肯定会接触到Linux (2)职业发展&#xff0c;以后的发展肯定需要掌握Linux的许多使用方法 3.学哪些内容 (1)Linux基本介绍 (2)…

圆圈中最后剩下的数字——剑指 Offer 62

文章目录 题目描述解法一题目描述 解法一 class Solution