Get in Touch

Course Outline

Overview of the OpenBMC Initiative

  • Definition and role of the Baseboard Management Controller (BMC)
  • Historical context of the OpenBMC project under Linux Foundation stewardship
  • Supported hardware architectures, including x86, ARM, and OpenPOWER
  • Structural components of the OpenBMC software stack

System Architecture

  • Phosphor application framework and D-Bus inter-process communication
  • Service management via systemd integration
  • Inventory tracking through the Entity Manager
  • Core repositories and component dependencies for government-grade infrastructure

Development Environment Configuration

  • Dependency installation procedures for Ubuntu-based systems
  • Leveraging Docker containers to ensure reproducible build environments
  • Source code acquisition via OpenBMC repository cloning
  • Gerrit configuration for secure code review processes

Yocto Project and BitBake Fundamentals

  • OpenEmbedded layer hierarchy, specifically meta-phosphor and meta-aspeed
  • Analysis of recipes, bbappend mechanisms, and configuration parameters
  • Generation of reference images for QEMU emulation
  • Configuration file management for local.conf and bblayers.conf

Creation of the Initial BMC Image

  • Selection of appropriate machine targets for deployment
  • Execution of bitbake obmc-phosphor-image build process
  • Interpretation of build artifact output and directory structure
  • Image deployment to physical hardware or QEMU virtual environments

System Customization and Configuration Management

  • Implementation of custom machine layers for specific requirements
  • D-Bus interface customization using YAML descriptors for government system integration
  • Entity Manager JSON configuration adjustments for new hardware platforms
  • Modifications to systemd service unit files to align with operational policies

Diagnostic Procedures and Troubleshooting

  • Analysis of build errors and bitbake diagnostic techniques
  • Log retrieval using journalctl on the BMC interface
  • Remote access via SSH and console-based debugging methods
  • Resolution of common porting challenges and mitigation strategies

Current Developments and Modern Standards

  • Transition to C++ sdbusplus bindings for improved performance
  • Implementation of the updated web user interface (Vue.js) and bmcweb Redfish server
  • Integration of modern testing frameworks and continuous integration pipelines

Requirements

**Prerequisites** * Foundational knowledge of Linux system administration. * Working understanding of embedded systems principles. * Practical experience utilizing Git for version control. **Intended Audience** * Engineers specializing in embedded firmware development. * System administrators responsible for server hardware operations. * DevOps professionals overseeing data center infrastructure. This curriculum is designed for government agencies and related entities seeking to enhance technical capabilities in these domains.
 14 Hours

Number of participants


Price per participant

Testimonials (5)

Upcoming Courses

Related Categories