概述

IMPITool驱动是通过ipmitool工具来管理部署节点的,目前主要有两个驱动:

  • agent_ipmitool
  • pxe_ipmitool

配置驱动

要修改ironic支持的驱动需要修改配置文件/etc/ironic/ironic.conf的ennabled_drivers字段。

如果没有配置,默认情况下,ironic使用的是pxe_ipmitool驱动。

[DEFAULT]
...
enabled_drivers = pxe_ipmitool,agent_ipmitool

修改完成之后需要重启conductor服务生效

 systemctl restart openstack-ironic-conductor.service

node节点注册驱动

一个完整的ironic node信息如下表所示。从表中driver字段可以看出使用的是pxe_ipmitool驱动。

从driver_info字段可以看出impi的地址,用户名,密码等信息(这里密码使用*号代替了,具体可以配置)。

[root@ctrl templates(keystone_admin)]# ironic node-show 94c2fce1-acc4-4e28-b9f9-0761ebd8be31
+------------------------+-------------------------------------------------------------------------+
| Property | Value |
+------------------------+-------------------------------------------------------------------------+
| chassis_uuid | |
| clean_step | {} |
| console_enabled | False |
| created_at | 2016-11-30T09:00:26+00:00 |
| driver | pxe_ipmitool |
| driver_info | {u'ipmi_address': u'192.168.1.2', u'ipmi_username': u'user', |
| | u'ipmi_password': u'******'} |
| driver_internal_info | {u'agent_erase_devices_iterations': 1} |
| extra | {} |
| inspection_finished_at | None |
| inspection_started_at | None |
| instance_info | {u'deploy_key': u'BK26BQPYH3PC024H321294L200TXGIUJ'} |
| instance_uuid | None |
| last_error | None |
| maintenance | True |
| maintenance_reason | Failed to prepare node 94c2fce1-acc4-4e28-b9f9-0761ebd8be31 for |
| | cleaning: Cannot validate PXE bootloader. Some parameters were missing |
| | in node's driver_info. Missing are: ['deploy_ramdisk', 'deploy_kernel'] |
| name | None |
| power_state | power off |
| properties | {u'memory_mb': u'562144', u'cpu_arch': u'x86_64', u'local_gb': u'1114', |
| | u'cpus': u'40'} |
| provision_state | clean failed |
| provision_updated_at | 2016-12-01T03:37:20+00:00 |
| raid_config | |
| reservation | None |
| target_power_state | None |
| target_provision_state | available |
| target_raid_config | |
| updated_at | 2016-12-01T03:37:20+00:00 |
| uuid | 94c2fce1-acc4-4e28-b9f9-0761ebd8be31 |
+------------------------+-------------------------------------------------------------------------+

ironic是在创建node的时候指定驱动的,具体步骤如下:

ironic node-create -d pxe_ipmitool -i ipmi_address=<address>
-i ipmi_username=<username> -i ipmi_password=<password>

-d指定使用的驱动, -i指定驱动的信息。

一般需要driver_info需要指定如下信息:

  1. ipmi_address
  2. ipmi_username
  3. ipmi_password
  4. ipmi_port # 远程IPMI RMCP端口,默认使用623端口

目前如果使用agent_ipmitool驱动要求配置Swift Temp URLs。这个问题已经有人在社区反应了,具体链接如下:

https://bugs.launchpad.net/openstack-ansible/+bug/1634299

使用agent_ipmitool配置如下:

[DEFAULT]
enabled_drivers=agent_pyghmi,agent_ipmitool # we're using the agent
debug=true # we believe in logging all the things
rpc_thread_pool_size=4 # we've found this to work best with high load conductors
rpc_conn_pool_size=20 # we've found this to work best with high load conductors [conductor]
force_power_state_during_sync=false # we don't want any surprises :) [glance] # these settings are required for using swift temp URLs
swift_temp_url_key=<lol>
swift_scheme=https
swift_endpoint_url=<swift-host>
swift_path=/v1/<rackspace_tenant>
swift_backend_container=<rackspace_container> [agent]
dhcp_provider=external
heartbeat_timeout=30 # relied on for deploys, shorter timeout means shorter deploys. We'll be fixing this in code soon.
provisioning_network_uuid=<network_id>

ironic驱动-IMPITool的更多相关文章

  1. Liberty版本更新日志中文版本

    新功能 API · 为所有的endpoints默认使用v2.1的API,v2.0和v1.1使用了新的兼容模式,对已经使用API的用户过渡更平稳.(  https://blueprints.launch ...

  2. Ironic中pxe driver和agent driver的区别

    历史问题: 以pxe_ipmitool 和agent_ipmitool为例,看起来似乎前者不使用ironic-python-agent,后者使用,但是实际上两者都使用ironic-python-age ...

  3. 理解裸机部署过程ironic

    部署物理机跟部署虚拟机的概念在nova来看是一样,都是nova通过创建虚拟机的方式来触发,只是底层nova-scheduler和nova-compute的驱动不一样.虚拟机的底层驱动采用的libvir ...

  4. 安装与配置ironic

    安装及配置 由于Ironic的配置很长,下面我们简短的说一下安装和配置过程,具体的安装配置教程参考官方手动配置教程或者使用devstack安装. Ironic需要与Nova.Neutron.Glanc ...

  5. 剖析ironic

    关键技术 在安装操作系统时需要存储介质来存储系统镜像.需要控制物理机开关机,在网络部署环境中还需要预启动环境. PXE (预启动环境) IPMI(电源管理) iSCSI(存储) 什么是PXE PXE( ...

  6. ironic简介

    转:https://doodu.gitbooks.io/openstack-ironic 简介 Bare Metal Servcie 裸机服务 -- 'bear betal' ironic简介 如今O ...

  7. ironic baremetal rescue process

    1.用户调用Nova的rescue函数 nova/virt/ironic/driver.py class IronicDriver(virt_driver.ComputeDriver): ...... ...

  8. ironic images

    参考: http://blog.csdn.net/wanghuiict/article/details/52757359 ironic 整个部署流程中有两组映像,分别是 deploy 映像和 user ...

  9. ironic rescue standard rescue and unrescue process

    翻译官网救援/取消救援标准流程 1.用户在节点上调用Nova rescue 2.Nova ComputeManager调用virt驱动程序的rescue()方法,传入rescue_password作为 ...

随机推荐

  1. 步步為營-97-MyMVC3

    說明: 解決另外一個不合理之處:通過控制器完成處理 1:在mvc文件夾下面添加一個工廠類文件DefaultControllerFactory 1.2進一步升級為抽象工廠 2 下一步如何規範Contro ...

  2. Python enumerate() 函数

    描述 enumerate() 函数用于将一个可遍历的数据对象(如列表.元组或字符串)组合为一个索引序列,同时列出数据和数据下标,一般用在 for 循环当中. Python 2.3. 以上版本可用,2. ...

  3. Sublime Text 3 快捷键总结(拿走)

    以下是个人总结不完全的快捷键总汇,祝愿各位顺利解放自己的鼠标. 选择类 Ctrl+D 选中光标所占的文本,继续操作则会选中下一个相同的文本. Alt+F3 选中文本按下快捷键,即可一次性选择全部的相同 ...

  4. windows下KafkaOffsetMonitor下载及安装

    KafkaOffsetMonitor是一个可视化工具的jar包,如KafkaOffsetMonitor-assembly-0.2.1.jar,用来来监控kafka的使用状态. 一.下载地址 https ...

  5. 导出CSV乱码

    导出CSV,无论是什么格式,excel打卡都是乱码 需要加上 echo "\xEF\xBB\xBF"; header("Content-Disposition:attac ...

  6. Factorial Trailing Zeroes Add to List

    https://leetcode.com/problems/factorial-trailing-zeroes/#/description 想到了要找2x5:也想到了只要找5,剩下的2 管够.也想到了 ...

  7. 关于mac的一些常用操作记录

    之前记录过一个关于mac远程连接window机,实现共享文件的记录,今天记录一些常用的操作,会持续更新. 1.谷歌浏览器 f12的操作 command+option+i 打开调试面板 2.打开指定位置 ...

  8. Vue全局API总结

    1.extend用于创建一个子类Vue,用$mount来挂载 <body> <div id="app"></div> <script> ...

  9. Codeforces 555C Case of Chocolate 其他

    原文链接https://www.cnblogs.com/zhouzhendong/p/9272797.html 题目传送门 - CF555C 题意 给定一个 $n\times n(n\leq 10^9 ...

  10. Redis Pubsub命令用法

    一.什么是pub/sub及实现Pub/Sub功能(means Publish, Subscribe)即发布及订阅功能. Redis通过publish和subscribe命令实现订阅和发布的功能. 订阅 ...