云计算基础-网络虚拟化

虚拟交换机

什么是虚拟交换机

虚拟交换机是一种运行在虚拟化环境中的网络设备,其运行在宿主机的内存中,通过软件方式在宿主机内部实现了部分物理交换机的功能,如 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层防护

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

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

相关文章

编程语言的实际应用场景(C语言场景)

从应用范围上来说,这些编程语言大致可以分为两种: 一种是专用型语言,也就是针对某个特定领域而设计出来的语言;另一种是通用型语言,它们可以开发多种类型的应用程序,而不是局限在某个特定的领域。 专用型…

中科星图——LANDSAT_8/02/T1/TOA的Landsat8_C2_TOA类数据集

简介 数据名称: Landsat8_C2_TOA 数据来源: USGS 时空范围: 2020年1月-2023年3月 空间范围: 全国 数据简介: Landsat8_C2_TOA数据集是将数据每个波段的辐射亮度值转换为大气层顶表观反射率TOA,是…

如何解决缓存和数据库的数据不一致问题

数据不一致问题是操作数据库和操作缓存值的过程中,其中一个操作失败的情况。实际上,即使这两个操作第一次执行时都没有失败,当有大量并发请求时,应用还是有可能读到不一致的数据。 如何更新缓存 更新缓存的步骤就两步&#xff0…

【STM32 CubeMX】串口编程DMA+IDLE中断

文章目录 前言一、为什么要引入IDLE中断二、IDLE中断使用方式2.1 接收的三种情况2.2 函数的使用查询方式中断方式DMA方式分析一个问题 总结 前言 在嵌入式系统中,串口通信是一项关键的任务,而使用DMA(直接内存访问)结合IDLE中断进…

PLC_博图系列☞FBD

PLC_博图系列☞FBD 文章目录 PLC_博图系列☞FBD背景介绍FBD优势局限性 FBD 元素 关键字: PLC、 西门子、 博图、 Siemens 、 FBD 背景介绍 这是一篇关于PLC编程的文章,特别是关于西门子的博图软件。我并不是专业的PLC编程人员,也不懂电路…

CTFshow web(文件上传158-161)

web158 知识点: auto_append_file 是 PHP 配置选项之一,在 PHP 脚本执行结束后自动追加执行指定的文件。 当 auto_append_file 配置被设置为一个文件路径时,PHP 将在执行完脚本文件的所有代码后,自动加载并执行指定的文件。 这…

可视化锻炼日记ExerciseDiary

什么是 ExerciseDiary ? ExerciseDiary 是带有 GitHub 风格的年度可视化的锻炼日记。 安装 在群晖上以 Docker 方式安装。 在注册表中搜索 exercisediary ,选择第一个 aceberg/exercisediary,版本选择 latest。 本文写作时, lat…

云计算基础-大页内存

大页内存功能概述 什么是大页内存 简单来说,就是通过增大操作系统页的大小来减小页表,从而避免快表缺失 主要应用场景 主要运用于内存密集型业务的虚拟机,比如对于运行数据库系统的虚拟机,采用HugePages(大页)后,可…

ubuntu22.04@laptop OpenCV Get Started: 011_edge_detection

ubuntu22.04laptop OpenCV Get Started: 011_edge_detection 1. 源由2. edge_detection应用Demo2.1 C应用Demo2.2 Python应用Demo 3. 重点逐步分析3.1 GaussianBlur去噪3.2 Sobel边缘检测3.2.1 SobelX方向边缘检测3.2.2 SobelY方向边缘检测3.2.3 SobelXY方向边缘检测 3.3 Canny…

PyTorch 快速安装 - 基于 JupyterHub 并运行 K8s

PyTorch 快速安装 - 基于 JupyterHub 并运行 K8s 运行 PyTorch 可以直接逻辑运行、容器中运行、KubeFlow 中运行以及基于 JupyterHub(独立运行或运行在 K8s 之上)等多种模式。这里介绍运行在 K8s 上基于 JupyterHub 的 PyTorch 方法,这也是运…

基于边缘计算的智能家居能源管理系统

一、项目背景 随着智能家居设备的普及,能源消耗问题日益凸显。为了更有效地管理家庭能源使用,减少浪费,并可能实现能源自给自足,我们提出了基于边缘计算的智能家居能源管理系统 该系统能够实时监控和分析家庭能源消耗数据&#xf…

MySQL的日志

一:概述 (1)介绍 在任何一种数据库中,都会有各种各样的日志,记录着数据库工作的方方面面,以帮助数据库管理员追踪数据库曾经发生过的各种事件,MySQL也不例外。 (2)分类…

【精品】关于枚举的高级用法

枚举父接口 public interface BaseEnum {Integer getCode();String getLabel();/*** 根据值获取枚举** param code* param clazz* return*/static <E extends Enum<E> & BaseEnum> E getEnumByCode(Integer code, Class<E> clazz) {Objects.requireNonN…

CSS篇--transform

CSS篇–transform 使用transform属性实现元素的位移、旋转、缩放等效果 位移 // 语法 transform:translate(水平移动距离&#xff0c;垂直移动距离) translate() 如果只给一个值&#xff0c;表示x轴方法移动距离 单独设置某个方向的移动距离&#xff1a;translateX() transla…

林浩然与杨凌芸的Java时光魔法:格式化历险记

林浩然与杨凌芸的Java时光魔法&#xff1a;格式化历险记 The Java Time Odyssey of Lin Haoran and Yang Lingyun: A Formatting Adventure 在编程世界的一隅&#xff0c;有一个名叫林浩然的程序员。他是个Java大侠&#xff0c;对代码世界的法则了如指掌&#xff0c;尤其擅长驾…

用HTML和CSS打造跨年烟花秀视觉盛宴

目录 一、程序代码 二、代码原理 三、运行效果 一、程序代码 <!DOCTYPE html> <html lang"en"><head><meta charset"UTF-8"><title>跨年烟花秀</title><meta name"viewport" content"widthdevi…

HCIA-HarmonyOS设备开发认证V2.0-轻量系统内核基础-信号量semaphore

目录 一、信号量基本概念二、信号量运行机制三、信号量开发流程四、信号量接口五、代码分析&#xff08;待续...&#xff09;坚持就有收获 一、信号量基本概念 信号量&#xff08;Semaphore&#xff09;是一种实现任务间通信的机制&#xff0c;可以实现任务间同步或共享资源的…

[02] Vue指令(1)

目录 Vue中的常用指令内容渲染指令条件渲染指令事件绑定指令内联语句事件处理函数调用传参 Vue中的常用指令 概念&#xff1a;指令&#xff08;Directives&#xff09;是Vue提供的带有v- 前缀的特殊标签属性。 vue 中的指令按照不同的用途可以分为如下 6 大类&#xff1a; 内容…

Ubuntu学习笔记-Ubuntu搭建禅道开源版及基本使用

文章目录 概述一、Ubuntu中安装1.1 复制下载安装包路径1.2 将安装包解压到ubuntu中1.3 启动服务1.4 设置开机自启动 二、禅道服务基本操作2.1 启动&#xff0c;停止&#xff0c;重启&#xff0c;查看服务状态2.2 开放端口2.3 访问和登录禅道 卜相机关 卜三命、相万生&#xff0…

算法学习——LeetCode力扣二叉树篇7

算法学习——LeetCode力扣二叉树篇7 236. 二叉树的最近公共祖先 236. 二叉树的最近公共祖先 - 力扣&#xff08;LeetCode&#xff09; 描述 给定一个二叉树, 找到该树中两个指定节点的最近公共祖先。 百度百科中最近公共祖先的定义为&#xff1a;“对于有根树 T 的两个节点…