Tranzakciós frissítések az openSUSE Leap 15-ben

 ( trey | 2018. május 15., kedd - 12:07 )

A tranzakciós frissítések a május 25-én kiadni tervezett openSUSE Leap 15 egyik új, izgalmas funkciója. Segítségével a rendszert és annak csomagjai egészen atomi szintű tranzakciókban lehet frissíteni:

Updates are either applied to the system all together in a single transaction, or not at all. This happens without influencing the running system. If an update fails, or if the successful update is deemed to be incompatible or otherwise incorrect, it can be discarded to immediately return the system to its previous functioning state. [...] Under the hood, Transactional Updates are made simple. Utilising the same btrfs, snapper, and zypper technologies that are trusted defaults in openSUSE Leap, Transactional Updates do something very similar to the traditional snapshots and rollbacks in Leap. However, Transactional Updates it never touches the running system. Instead of patching the current system, the transactional-update tool creates a new snapshot.

Hozzászólás megjelenítési lehetőségek

A választott hozzászólás megjelenítési mód a „Beállítás” gombbal rögzíthető.

Ilyesmi Ubuntura is jól jönne.

-----
„Egy jó kapcsolatban a társunkat az ő dolgában kell támogatni, nem a miénkben.”
rand() a lelke mindennek! :)
Szerinted…

Valami ilyesmi? Én már használom jó ideje:

apt-btrfs-snapshot

OFF: Ez a számozás...

---
Science for fun...

Szuper!

Napokban pont a BTRFS snapshotok mentettek meg Archon, valami elszabott (kernel?) update miatt nem volt hajlandó bebutulni a rendszer. Semmi gond, live OS pendrive bedug, aktuális snapshot kuka, utolsó régi átnevez, boot mappa alatti cuccok rsync az UEFI-s partícióra, reboot, megy minden, örülés. Volt az egész procedúra kb. negyed óra, de az is csak azért, mert bénáztam, lehetett volna <5 perc is. Snapshot nélkül a kisbaltát belevágtam volna a gépházba dühömben valószínűleg. :D

Űrtechnológia dolgokat lehetne összerakni BTRFS-en, kár, hogy büdös mindenkinek rendesen összekalapálni ezt a fájlrendszert valóban production readyre. Sokan inkább szerencsétlenkednek a ZoL-al, mint hogy ezt a fájlrendszert akár csak bottal is piszkálják.

> If an update fails
De miert failelne el egy update? Mi ez az uj divat?
____________________
echo crash > /dev/kmem

A failelős update ellen jó ideje ott van a Süsüben a btrfs-alapú snapper snapshot zypper up előtt, ha elmászik egy frissítés, a Grub-ból simán kiválasztasz egy korábbi snapshotot és öröm és bódogság. Ami most új, hogy a frissítés teljesen atomi, mert a frissítő csomagok egy snapshotra kerülnek telepítésre így végig konzisztens a rendszer (tfh. frissül az apache2 és az apache2-php csomag, kiadod a zypper up-ot. Lesz olyan pillanat még sikeres frissítéskor is, hogy az apache2-php már az újabb, az apache2 még a régebbi, ha itt indítanál egy újraindítást az apache-ra, vagy sikerülne, vagy nem).

Nem új divat, a nyíltSÜSÜ azért nem egy RHEL és bár rengeteg erőforrást ölnek a tesztelésbe, maradhatnak bugok. És ez volt a Leap. Aztán ott van a Thumbleweed, ami gyakorlatilag rolling release, ahol már időnként eltörhetnek dolgok. Nagyon bátrak meg tolhatják testing-el, ahova nagyjából ami átmegy az automatizált ellenőrzéseken, kikerül :)

BlackY
--
"en is amikor bejovok dolgozni, nem egy pc-t [..] kapcsolok be, hanem a mainframe-et..." (sj)

> ha elmászik egy frissítés
Miert maszna el?

> az apache2-php már az újabb, az apache2 még a régebbi, ha itt indítanál egy újraindítást az apache-ra, vagy sikerülne, vagy nem).
Miert inditanek ujra barmit amig nem tudom hogy biztosan es jol ujra nem indul?

> ami gyakorlatilag rolling release, ahol már időnként eltörhetnek dolgok.
Miert is jo akkor a rolling release?

Nekem ez ilyen instant-get vilag generalta instant-get "megoldasnak" tunik. De fixme :)
____________________
echo crash > /dev/kmem

Idézet:
Miert maszna el?

Mert mondjuk van abban a kernelben, amit tegnap kiadott Linus egy regresszió. Vagy kihagynak a spec fájlból egy újonnan megjelent függőséget, amit így nem tesz fel a zypper. Vagy egy DKMS-sel fordított modul nem fordul le. Vagy...

Szerk.: És mert emberek vagyunk :) https://github.com/MrMEEE/bumblebee-Old-and-abbandoned/issues/123

Idézet:
Miert inditanek ujra barmit amig nem tudom hogy biztosan es jol ujra nem indul?

Ok, akkor most legyen ugyanez egy helper scripttel, ami két független komponens közötti glue és az egyik komponens hívogatja - A komponens frissült, az A-B-integration csomag frissült, B még nem, A meghívja az integrációs scriptet, ami már azt várja, hogy B is a frissebb.

Idézet:
Miert is jo akkor a rolling release?

Valakinek csak tesztelnie kell kiadás előtt a csomagokat :) Másrészt nem csak rolling release-nél lehetnek bugok és regressziók, de ott a legvalószínűbb.

Idézet:
Nekem ez ilyen instant-get vilag generalta instant-get "megoldasnak" tunik.

Akár lehet is, hogy az. De pl. egy dist-upgrade előtt (már ha a disztród engedi, RHEL-nél pl. major verzió [5->6, 6->7] között újratelepítés van) azért gondolom szoktál back-up csinálni. Ott pl. a hivatalos ajánlás Süsüéktől eddig az volt, hogy lődd le az X-et, menj át konzolba, zypper dup, aztán restart. Lefut úgy is, hogy közben fut a rendszer és használod, én is megcsináltam (elkezdtem ajánlás szerint, aztán hirtelen mégis kellett a GUI-n dolgoznom), csak apróságokkal találkoztam (az ikonok fele már az új témákból jött, a másik fele még a régi - mivel épp "színváltós" release volt, a szürke alapon szürke ikonok nem voltak túl szerencsések; egy-egy program elcrashelt, mert inkonzisztens állapotban volt a gép stb.)... mennyivel tisztább az, hogy a futó rendszert ez végig békén hagyja, a végén közli, hogy "kész vagyok, ha nagyon unatkozol restartolj", aztán jön be az új rendszer? Ha meg nem, nem kell backup-ból visszaállítanom dolgokat, hanem simán a grub-ban nyomok egy lefelé gombot, beadom a bugreportot, amikor van fix, újra dist-upgrade :) A snapper meg előbb-utóbb kitakarítja a régi rendszert egy gyors és atomi művelettel.

Persze kell hozzá néhány dolog (btrfs vagy lvm-en levő root, jól szeparált [subvolume/külön partíció] /home és /var, hogy a snapshot azokat ne érintse stb.), de ezekre a SUSE az utóbbi 4-5 évben eléggé ráfeküdt...

BlackY
--
"en is amikor bejovok dolgozni, nem egy pc-t [..] kapcsolok be, hanem a mainframe-et..." (sj)