Az Amazon bejelentette a Firecracker 1.0 kiadását, ami virtuális gép monitor (VMM, Virtual Machine Monitor), amelyet virtuális gépek minimális többletköltség melletti futtatására terveztek. A petárda az a CrosVM projekt villája a Google Linux- és Android-alkalmazások futtatására használja ChromeOS rendszeren.
Az Amazon Web Services a Firecracker fejlesztésén dolgozik, hogy javítsa az AWS Lambda és AWS Fargate platformok teljesítményét és hatékonyságát.
A Firecrackerről
Azok számára, akik nem ismerik a Firecrackert, tudniuk kell, hogy ez könnyű virtuális gépeket kínál, úgynevezett microVM-eket. A microVM teljes leválasztása a KVM hipervizoron alapuló hardveres virtualizációs technológiákat használ, miközben megőrzi a hagyományos konténerek teljesítményét és rugalmasságát.
A rendszer x86_64 és ARM64 architektúrákhoz érhető el Intel Skylake, Intel Cascade Lake, AMD Zen2 és ARM64 Neoverse N1 CPU-családokon tesztelték, valamint eszközök állnak rendelkezésre a Firecracker integrálásához a konténer-szigetelő rendszerek, például a Kata Containers, a Weaveworks Ignite és a konténeres (a petárda által biztosított) futási idejébe. konténeres futásidő).
A virtuális gépeken belül futó szoftverkörnyezetet csonkolták, és csak minimális összetevőket tartalmaz. A memória megtakarítása, az indítási idő csökkentése és a környezet biztonságának javítása érdekében egy egyszerűsített Linux kernel jelenik meg (amelyben a 4.14-es és 5.10-es kernel támogatott), amelyből minden felesleges ki van zárva, beleértve a csökkentett funkcionalitást és a törölt eszközök támogatását.
Ha csonka kernellel fut, a többletmemória-fogyasztás egy tárolóhoz képest kevesebb, mint 5 MB. A microVM elejétől az alkalmazás végrehajtásának kezdetéig tartó várakozási idő 6 és 60 ms közé van állítva (átlagosan 12 ms), ami lehetővé teszi új virtuális gépek létrehozását akár 180 környezetben másodpercenként egy 36 magos gazdagépen.
Virtuális környezetek kezelésére felhasználói terület, futtatja a Virtual Machine Manager háttérfolyamatot, amely RESTful API-t biztosít amely olyan funkciókat valósít meg, mint a microVM konfigurálása, indítása és leállítása, CPU-sablonok kiválasztása (C3 vagy T2), virtuális processzorok (vCPU-k) számának és memória méretének meghatározása, hálózati interfészek és lemezpartíciók hozzáadása, sávszélesség és intenzitás korlátozása. műveletek, további memória és CPU teljesítmény biztosítása erőforráshiány esetén.
A Firecracker-t a következők használják/integrálják: appfleet, firecracker-containerd, Fly.io, Kata Containers, Koyeb, Northflank, OpenNebula, Qovery, UniK és Weave FireKube.
Amellett, hogy a konténerek mélyebb szigetelőrétegeként használják, A Firecracker FaaS rendszerek biztosítására is alkalmas (Function as a Service), amelyek egy szerver nélküli számítási modellt kínálnak, amelyben a fejlesztés egy sor kis egyedi függvény halmazának előkészítési szintjén történik, amelyek mindegyike egy adott esemény feldolgozását biztosítja, és önálló működésre van kialakítva anélkül. hivatkozás a környezetre (állapotmentes, az eredmény nem függ az előző állapottól és a fájlrendszer tartalmától).
A funkciók csak szükség esetén futnak, és az esemény feldolgozása után azonnal befejezik munkájukat. Maga a FaaS platform üzemelteti a kiépített funkciókat, irányítja a felügyeletet, és biztosítja a kiépített funkciók futtatásához szükséges környezetek méretezhetőségét.
Hogyan fordítsunk petárdát Linuxon?
L-hezakiket érdekel, hogy kipróbálhassák a petárdát rendszerükön saját maguk is le tudják fordítani.
Ehhez csak nyisson egy terminált és Az első dolog, amit meg kell tenniük, hogy megszerezzék a forráskódot, hogy le tudják fordítani ezt begépelve teheti meg:
git clone https://github.com/firecracker-microvm/firecracker
Ha ez megtörtént, beléphetünk a petárda mappába a következővel:
cd petárda
És folytatjuk a fordítást:
tools/devtool build toolchain="$(uname -m)-unknown-linux-musl"
Végül ha érdekel, hogy többet tudjon meg róla A Firecrackerről a részleteket a címen tekintheti meg a következő link.