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

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

与 OpenStack 其他服务一样,Neutron 采用的是分布式架构,包括 Neutorn Server、各种 plugin/agent、database 和 message queue。
Neutron server 接收 api 请求。
plugin/agent 实现请求。
database 保存 neutron 网络状态。
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 架构展开,则会得到下面第二张图:

Neutron 通过 plugin 和 agent 提供的网络服务。
plugin 位于 Neutron server,包括 core plugin 和 service plugin。
agent 位于各个节点,负责实现网络服务。
core plugin 提供 L2 功能,ML2 是推荐的 plugin。
使用最广泛的 L2 agent 是 linux bridage 和 open vswitch。
service plugin 和 agent 提供扩展功能,包括 dhcp, routing, load balance, firewall, vpn 等。
至此,Neutron 架构已经讨论完,希望大家已经理解。
下节开始,将通过实验来实践架构中的各个组件。
第一步将是准备实验用的物理环境。

两张图总结 Neutron 架构 - 每天5分钟玩转 OpenStack(74)的更多相关文章
- Neutron 架构 - 每天5分钟玩转 OpenStack(67)
前面我们讨论了 Neutron 的基本概念,今天我们开始分析 Neutron 的架构. Neutron 架构 与 OpenStack 的其他服务的设计思路一样,Neutron 也是采用分布式架构,由多 ...
- OpenStack 架构 - 每天5分钟玩转 OpenStack(15)
终于正式进入 OpenStack 部分了. 今天开始,CloudMan 将带着大家一步一步揭开 OpenStack 的神秘面纱. OpenStack 已经走过了 6 个年头. 每半年会发布一个版本,版 ...
- 理解 Nova 架构 - 每天5分钟玩转 OpenStack(23)
Compute Service Nova 是 OpenStack 最核心的服务,负责维护和管理云环境的计算资源. OpenStack 作为 IaaS 的云操作系统,虚拟机生命周期管理也就是通过 Nov ...
- 理解 Cinder 架构 - 每天5分钟玩转 OpenStack(45)
从本节开始我们学习 OpenStack 的 Block Storage Service,Cinder 理解 Block Storage 操作系统获得存储空间的方式一般有两种: 通过某种协议(SAS,S ...
- 实践 Neutron FWaaS - 每天5分钟玩转 OpenStack(118)
前面我们学习了 FWaaS 的理论知识,今天将通过实验来学习 FWaaS. 在我们的实验环境中,有两个 instance: cirros-vm1(172.16.100.3) 和 cirros-vm2( ...
- 理解 Neutron FWaaS - 每天5分钟玩转 OpenStack(117)
前面我们学习了安全组,今天学习另一个与安全相关的服务 -- FWaaS.理解概念 Firewall as a Service(FWaaS)是 Neutron 的一个高级服务.用户可以用它来创建和管理防 ...
- 两张图解读Java异常与断言
两张图解读Java异常与断言 --转载请注明出处:coder-pig 本节引言: 前天公布的"七张图解析Java多线程&quo ...
- Javscript轮播 支持平滑和渐隐两种效果(可以只有两张图)
原文:Javscript轮播 支持平滑和渐隐两种效果(可以只有两张图) 先上两种轮播效果:渐隐和移动 效果一:渐隐 1 2 3 4 效果二:移动 1 2 3 4 接下来,我们来大致说下整个轮播的思 ...
- 两张图证明 WolframAlpha 的强大
引用于:https://capbone.com/wolfram-alpha/ 两张图证明 WolframAlpha 的强大 之前在" 我手机中有哪些应用 "里提到过 Wolfram ...
随机推荐
- gulp-babel使用
各大浏览器厂商对es2015功能支持不完全,等到全部支持会等很长时间,如果现在使用es2015,可以选择babel一个将ES6/ES7写的代码转换为ES5代码的编译器. 我们选择使用gulp自动化编译 ...
- 关于click和submit的笔记
click主要用于元素的点击时的响应事件,而submit是指表单元素form的提交事件. 但是,当click加入到表单的提交按钮时,事情似乎就有点复杂,总是忘记了.这两天搜了下,又实践了一下. 主要用 ...
- 【Beta】Daily Scrum Meeting第一次
1.任务进度 学号 已完成 接下去要做 502 更换网络框架为okHttp 搭建好PHP单元测试环境,写出PHP测试的demo 509 PHP的login返回值:插入数据改为单行插入:系负责人更新单行 ...
- 浏览器兼容性-JS篇
总结一下平时遇到的浏览器兼容性问题,本篇关于JS. 1.事件绑定 兼容写法: function add(obj,event){ if (obj.addEventListener) { obj.addE ...
- Ubuntu下安装mod_python报错(GIT错误)
Ubuntu下安装mod_python3.4.1版本报出如下错误: writing byte-compilation script '/tmp/tmpE91VXZ.py' /usr/bin/pytho ...
- Reversing Linked List
原题连接:https://www.patest.cn/contests/pat-a-practise/1074 题目: Given a constant K and a singly linked l ...
- C++文本处理_文件读写
QT在进行文本读写时和C++一样,是基于文本流操作的. QT在读取全部文本时,相对比较便捷.使用readAll()函数,配合split()进行分隔符的拆分(例如行结束符"\n"), ...
- 解决word2013图片不能替换
有时我们下好文档时,想要替换里面的图片,右键时却发现没有替换图片这个选项 这是应为此时我们的文档处于兼容模式,我们可以把它另存为.docx格式,这是再右键便可发现,多了一个替换图片选项.
- Ajax是如何运行的?
1.我们需要知道什么是Ajax: AJAX = Asynchronous JavaScript and XML(异步的 JavaScript 和 XML). AJAX 不是新的编程语言,而是一种使用现 ...
- 初涉深度优先搜索--Java学习笔记(二)
版权声明: 本文由Faye_Zuo发布于http://www.cnblogs.com/zuofeiyi/, 本文可以被全部的转载或者部分使用,但请注明出处. 上周学习了数组和链表,有点基础了解以后,这 ...