Skip to main content

Problema aprovizionării

După construirea imaginii, fiecare placă nouă trebuie personalizată - cu setări precum nume de gazdă, chei SSH, configurare sau înregistrare backend.
A face acest lucru manual pentru zeci sau chiar sute de Raspberry Pi Compute Module 5 (CM5) unități pur și simplu nu este practic.

Aici intervine rpi-sb-provisioner intervine - un cadru flexibil de automatizare a primului boot pentru Raspberry Pi dispozitive.

Cum funcționează rpi-sb-provisioner funcționează

La prima pornire, sistemul lansează automat rpi-sb-provisioner, care:

  • Citește un fișier de configurare a provizionării
  • execută scripturi pentru a aplica setările sistemului
  • Scrie datele de identitate ale dispozitivului (numere de serie, acreditări, certificate etc.)
  • marchează procesul de aprovizionare ca fiind finalizat

Acest lucru asigură că fiecare dispozitiv este configurat în mod unic și pregătit pentru implementare - fără intervenție manuală.

Instalare

Urmați ghidul oficial de instalare la: https://github.com/raspberrypi/rpi-sb-provisioner

Configurație

rpi-sb-provisioner include o interfață grafică simplă de configurare bazată pe browser.
Pentru a o deschide, executați următoarea comandă într-un terminal:

xdg-open http://localhost:3142

De aici:

  1. Deschideți meniul Images și încărcați fișierul .img (creat utilizând rpi-image-gen).
  2. Deschideți meniul Options (Opțiuni) pentru a configura parametrii de provizionare, cum ar fi familia de dispozitive țintă sau imaginea de bază de utilizat.
  3. Configurația rezultată este stocată în /etc/rpi-sb-provisioner/config și poate arăta astfel:
CUSTOMER_KEY_FILE_PEM=
CUSTOMER_KEY_PKCS11_NAME=
GOLD_MASTER_OS_FILE=/srv/rpi-sb-provisioner/images/deb12-arm64-ix-base.img
PROVISIONING_STYLE=naked
RPI_DEVICE_BOOTLOADER_CONFIG_FILE=/srv/rpi-sb-provisioner/bootloader_config_files/bootloader-gpio17.naked
RPI_DEVICE_EEPROM_WP_SET=
RPI_DEVICE_FAMILY=5
RPI_DEVICE_FIRMWARE_FILE=/lib/firmware/raspberrypi/bootloader-2712/latest/pieeprom-2025-10-17.bin
RPI_DEVICE_LOCK_JTAG=
RPI_DEVICE_RETRIEVE_KEYPAIR=
RPI_DEVICE_STORAGE_CIPHER=aes-xts-plain64
RPI_DEVICE_STORAGE_TYPE=emmc
RPI_SB_PROVISIONER_MANUFACTURING_DB=/srv/rpi-sb-provisioner/manufacturing.db
RPI_SB_WORKDIR=

Utilizare

  1. De exemplu, atunci când utilizați un dispozitiv oficial Raspberry Pi Compute Module 5, setați jumperul J2 pentru a dezactiva boot-ul eMMC.
  2. Conectați CM5 la gazda de provizionare prin USB. Procesul de provizionare va începe automat.
  3. Odată ce provizionarea este finalizată, scoateți jumperul și conectați o sursă de alimentare - dispozitivul va porni acum de la eMMC.

Setare Jumper pentru rpi-sb-provisioner

Beneficii

  • Integrare complet automată a dispozitivelor
  • Configurație consecventă în toate unitățile
  • Integrare ușoară cu sistemele de producție sau API-urile backend
  • Reproductibil - fără ajustări manuale sau neconcordanțe între dispozitive

Extinderea procesului

Fluxul de aprovizionare poate fi extins pentru a include:

  • Apeluri API pentru înregistrarea dispozitivelor cu servicii backend
  • Generarea de certificate pentru pornire securizată sau criptare
  • Validarea hardware sau teste funcționale înainte de activare

Cu rpi-sb-provisionerprovizionarea devine o etapă integrată în conducta dvs. de construcție și implementare - nu un gând ulterior.