Skip to main content

Leveringsproblemet

Når du har bygget dit image, skal hvert nyt board tilpasses - med indstillinger som værtsnavn, SSH-nøgler, konfiguration eller backend-registrering.
At gøre dette manuelt for dusinvis eller endda hundredvis af Raspberry Pi Compute Module 5 (CM5) enheder er simpelthen ikke praktisk.

Det er her rpi-sb-provisioner kommer ind i billedet - en fleksibel automatiseringsramme til første opstart af Raspberry Pi enheder.

Hvordan rpi-sb-provisioner Arbejder

Ved første opstart starter systemet automatisk rpi-sb-provisionersom:

  • Læser en konfigurationsfil til klargøring
  • Udfører scripts for at anvende systemindstillinger
  • Skriver enhedens identitetsdata (serienumre, legitimationsoplysninger, certifikater osv.)
  • Markerer provisioneringsprocessen som fuldført

Dette sikrer, at hver enhed er unikt konfigureret og klar til udrulning - uden manuel indgriben.

Installation

Følg den officielle installationsvejledning på: https://github.com/raspberrypi/rpi-sb-provisioner

Konfiguration

rpi-sb-provisioner indeholder en simpel browserbaseret konfigurations-GUI.
For at åbne den skal du køre følgende kommando i en terminal:

xdg-open http://localhost:3142

Herfra:

  1. Åbn menuen Billeder, og upload din .img-fil (oprettet ved hjælp af rpi-image-gen).
  2. Åbn menuen Indstillinger for at konfigurere provisioneringsparametre, f.eks. målenhedsfamilien eller det basisbillede, der skal bruges.
  3. Den resulterende konfiguration gemmes i /etc/rpi-sb-provisioner/config og kan se sådan ud:
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=

Anvendelse

  1. Når du f.eks. bruger en officiel Raspberry Pi Compute Module 5sæt J2-jumperen til at deaktivere eMMC-boot.
  2. Tilslut CM5 til provisioneringsværten via USB. Provisioneringsprocessen starter automatisk.
  3. Når provisioneringen er færdig, skal du fjerne jumperen og tilslutte en strømforsyning - enheden vil nu starte fra eMMC.

Jumperindstilling for rpi-sb-provisioner

Fordele

  • Fuldt automatiseret onboarding af enheder
  • Ensartet konfiguration på tværs af alle enheder
  • Nem integration med produktionssystemer eller backend-API'er
  • Reproducerbar - ingen manuelle justeringer eller uoverensstemmelser mellem enhederne

Udvidelse af processen

Arbejdsgangen for klargøring kan udvides til at omfatte:

  • API-kald til at registrere enheder med backend-tjenester
  • Generering af certifikater til sikker opstart eller kryptering
  • Hardware-validering eller funktionelle tests før aktivering

Med rpi-sb-provisionerbliver provisionering et integreret trin i din build- og deployment-pipeline - ikke en eftertanke.