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 function 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
- The Phosphor application framework and D-Bus communication.
- Systemd integration and service management mechanisms.
- Entity Manager and inventory management features.
- Key repositories and their component relationships.
Development Environment Setup
- Installing necessary dependencies on Ubuntu.
- Leveraging Docker containers for reproducible builds.
- Cloning the OpenBMC source tree.
- Configuring Gerrit for code review processes.
Yocto and BitBake Essentials
- Structure of OpenEmbedded layers: meta-phosphor and meta-aspeed.
- Understanding recipes, bbappend files, and configuration settings.
- Building a reference image for QEMU simulation.
- Working with local.conf and bblayers.conf configuration files.
Constructing Your First BMC Image
- Selecting an appropriate machine target.
- Executing bitbake obmc-phosphor-image.
- Analyzing the build output directory structure.
- Flashing the image onto real hardware or a QEMU instance.
Customization and Configuration
- Incorporating new machine layers.
- Tailoring D-Bus interfaces using YAML descriptors.
- Configuring Entity Manager JSON for new hardware support.
- Modifying systemd service files as needed.
Debugging and Troubleshooting
- Addressing build failures and debugging with bitbake.
- Utilizing journalctl on the BMC for logs.
- SSH access and console-based debugging techniques.
- Common porting challenges and their solutions.
Recent Updates and Modern Practices
- Migration to C++ sdbusplus bindings.
- Introduction of the new web UI (Vue.js) and bmcweb Redfish server.
- Implementation of modern testing frameworks and CI integration.
Requirements
- Foundational knowledge of Linux system administration.
- Familiarity with embedded systems concepts.
- Practical experience with Git and version control systems.
Audience
- Embedded firmware engineers.
- System administrators responsible for server hardware.
- DevOps engineers managing 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.