概述

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. C# 把ABCD转换成数字

    每倒题得选项可能是多选或者单选. public static string LetterTransformationNum(string answer, int type) { string num ...

  2. 【APUE | 03】文件I/O

    博客链接: inux中的文件描述符与打开文件之间的关系 #include <stdio.h> #include <unistd.h> #include <sys/stat ...

  3. MyBatis配置:在控制台打印SQL语句

    1.在spring-mybatis.xml中配置语句 注意:value=”classpath:mybatis-config.xml”这个文件如果之前没有,是需要新建的  2.新建mybatis-con ...

  4. Windows Docker 使用笔记

    1.设置共享盘 2.设置加速器.国内拉取docker镜像会出现卡顿甚至拉不下来的问题,原因在于大陆沿海的一道墙,在docker设置中添加镜像代理(registry-mirrors)PS:镜像加速器地址 ...

  5. [转] webpack3最新版本配置研究(五) devtool,webpack-dev-server,CommonsChunkPlugin

    devtool devtool是webpack中config自带的属性只要使用就可以了不用安装 webpack官网的解释如下 当 webpack 打包源代码时,可能会很难追踪到错误和警告在源代码中的原 ...

  6. net core体系-web应用程序-4asp.net core2.0 项目实战(1)-7项目缓冲方案( Redis)

    本文目录1. 摘要2. Redis配置3. RedisHelper4.使用实例 5. 总结 1.  摘要 由于內存存取速度远高于磁盘读取的特性,为了程序效率提高性能,通常会把常用的不常变动的数据存储在 ...

  7. JMeter学习笔记2-图形界面简单介绍

    废话少说直接干活的给: 一.打开和运行JMeter,出现UI界面.如图下所示: 工具栏:常见操作的图标集合,有New(新建), Template(模板) ,Save(保存),Start(开始) ,St ...

  8. 求小于n且与n互质的数的个数

    int eu(int n){ int ans=n; for(int i=2;i*i<=n;i++) { if(n%i==0) { ans=ans/i*(i-1); while(n%i==0)n/ ...

  9. 归并排序(Java实现)

    package sort; public class MergeSort { static void msort(int []a,int start,int end){ int mid=(start+ ...

  10. count()函数在count()中参数的讨论

    http://www.cnblogs.com/CareySon/p/DifferenceBetweenCountStarAndCount1.html