两张图总结 Neutron 架构 - 每天5分钟玩转 OpenStack(74)

前面我们详细讨论了 Neutron 架构,包括 Neutron Server,Core 和 Service Agent。现在用两张图做个总结。
先看第一张:

与 OpenStack 其他服务一样,Neutron 采用的是分布式架构,包括 Neutorn Server、各种 plugin/agent、database 和 message queue。

  1. Neutron server 接收 api 请求。
  2. plugin/agent 实现请求。
  3. database 保存 neutron 网络状态。
  4. message queue 实现组件之间通信。

metadata-agent 之前没有讲到,这里做个补充:

instance 在启动时需要访问 nova-metadata-api 服务获取 metadata 和 userdata,这些 data 是该 instance 的定制化信息,比如 hostname, ip, public key 等。

但 instance 启动时并没有 ip,如何能够通过网络访问到 nova-metadata-api 服务呢?

答案就是 neutron-metadata-agent

该 agent 让 instance 能够通过 dhcp-agent 或者 l3-agent 与 nova-metadata-api 通信

如果我们将 Neutron 架构展开,则会得到下面第二张图:

  1. Neutron 通过 plugin 和 agent 提供的网络服务。
  2. plugin 位于 Neutron server,包括 core plugin 和 service plugin。
  3. agent 位于各个节点,负责实现网络服务。
  4. core plugin 提供 L2 功能,ML2 是推荐的 plugin。
  5. 使用最广泛的 L2 agent 是 linux bridage 和 open vswitch。
  6. service plugin 和 agent 提供扩展功能,包括 dhcp, routing, load balance, firewall, vpn 等。

至此,Neutron 架构已经讨论完,希望大家已经理解。
下节开始,将通过实验来实践架构中的各个组件。
第一步将是准备实验用的物理环境。

 

时间: 2024-07-29 21:48:34

两张图总结 Neutron 架构 - 每天5分钟玩转 OpenStack(74)的相关文章

Neutron 架构 - 每天5分钟玩转 OpenStack(67)

前面我们讨论了 Neutron 的基本概念,今天我们开始分析 Neutron 的架构. Neutron 架构 与 OpenStack 的其他服务的设计思路一样,Neutron 也是采用分布式架构,由多个组件(子服务)共同对外提供网络服务. Neutron 由如下组件构成: Neutron Server对外提供 OpenStack 网络 API,接收请求,并调用 Plugin 处理请求. Plugin处理 Neutron Server 发来的请求,维护 OpenStack 逻辑网络的状态, 并调用

OpenStack 架构 - 每天5分钟玩转 OpenStack(15)

终于正式进入 OpenStack 部分了. 今天开始,CloudMan 将带着大家一步一步揭开 OpenStack 的神秘面纱. OpenStack 已经走过了 6 个年头. 每半年会发布一个版本,版本以字母顺序命名.现在已经到第 12 个版本 Liberty(字母 L). OpenStack最初只有两个模块(服务),现在已经有 20+(见下图),每个模块作为独立的子项目开发. 面对如此庞大的阵容,作为初学者我们如何起步呢? 这也是 CloudMan 写这个系列教程的初衷: 通过实际操作帮助初学

实践 Neutron FWaaS - 每天5分钟玩转 OpenStack(118)

前面我们学习了 FWaaS 的理论知识,今天将通过实验来学习 FWaaS. 在我们的实验环境中,有两个 instance: cirros-vm1(172.16.100.3) 和 cirros-vm2(172.16.101.3). cirros-vm1 和 cirros-vm2 分别位于网络 vlan100 和 vlan101. vlan100 和 vlan101 之间由虚拟路由器 test_router 连接. 网络拓扑如下: 在 test_router 没有应用任何 FWaaS 的情况下,ci

理解 Neutron FWaaS - 每天5分钟玩转 OpenStack(117)

前面我们学习了安全组,今天学习另一个与安全相关的服务 -- FWaaS. 理解概念 Firewall as a Service(FWaaS)是 Neutron 的一个高级服务.用户可以用它来创建和管理防火墙,在 subnet 的边界上对 layer 3 和 layer 4 的流量进行过滤. 传统网络中的防火墙一般放在网关上,用来控制子网之间的访问. FWaaS 的原理也一样,是在 Neutron 虚拟 router 上应用防火墙规则,控制进出租户网络的数据. FWaaS 有三个重要概念: Fir

eclipse的安卓虚拟机建立不了啊,,问题如下两张图,头疼死我了!

问题描述 eclipse的安卓虚拟机建立不了啊,,问题如下两张图,头疼死我了! 解决方案 解决方案二: target无法选择,,,我已经在sdk下了好几个API了,,eclipse也更新了 解决方案三: sdk下载是否正确,eclipse中sdk路径是否设置正确 解决方案四: 楼主用的是google提供的ide吧,当然不能.因为google是与某adt绑定在一起的.正确的是,从eclipse官网下载独立的eclipse,下载后再装adt,任何版本都适应. 解决方案五: SDK下载的不正确. 解决

Javscript轮播 支持平滑和渐隐两种效果(可以只有两张图)

原文:Javscript轮播 支持平滑和渐隐两种效果(可以只有两张图) 先上两种轮播效果:渐隐和移动   效果一:渐隐 1 2 3 4 效果二:移动 1 2 3 4   接下来,我们来大致说下整个轮播的思路: 一.先来看简单的,移动的,先上来一个图----移动效果图: 说明:       基本原则就是顺序是按照当前显示的为基准:如当前为2,那么顺序就是2,3,4,1:如当前为3,那么顺序就是3,4,1,2.以此类推.       整个移动划分为三种:1.下一个  2.上一个  3.任意个    

两张图看透IT人的逻辑思维(r12笔记第21天)

今天我们来看两张图,为什么要看,看完就就知道了. 我们来猜猜看,通过这个图能够读懂什么,准备好了吗? go 首先这是一张手机拍摄的图,看起来是一张很随意的照片,但是细看图片却发现有很多蹊跷之处,这是哪里,为什么要拍这么一张图片,拍照片的人想通过这张图片表达什么意思?从图片的拍摄角度来看,没有掌握好拍摄的技巧,所以很可能是位生活比较随意的男士拍的,从图片拍摄的场景来看,场地像是公园,环境看起来很舒适,也很安静,远处还有提供餐饮的场地,从师傅忙碌的背影和顾客量,能够判断出这个时间应该离饭点很近,看着

两张图说明三层的奥义!

直入正题先看两张图:     第一张图呢类似理论上的三层,第二层负责很多事情,要挑起打大梁.而且要做到可以更换上下两层.   但是实际的项目呢?一部分项目做来做去,就变成第二张图了.第二层由制造者变成了传声筒和搬运工!   当然高手做的项目是很厉害的,达到了三层的预期目的.   如何更换UI?   如果是基于webform(.aspx)的,要实现起来还真的挺有难度.因为.aspx把页面和数据绑的有点紧,虽然用起来确实挺方便的.    如果采用 js + json + service 的方式,就比

Prometheus 架构 - 每天5分钟玩转 Docker 容器技术(83)

Prometheus 是一个非常优秀的监控工具.准确的说,应该是监控方案.Prometheus 提供了监控数据搜集.存储.处理.可视化和告警一套完整的解决方案. 让我们先来看看 Prometheus 的架构. 架构 Prometheus 架构如下: 官网上的原始架构图比上面这张要复杂一些,为了集中大家的注意力,我只保留了最重要的组件. Prometheus Server Prometheus Server 负责从 Exporter 拉取和存储监控数据,并提供一套灵活的查询语言(PromQL)供用