Contattataci

Struttura del corso

Introduzione a OpenBMC

  • Cosa si intende per Baseboard Management Controller (BMC)
  • Storia del progetto OpenBMC e governance da parte della Linux Foundation
  • Piattaforme supportate: x86, ARM, OpenPOWER
  • Panoramica dello stack software di OpenBMC

Architettura di OpenBMC

  • Il framework applicativo Phosphor e il protocollo D-Bus
  • L’integrazione con systemd per la gestione dei servizi
  • I meccanismi di gestione delle entità e degli inventari
  • Relazioni tra i repository e i componenti principali

Configurazione dell’ambiente di sviluppo

  • Installazione delle dipendenze su Ubuntu
  • Utilizzo dei container Docker per garantire compilazioni riproducibili
  • Clonazione della struttura sorgente di OpenBMC
  • Configurazione iniziale di Gerrit per la revisione del codice

Nozioni base su Yocto e BitBake

  • Struttura dei layer OpenEmbedded: meta-phosphor, meta-aspeed
  • Comprensione delle ricette di compilazione, dei file bbappend e delle configurazioni
  • Generazione di un’immagine di riferimento per QEMU
  • Gestione dei file local.conf e bblayers.conf

Creazione della prima immagine BMC

  • Selezione della piattaforma di destinazione
  • Esecuzione del comando bitbake obmc-phosphor-image
  • Analisi della struttura dei risultati della compilazione
  • Installazione dell’immagine su hardware reale o in ambiente QEMU

Personalizzazione e configurazione avanzata

  • Aggiunta di nuovi layer macchina al progetto
  • Modifica delle interfacce D-Bus tramite descrittori YAML
  • Configurazione JSON per la gestione di nuovi componenti hardware
  • Personalizzazione dei file di configurazione dei servizi systemd

Risoluzione problemi e debugging

  • Gestione degli errori durante la compilazione con BitBake
  • Utilizzo di journalctl per l’analisi dei log nel BMC
  • Accesso remoto tramite SSH e debugging della console
  • Soluzioni alle problematiche più comuni nell’integrazione su nuove piattaforme

Aggiornamenti recenti e pratiche moderne di sviluppo

  • Migrazione verso i binding C++ per sdbusplus
  • Nuova interfaccia web basata su Vue.js e il server Redfish bmcweb
  • Adozione di framework di test moderni e integrazioni CI

Requisiti

  • Conoscenze di base nella gestione dei sistemi Linux
  • Familiarità con i concetti fondamentali dei sistemi embedded
  • Esperienza nell’utilizzo di Git e nei sistemi di controllo delle versioni

Destinatari del corso

  • Ingegneri firmware embedded
  • Amministratori di sistema che si occupano della gestione hardware dei server
  • Ingegneri DevOps responsabili dell’infrastruttura dei data center
 14 ore

Numero di Partecipanti


Prezzo per partecipante

Recensioni (4)

Corsi in Arrivo

Categorie relative