《深入理解OpenStack Neutron》—3 Neutron的网络实现模型

举报
华章计算机 发表于 2019/05/30 11:47:29 2019/05/30
【摘要】 本书摘自《深入理解OpenStack Neutron》一书中的第3章,第3.1节,作者是李宗标。

第3章

Neutron的网络实现模型

Neutron的模型有两种。一种是相对比较抽象的网络资源模型,比如我们耳熟能详的“Network、Subnet、Port”等,可以参考https://developer.openstack.org/api-ref/networking/v2/,有个直观的认识。

另一种模型是这种抽象资源模型背后的实现模型。无论一个模型多抽象还是多具体,其归根到底总归要有一个实现它的载体。比如OPEN-O开源组织对外提供的CloudVPN的RESTful API,就是通过一系列的网元和一定的组网来承载,如图3-1所示。

image.png

图3-1 OPEN-O CloudVPN的实现模型

承载Neutron抽象的网络资源模型的方案,我们称之为Neutron的网络实现模型。应该明确的是,Neutron仅仅是一个管理系统(或者说是一个控制系统),它本身并不能实现任何网络功能。实现网络功能的是各种网元。所以本章的重点不在Neutron的自身,而在于Neutron所能管理的各种网元以及它们的组网。

3.1 Neutron的三类节点

Neutron在实际部署时有三类节点,如图3-2所示。

image.png

图3-2 Neutron的三类节点

关于这三类节点,我们在后面还会详细描述,或者说,整个这一章,都是围绕这三类节点进行展开讲述。本节,我们先有个简单的、直观的认识即可。

计算节点(Compute Node)最直观,计算是OpenStack的三大组件(计算、存储和网络)之一。而所谓“计算”,大白话就是虚拟机(VM)。所以,在图3-2中,计算节点里画了一堆虚拟机。一个计算节点就是一个Host。

其实计算节点里还有Bridge,当然这个Bridge,不是我们把一个物理的Bridge硬塞到一个Host里面去,而是虚拟的Bridge。不同Host的VM之间的二层通信,通过计算节点的Bridge就可以完成。

但是,如果VM想要访问Internet就得通过Router先到达数据中心的网关(通过网关再出去),这个Router也是Linux虚拟出来的(准确地说,Linux本身就具备Router功能),它所在的位置就是网络节点(Network Node)。网络节点里还部署着DHCP等各种网络服务。一个计算节点就是一个Host。而一个网络节点意味着一个Host或者多个Host,我们可以把Router及各种网络服务部署在一个Host/VM中(这个时候仅有一个网络节点),也可以部署在多个Host中(多个网络节点)。

Neutron在这里扮演两种角色,一个角色是在各个计算节点、网络节点中运行着各种各样的Agent(如果你不了解,可以忘掉这个概念,我们会在以后的章节讲述),另一个角色就是各种各样的Neutron服务,正如上图中所指出的那样,这些服务运行在控制节点(Control Node)

中。与网络节点一样,一个控制节点意味着一个Host/VM,这些Neutron服务可以部署在一个Host/VM中,也可以部署在多个Host/VM中。

以上就是对Neutron三类节点的简单解释,下面我们会逐步展开介绍。


【版权声明】本文为华为云社区用户原创内容,转载时必须标注文章的来源(华为云社区)、文章链接、文章作者等基本信息, 否则作者和本社区有权追究责任。如果您发现本社区中有涉嫌抄袭的内容,欢迎发送邮件进行举报,并提供相关证据,一经查实,本社区将立刻删除涉嫌侵权内容,举报邮箱: cloudbbs@huaweicloud.com
  • 点赞
  • 收藏
  • 关注作者

评论(0

0/1000
抱歉,系统识别当前为高风险访问,暂不支持该操作

全部回复

上滑加载中

设置昵称

在此一键设置昵称,即可参与社区互动!

*长度不超过10个汉字或20个英文字符,设置后3个月内不可修改。

*长度不超过10个汉字或20个英文字符,设置后3个月内不可修改。