Prečo ísť nad rámec Raspberry Pi OS?
Stránka Raspberry Pi Compute Module 5 (CM5) poskytuje seriózny výkon pre vstavané zariadenia - PCIe, úložisko NVMe a operačnú pamäť LPDDR4X. Ak však plánujete dodať skutočný produkt, stačí naštartovať Raspberry Pi OS z karty SD nestačí.
Budete potrebovať riadený proces zostavovania obrazu, reprodukovateľnú konfiguráciu a spoľahlivý mechanizmus aktualizácie.
Tradične sa používajú projekty ako napr. Yocto alebo Buildroot sa používajú na tento účel, ale sú spojené so strmými krivkami učenia a dlhým časom zostavovania.
Pre malé tímy, začínajúce podniky alebo zákazkové priemyselné výrobky, Yocto môžu vyzerať ako prehnané. Čo keby ste teda mohli zostať blízko Raspberry Pi OS, a pritom získať automatizáciu, spoľahlivosť a jednoduché aktualizácie?
Tento seriál skúma túto ľahkú alternatívu - pomocou rpi-image-gen, A/B oddielov, rpi-sb-provisioner, a SWUpdate na vytvorenie modulárneho, na produkciu pripraveného potrubia.
Prečo preskočiť Yocto?
Yoctojeho najväčšou silou je zároveň jeho zložitosť. Všetko sa zostavuje zo zdrojových kódov - jadro, zavádzač, toolchain a užívateľský priestor - a poskytuje úplnú kontrolu, ale aj pomalé opakovanie a náročné ladenie.
Ak je váš základný systém už dobre podporovaný, ako napr. Raspberry Pi OS je, môže byť prestavba všetkého zbytočná a časovo náročná.
Namiesto toho môžete:
- Znovu použiť Raspberry Pi zavádzač a jadro
- Generovať reprodukovateľné obrazy pomocou automatizácie konfigurácie
- používať osvedčené nástroje na poskytovanie a aktualizácie
Tento prístup prináša 80 % výhod produkčnej úrovne len s 20 % úsilia.
Prehľad zásobníka
V tomto seriáli sa budeme venovať praktickému súboru nástrojov na vytvorenie systému pripraveného na produkciu Linux systému bez režijných nákladov na Yocto:
- rpi-image-gen- automatizovaný Raspberry Pi OS generovanie obrazu
- A/B rootfs - dvojitý oddiel na bezpečnú aktualizáciu systému
- rpi-sb-provisioner - automatické zapájanie zariadení
- SWUpdate - správa firmvéru OTA
Kombináciou týchto nástrojov môžete navrhnúť reprodukovateľné, udržiavateľné a aktualizovateľné vstavané Linux systém - a zároveň zostať blízko k oficiálnemu Raspberry Pi ekosystému.
Články v tejto sérii
- Building a Production-Ready Linux for Raspberry Pi Compute Module 5
- Zo skladového operačného systému na výrobnú platformu
- Customizing Raspberry Pi OS with rpi-image-gen
- Robustnosť systému - Návrh rozloženia koreňového súborového systému A/B
- Provisioning — Automating First Boot with rpi-sb-provisioner
- OTA and Lifecycle — Software Updates with SWUpdate
Zdroje
- 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