2012年10月,Midokura携其旗舰SDN平台MidoNet在美国首次亮相。据Midokura的介绍,MidoNet是一个分布式、非集中化的虚拟平台,其作用是将用户的云资产与网络基础设施分开,为高度虚拟化的云环境提供了一种更加可伸缩的、高效的网络解决方案。
1 MidoNet概述
MidoNet是一个开放的、纯软件的、高度可伸缩的、弹性的网络虚拟化系统。因其分布式架构,它允许企业和服务提供商建立、运行和管理虚拟网络,提升控制力、安全性和灵活性。
MidoNet允许用户构建隔离的网络和覆盖现有的网络硬件基础设施。用户可以以极大的灵活性创建和规模化网络。
与现存的硬件协同工作 MidoNet保护已投入使用的设备,避免厂商锁定,可与底层的任何网络硬件协同工作。
缩短应用程序部署的时间 MidoNet将网络的供应时间从星期缩短到秒,能让终端用户按需且没有延迟的接入应用程序。
增强网络可扩展性 MidoNet使用分布式控制架构而不是集中化的控制,这允许用户通过增加网络节点线性扩展网络能力。
减少CapEx和 OpEx MidoNet使得用户不需要购买任何额外的网络硬件来扩大网络规模,有助于通过单一管理平台管理网络。
基于应用需求动态配置网络 三层路由功能允许VM实时迁移到数据中心的任何地方,而二层的VM迁移只能是在同一架构中。
取代了OpenStack环境中默认的OVS插件 MidoNet取代了OpenStack环境中默认的OVS插件,提供了Neutron网络功能,提高了网络的稳定性、性能以及弹性。MidoNet插件分布式的特性避免了单点故障。
2 MidoNet特性
4层的负载均衡器 MidoNet代理可作为4层负载均衡器,允许Active-active配置以及出口与入口流量的平等分配。
高可用性 Midonet的分布式架构可实现高扩展性和可用性的网络。网络的可编程特性允许应用程序配置网络并确保高可用性。
逻辑防火墙和安全组 MidoNet代理可做为逻辑防火墙并实施安全组。ACL和安全策略可以被应用到一个安全组以提供细粒度的安全性。
L2层-L4的网络服务 MidoNet有助于实现交换、路由、DHCP、NAT、负载均衡、防火墙等网络服务。
VxLAN网关 允许虚拟设备和物理设备间的通信。MidoNet模拟网络拓扑,允许数据包在单跳传输。
L2层-L3层的网关服务 VLAN感知网关服务有助于虚拟网络连接到物理网络或设备。L3/BGP网关服务有助于连接工作负载和网络。
纯软件的解决方案 MidoNet提供一个分布式的纯软件解决方案,运行在标准的X86服务器上。有助于创建按需的、可编程的虚拟网络以提供高扩展性的、灵活的网络。
RESTful API和SDK架构 MidoNet可用于连接任何云管理平台以及编程overlay网络。MidoNet支持Neutron接口、云网络的实际标准,可用于创建丰富的网络拓扑和先进的网络服务,并有助于避免供应商锁定。
交换和路由 在多租户的虚拟化环境中,Hypervisor转发平面提供线性路由和交换功能,与底层的物理交换机完全解耦。
NAT 提供有状态和无状态的NAT。
安全性 MidoNet有助于为虚拟网络定义安全和访问策略,并在几秒内执行它们。
多租户 MidoNet允许虚拟网络隔离,所以多组用户之间可以安全的共享资源。
3 MidoNet架构和技术
IP Fabric 在运行MidoNet overlay网络时,需要进行IP连接。这意味着用户并没有被锁在一个特定的网络设备供应商或模型中,甚至可以混合和匹配。这允许用户可以按所希望的方式和需求构建个性化的物理网络。
MidoNet代理 MidoNet代理是虚拟网络的分布式的大脑,作为软件代理,安装在 hypervisor主机中。MidoNet代理负责建立新的网络流量,控制内核的快速路径以提供分布式MidoNet网络功能,比如交换、路由、NAT等。当需要扩展时,规模取决于虚拟网络的容量。
MidoNet网关 MidoNet代理安装在标准的X86服务器上,可作为分布式的、大规模的网关。由于网关服务器使用MidoNet代理,所以所有的来自外部网络的流量将由网关节点处理。这意味着可在网络的边缘处理路由、安全组、防火墙和负载均衡。
MidoNet网关具有以下优势:
- 最大的效率——非法的网络流量将在网络边缘被丢弃,不会通过你的物理私人网络。
- 由于MidoNet代理是完全分布式的,可以通过在网络边缘简单的添加更多的X86服务器来扩充网关服务。由于MidoNet具有弹性回跳和可扩展的特性,所以不需要管理 active/standby故障场景。
MidoNet为连接外部网络提供两个选择:
- 三层网关
三层网关使用BGP连接外部网络,并向外部网络广播IP地址。每个网关服务器运行一个MidoNet代理,能广播同样的IP地址范围,可以很容易的扩展南北之间的流量。
- 二层网关
二层网关是高可用性的网关,可以将物理VLAN和MidoNet逻辑网络进行桥接。
网络状态数据库 MidoNet将网络配置和状态存储在数据库集群中,数据库存储高级配置信息,比如拓扑、路由、NAT设置等。不同于其他overlay网络,MidoNet不集中处理网络功能或是设置流,它们完全由MidoNet代理处理。网络状态数据库不仅仅存储高可用的配置和网络状态,还向MidoNet代理通知任何相关的改变。
MidoNet代理检测它们的本地缓存数据。当网络配置发生变化时,比如改变防火墙规则,正在处理受影响的流量的MidoNet代理就会立刻感知到这种变化,并随着新的改变创建新的流。
MidoNet API MidoNet可以集中配置,或者通过RESTful API完全自动化。当接受到一个请求,它将把信息传递到网络状态数据库。MidoNet API是无状态的,所以可以运行多种API服务器来处理缩放和容错。
Orchestration MidoNet与流行的云管理系统比如OpenStack深度集成,通过MidoNet API可以很容易的集成到任何环境中。集成这些平台,MidoNet可以轻松构建和扩展网络。
Hypervisor支持 MidoNet支持基于Hypervisor的KVM、ESX、LXC。
Open vSwitch 内核模块 / 数据通路 MidoNet直接与Linux数据通路(Open vSwitch)通信来创建流和控制数据包动作。一旦流在数据通路中创建好了,流中的数据包就不再进入用户空间,而是接近线速在快速通路上传播。这样,MidoNet就可以在不牺牲性能的情况下提供许多网络服务。
4 结束语
Midokura 主要为公司提供云服务方案,其通过云平台提供的服务,降低了管理云计算的成本和简化了相关要求,已获得了不错的效益。据悉,目前Midokura 已筹得了可观的融资,其定会招兵买马,相信在不久的将来会推出更多更好的产品。
文章来自http://www.sdnlab.com/3874