Thank you for sending your enquiry! One of our team members will contact you shortly.
Thank you for sending your booking! One of our team members will contact you shortly.
Course Outline
Introduction to OpenBMC
- Definition and role of a Baseboard Management Controller (BMC).
- History of the OpenBMC project and its governance under the Linux Foundation.
- Supported hardware platforms: x86, ARM, and OpenPOWER.
- Overview of the OpenBMC software stack.
OpenBMC Architecture
- Phosphor application framework and D-Bus communication.
- Systemd integration and service management protocols.
- Entity Manager functionality and inventory management.
- Key repositories and the relationships between components.
Setting Up the Development Environment
- Installing necessary dependencies on Ubuntu.
- Leveraging Docker containers for reproducible build processes.
- Cloning the OpenBMC source repository.
- Configuring Gerrit for code review workflows.
Fundamentals of Yocto and BitBake
- Structure of OpenEmbedded layers: meta-phosphor and meta-aspeed.
- Understanding recipes, bbappend files, and configuration settings.
- Constructing a reference image for QEMU emulation.
- Navigating local.conf and bblayers.conf configurations.
Building Your First BMC Image
- Selecting the appropriate machine target.
- Executing the bitbake obmc-phosphor-image command.
- Interpreting the layout of build outputs.
- Flashing the generated image onto real hardware or QEMU instances.
Customization and Configuration Techniques
- Incorporating new machine layers.
- Defining custom D-Bus interfaces using YAML descriptors.
- Configuring Entity Manager JSON for new hardware components.
- Modifying systemd service files to suit specific needs.
Debugging and Troubleshooting Strategies
- Troubleshooting build failures and using bitbake diagnostic tools.
- Utilizing journalctl for BMC logs.
- Establishing SSH access and performing console debugging.
- Addressing common porting challenges and their solutions.
Recent Updates and Modern Practices
- Transition to C++ sdbusplus bindings.
- Introduction of the new Vue.js-based web UI and bmcweb Redfish server.
- Implementation of modern testing frameworks and CI integration.
Requirements
- Fundamental knowledge of Linux system administration.
- Familiarity with core embedded systems concepts.
- Practical experience using Git and version control systems.
Target Audience
- Embedded firmware engineers.
- System administrators managing server hardware.
- DevOps engineers responsible for data center infrastructure.
14 Hours
Testimonials (4)
experienced trainer
Monika Biskupska - Osrodek Przetwarzania Informacji - Panstwowy Instytut Badawczy
Course - Kubernetes Security Fundamentals (LFS460)
trainer has hands-on knowledge
- Osrodek Przetwarzania Informacji - Panstwowy Instytut Badawczy
Course - Kubernetes for App Developers (LFD459)
A very good and easy-to-use virtual solution (DA DESKTOP).
HEITOR GAVA - Motorola Solutions Ltda
Course - Quick Introduction to Hypervisor and KVM
Tyler is very knowledgable and shared his valuable experience in Lustre administration with us.