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 governance by 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
- Integration with systemd for service management
- Entity Manager functionality and inventory management
- Key repositories and their component relationships
Setting Up the Development Environment
- Installing necessary dependencies on Ubuntu
- Leveraging Docker containers for reproducible build environments
- Cloning the OpenBMC source code repository
- Configuring Gerrit for code review processes
Essentials of Yocto and BitBake
- Structure of the OpenEmbedded layer: meta-phosphor and meta-aspeed
- Understanding recipes, bbappend files, and configuration parameters
- Constructing a reference image for QEMU emulation
- Managing local.conf and bblayers.conf settings
Building Your First BMC Image
- Selecting the appropriate machine target
- Executing the bitbake command for obmc-phosphor-image
- Interpreting the layout of build outputs
- Flashing the generated image to physical hardware or QEMU
Customization and Configuration Techniques
- Incorporating new machine layers
- Customizing D-Bus interfaces using YAML descriptors
- Configuring Entity Manager via JSON for new hardware support
- Modifying systemd service files as needed
Debugging and Troubleshooting Strategies
- Resolving build failures and debugging bitbake processes
- Utilizing journalctl on the BMC
- Accessing via SSH and performing console debugging
- Addressing common porting issues and their solutions
Recent Updates and Modern Best Practices
- Migration to C++ sdbusplus bindings
- New web UI (based on Vue.js) and bmcweb Redfish server implementation
- Modern testing frameworks and Continuous Integration (CI) integration
Requirements
- Fundamental knowledge of Linux system administration
- Basic familiarity with embedded systems concepts
- Practical experience using Git and version control systems
Target Audience
- Embedded firmware engineers
- System administrators responsible for server hardware operations
- 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.