Miért menjünk tovább Raspberry Pi OS?
A Raspberry Pi Compute Module 5 (CM5) komoly beágyazott teljesítményt nyújt - PCIe, NVMe tároló és LPDDR4X RAM. De ha valódi termék szállítását tervezi, egyszerűen csak bootolva Raspberry Pi OS SD-kártyáról való bootolás nem elég.
Ellenőrzött képkészítési folyamatra, reprodukálható konfigurációra és megbízható frissítési mechanizmusra lesz szüksége.
Hagyományosan az olyan projektek, mint a Yocto vagy a Buildroot projekteket használják erre a célra - ezek azonban meredek tanulási görbékkel és hosszú építési idővel járnak.
Kis csapatok, startupok vagy egyedi ipari termékek számára, Yocto túlzásnak tűnhetnek. Mi lenne tehát, ha közel maradhatna a Raspberry Pi OS, mégis automatizáltságot, megbízhatóságot és egyszerű frissítéseket kapna?
Ez a sorozat ezt a könnyű alternatívát vizsgálja - a rpi-image-gen, A/B partíciókat, rpi-sb-provisioner, és SWUpdate segítségével egy moduláris, gyártásra kész csővezetéket alakítunk ki.
Miért hagyja ki Yocto?
Yoctolegnagyobb erőssége egyben a komplexitása is. Mindent forrásból épít - kernel, bootloader, toolchain és userspace -, ami teljes kontrollt, de lassú iterációt és nehéz hibakeresést is biztosít.
Ha az alaprendszer már jól támogatott, mint a Raspberry Pi OS mint ahogyan az, az újrakészítés felesleges és időigényes lehet.
Ehelyett megteheti:
- Újra felhasználhatja a Raspberry Pi bootloader és kernel
- Konfigurációs automatizálással reprodukálható képeket készíthet.
- Bevált eszközöket használhat a telepítéshez és a frissítésekhez
Ez a megközelítés a gyártási szintű előnyök 80%-át biztosítja a termelési szintű előnyök mindössze 20%-os ráfordítással.
A verem áttekintése
Ebben a sorozatban egy praktikus eszköztárat fogunk megvizsgálni egy gyártásra kész Linux rendszer létrehozásához, anélkül, hogy a Yocto:
- rpi-image-gen- automatizált Raspberry Pi OS képgenerálás
- A/B rootfs - kettős partíció a biztonságos rendszerfrissítéshez
- rpi-sb-provisioner - automatizált eszközbeépítés
- SWUpdate - OTA firmware-kezelés
Ezen eszközök kombinálásával megtervezhet egy reprodukálható, karbantartható és frissíthető beágyazott Linux rendszer - miközben közel marad a hivatalos Raspberry Pi ökoszisztémához.
Cikkek ebben a sorozatban
- Building a Production-Ready Linux for Raspberry Pi Compute Module 5
- A raktár operációs rendszertől a gyártási platformig
- Customizing Raspberry Pi OS with rpi-image-gen
- Rendszer robusztussága - A/B gyökér fájlrendszer elrendezésének tervezése
- Provisioning — Automating First Boot with rpi-sb-provisioner
- OTA and Lifecycle — Software Updates with SWUpdate
Források
- 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