whole disk和partition 镜像

whole disk镜像部署可以支持windows,但是不能自定义分区(可以通过cloud-init实现),分区表是做镜像的人确定好的,partition image支持按照flavor中规定的root,swap分区来自动进行磁盘分区。
partition image方式部署的机器将kernel和ramdisk都存放在tftp server上,每次启动都需要访问tftp,whole disk部署的服务器启动时不需要访问tftp server。
更新:partition image也支持从本地启动,需要设置特别的元数据,文档在https://docs.openstack.org/project-install-guide/baremetal/draft/advanced.html#local-boot-with-partition-images

coreos deploy image和 ramdisk deploy image

coreos image是社区媒体dailybuild使用的,也是社区推荐的选项,ramdisk image支持更多的元素,比如raid部署(使用agent_ilo)。
spec:https://specs.openstack.org/openstack/ironic-specs/specs/kilo-implemented/whole-disk-image-support.html

raid的进展

hardware raid目前只有ilo和drac的服务器支持raid部署,需要build专门的包含hpe raid管理软件的ramdisk镜像支持,社区正在做software raid的方案,通过agent启动后使用raid-md来做raid,
软raid: https://blueprints.launchpad.net/ironic/+spec/inband-raid-configuration
现有的raid支持: https://docs.openstack.org/developer/ironic/deploy/raid.html

console的实现,原理,scott和shellinabox的区别

通过SOL(serial over lan),即通过网络转发串口的方式来将console暴漏给用户,ironic使用的是ipmitool 的sol activate命令。默认是通过shellinabox展示给user,可以通过网页查看,像nova看虚拟机一样,也可以通过scott,暴露出来的是ip+端口,可以通过telnet访问。

root@ubuntu:~# ipmitool -I lanplus -H 172.16.6.222 -U root -P password sol activate
[SOL Session operational. Use ~? for help]

LTS debian ttyS1

debian login:

裸机和ironic控制器的网络通信

裸机管理有两种情况,一种是通过flat网络通信,裸机和控制器在同一个二层网络里,网络架构比较简单,这里不展开了。

但是更合理的情况是,裸机使用multi tenancy来管理网络,Ironic裸机和控制器在不同的vlan里,裸机部署时需要向控制器tftp服务请求镜像,这就需要在三层打通部署tftp所在的控制器网络和部署网络。如果是通过partion image部署,裸机部署完成后,每次开机时,也要向tftp请求镜像(使用partition image且不从本地启动的情况下),这样就又需要打通tftp到instance vlan。不过如果通过whole disk方式部署裸机就不需要这么麻烦了,whole disk部署的服务器启动时不需要访问tftp server.

通过物理交换机配置比较麻烦,我们可以通过neutron router上打通不同vlan,下面上海二楼的环境为例。

当前的环境如下:

  1. 控制器位于172.16.140.51上,物理网关地址为172.16.140.1
  2. 裸机的部署网络配置为vlan 160,172.16.160.0/24网段,只是在交换机上创建了对应的vlan,没有物理网关
  3. 控制器上部署了tftp服务,dns服务,ironic服务,neutron服务

操作步骤:

  1. 创建neutron vlan140网络,网关声明为172.16.140.100 这里要避开物理网关
  2. 创建neutron vlan160网络,网关声明为172.16.160.1
  3. 创建router,不设置网关,既不激活snat
  4. 在router中添加到vlan140网络的接口,接口ip不输入或者输入网关172.16.140.100
  5. 在router中添加到vlan160网络的接口,接口ip不输入或者输入网关172.16.160.1
  6. 在控制器上添加一条路由router add -net 172.16.160.0/24 gw 172.16.140.100

这样就使得控制器172.16.140.51能和部署网络172.16.160.0/24互通,能够完成部署工作。如果是使用wholedisk的镜像进行部署,那么这样的网络已经足够。如果需要部署partition格式的镜像,还需要按照上面的方式打通instance网络。

OpenStack Ironic 常见问题的更多相关文章

  1. Ironic , Openstack Baremetal Hypervisor

    Ironic , Openstack Baremetal Hypervisor,首发于UnitedStack Inc.. 转自: http://ju.outofmemory.cn/entry/4876 ...

  2. enable multi-tenancy on openstack pike

    Multi-tenancy 是openstack ironic从Ocata版本开始支持的新特性,通过network-generic-switch插件控制交换机,Ironic可以实现在不同租户间机网络隔 ...

  3. Enable multi-tenancy on ironic

    Multi-tenancy 是openstack ironic从Ocata版本开始支持的新特性,通过network-generic-switch插件控制交换机,Ironic可以实现在不同租户间机网络隔 ...

  4. packstack安装ironic

    KVM Centos7.3虚机 安装openstack Pike版本, 其它版本安装方法类似. packstack目前对NetworkManager 还不支持,我们修改下配置: systemctl d ...

  5. Data Center Manager Leveraging OpenStack

    这是去年的一个基于OpenStack的数据中心管理软件的想法. Abstract OpenStack facilates users to provision and manage cloud ser ...

  6. Ironic 裸金属管理服务

    目录 文章目录 目录 Ironic 软件架构设计 资源模型设计 全生命周期的状态机设计 Inspection 裸金属上架自检阶段 Provision 裸金属部署阶段 Clean 裸金属回收阶段 快速体 ...

  7. 简单聊聊 Ironic

    上一篇文章里我简单介绍了一下「裸金属」的概念,提到了 OpenStack 中的核心项目 Ironic,今天简单来聊聊它. Ironic 项目的吉祥物 Bare Metal 所以用 Bear 来做吉祥物 ...

  8. 十件你需要知道的事,关于openstack-trove(翻译)

    开源数据库即服务OpenStack Trove应该知道的10件事情 作者:Ken Rugg,Tesora首席执行官 Ken Rugg是Tesora的创始人,CEO和董事会成员. Ken的大部分职业都是 ...

  9. [资料] Ceph存储系统,关于Redhat和Suse企业版存储知识汇总

    版权声明:很多其它内容,请关注[架构师技术联盟]公众号 https://blog.csdn.net/BtB5e6Nsu1g511Eg5XEg/article/details/81117091 wx_f ...

随机推荐

  1. DOM4J使用简介

    Dom4j 使用简介 作者:冰云 icecloud(AT)sina.com 时间:2003.12.15   版权声明: 本文由冰云完成,首发于CSDN,未经许可,不得使用于任何商业用途. 文中代码部分 ...

  2. springMVC中使用POI方式导出excel至客户端、服务器实例

    Apache POI是Apache软件基金会的开放源码函式库,POI提供API给Java程序对Microsoft Office格式档案读和写的功能. 这里的方法支持导出excel至项目所在服务器,或导 ...

  3. TPYBoard开发板搭建与阿里云服务发送数据

       今天给大家带来的是TPYBoard V202开发板的一次测试项目使用心得.而测试项目就是给服务端发送硬件底层数据,而数据有产品名称,WF模块MAC地址,温湿度数据.      什么是MicroP ...

  4. pulltorefresh 设置刷新文字提示颜色

     xmlns:ptr="http://schemas.android.com/apk/res-auto" 赵泽民 2016/7/12 15:48:58 ptr:ptrHeaderS ...

  5. join on用法

    内连接和外连接 内连接用于返回满足连接条件的记录:而外连接则是内连接的扩展,它不仅会满足连接条件的记录,而且还会返回不满足连接条件的记录 内连接 内连接查询返回满足条件的所有记录,默认情况下没有指定任 ...

  6. TCP/IP详解 卷1 第二十一章 TCP的超时与重传

    21.1 引言 可靠性的保证之一就是超时重传 前面两个超时重传的例子 1)  ICMP端口不能到达时,TFTP客户使用UDP实现了一个简单的超时和重传机制,假定5s是一个适当是时间间隔,并每隔5s进行 ...

  7. 面试中的Https

    在Http协议中有可能存在信息窃听或身份伪装的安全问题.使用HTTPS通信机制可以有效地防止这些问题. Https Http的缺点 通信使用明文(不加密),内容可能会被窃听. 不验证通信方的身份,因此 ...

  8. 安装puppeteer

    Puppeteer是一个node库,他提供了一组用来操纵Chrome的API,默认headless也就是无UI的chrome,也可以配置为有UI. 其实有点类似于PhantomJS,但Puppetee ...

  9. phantomjs集成到scrapy中,并禁用图片,切换UA

    phantomjs是一个没有界面的浏览器,支持各种web标准,提供DOM 处理, CSS 选择器, JSON, Canvas, 和 SVG,对于爬取一些经过js渲染的页面非常有用.但是phantomj ...

  10. PHP可以通过类名调用非静态方法

    今日有兄弟遇上一个问题,就是可以通过class名称直接调用该类中的函数,我测试了一下,确实可以,概念中是只有静态方法才可以这样调用的,现在 被刷新了,于是我在方法中加入一行$this相关的操作,再运行 ...