Re: something abount ironic-python-agent
On Sun, Dec 27, 2020 at 8:39 PM Ankele zhang <ankelezhang@gmail.com> wrote:
Hi Kaifeng: Before receiving your reply, I have downloaded the ronic-python-agent-builder-2.3.0, but I don't know how to build it and how to use it, I can't find the direction for use. And I try 'python setup.py install' to install it. and the following is my execution.
I don't know the optional values of 'distribution', 'release', 'element', I hope you can help me.
distribution refers to the base image that the ramdisk will be built on, release is used to specify the distribution variant. element is a concept of diskimage-builder, each element is handling part of the building process, you can take a look at the diskimage-builder documentation for a complete list [1]. In case further customization on the ramdisk is required, elements can be included by the argument. We have some examples on how to use the IPA-B at [2]. [1] https://docs.openstack.org/diskimage-builder/latest/elements.html [2] https://docs.openstack.org/ironic-python-agent-builder/latest/admin/dib.html Ankele
Kaifeng Wang <kaifeng.w@gmail.com> 于2020年12月27日周日 下午2:04写道:
On Sun, Dec 27, 2020 at 12:12 AM Ankele zhang <ankelezhang@gmail.com> wrote:
Hi ~ I have deployed OpenStack platform in Rocky version and integreted Ironic(Rocky) into it according to the official documents. I download the coreOS vmlinuz and ramdisk images from https://tarballs.opendev.org/openstack/ironic-python-agent/coreos/files/. and if I don't clean my devices I can deploy baremetal node server currently. When I cleaning my disk using "openstack baremetal node clean --clean-steps '[{"interface": "deploy", "step": "erase_devices"}]' my_bm", I got an error message "Clean step failed: Error performing clean_step erase_devices: No HardwareManager found to handle method: Could not find method: erase_block_device" from ironic-conductor.log and I got the same error in coreOS by "sudo journalctl -u ironic-python-agent -f". I download the Rocky ironic-python-agent source code from github and I search 'erase_block_devices' ,it returned from hardware.py +781. So, the first problem , I don't know why I got this error message.
CoreOS based ramdisk was not maintained for a while, you could try a rocky release at https://tarballs.opendev.org/openstack/ironic-python-agent/dib/
I downloaded the source code of the ironic-python-agent and tried to build the coreOS image by 'Makefile', but I always got error as following, this is my second problem.
Building an IPA ramdisk is moved from diskimage-builder to ironic-python-agent-builder, you can find the document here: https://docs.openstack.org/ironic-python-agent-builder/latest/
Finally, I want to code my own 'custom HardwareManager' to support 'raid config' for the ironic-python-agent, but I don't know how to get started.
For an in-band RAID support, you'll need to create a new hardware manager and implement some deploy steps to support RAID configuration, specifically, the create_configuration and delete_configuration steps. The following links may provide some starting points for you. https://docs.openstack.org/ironic/latest/contributor/deploy-steps.html
https://docs.openstack.org/ironic/latest/admin/cleaning.html#raid-interface
Hope this helps.
Looking forward to your help. Thank you.
Ankele
participants (1)
-
Kaifeng Wang