Skip to main content

Het provisioneringsprobleem

Na het bouwen van uw image, moet elk nieuw bord gepersonaliseerd worden - met instellingen zoals hostnaam, SSH-sleutels, configuratie of backendregistratie.
Dit handmatig doen voor tientallen of zelfs honderden Raspberry Pi Compute Module 5 (CM5) units is gewoon niet praktisch.

Daar komt rpi-sb-provisioner komt - een flexibel first-boot automatiseringsraamwerk voor Raspberry Pi apparaten.

Hoe rpi-sb-provisioner Werkt

Bij de eerste keer opstarten start het systeem automatisch rpi-sb-provisionerdie:

  • Een provisioning configuratiebestand leest
  • scripts uitvoert om systeeminstellingen toe te passen
  • Identiteitsgegevens van het apparaat wegschrijft (serienummers, referenties, certificaten, enz.)
  • Het provisioningproces als voltooid markeert

Dit zorgt ervoor dat elk apparaat uniek geconfigureerd is en klaar is voor implementatie - zonder handmatige tussenkomst.

Installatie

Volg de officiële installatiegids op: https://github.com/raspberrypi/rpi-sb-provisioner

Configuratie

rpi-sb-provisioner bevat een eenvoudige browsergebaseerde configuratie-GUI.
Om deze te openen voert u het volgende commando in een terminal uit:

xdg-open http://localhost:3142

Vanaf hier:

  1. Open het menu Afbeeldingen en upload uw .img-bestand (gemaakt met rpi-image-gen).
  2. Open het menu Opties om de provisioningparameters te configureren, zoals de doelapparaatfamilie of de te gebruiken basisimage.
  3. De resulterende configuratie wordt opgeslagen in /etc/rpi-sb-provisioner/config en kan er als volgt uitzien:
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=

Gebruik

  1. Als u bijvoorbeeld een officiële Raspberry Pi Compute Module 5zet u de J2 jumper op eMMC boot uitschakelen.
  2. Sluit de CM5 via USB aan op de provisioning host. Het provisioningproces start automatisch.
  3. Zodra het provisioningproces is voltooid, verwijdert u de jumper en sluit u een voeding aan - het apparaat start nu op vanaf eMMC.

Jumperinstelling voor rpi-sb-provisioner

Voordelen

  • Volledig geautomatiseerde onboarding van apparaten
  • Consistente configuratie voor alle apparaten
  • Eenvoudige integratie met productiesystemen of backend API's
  • Reproduceerbaar - geen handmatige aanpassingen of inconsistenties tussen apparaten

Het proces uitbreiden

De provisioneringsworkflow kan worden uitgebreid met:

  • API-oproepen om apparaten bij backendservices te registreren
  • Certificaatgeneratie voor veilig opstarten of codering
  • Hardwarevalidatie of functionele tests vóór activering

Met rpi-sb-provisionerwordt provisioning een geïntegreerde stap in uw build- en implementatiepijplijn - geen bijkomstigheid.