Težava z zagotavljanjem
Po izgradnji slike je treba vsako novo ploščo prilagoditi - z nastavitvami, kot so ime gostitelja, ključi SSH, konfiguracija ali registracija zaledja.
Če to opravljate ročno za več deset ali celo več sto Raspberry Pi Compute Module 5 (CM5) preprosto ni praktično.
Zato je treba rpi-sb-provisioner pride na vrsto prilagodljivo ogrodje za avtomatizacijo prvega zagona za Raspberry Pi naprave.
Kako rpi-sb-provisioner Delovanje
Ob prvem zagonu sistem samodejno zažene rpi-sb-provisioner, ki:
- prebere konfiguracijsko datoteko za zagotavljanje
- izvaja skripte za uporabo sistemskih nastavitev
- zapiše podatke o identiteti naprave (serijske številke, poverilnice, potrdila itd.)
- označi postopek zagotavljanja kot zaključen
Tako je vsaka naprava edinstveno konfigurirana in pripravljena za uporabo - brez ročnega posredovanja.
Namestitev
Sledite uradnemu vodniku za namestitev na spletnem mestu: https://github.com/raspberrypi/rpi-sb-provisioner
Konfiguracija
rpi-sb-provisioner vključuje preprost grafični uporabniški vmesnik za konfiguracijo, ki temelji na brskalniku.
Če ga želite odpreti, v terminalu zaženite naslednji ukaz:
xdg-open http://localhost:3142Od tu:
- Odprite meni Slike in naložite datoteko .img (ustvarjeno z uporabo rpi-image-gen).
- Odprite meni Options (Možnosti) in konfigurirajte parametre zagotavljanja, na primer družino ciljnih naprav ali osnovno sliko, ki jo želite uporabiti.
- Pridobljena konfiguracija je shranjena v /etc/rpi-sb-provisioner/config in je lahko videti takole:
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=Uporaba
- Na primer, pri uporabi uradnega Raspberry Pi Compute Module 5, nastavite mostiček J2, da onemogočite zagon eMMC.
- Priključite računalnik CM5 na gostitelja za zagotavljanje prek vmesnika USB. Postopek zagotavljanja se bo začel samodejno.
- Ko je provisioning končan, odstranite preklopnik in priključite napajalnik - naprava se bo zdaj zagnala iz eMMC.
Prednosti
- Popolnoma avtomatizirano vklapljanje naprav
- Dosledna konfiguracija v vseh enotah
- Enostavna integracija s proizvodnimi sistemi ali zalednimi vmesniki API
- ponovljivost - brez ročnih popravkov ali neskladnosti med napravami
Razširitev postopka
Delovni postopek zagotavljanja je mogoče razširiti tako, da vključuje:
- klice API za registracijo naprav z zalednimi storitvami
- generiranje potrdil za varen zagon ali šifriranje
- potrjevanje strojne opreme ali funkcionalne preskuse pred aktiviranjem
S spletno stranjo rpi-sb-provisioner, postane zagotavljanje integriran korak v vašem postopku za sestavljanje in uvajanje - in ne naknadna misel.
Članki v tej seriji
- Building a Production-Ready Linux for Raspberry Pi Compute Module 5
- Od operacijskega sistema na zalogi do proizvodne platforme
- Customizing Raspberry Pi OS with rpi-image-gen
- Robustnost sistema - Oblikovanje postavitve korenskega datotečnega sistema A/B
- Zagotavljanje - Avtomatizacija prvega zagona z rpi-sb-provisioner
- OTA and Lifecycle — Software Updates with SWUpdate
Viri
- rpi-image-gen: https://github.com/raspberrypi/rpi-image-gen
- rpi-sb-provisioner: https://github.com/raspberrypi/rpi-sb-provisioner
- SWUpdate: https://github.com/sbabic/swupdate
- swugenerator: https://github.com/sbabic/swugenerator