Преди няколко дни, Ленарт Потеринг (създател и разработчик на systemd) представям ново предложение за системния администратор на systemd, с намерението да се подобри гъвкавостта и възможността за зареждане в Linux.
По отношение на предложението се споменава, че то се стреми да позволи система може да стартира директно от изображение от основната файлова система изтеглени от външен хост чрез HTTP. Целта е да се предостави тази функционалност, за да се разширят текущите възможности на systemd, улеснявайки сценарии като тестване на неизменни системи и бързо внедряване в мрежови среди.
Какво е дистанционно зареждане в systemd?
Предложената промяна Базира се на разширяване на systemd така че в началната фаза на стартиране, той може да:
- Изтеглете изображение на диска чрез HTTP.
- Разархивирайте полученото изображение.
- Свържете го с блоково устройство в режим на обратна връзка.
- Монтирайте блоковото устройство към /sysroot.
- Продължете да зареждате системата от това изображение.
Текущо състояние на развитие
В момента systemd в своята версия 257 вече включва поддръжка за изтегляне на дискови изображения по време на зареждане с помощта на модула systemd-import-generator. обаче функционалността все още завършен Той е в етап на функционален прототип, и все още не може да завърши пълния цикъл на зареждане.
Сред бъдещите планове, Обмисля се разширяване на съвместимостта така че тази функционалност да може да работи заедно с универсални изображения на ядрото Unified Kernel Image (UKI). Тези изображения се комбинират в един файл:
- UEFI зареждащ файл.
- Изображение на ядрото на Linux.
- Системна среда initrd, предварително заредена в паметта.
Внедряване и работен процес
Предложението предлага URL адресът на системното изображение да бъде автоматично генериран от URL адреса, посочен в конфигурацията за зареждане на UEFI HTTP, като по този начин кара UKI initrd драйвера автоматично да търси системния образ.
В допълнение към HTTP протокола, Планирана е поддръжка на NVMe-over-TCP, технология, която позволява отдалечен достъп до NVMe устройства през мрежи, използвайки протокола NVM Express през Fabrics през TCP. това би улеснило среди, където се изисква висока скорост достъп до данни, без да разчитате изключително на локални дискове.
Това разширява systemd-import-generator, така че не само да изтегли образ на диска при зареждане, но и да го прикачи към устройство с обратна връзка, така че да можем да стартираме от него.
Вече разполагаме с повечето от частите, това е просто излъскване на някои неща, за да направим този кръг...
Това е проект в процес на работа, тъй като му липсва документация и искам да го излъскам още малко, но работи много добре. Крайната цел е да предоставим цялостно решение, така че да можем да изпълняваме и UEFI http зареждане за uki.
Този нов метод за зареждане може да опрости и подобри няколко сценарияs, като тестване на неизменни операционни системи на реален хардуер. Разработчикът може да генерира изображение на своята система с помощта на mkosi и бързо да го сподели през HTTP с командата «mkosi -f служи». На тестовата машина би било достатъчно да активирате HTTP зареждане в EFI и да предоставите URL адреса на изображението.
След като системата е конфигурирана да стартира от отдалечено изображение, процесът е прост: Просто рестартирайте компютъра си и той ще се зареди автоматично.и стандартното изображение на ядрото на UKI. оттам ядрото ще изтегли изображението от основната файлова система, предварително подготвена от разработчика и ще продължи с нормално зареждане.
Ключов аспект на това предложение е, че HTTP стартирането на EFI остава активно, докато не бъде деактивирано ръчно. Това означава, че При всяко следващо рестартиране системата ще изтегли и стартира най-новата налична версия от дистанционното изображение, което позволява непрекъснато тестване без допълнителна намеса.
Тъй като целият процес се извършва в паметта и не изисква модифициране на локални дискове, тази техника представлява безопасен и ефективен начин за оценка на различни версии на система без риск от засягане на конфигурацията или данните, съхранявани на машината.
И накрая, Ако се интересувате да научите повече за това, можете да проверите подробностите в следваща връзка.