Ironic几种不同的场景下的网络拓扑
最近帮领导做了几页ppt,总结几种场景下ironic管理物理机网络的网络拓扑,简单做成一份文章记录下。只是方便自己记忆,没有认真修改。如果对ironic有一定了解,可以看下,加深理解。
1. vlan模式+物理机
Ironic Ocata之后支持,neutron接交换机管理物理机网络的场景。在这种模式下,通过nova创建裸机时,neutron可以配置交换机,将物理机的接口vlan切入到用户指定的vlan中,达到在不同租户间网络隔离的效果。

OpenStack管理网要和IPMI网络,部署网络,交换机管理ip,打通,最方便的方式时规划成同一个网络
物理机在部署时,Ironic conductor经过管理网向交换机发起请求,将物理机端口vlan id切换到指定的部署网络的vlan id,该vlan在规划时就与管理网打通。然后被部署节点节点在部署网络中dhcp,拿到tftp地址,通过tftp获取deploy kernel,deploy ramdisk。
物理机使用deploy kernel/ramdisk 启动后, ramdisk中自带的ironic python agent访问ironic conductor,通过iscsi将自身磁盘挂载到控制器上,控制器向磁盘写入用户指定的操作系统,部署完成
最后将物理机端口切换到用户指定的vlan中。
2. flat模式+物理机
不接入交换机,物理机网络由运维提前配好,neutron只负责ip分配。O版本之前的功能,运维操作较多,除非规模较小,所有的物理机工作在同一个二层中,只是用ironic装系统,否则不推荐使用。

Flat网络模式下,所有的物理机无论是部署还是工作,都处于一个flat网络中(图中external network)
管理网和external网要打通,因为裸机处理被部署时,需要访问管理网获取镜像,元数据信息
管理网和IPMI网络要打通,因为控制节点要能访问IPMI网络,对服务器进行开关机,pxe设置等操作
这个模式不需要考虑虚拟机网络
3. flat模式+ kvm虚拟机
物理机启动速度较慢,测试成本较高,这种模式主要用于开发测试环境。

这个模式时用pxe_ssh driver,不需要ipmi,虚拟机通过桥接宿主机eth1,eth1需要和控制器 external网络在同一个二层
external网络需要和管理网打通
最简单粗暴的方法是图中所有eth0,eth1都规划到同一个二层中
Ironic几种不同的场景下的网络拓扑的更多相关文章
- Cobar提出的一种在分库场景下对Order By / Limit 的优化
搜索关注微信公众号"捉虫大师",后端技术分享,架构设计.性能优化.源码阅读.问题排查.踩坑实践. 本文已收录 https://github.com/lkxiaolou/lkxiao ...
- ADO.NET Entity Framework 在哪些场景下使用?
在知乎回答了下,顺手转回来. Enity Framework已经是.NET下最主要的ORM了.而ORM从一个Mapping的概念开始,到现在已经得到了一定的升华,特别是EF等对ORM框架面向对象能力的 ...
- Redis11种Web应用场景
Redis的一个非常大优点就是能够不用整个转入到这个数据库,而是能够沿用之前的MySQL等数据库,而仅在一些特定的应用场景通过Redis的特性提高效率.本文列出了11个这种Web应用场景,如显示最新的 ...
- Entity Framework:如果允许模型处于非法状态,在某些场景下,记得清空DbContext
Entity Framework:如果允许模型处于非法状态,在某些场景下,记得清空DbContext 背景 之前写过两篇文章介绍模型的合法性: DDD:关于模型的合法性,Entity.IsValid( ...
- CI Weekly #11 | 微服务场景下的自动化测试与持续部署
又一周过去了,最近我们的工程师正在搞一个"大事情" --「[flow.ci](http://flow.ci/?utm_source=bokeyuan&utm_medium= ...
- Redis 11种Web应用场景举例
在"怎样让redis在你的系统中发挥作用"一文中,salvatore 'antirez' sanfilippo告诉我们如何利用redis独有的数据结构处理能力来解决一些常见问题.一 ...
- 浅谈Vue不同场景下组件间的数据交流
浅谈Vue不同场景下组件间的数据“交流” Vue的官方文档可以说是很详细了.在我看来,它和react等其他框架文档一样,讲述的方式的更多的是“方法论”,而不是“场景论”,这也就导致了:我们在阅读完 ...
- Redis能干啥?细看11种Web应用场景
下面列出11种Web应用场景,在这些场景下可以充分的利用Redis的特性,大大提高效率. 1.在主页中显示最新的项目列表. Redis使用的是常驻内存的缓存,速度非常快.LPUSH用来插入一个内容ID ...
- 【转】MySQL乐观锁在分布式场景下的实践
背景 在电商购物的场景下,当我们点击购物时,后端服务就会对相应的商品进行减库存操作.在单实例部署的情况,我们可以简单地使用JVM提供的锁机制对减库存操作进行加锁,防止多个用户同时点击购买后导致的库存不 ...
随机推荐
- secureCRT sftp使用
sftp-- help 可用命令: cd 路径 更改远程目录到"路径" lcd 路径 更改本地目录到"路径" chgrp group path 将文件" ...
- js二维码插件总结
jquery.qrcode.js生成二维码插件&转成图片格式 http://blog.csdn.net/u011127019/article/details/51226104
- PHP如何读取json数据
1的 <?php $json = '{"a":1,"b":2,"c":3,"d":4,"e": ...
- Shell脚本中使用function(函数)示例
这篇文章主要介绍了Shell脚本中使用function(函数)示例,本文着重讲解的是如何在shell脚本中使用自定义函数,并给出了两个例子,需要的朋友可以参考下 函数可以在shell script ...
- MySQL基于binlog主从复制
MySQL复制介绍 默认情况 下复制是异步进行的,从库也不需要一直连接到主库来同步数据 MySQL复制的数据粒度可以是主实例上所有的数据库,也可以是指定的一个或多个数据库 ,也可以是一个数据库里的指定 ...
- wpf动画同步闪烁
public class BlinkAnimation : Animatable { /// <summary> /// 单例,保持所有闪烁的动画同步 /// </summary&g ...
- FTP配置之 chroot_list 用户切换文件夹
FTP配置文件vsftpd.conf关于限制用户在默认目录的配置,涉及到三个字段:chroot_local_user,chroot_list_enable,chroot_list_file. 我们按顺 ...
- SpringMVC源码情操陶冶-AbstractHandlerMapping
分析下springmvc的HandlerMapping映射的抽象类 初始化操作 通过initApplicationContext()方法进行初始化,其一般是由父类执行ApplicationContex ...
- Lucene 5.X 版本索引文件格式
原文链接:https://my.oschina.net/rickylau/blog/527602 名称 文件拓展名 描述 段文件 segments_N 保存了索引包含的多少段,每个段包含多少文档. 段 ...
- git的一些常见命令
一.新建代码库 # 在当前目录新建一个Git代码库 $ git init # 新建一个目录,将其初始化为Git代码库 $ git init [project-name] # 下载一个项目和它的整个代码 ...