云计算基础-网络虚拟化
虚拟交换机
什么是虚拟交换机
虚拟交换机是一种运行在虚拟化环境中的网络设备,其运行在宿主机的内存中,通过软件方式在宿主机内部实现了部分物理交换机的功能,如 VLAN 划分、流量控制、QoS 支持和安全功能等网络管理特性
虚拟交换机在云平台上的应用
比如有两台服务器,他们之间想要通信,需要一台物理交换机,那现在在服务器上创建了两台虚拟机,现在想让这两台虚机之间通讯,这时就需要一台虚拟交换机,虚拟交换机和物理交换机在功能上都是一样的,就是让服务器上的不同虚机之间通过虚拟交换机可以进行二层通讯用的。
但是虚拟交换机在云平台中会面临一些问题,如下图:
下面三个框表示三台物理服务器,在前两台服务器上各起了两台虚机,蓝色这两台虚机通过vlan10通信,橙色的两台通过vlan20通信(vlan的配置是在虚拟交换机上),这时他们之间是可以正常通信的
这时比如第一台服务器坏了,通过虚拟机HA,第一台物理主机上的两台虚拟会迁移到第三台物理主机上运行,这时候问题来了,这两台虚拟可以正常迁移过来,但是虚拟机的网络,也就是vlan10和vlan20的配置能不能也同时迁移到第三台物理主机上的虚拟交换机上来呢?此时蓝色和橙色虚拟机之间的通讯能不能自动恢复呢?
如果只用单纯的虚拟交换机肯定是不行的,因为虚拟交换机上的配置信息是不会自动从第一个主机传递到第三台主机上的
但实际情况是,虚拟机从第一台主机迁移到第三台主机,他们之间的网络是自动恢复的,也就是第一台物理主机上的虚拟交换机会自动迁移到第三台主机上面的,这个技术是通过分布式虚拟交换机实现的
分布式虚拟交换机
分布式虚拟交换机,英文名叫Distributed Virtual Switch,简称DVS
如下图,每台服务器上都有一个虚拟交换机,这些虚拟交换机同时和DVSM通信(分布式虚拟交换机管理模块),通过DVSM,这些虚拟交换机的配置信息在管理模块这里就被同步了
所以当第一台物理主机宕机之后,第一台物理主机上的虚拟交换机的配置就会由管理模块下发给第三台物理主机,这样虚机迁移之后业务就可以自动恢复
分布式虚拟路由器
分布式虚拟路由器,英文名:Distributed Virtual Router,简称DVR,它的功能主要是用来取代外部的硬件路由器,让外部的物理网络更加简洁
虚拟路由器和虚拟交换机一样,都是运行在宿主机内存中,虚拟交换机实现了模拟二层转发功能,虚拟路由器则模拟了三层路由功能,如路由转发、NAT等
如下图,有两台物理主机host1和host2,在这两台物理主机里起了四台虚拟机vm1-4,虚拟机1和虚拟机3通过dvs配置的vlan10进行通讯,虚拟机2和4通过vlan20进行通信
如果虚拟机1和虚拟机2之间有通信需求,如果不用虚拟路由器,那传统的方式是他们的流量从两个物理主机出来后,通过外部的三层交换机,对这两个虚机之间的信息进行路由,完成两台虚拟机之间的通信。
如果采用分布式虚拟路由器,则在物理主机里直接起一台分布式虚拟路由器,这样的话两台虚拟机之间想要通信,就没有必要通过外部的物理三层交换机完成,只需要通过内部的虚拟路由器就可以完成两个虚拟机之间的信息交换
虚拟路由器的工作方式
一般情况下,资源池内的虚机除了要相互通信之外还会有对外通信的需求(如下图最最左边的web vm),那么虚拟机就可以通过内部的网络访问到对外的虚拟路由器(Extended Virtual Route),这样对外的虚拟路由器就会吧对外的业务直接路由到公网上
如果两个虚机之间想要通信(如下图web vm和db vm),那他们之间就可以通过虚拟路由器完成通信功能(下图中只有最右边的两台服务器上安装了虚拟路由器)
分布式虚拟防火墙
分布式虚拟防火墙属于虚拟防火墙,并非传统的防火墙硬件设备或者虚拟化的硬件防火墙系统,分布式虚拟防火墙并非实现传统防火墙的区域逻辑隔离的作用而是针对单个虚拟机的防护
分布式虚拟防火墙是针对每一台虚拟机都可以创建的一个虚拟的防火墙,这个虚拟的防火墙和虚拟有非常紧密的跟随关系,比如说将其中的一台虚机迁移到其他的物理主机上,虚拟防火墙同样的也会迁移过去,所以虚拟防火墙可以理解为一个粒度更小的、针对每一台虚机的防火墙
分布式防火墙和分布式虚拟交换机是对接的,虚拟机之间通信是要经过分布式虚拟交换机的,在此基础上又增加了分布式虚拟防火墙,这样就保证了每一台虚机的安全,就是虚拟在跟同一个平台上其他虚拟机之间通信的时候都会有防火墙对虚机进行安全防护
分布式虚机防火墙同样也是基于五元组来匹配规则,仅做4层防护
相关文章:

云计算基础-网络虚拟化
虚拟交换机 什么是虚拟交换机 虚拟交换机是一种运行在虚拟化环境中的网络设备,其运行在宿主机的内存中,通过软件方式在宿主机内部实现了部分物理交换机的功能,如 VLAN 划分、流量控制、QoS 支持和安全功能等网络管理特性 虚拟交换机在云平…...

166基于matlab的通过峭度指标与互相关系数筛选IMF进行SVD分解去噪
基于matlab的通过峭度指标与互相关系数筛选IMF进行SVD分解去噪,分辨虚假imf,提取最大峭度imf图。输出去噪前后时域及其包络谱结果。程序已调通,可直接运行。 166 matlab SVD去噪 IMF筛选 包络谱 (xiaohongshu.com)...

第六十三天 服务攻防-框架安全CVE复现DjangoFlaskNode.JSJQuery
第六十三天 服务攻防-框架安全&CVE复现&Django&Flask&Node.JS&JQuery 知识点: 中间件及框架列表: IIS,Apache,Nginx,Tomcat,Docker,K8s,Weblogic.JBoos,WebSphere, Jenkins,GlassFish,Jetty,Jira,Struts2,Laravel,Solr,Shiro,Thin…...

最大子序和+旅行问题——单调队列
一、最大子序和 输入一个长度为 n 的整数序列,从中找出一段长度不超过 m 的连续子序列,使得子序列中所有数的和最大。 注意: 子序列的长度至少是 1。 输入 第一行输入两个整数 n,m (1 ≤ n,m ≤ 300000)。 第二行输入 n 个数,代…...

Unity设备分级策略
Unity设备分级策略 前言 之前自己做的设备分级策略,在此做一个简单的记录和思路分享。希望能给大家带来帮助。 分级策略 根据拟定的评分标准,预生成部分已知机型的分级信息,且保存在包内;如果设备没有被评级过,则优…...
自己在开发AI应用的过程总结的 Prompt - 持续更新
自己在开发AI应用的过程总结的 Prompt - 持续更新 0. 引言1. 让模型以"中文"进行回复2. 控制模型仅输出"hi"3. 让模型"提供简单、清晰而具体的回答"4. 让模型"在最后说谢谢" 0. 引言 我想,我们多半有着相似的经历…...

STM32——OLED菜单
文章目录 一.补充二. 二级菜单代码 简介:首先在我的51 I2C里面有OLED详细讲解,本期代码从51OLED基础上移植过来的,可以先看完那篇文章,在看这个,然后按键我是用的定时器扫描不会堵塞程序,可以翻开我的文章有单独的定时…...

Open CASCADE学习|布尔运算后消除内部拓扑
在CAD建模中,布尔运算是一种逻辑运算方法,通过这种方法,可以创建、修改或组合几何对象。布尔运算主要包括并集(UNION)、交集(INTERSECT)和差集(SUBTRACT)三种运算。 并集…...

【数据仓库】主题域和数据域
数据域与主题域区别 https://www.cnblogs.com/datadance/p/16898254.html 数据域是自下而上,以业务数据视角来划分数据,一般进行完业务系统数据调研之后就可以进行数据域的划分。针对公共明细层(DWD)进行主题划分。主题域则自上而…...

C#,二分法(Bisection Method)求解方程的算法与源代码
1 二分法 二分法是一种分治算法,是一种数学思维。 对于区间[a,b]上连续不断且f(a)f(b)<0的函数yf(x),通过不断地把函数f(x)的零点所在的区间…...

Portainer安装/快速上手
前置: 管理docker容器的工具 Portainer: Container Management Software for Kubernetes and Docker https://docs.portainer.io/v/ce-2.9/start/install/server/docker/linux 官网安装教程 Install Portainer CE with Docker on Linux - Portainer Documentat…...

恢复被.target勒索病毒加密的数据文件:拒绝向.target勒索病毒支付赎金
引言: 在当今数字时代,勒索病毒已成为网络安全领域的一大威胁,而.target勒索病毒是其中引起广泛关注的一种变种。本文将深入探讨.target勒索病毒的特点以及被其加密的数据文件恢复方法。数据的重要性不容小觑,您可添加我们的技术…...

【Linux网络编程六】服务器守护进程化Daemon
【Linux网络编程六】服务器守护进程化Daemon 一.背景知识:前台与后台二.相关操作三.Linux的进程间关系四.自成会话五.守护进程四步骤六.服务器守护进程化 一.背景知识:前台与后台 核心知识就是一个用户在启动Linux时,都会给一个session会话&a…...

MySQL之json数据操作
1 MySQL之JSON数据 总所周知,mysql5.7以上提供了一种新的字段格式json,大概是mysql想把非关系型和关系型数据库一口通吃,所以推出了这种非常好用的格式,这样,我们的很多基于mongoDB的业务都可以用mysql去实现了。当然…...

【大厂AI课学习笔记】【2.1 人工智能项目开发规划与目标】(5)数据管理
今天学习了数据管理,以及数据管理和数据治理的区别和联系。 数据管理:利用计算机硬件和软件技术对数据进行有效的收集、存储、处理和应用的过程其目的在于充分有效地发挥数据的作用。 实现数据有效管理的关键是数据组织。 数据管理和数据治理的区别&am…...
Linux满载CPU和运行内存的方法
查询CPU详细信息命令如下: 查看物理CPU型号: cat /proc/cpuinfo | grep name | cut -f2 -d: | uniq -c查看物理CPU个数 cat /proc/cpuinfo| grep "physical id"| sort| uniq| wc -l查看每个物理CPU中core的个数(即核数) cat /proc/cpuinfo…...

每日五道java面试题之java基础篇(九)
目录: 第一题 你们项⽬如何排查JVM问题第二题 ⼀个对象从加载到JVM,再到被GC清除,都经历了什么过程?第三题 怎么确定⼀个对象到底是不是垃圾?第四题 JVM有哪些垃圾回收算法?第五题 什么是STW? 第…...

spring @Transactional注解参数详解
事物注解方式: Transactional 当标于类前时, 标示类中所有方法都进行事物处理 , 例子: 1 Transactional public class TestServiceBean implements TestService {}当类中某些方法不需要事物时: Transactional public class TestServiceBean implements TestService {private…...
D - 串结构练习——字符串连接
串结构练习——字符串连接 Description 给定两个字符串string1和string2,将字符串string2连接在string1的后面,并将连接后的字符串输出。 连接后字符串长度不超过110。 Input 输入包含多组数据,每组测试数据包含两行,第一行代表s…...

什么样的服务器是高性能服务器?
首先,高性能服务器应具备高处理能力。随着业务的不断扩展和数据量的爆炸性增长,高性能服务器需要具备强大的计算能力,能够快速处理各种复杂的业务和数据。这要求高性能服务器采用先进的处理器技术,如多核处理器、GPU加速等&#x…...

未来机器人的大脑:如何用神经网络模拟器实现更智能的决策?
编辑:陈萍萍的公主一点人工一点智能 未来机器人的大脑:如何用神经网络模拟器实现更智能的决策?RWM通过双自回归机制有效解决了复合误差、部分可观测性和随机动力学等关键挑战,在不依赖领域特定归纳偏见的条件下实现了卓越的预测准…...
Java 语言特性(面试系列1)
一、面向对象编程 1. 封装(Encapsulation) 定义:将数据(属性)和操作数据的方法绑定在一起,通过访问控制符(private、protected、public)隐藏内部实现细节。示例: public …...

K8S认证|CKS题库+答案| 11. AppArmor
目录 11. AppArmor 免费获取并激活 CKA_v1.31_模拟系统 题目 开始操作: 1)、切换集群 2)、切换节点 3)、切换到 apparmor 的目录 4)、执行 apparmor 策略模块 5)、修改 pod 文件 6)、…...

无法与IP建立连接,未能下载VSCode服务器
如题,在远程连接服务器的时候突然遇到了这个提示。 查阅了一圈,发现是VSCode版本自动更新惹的祸!!! 在VSCode的帮助->关于这里发现前几天VSCode自动更新了,我的版本号变成了1.100.3 才导致了远程连接出…...
linux 错误码总结
1,错误码的概念与作用 在Linux系统中,错误码是系统调用或库函数在执行失败时返回的特定数值,用于指示具体的错误类型。这些错误码通过全局变量errno来存储和传递,errno由操作系统维护,保存最近一次发生的错误信息。值得注意的是,errno的值在每次系统调用或函数调用失败时…...

C# 类和继承(抽象类)
抽象类 抽象类是指设计为被继承的类。抽象类只能被用作其他类的基类。 不能创建抽象类的实例。抽象类使用abstract修饰符声明。 抽象类可以包含抽象成员或普通的非抽象成员。抽象类的成员可以是抽象成员和普通带 实现的成员的任意组合。抽象类自己可以派生自另一个抽象类。例…...
【C语言练习】080. 使用C语言实现简单的数据库操作
080. 使用C语言实现简单的数据库操作 080. 使用C语言实现简单的数据库操作使用原生APIODBC接口第三方库ORM框架文件模拟1. 安装SQLite2. 示例代码:使用SQLite创建数据库、表和插入数据3. 编译和运行4. 示例运行输出:5. 注意事项6. 总结080. 使用C语言实现简单的数据库操作 在…...

自然语言处理——循环神经网络
自然语言处理——循环神经网络 循环神经网络应用到基于机器学习的自然语言处理任务序列到类别同步的序列到序列模式异步的序列到序列模式 参数学习和长程依赖问题基于门控的循环神经网络门控循环单元(GRU)长短期记忆神经网络(LSTM)…...

【Oracle】分区表
个人主页:Guiat 归属专栏:Oracle 文章目录 1. 分区表基础概述1.1 分区表的概念与优势1.2 分区类型概览1.3 分区表的工作原理 2. 范围分区 (RANGE Partitioning)2.1 基础范围分区2.1.1 按日期范围分区2.1.2 按数值范围分区 2.2 间隔分区 (INTERVAL Partit…...
docker 部署发现spring.profiles.active 问题
报错: org.springframework.boot.context.config.InvalidConfigDataPropertyException: Property spring.profiles.active imported from location class path resource [application-test.yml] is invalid in a profile specific resource [origin: class path re…...