Recently while collaborating with one of our customers, they expressed a need to insert some additional software into the Ironic Python Agent (IPA) image. If you have ever worked with Red Hat Openstack Platform director or TripleO (OpenStack on OpenStack), you know both of those use Openstack images to discover the physical hardware and to deploy the Openstack overcloud nodes. The images, however, may not always include additional tools that you might need in the environment and will certainly not include proprietary software.
In this particular case, those tools included HP Proliant software used to cleanse the system (erase/rebuild the RAID storage and reconfigure the firmware settings). Because the HP Proliant tools are proprietary, they are something that does not normally ship in our images. However, this post will guide you through a method of how you can add third-party packages for your specific needs. Please note the example below only shows adding in the following package python-proliantutils for demonstration purposes.
1) Make a temp directory on the director node and go into it:
# mkdir ipa-tmp # cd ipa-tmp
2) Extract the original IPA image from the original location into the temp directory. Please be aware you will have to download the image from OpenStack Image Service (Glance).
# /usr/lib/dracut/skipcpio /<path to original IPA image>/ironic-python-agent.initramfs|zcat|cpio -ivd|pax -r
3) Add in your favorite rpm package that you want to be part of the IPA image. In this example we are using the proliantutils package.
# rpm2cpio /<path to rpm of choice>/python-proliantutils-2.1.7-1.el7ost.noarch.rpm | pax -r
4) Pack the director structure back into an initramfs image:
# find . 2>/dev/null | cpio --quiet -c -o | gzip -8 > /root/new-ironic-python-agent.initramfs
5) Upload the new image into Glance to replace the previous IPA image. Note that you will want to rename the new image to the same name as the original image before updating existing:
# source stackrc # openstack overcloud image upload --update-existing # openstack baremetal configure boot
Benjamin Schmaus is a Red Hat Cloud TAM in the NA Central region. He has been involved with Linux since 1998 and has supported business environments in a variety of industries: retail, defense, software, financial, higher education and K-12. Most recently he has been focused on enabling our customers in deploying, operating and supporting Red Hat OpenStack Platform and Red Hat Ceph Storage.
A Red Hat Technical Account Manager (TAM) is a specialized product expert who works collaboratively with IT organizations to strategically plan for successful deployments and help realize optimal performance and growth. The TAM is part of Red Hat’s world class Customer Experience and Engagement organization and provides proactive advice and guidance to help you identify and address potential problems before they occur. Should a problem arise, your TAM will own the issue and work to resolve it as quickly as possible with minimal disruption to your business.
About the author
Benjamin Schmaus is a Red Hat Principle Product Manager for Edge Solutions. He has been involved with Linux since 1998 and has supported business environments in a variety of industries: retail, defense, software development, pharmacy, financial, higher education and K-12. His experience in those industries along with various positions within Red Hat have enabled him to have a broad and deep understanding of customer challenges. Most recently, he has been focused on enabling our customers at the edge by driving the Red Hat portfolio to deliver edge solutions that meet their ever diverse needs as they journey through modernization.
Browse by channel
Automation
The latest on IT automation for tech, teams, and environments
Artificial intelligence
Updates on the platforms that free customers to run AI workloads anywhere
Open hybrid cloud
Explore how we build a more flexible future with hybrid cloud
Security
The latest on how we reduce risks across environments and technologies
Edge computing
Updates on the platforms that simplify operations at the edge
Infrastructure
The latest on the world’s leading enterprise Linux platform
Applications
Inside our solutions to the toughest application challenges
Original shows
Entertaining stories from the makers and leaders in enterprise tech
Products
- Red Hat Enterprise Linux
- Red Hat OpenShift
- Red Hat Ansible Automation Platform
- Cloud services
- See all products
Tools
- Training and certification
- My account
- Customer support
- Developer resources
- Find a partner
- Red Hat Ecosystem Catalog
- Red Hat value calculator
- Documentation
Try, buy, & sell
Communicate
About Red Hat
We’re the world’s leading provider of enterprise open source solutions—including Linux, cloud, container, and Kubernetes. We deliver hardened solutions that make it easier for enterprises to work across platforms and environments, from the core datacenter to the network edge.
Select a language
Red Hat legal and privacy links
- About Red Hat
- Jobs
- Events
- Locations
- Contact Red Hat
- Red Hat Blog
- Diversity, equity, and inclusion
- Cool Stuff Store
- Red Hat Summit