OpenStack必备基础理论知识点整理!

文章目录

  • 前言
  • 一:OpenStack概述
      • 1.1:OpenStack起源
      • 1.2:什么是OpenStack/li>
      • 1.3:OpenStack常见的8个核心项目
      • 1.4:OpenStack的优势
  • 二:OpenStack的节点类型
      • 2.1:控制节点
      • 2.2:网络节点
      • 2.3:计算节点
      • 2.4:存储节点
  • 三:OpenStack架构
      • 3.1:概述
      • 3.2:OpenStack- ironic裸金属
  • 三:OpenStack常见的核心项目
      • 3.1:用户认证服务keystone
          • 3.1:重要概念介绍
          • 3.1.2:keystone工作流程图
      • 3.2:控制台 Dashboard
      • 3.3:镜像模块Glance
          • 3.3.1:概述
          • 3.3.2:主要组件
          • 3.3.3:镜像的格式
      • 3.4:计算模块Nova
          • 3.4.1:Nova概述
          • 3.4.2:主要组件
      • 3.5:块存储Cinder
          • 3.5.1:概述
          • 3.5.2:主要服务组件
      • 3.6:网络模块Neutron
          • 3.6.1:概述
          • 3.6.2:Linux虚拟网络
          • 2.6.2:组网模型

前言

  • 本文的介绍以文字为主,内容丰富详细并繁多。慎入!

一:OpenStack概述

1.1:OpenStack起源

  • OpenStack 是 Rackspace(一 家 美 国 的 云 计 算 厂 商 ) 和 美 国 国 家 航 空 航 天 局(National Aeronautics and Space Administration, 简称 NASA) 在 2010 年共同发起了OpenStack 项目。 由 Rackspace 贡献存储源码(Swift)、 NASA 贡献计算源码(Nova)。在 2010 年的 7 月发起了 OpenStack 项目。

1.2:什么是OpenStack/h3>
  • OpenStack 是一个通过数据中心控制计算资源、 存储资源和网络资源的云平台。 同时它又是一款开源软件, 以 Apache 许可证授权的自由软件和开放源代码项目, 支持所有类型的云环境。
  • OpenStack 的目标是提供简单实施、 可扩展以及丰富的功能集的云产品, 来自全世界的云计算专家共同维护该云项目。 OpenStack 通过多种补充服务提供了 IaaS 解决方案,每一种服务均提供了相应的应用程序接口(Application Programming Interface, 简称 API),以促进各组件之间的整合。
  • OpenStack 被用来提供公有云以及私有云的建设以及管理。 作为一个开源项目, 其社区规模涵盖 130 家企业以及 1350 位开发人员。这些机构与个人都将 OpenStack 作为 IaaS 资源的通用前端。
  • OpenStack 覆盖了网络、 虚拟化、 操作系统、 服务器等各个方面。 一般情况下, 每半年左右更新一次版本。 下面表中列出了常见的 8个核心项目(即 OpenStack 服务)。

1.3:OpenStack常见的8个核心项目

服务 项目名称 解释
Compute(计算服务) Nova项目 负责实例生命周期的管理, 计算资源的单位。 对 Hypervisor 进行屏
蔽, 支持多种虚拟化技术(红帽默认为 KVM), 支持横向扩展。
Network(网络服务) Neutron项目 负责虚拟网络的管理, 为实例创建网络的拓扑结构。 是面向租户的网
络管理, 可以自定义网络, 并使租户之间互不影响。
Identity(身份认证服务) Keystone项目 类似于 LDAP 服务, 对用户、 租户和角色、 服务进行认证与授权, 并
且支持多认证机制。
Dashboard(控制面板服务) Horizon服务 提供一个 Web 管理界面, 与 OpenStack 底层服务进行交互。
Image Service(镜像服务) Glance项目 提供虚拟机镜像模板的注册与管理, 将做好的操作系统复制为镜像模
板, 在创建虚拟机时直接使用。 可支持多格式的镜像。
Block Storage(块存储服务) Cinder 负责为运行实例提供持久的块存储设备, 可进行方便的扩展, 按需付
费, 支持多种后端存储。
Object Storage(对象存储服务) Swift Swift 为 OpenStack 项目
提供基于云的弹性存储, 支持集群无单点故障。
Telemetry(计量服务) Ceilometer项目 用于度量、 监控和控制数据资源的集中来源, 为 OpenStack 用户提供
记账途径。

1.4:OpenStack的优势

  • OpenStack 在控制性、 兼容性、 可扩展性、 灵活性方面具备有优势, 它可能成为云计算领域的行业标准。
    • 控制性: 完全开源的平台, 模块化的设计, 提供相应的 API 接口, 方便与第三方技术集成, 从而满足自身业务需求。
    • 兼容性: OpenStack 兼容其他公有云, 方便用户进行数据迁移
    • 可扩展性: Openstack 采用模块化的设计, 支持主流发行版本的 Linux, 可以通过横向扩展, 增加节点、 添加资源。
    • 灵活性: 用户可以根据自己的需要建立基础设施, 也可以轻松地为自己的群集增加规模 。
  • Openstack 项目采用 Apache2 许可, 意味着第三方厂家可以重新发布源代码。行业标准: 众多 IT 领军企业都加入到 OpenStack 项目, 意味着 OpenStack 在未来可能形成云计算行业标准。

二:OpenStack的节点类型

2.1:控制节点

  • 顾名思义就是OpenStack中实现数据中心控制的节点,管理 OpenStack的所有服务组件,所有组件不管在哪里,都需要在控制节点上完成类似注册的工作
  • 控制节点必须安装三种类型的软件
    • 第一种
      • 控制接节点上必须安装的是一些相对于 Openstack服务来说的底层的软件,这些底层的软件需要为openstock组件来提供服务,这些软件有DB软件,消息队列软件, Memorycache和Etcd等
    • 第二种
      • 除了底层软件之外,控制节点上必须安装三个 OpenStack的核心组件
      • Keystone和glance是完整的安装在控制节点上的,Nova安装了一部分,Nova的安装是为了节点上的计算服务
      • Glance服务是可以控制节点上剥离的,一般 Glance占用资源小。一般大家都安装在控制节点上的
      • 控制节点是可以安装 Nova computed的,但是生产环境是不会这么干的
    • 第三种
      • 除了底层服务软件和核心组件之外,OpenStack还支持其他可选的组件,比如你的集群中有存储接口,那么在 OpenStack上需要安装管理存储节点和对应的服务组件等等,类似核心组件Nova的套路

2.2:网络节点

  • 网络节点只有Neutron组件,网络节点上的neutron安装core plugin(ML2)和service plugin(L3 service),具体的 Service Plugin可以根据你的需求选择

2.3:计算节点

  • 包含Nova部分组件和 Neutron部分组件Nova- compute.,Neutron agent

2.4:存储节点

  • 安装存储组件的节点,一般有代表性的 Cinder(块存储)和 Swift(对象存储)

三:OpenStack架构

3.1:概述

  • OpenStack由多种服务组成,每种服务具有独立的命名。在整个OpenStack架构中, Keystone提供认证服务,接收来自用户和服务的认证请求,并对其身份进行认证。
    各个服务之间通过公用的API接口进行交互。大部分服务均包含一个API进程,用于侦听API请求,根据服务的性质选择处理请求或转发请求。服务进程之间的通讯通过消息队列实现,如AMQP。
  • 在部署完成的云系统平台上,用户通过 Dashboard或 RestaRt方式在经 Keystone模块认证授权后,可以执行创建虚拟机服务。通过Nova模块创建虚拟机实例,Nova调用 Glance模块提供的镜像服务,然后调用 Neutron模块提供网络服务。根据需要可以选择给虚拟机増加存储卷,卷功能由 Cinder模块提供服务。整个过程在Ceilometer模块的资源监控下完成。同时 Cinder提供的 Volume和 Glance提供的镜像可以诵讨 Swift对象存储机制讲行保存
  • mark
  • 通过以上解析可以看到 OpenStack 云平台服务的提供主要是依靠 Nova、Glance、Cinder 和 Neutron 四个核心模块完成的,四个辅助模块 Horizen、Ceilometer、Keystone、Swift 提供的访问、监控、权限和对象存储功能。

3.2:OpenStack- ironic裸金属

  • 简而言之,OpenStack Ironic就是一个进行裸机部署安装的项目。
    所谓裸机,就是指没有配置操作系统的计算机。从裸机到应用还需要进行以下操作:
    • (1)硬盘RAID、分区和格式化;

    • (2)安装操作系统、驱动程序;

    • (3)安装应用程序。

    • ronic实现的功能,就是可以很方便的对指定的一台或多台裸机,执行以上一系列的操作。例如部署大数据群集需要同时部署多台物理机,就可以使用Ironic来实现。

    • Ironic可以实现硬件基础设施资源的快速交付。

    • mark

    3.2:控制台 Dashboard

    • Dashboard(项目名称为 horizon)是一个Web接口,使得云平台管理员以及用户可以管理不同的OpenStack资源以及服务。
    • Dashboard通过 Apache的 mod_uwgis搭建,并通过 python模块实现和不同的 OpenStack API进行交互,从而实现管理目的。
    • Dashboard是一个用以管理、控制OpenStack服务的Web控制面板,通过它可以实现绝大多数OpenStack的管理任务。如实例、镜像、密匙对,卷等。
    • 通过 Dashboard,管理员无需记忆繁琐复杂的OpenStack命令。除此之外,用户还可以在控制面板中使用终端或VNC直接访问实例控制台。 Dashboard可以实现以下管理任务
      • 实例管理:创建、删除实例,查看终端日志,远程连接实例,管理卷等:
      • 访问与安全管理:创建安全组,管理密匙对,设置浮动IP地址等
      • 偏好设定:对虚拟硬件模板可以进行不同程度的偏好设定
      • 镜像管理:导入、编辑或删除镜像;
      • 用户管理:创建用户、管理用户、设置配额、查看服务目录等:
      • 卷管理:管理卷和快照:
      • 对象存储处理:创建、删除容器和对象。

    3.3:镜像模块Glance

    3.3.1:概述
    • 镜像服务允许用户发现、注册和获取虚拟机镜像。它提供了一个 REST API,允许查询虚拟机镜像的元数据,并获取一个现存的镜像。可以将虚拟机镜像存放到各种位置,从简单的文件系统到对象存储系统,如OpenStack Swift项目,默认是存储在本地文件系统上的。
    • 其实在生产环境中这个模块本身不存储大量的数据,需要挂载后台存储 swift来存放实际的镜像数据。
    • 在OpenStack环境中,镜像是用于在计算节点生成虛拟机。脱离了镜像服务,就无法创建虚拟机,所以镜像服务是0 penstock的一个核心服务。
    3.3.2:主要组件
    • glance-api
      • glance-api用于接收镜像API的调用,诸如镜像发现、恢复以及存储等。作为一个后台进程, glance-api对外提供 REST API接口,响应用户发起的镜像查询、获取和存储的调用
    • glance- registry
      • glance- registry用于存储、处理和恢复镜像的元数据,元数据包括镜像的的大小和类型等属性, registry是一个内部服务接口,不建议暴露给普通用户
    • database
      • database用于存放镜像的元数据,可以根据需要选择数据库,如 MySQL、 SQLite等。
    • storage repository for image files
      • 一般情况下, glance并不需要存储任何镜像,而是将镜像存储在后端仓库中。 Glance支持多种 repository。主要包括对象存储 Swift、块存储 Cinder、 VMware的ESX/ESXi或者vCenter、亚马逊的S3、HTTP可用服务器、Ceph等
    3.3.3:镜像的格式
    • Glance支持多种镜像格式,包括磁盘格式和容器格式。 OpenStack中可以支持多种虚拟化的技术,如KVM、 Xen Server、 Hyper-V和 VMware等。用户在上传镜像时,需要指定上传镜像文件的格式。除了磁盘格式,在Glance中还有容器的格式。一般在上传镜像时只需指定容器格式为bare,即为空。因为 Glance中并没有真正使用到容器格式。容器格式用来表示虚拟机镜像文件是否包含了元数据,例如OVF格式。下面列出了G1ance中常用的几种镜像文件格式。
    • RAW
      • RAW是一种没有格式或裸格式的磁盘文件类型,RAW对数据不做任何修饰和处理,直接保存最原始的状态,所以在性能方面非常出色。由于RAW格式保存原始数据,因此更容易和其他镜像格式进行转换
    • QCOW2
      • QCOW2是QCOW的升级版本,其主要特性是磁盘文件大小可以动态按需增长,并且不会占用所有的实际磁盘空间大小。例如创建了100GB的QCOW2格式的磁盘,而实际只保存了2GB数据,那么将只占用了实际物理磁盘的2GB空间。与RAW相比,使用这种格式可以节省磁盘容量
    • VHD
      • VHD是微软公司产品使用的磁盘格式。 Virtual PC(微软早期虚拟化产品)和 Hyper-V使用的就是VHD格式 VirtualBox也提供了对VHD的支持。如需在 OpenStack上使用 Hyper-V类型的虚拟化,就应上传VHD格式的镜像文件
    • VMDK
      • VMDK是 VMware公司产品使用的磁盘格式。目前也是一个开放的通用格式,除了 VMware自家的产品外,QEM和 Virtualbox也提供了对VMDK格式的支持。
    • VDI
      • VDI是Oracle公司的 VirtualBox虚拟软件所使用的格式
    • ISO
      • ISO是指一种存档数据文件在光盘上的格式。
    • AKI,ARI,AMI
      • Amazon公司的AWS所使用的镜像格式。

    3.4:计算模块Nova

    3.4.1:Nova概述
    • Nova是负责提供计算资源的模块,也是OpenStack中的核心模块,其主要功能是负责虚拟机实例的生命周期管理、网络管理、存储卷管理、用户管理以及其他的相关云平台管理功能。
    • OpenStack使用计算服务来托管和管理云计算系统。 OpenStack计算服务是基础设施服务(IaaS)系统的主要组成部分,模块主要由 Python实现。
    • OpenStack计算组件请求 OpenStack Identity服务进行认证,请求 OpenStack Image服务提供磁盘镜像,为 OpenStack Dashboard提供用户和管理员接口。磁盘镜像访问限制在项目与用户上;配额以每个项目进行设定,例如,每个项目下可以创建多少实例。OpenStack组件可以在标准硬件上横向大规模扩展,并且下载磁盘镜像启动虚拟机实例。 OpenStack计算服务的主要组件如下
    3.4.2:主要组件
    • Nova-api服务
      • 接收和响应来自最终用户的计算API请求,对外提供一个与云基础设施交互的接口,也是外部可用于管理基础设施的唯一组件。
      • 此服务支持Openstack计算服务API 、Amazon EC2 API 以及特殊的管理API,用于接收用户管理操作请求,管理使用EC2 API通过 Web Services调用实现。
      • 然后 API Server通过消息队列( Message Queue)轮流与云基础设施的相关组件通信。作为EC2 API的另外一种选择,OpenStack也提供一个内部使用的“ OpenStack API
    • Nova-api-metadata服务
      • 接收来自虚拟机发送的元数据请求。Nova-api-metadata服务一般在安装Nova-Network服务的多主机模式下使用。
    • Nova-Compute服务
      • 一个持续工作的守护进程,通过 Hypervisor的API来创建和销毁虚拟机实例。
        • Xen Server/XCP 的XenAPI
        • KVM或QEMU的libvirt
        • Vmware的WwareAPI
      • 这个过程通常比较复杂。守护进程同意了来自队列的动作请求,转换为一系列的系统命令,如启动一个KVM实例,然后到数据库中更新它们的状态。
    • Nova- placement-api服务
      • Nova- placement-api用于追踪记录资源提供者目录和资源使用情况,这些资源包括计算、存储以及IP地址池等。
    • Nova-Conductor模块
      • Nova- Conductor模块作用于Nova- Compute服务与数据库之间,避免了由Nova- Compute服务对云数据库的直接访问。它可以横向扩展。但是,不要将它部署在运行Nova- Compute服务的主机节点上。
    • Nova- Scheduler服务
      • 接收到一个来自队列的运行虚拟机实例请求,然后决定在哪台计算服务器主机来运行该虚拟机。通过恰当的调度算法从可用资源池获得一个计算服务。Nova- Scheduler服务将根据负载、内存、可用域的物理距离、CPU构架等信息,并运行调度算法,最终做出调度决策。
      • 最终OpenStack计算模块Nova中的各个组件是以数据库和队列为中心进行通信的

    3.5:块存储Cinder

    3.5.1:概述
    • 块存储服务( Cinder)提供块存储。存储的分配和消耗是由块存储驱动器或者多后端配置的驱动器决定的。还有很多驱动程序可用:NAS/SAN、NFS、 I SCSI、CEPH等。块存储适合性能敏感性业务场景,例如数据库存储大规模可扩展的文件系统或服务器需要访问到块级的裸设备存储。典型情况下,块服务API和调度器服务运行在控制节点上。取决于使用的驱动卷服务器可以运行在控制节点、计算节点或单独的存储节点之上。
    • 块存储服务为OpenStack中的实例提供持久的存储,块存储提供一个基础设施,用于管理卷以及和OpenStack计算服务交互,为实例提供卷、快照、卷类型等功能。站在实例的角度,挂载的每个卷都是一块独立的硬盘。 Cinder提供了从创建卷到删除卷整个生命周期的管理。其具体功能是:
      • 提供 REST API接口,使用户能够查询和管理卷、卷快照以及卷类型;
      • 协调卷的创建请求,合理优化存储资源的分配;
      • 通过驱动架构支持多种后端存储方式,包括LVM、NFS、Ceph和其他诸如EMC、IBM等商业存储产品和方案。
    3.5.2:主要服务组件
    • Cinder-api
      • Cinder-api用来接受API请求,并将其路由到 Cinder-Volume执行。
    • Cinder-Volume
      • Cinder-Volume用来与块存储服务和 Cinder- Scheduler进程进行直接交互。它也可以与这些进程通过一个消息队列进行交互。 Cinder- Volume服务响应送到块存储服务的读写请求来维持状态,它也可以和多种存储提供者在驱动架构下进行交互。当用户请求一个存储资源时,由 Cinder-API负责接受请求, Cinder- Scheduler负责调度资源,而真正执行存储任务的是 Cinder-Volume。这样的工作机制使得存储架构非常容易扩展。当存储资源不足时,可以增加存储节点(运行 Cinder-Volume)。当客户的请求量太大调度不过来时,可以增加调度(运行Cinder- Scheduler)
    • Cinder- Scheduler
      • Cinder- Scheduler守护进程会选择最优存储节点来创建卷,其工作机制与Nova- Scheduler类似。当需要创建卷时, Cinder- Scheduler根据存储节点的资源使用情况选择一个最合适的节点来创建卷。
    • Cinder- Backup守护进程
      • Cinder- Backup服务提供任何种类备份卷到一个备份存储提供者。就像 Cinder- Volume服务,它与多种存储提供者在驱动架构下进行交互。
    • 消息队列
      • 消息队列作用是在块存储的进程之间路由信息。 Cinder各个子服务通过消息队列实现进程间通信和相互协作。
      • 以创建卷为例, Cinder的工作流程如下
      • 1.用户向 Cinder-API发送创建卷请求:“帮我创建一个卷“
      • 2.Cinder-API对请求做一些必要处理后,向消息队列发送一条消息:“让Cinder- Scheduler创建一个卷”;
      • 3.Cinder- Scheduler从消息队列获取到消息,然后执行调度算法,从若干存储节点中选出节点A
      • 4.Cinder- Scheduler向消息队列发送一条消息:“让存储节点A创建这个卷”;
      • 5.存储节点A的 Cinder- Volume从消息队列中获取到消息,然后通过卷提供者的驱动创建卷。

    3.6:网络模块Neutron

    3.6.1:概述
    • OpenStack早期的网络模块是Nova- Network,而 Neutron则是Nova- Network的更新换代产品,也是目前 OpenStack重要组件之一。在正式介绍之前,首先了解一些网络概念
      • 网络
        • 类似于实际的物理环境中的网络,OpenStack网络用于连接云主机或路由器。除此之外,还包含子网、网关以及DHCP服务等。OpenStack网络分为内部网络和外部网络,内部网络一般用于连接虚拟机,而外部网络一般用于连接宿主机外面的网络。
      • 子网
        • OpenStack中的子网是一个IP地址段,用于定义实际的IP地址范围。
      • 端口
        • 端口类似于实际网络中的网络接口,用于连接终端设备或另外一个网络。不同的是, OpenStack中端口连接的一般都是虚拟设备接口,如虚拟机的虚拟网卡或者路由器的虚拟接口等。端口还描述了相关的网络配置,例如可以在端口上配置MAC地址和IP地址。
      • 路由器
        • 路由器用于连接 OpenStack的内部网络和外部网络。类似实际路由器功能,支NAT功能,通过绑定浮动IP地址还可以实现地址映射
        • Neutron分别提供了二层(L2)交换和三层(L3)路由抽象的功能,对应于物理网络环境中的交换机和路由器
    3.6.2:Linux虚拟网络
    • Neutron中最为核心的工作便是对网络的抽象与管理。在 OpenStack环境中对网络的抽象主要有以下几种形式
    • 虚拟交换机/网桥
      • OpenStack网络中,对于二层交换机有两种的抽象方式,一种是通过 Linux bridge实现,另外一种是通过OpenvSwitch实现。在一些早期opeNstack版本中,默认使用的是OpenvSwitch,而在 Ocata版本中,多节点手动安装默认使用的是 Linux bridge。从功能上来说openvSwitch更加强大,但是 Linux bridge实现比较简单,更加适合初学者。
    • 虚拟交换机/网桥主要实现以下功能。
      • 连接虚拟机:
      • 通过vlan功能隔离虚拟机网络
      • 连接虚拟网络到宿主机外部网络。
    • OpenvSwitch
      • 类似于 Linux bridge, OpenvSwitch也可以实现对二层网络的抽象,对虚拟网络提供分布式交换机功能。它支持各种组网类型,功能全面,支持基本的vlan功能,也支持QOS以及 NetFlow、 sFlow标准的管理接口和协议。从而,通过这些接口可以实现VM流量监控的任务。
      • 运行在云环境中各种或相同虚拟化平台上的多个 vSwitch实现了分布式架构的虚拟交换机。一个物理服务器上的 v Switch可以透明的与其他服务器上的 vSwitch连接通信。
      • 虚拟路由器
        • OpenStack中的虚拟路由器是对网络设备的一种抽象,实现了租户间的多网络构建以及内部网络和外部网络之间的通信问题。其实现原理和真实路由器一致,根据路由表转发数据包,同时还支持NAT地址转换以及浮动IP地址设置。
      • namespace
        • 二层网络通过van对租户网络进行隔离,而三层网络是通过 nanespace进行隔离,每个 namespace都有自己的独立网络栈,包括路由表、防火墙规则、网络接口等。
        • 同时, Neutron为每个 namespace提供DHCP和路由服务。所以各个租户之间的网络地址允许重叠,因为它们在不同的 namespace中进行抽象
        • mark
      • VXLAN网络
        • VXLAN网络使用的是隧道技术,是目前 Openstack广泛使用的网络技术。
          相比于vlan模型有以下改进。
          • 租户数量从4K增加到16M
          • 租户内部通信可以跨越任意IP网络,支持虚拟机任意迁移
          • 一般来说,每个租户逻辑上都有一个网关实例,IP地址可以在租户间进行复用
          • 能够结合SDN技术对流量进行优化
        • VXLAN网络是在传统的IP网络中传输以太网数据帧。主要涉及到以下几个概念
          • VTEP( VXLAN Tunnel end point,简称TEP):VXLAN隧道的端点,用于VXLAN报文的封装和解封装。类似于 IPsec VPN中的加密点。传统的以太网帧在发送TEP端将封装新的 VXLAN、UDP、IP以及以太网头部。而接收VTEP端将数据解封装。 VXLAN报文中源IP地址为本节点的VTEP地址, VXLAN报文中目的IP地址为对端节点的VTEP地址,一对VTEP地址就对应着一个 VXLAN隧道。
          • VNI( VXLAN Network Identifier,简称VNI):用来标识一个 VXLAN段,在VXLAN网络中,通过VNI标识一个租户,类似vlan网络中的 vlan ID。不同VXLAN段的虚拟机之间不能直接二层相互通信。VNI由24比特组成,支持多达16M的租户。
            的端点,用于VXLAN报文的封装和解封装。类似于 IPsec VPN中的加密点。传统的以太网帧在发送TEP端将封装新的 VXLAN、UDP、IP以及以太网头部。而接收VTEP端将数据解封装。 VXLAN报文中源IP地址为本节点的VTEP地址, VXLAN报文中目的IP地址为对端节点的VTEP地址,一对VTEP地址就对应着一个 VXLAN隧道。
          • VNI( VXLAN Network Identifier,简称VNI):用来标识一个 VXLAN段,在VXLAN网络中,通过VNI标识一个租户,类似vlan网络中的 vlan ID。不同VXLAN段的虚拟机之间不能直接二层相互通信。VNI由24比特组成,支持多达16M的租户。
          • mark

      来源:飞翔的驴

      声明:本站部分文章及图片转载于互联网,内容版权归原作者所有,如本站任何资料有侵权请您尽早请联系jinwei@zod.com.cn进行处理,非常感谢!

上一篇 2020年1月23日
下一篇 2020年1月23日

相关推荐