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 of a Baseboard Management Controller (BMC).
- History of the OpenBMC project and Linux Foundation governance.
- Supported 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.
- Entity Manager and inventory management capabilities.
- Key repositories and inter-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 Basics
- OpenEmbedded layer structure: meta-phosphor and meta-aspeed.
- Understanding recipes, bbappend files, and configuration settings.
- Constructing a reference image for QEMU.
- Navigating local.conf and bblayers.conf configurations.
Building Your First BMC Image
- Selecting the appropriate machine target.
- Executing bitbake obmc-phosphor-image.
- Analyzing the build output directory structure.
- Flashing the image to real hardware or QEMU environments.
Customization and Configuration
- Incorporating new machine layers.
- Customizing D-Bus interfaces using YAML descriptors.
- Configuring Entity Manager JSON for new hardware components.
- Modifying systemd service files as needed.
Debugging and Troubleshooting
- Troubleshooting build failures and bitbake errors.
- Utilizing journalctl on the BMC system.
- Accessing via SSH and performing console debugging.
- Addressing common porting issues and their solutions.
Recent Updates and Modern Practices
- Migration to C++ sdbusplus bindings.
- New web UI (Vue.js) and bmcweb Redfish server implementation.
- Integration of modern testing frameworks and CI pipelines.
Requirements
- Fundamental knowledge of Linux system administration.
- Familiarity with core embedded systems concepts.
- Practical experience with Git and version control systems.
Target Audience
- Embedded firmware engineers.
- System administrators responsible for server hardware.
- DevOps engineers overseeing data center infrastructure.
14 Hours
Testimonials (2)
Very informative and the trainers kept it fun.
Mohd Shahroni Hj Timbang - ITPSS Sdn Bhd
Course - Ubuntu Server Administration and Centralized Identity Management
experienced trainer