ironic workflow---debug and changing (1)

Openstack(Ocata)Ironic安装配置手册 1       前言 1.1       环境节点分布 控制节点(1个),网络节点(1个),计算节点(一个),物理服务器(作为ironic节点)(1台) 1.2       网络配置 Controller1节点  ens32(99.0.31.111/16)ens33(100.0.31.111/16) Network节点    ens32(99.0.31.112/16)ens33(不配ip 阅读详情

作为openstack的一个模块,ironic的不同之处在于它是使用pecan的框架,当然了这仅仅是形式上的,如何接受rest的call并响应而已,至于接收到rest 请求之后如何,记录一下心得:

有时候我们希望改变程序之后加入自己的log从而查看程序是否按照自己所想运行,记得在Ubuntu上面改了之后openstack的程序是会自动编译好,直接重启服务就可以了,重新编译改动的文件为pyc和pyo(pyo文件减小了容量)文件,只是提升了加载速度而已,因此不用刻意去编译。

然而在centos下面修改py文件后没有起作用,

生成pyc文件 :python -m py_compile file.py

生成pyo文件:python -O -m py_compile file.py

也可以使用compileall编译整个目录:

import compileall
compileall.compile_dir(dirpath)

发现还是没有起作用,觉得非常奇怪,为什么log里面就显示不出来呢,后来想明白了,我用的是log.debug,可能是log的level不对,我改成使用log.warning就可以了,同事编译和重启服务都是必须的,否则不起作用。。。

应该是可以设置的,使得自动编译,记得ubuntu下面是直接生效的,应该没有记错才对
写一个python脚本实现它

import os
import compileall
compileall.compile_dir(r'/usr/lib/python2.7/site-packages/ironic')

os.system('systemctl restart openstack-ironic-api.service')
os.system('systemctl restart openstack-ironic-conductor.service')
print 'end of restart ironic serice'

运行ironic node-set-provision-state 8cdc7750-9d66-4353-ab3e-99fe82e739e2 rebuild 或active时,总是failed,日志显示:

2015-03-22 14:22:05.436 6992 WARNING ironic.dhcp.neutron [-] No VIFs found for node 8cdc7750-9d66-4353-ab3e-99fe82e739e2 when attempting  to get port IP address.
2015-03-22 14:22:05.436 6992 WARNING ironic.dhcp.neutron [-] Some errors were encountered on node 8cdc7750-9d66-4353-ab3e-99fe82e739e2 while retrieving IP address on the following ports: [u'9f10c0b8-4400-4e04-8db0-e42c7f689425'].
2015-03-22 14:22:05.436 6992 WARNING ironic.conductor.manager [-] Error in deploy of node 8cdc7750-9d66-4353-ab3e-99fe82e739e2: Failed to get IP address for any port on node 8cdc7750-9d66-4353-ab3e-99fe82e739e2.

进入代码发现在common/network.py中拿不到vif_port_id,在dhcp/neutron.py的方法_get_fixed_ip_address中,调用了

neutron_port = client.show_port(port_uuid).get('port')

即通过neutron的port来获得新设备的ip,因此vif_port_id应该是neutron中某个port的uuid:


[root@xxx~(keystone_admin)]# neutron port-list
+--------------------------------------+------+-------------------+-------------------------------------------------------------------------------------+
| id                                   | name | mac_address       | fixed_ips                                                                           |
+--------------------------------------+------+-------------------+-------------------------------------------------------------------------------------+
| ad16ca5b-b948-4176-b605-058e09261fb0 |      | fa:16:3e:22:fc:f6 | {"subnet_id": "7d1efba5-a637-42c0-b327-b4237715f6c8", "ip_address": "192.168.1.14"} |
| a1ecfc63-aa64-418e-ab69-81ec5cd1364a |      | fa:16:3e:1c:97:68 | {"subnet_id": "7d1efba5-a637-42c0-b327-b4237715f6c8", "ip_address": "192.168.1.11"} |
+--------------------------------------+------+-------------------+-------------------------------------------------------------------------------------+
于是调用命令:

ironic port-update 9f10c0b8-4400-4e04-8db0-e42c7f689425 add extra/vif_port_id=ad16ca5b-b948-4176-b605-058e09261fb0

再次调用ironic node-set-provision-state 8cdc7750-9d66-4353-ab3e-99fe82e739e2 rebuild并 ironic node-show 8cdc7750-9d66-4353-ab3e-99fe82e739e2有

[root@xxx~(keystone_admin)]# ironic node-show 8cdc7750-9d66-4353-ab3e-99fe82e739e2
+------------------------+--------------------------------------------------------------------------+
| Property               | Value                                                                    |
+------------------------+--------------------------------------------------------------------------+
| instance_uuid          | None                                                                     |
| target_power_state     | None                                                                     |
| properties             | {u'cpu_arch': u'x86_64', u'local_gb': u'1200', u'cpus': u'2',            |
|                        | u'capabilities': u'boot_mode:uefi', u'memory': u'131072'}                |
| maintenance            | False                                                                    |
| driver_info            | {u'pxe_deploy_ramdisk': u'ffe9fc7c-1a0c-4de7-8d42-a81603fa1033',         |
|                        | u'pxe_deploy_kernel': u'cd59399d-5394-4ec1-8178-539c2a2a4833',           |
|                        | u'ipmi_address': u'10.240.212.85', u'ipmi_username': u'USERID',          |
|                        | u'ipmi_password': u'PASSW0RD'}                                           |
| extra                  | {}                                                                       |
| last_error             | None                                                                     |
| created_at             | 2015-03-19T04:14:33+00:00                                                |
| target_provision_state | deploy complete                                                          |
| driver                 | pxe_ipmitool                                                             |
| updated_at             | 2015-03-22T07:14:11+00:00                                                |
| instance_info          | {u'ramdisk': u'aa24e8be-d4ad-4d19-9520-d7293662a400', u'kernel':         |
|                        | u'ea63b1b1-1423-43d3-bf26-9ba93bd1e809', u'root_gb': u'10',              |
|                        | u'image_source': u'bee88655-cdc1-49f8-9dcb-8004d8b96582', u'deploy_key': |
|                        | u'JCUH18XD4X9KIX4I1S47VGXUWG66G0HW', u'image_checksum':                  |
|                        | u'870e8ce725224d8f8e63fcc76c8d074e'}                                     |
| chassis_uuid           | None                                                                     |
| provision_state        | wait call-back                                                           |
| reservation            | None                                                                     |
| power_state            | power on                                                                 |
| console_enabled        | False                                                                    |
| uuid                   | 8cdc7750-9d66-4353-ab3e-99fe82e739e2                                     |
+------------------------+--------------------------------------------------------------------------+

dnsmasq-dhcp no available address:

待续。。。









OpenStack ironic裸金属部署(裸金属作为独立服务) 前言 OpenStack裸金属官网文档有坑,百度支持又很少,笔者经过长时间研究,终于将详细的步骤整理成这篇博客,一定可以部署成功。 第1章 环境 1.1 操作系统环境 cat /etc/redhat-release CentOS Linux release 7.6.1810 (Core) uname -a Linux controller 3.10.0-957.27.2.el7.x86_64 #1 SMP Mon Jul 29 17:46:05 UTC 2019 x86_64 x86_64 x86_6 阅读详情

相关推荐

openstack ironic

openstack 裸机管理ironic,官方测试,安装,使用文档。

【ironic】ironic 命令

一。Hardware Inspection        Inspection可以使用node-set-provision-state初始化,前提是节点是MANAGEABLE状态。        Move node to manageable state:                ironic node-set-provision-state $node_uuid manage

zhonglinzhang 7436

openstack命令行操作帮助文档

OpenStack是一个旨在为公共及私有云的建设与管理提供软件的开源项目。它的社区拥有超过130家企业及1350位开发者,这些机构与个人都将OpenStack作为基础设施即服务(IaaS)资源的通用前端。OpenStack项目的首要任务是简化云的部署过程并为其带来良好的可扩展性。本文希望通过提供必要的指导信息,帮助大家利用OpenStack前端来设置及管理自己的公共云或私有云。

node 14.19.0 版本成功解决:安装 node-sass 和 sass-loader 的过程及各 node 版本对应的 node-sass 版本号

1、node 版本、node-sass 版本及 sass-loader 版本查看: 其一、我的 node 版本查看: 在命令行输入查询命令:node -v 我的 node 版本为:v14.19.0 其二、我的 node-sass 版本查看:"node-sass": "^4.14.1" 其三、我的 sass-loader 版本查看:"sass-loader": "^7.3.1" 2、node 版本与 node-sass 版本的对应关系: 其一、查看文档的地址: https://www.npmjs.com

狮子座的男孩 6万+

PPT| 公司网络安全意识培训 P73

近年来,随着互联网的不断发展,网络安全问题也日益凸显,各种网络安全事件层出不穷,对个人和企业的信息安全带来了巨大的威胁。针对这一现状,国家加强了对信息安全的保护,相继颁布了多项法律法规,其中最重要的就是网络安全法。本文将从网络安全法和其他相关法律入手,对信息安全的保护措施进行深入分析。 本人在四大咨询机构从事咨询工作多年,二十年一线数字化规划咨询经验,提供制造业数智化转型规划服务,顶层规划/企业架构/数据治理/数据安全解决方案资料干货. 该PPT共73页,原文获取及来源公众号:【智能制造数字化咨询】

waldensss的博客 1422

深入理解搜索引擎——搜索评价指标

    搜索引擎,在做好query理解、索引召回以及排序模型之后,就能直接推上线了吗?答案是否定的,还需对其性能和质量进行评测。性能无非是对时间和空间的运行效率作评测,不细讲,今天讲讲搜索引擎的质量评测。通过质量评测,可根据评测结果不断的进行改进和研究,也可以验证搜索引擎在真实环境中运行时的实际效果。因此,搜索引擎的质量评测对于整个系统的研制和发展是至关重要的。     那么有哪些指标可以评估搜索引擎的结果质量呢?最广为人知的

我是药老的博客 4485

ironic+nova详解

说明: Openstack 的安装步骤省略,按照社区的文档即可搭建出一套相对稳定的使用环境.本文档基于Newton版本. 假设现在已经有一套可用的Newton环境, 以下的操作均在环境安装完成后进行. 在ironic安装配置过程中, 社区文档Nova和ironic 结合时的配置部分有一个错误, https://docs.openstack.org/project-inst...

weixin_30486037的博客 294

脑影像分析工具JuSpace:跨模态关联的神经递质系统研究利器

JuSpace是一款专业的脑影像分析软件,专为跨模态关联研究设计。它能够将功能或结构磁共振影像与神经递质PET/SPECT图谱进行空间关联分析,帮助研究者探索宏观脑影像异常与微观神经化学系统(如多巴胺、血清素)之间的潜在联系,是神经精神疾病机制研究的强大工具。

c2d3e4f的博客 544

Ironic注册/部署/inspect/clean节点操作记录

目录 注册裸机节点 社区链接 实际操作 节点状态变迁图 社区链接 部署裸机节点 社区链接 server状态变迁 node状态变迁 部署流程 实际操作 tftpboot配置文件信息 节点inspect(Hardware Inspection) 社区链接 node状态变迁 实际操作 节点clean 社区链接 node状态变迁 实际操作 注册部署裸机脚本参考 注册裸机节点 社区链接 https://docs.openstack.org/ironic/latest/i

Evan 1953

【G4基础08】GPS-2-Macro Commands宏命令

GPS-2

adelall的博客 3738

46、搭建与配置FTP服务器全攻略

本文详细介绍了如何搭建与配置FTP服务器,以vsftpd为例,涵盖了FTP基础概念、安装步骤、服务控制、安全设置、用户权限管理、文件上传支持、互联网共享配置、客户端使用以及常见问题解决等内容。旨在帮助用户高效、安全地实现文件共享与管理。

time3的博客 88

Openstack云环境 ironic部署裸机那点儿事

Openstack环境用ironic组件部署裸机(baremetal)过程。 关于Openstack中的ironic子项目,在此不做过多介绍,ironic就是openstack用来部署裸机(baremetal)的一个子项目,在此贴一张ironic部署裸机的工作流程图:

Peter 的博客 3324

RAP 通用搜索实战:用 CDS 注解打造 Fiori Elements 的一体化检索体验

RAP应用中的通用搜索优化实践:通过CDS注解实现高效模糊匹配 摘要:本文介绍了在SAP RAP应用中优化列表搜索体验的方法。通过CDS注解配置通用搜索功能,用户无需指定字段即可在多字段中模糊匹配数据。关键实现包括:1)使用@Search.searchable启用全局搜索;2)通过@Search.defaultSearchElement标记核心搜索字段;3)利用@Search.fuzzinessThreshold设置容错阈值(0.7-1.0)处理拼写错误;4)使用@Search.ranking优化结果排序。

2007 年 ~ 2025 年,深耕 SAP 技术 18 年 1398

Ironic Baremetal service裸金属安装配置到OpenStack集群

环境 api 节点即 controller 控制节点 conductor 节点即 裸金属计算节点 vip 即虚拟IP,或者使用controller节点IP或hostname替换 一、安装软件包 1、在所有节点上安装yum仓库 yum install centos-release-openstack-rocky -y 2、在 api 节点上安装 yum install openstack-ironic-api python-ironicclient -y 执行 systemctl enable openst

最爱雨的博客 2086

双重分组进位跳跃进位链

跳跃进位链

qq_62260432的博客 941

OpenStack Ironic 裸金属集群搭建流程

实验室有二十台 R740 服务器(戴尔)给大家用,由于涉及到内核以及硬件方面的实验,时间一长的话不同服务器上的环境就很混乱,运维管理也很麻烦,并且虚拟化不适合我们的场景。之前 OSDI 22 AE 提供了的账号,这个网站上面就是像虚拟机一样使用物理机器,可以自由组网、选择操作系统镜像直接启动、给服务器做镜像等,体验相当不错。但是他们的系统并不开源,所以我想看看有没有办法用开源的软件像他们一样直接管理裸金属服务器。OpenStack Ironic 就是基于 OpenStack 生态的裸金属计算服务。

顺其自然~专栏 3754

jdk-8u144-linux-x64.tar.gz.

该资源为搭建Linux系统Java环境用,资源的后缀为tar.gz格式的压缩包

安装与配置ironic

安装及配置 由于Ironic的配置很长,下面我们简短的说一下安装和配置过程,具体的安装配置教程参考官方手动配置教程或者使用devstack安装。 Ironic需要与Nova、Neutron、Glance、Keystone等进行交互,于是先要对这些进行配置。 1.配置KeyStone 首先我们需要在keystone中创建ironic用户、服务、endpoint信息。 keystone ...

weixin_30918633的博客 579

假人有限元模型

假人模型,车辆碰撞假人有限元模型,适合做乘员安全的研究者利用

NTscan扫描工具

ntscan是一个扫描器,可以扫描没有密码和弱密码的共享,先到配置文件中填写猜测的用户名和密码,扫描过程中右侧出现的是扫描日志。

Ironic的安装那些事儿

本文介绍如果使用devstack搭建Ironic环境,以及在安装的过程中可能遇到的问题。 环境准备 Ubuntu14.04虚拟机一台,建议选择高配的机器,因为会在上面创建三个虚拟机模拟bare metal机器 替换apt-get源 cp /etc/apt/sources.list /etc/apt/sources.list.bak vim /etc/apt/sources.list

changzhi的专栏 7405

霍尼韦尔SoftMaster使用说明

霍尼韦尔SoftMaster使用说明

一个GDB调试的workflow

一个GDB调试的workflow

闫昊的博客 246

openstack-train binding:vif_type binding_failed,无法自动创建网桥。桥接失败。

server.log:2020-04-07 13:15:10.689 88686 ERROR neutron.plugins.ml2.managers [req-66b12762-62d5-4f2f-b0f1-71d701c6de94 - - - - -] Port 41381ec3-0cf3-49dd-977c-7f4a9a7262c6 does not have an IP addres...

idc_lm的博客 2150

oracle 清理资源池,资源池裸金属实施管理手册

概述文档包括 “上线实施” —— 含布线规则、BIOS设置、部署流程,三个阶段针对资源池各机型的不同实施方法;“故障类型及处理办法” —— 含整个生命周期中会出现的 8 类问题、5 种异常状态,对应 28 种故障类型和处理办法布线规则千兆网线1G-1 电口连接带外交换机,交换机端口配置裸金属 PXE Vlan(如 203)万兆光纤分为 3 种情况两张 10G 卡 A & B网卡顺序按照 s...

weixin_30767945的博客 377

手动安装配置openstack ironic

ironic的主要服务组件是ironic-api和ironic-conductor。客户端是ironic client。服务若要正常运行,配置主要位于三个部分,openstack的MySQL数据库;keystone;配置文件ironic.conf。

wanghuiict 的优快云博客 3407

【干货】裸金属服务Ironic项目介绍

在其字面意义上更强调了它是一种未安装操作系统或者刻意剥离操作系统的一种概念,更确切的表面他是CPU、RAM、local_gb的计算资源产品集合。 1、Ironic项目和组件介绍 Ironic是OpenStack中专注于裸金属管理和系统推送的项目,它的很多设计也是遵循了OpenStack其他项目的逻辑,主方向便是建立一个基于裸金属服务的IaaS云服务,裸金...

weixin_34162695的博客 2016

ironic架构及相关技术简介

简介 如今Openstack在虚拟化管理部分已经很成熟了, 通过nova我们可以创建虚拟机、枚举虚拟设备、管理电源状态、安装操作系统等。但是有时候虚拟机无法满足要求,比如以下几种情况需要直使用物理机: 高性能的计算集群。 计算任务需要访问无法虚拟化的硬件设备。 数据库主机(有些数据库在hypervisor中运行效率很差)。 单租户、专用硬件、安全性、可靠性和其他控制要求。 快速部署云基...

迷失的专栏 1万+
上一篇: wsme and pecan in ironic
下一篇: ironic pecan hooks
dingdingwolf
博客等级 码龄16年 7粉丝 94原创
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

当前余额3.43元 前往充值 >
需支付:10.00元
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付元
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值