<?xml version="1.0" encoding="UTF-8"?>
<rss version="2.0" xmlns:media="http://search.yahoo.com/mrss/">
<channel>
<image>
<link>https://blog.root.cz/programatorska-epopej/</link>
<title>Poslední přidané názory v blogu Programátorská epopej</title>
<url>https://i.iinfo.cz/r/rss-88x31.gif</url>
<width>88</width>
<height>31</height>
</image>
<title>Root.cz - Poslední přidané názory v blogu Programátorská epopej</title>
<link>https://blog.root.cz/programatorska-epopej/</link>
<description>Poslední přidané názory v blogu Programátorská epopej</description>
<language>cs</language>
<pubDate>Tue, 02 Apr 2024 09:33:50 GMT</pubDate>
<item>
<title>Sněhová vločka na mojem serveru</title>
<link>https://blog.root.cz/programatorska-epopej/snehova-vlocka-na-mojem-serveru/#o1145054?utm_source=rss&amp;utm_medium=text&amp;utm_campaign=rss</link>
<description>Celkom by ma zaujímalo ako sa vám podarilo spojazdniť Intune na pracovnom laptope. Neviem sa dopátrať funkčného riešenia.</description>

<author>eM Zet</author>
<pubDate>Tue, 02 Apr 2024 09:33:50 GMT</pubDate>

<guid isPermaLink="false">blog.root.cz-blogComment-1145054</guid>


</item>
<item>
<title>Sněhová vločka na mojem serveru</title>
<link>https://blog.root.cz/programatorska-epopej/snehova-vlocka-na-mojem-serveru/#o1142468?utm_source=rss&amp;utm_medium=text&amp;utm_campaign=rss</link>
<description>Ano podobne to riesim aj ja. Niektore veci sa daju relativne rozumne riesit aj cez systemd-creds. Ale proste niekedy je to sialene vela prace pre nieco co v Ansible riesi vault.

Asi najblizsie sa k tomu dostava sops-nix, ale tiez plati ze tam jeden musi riesit rovnatka na ohybaky aby to fungovalo.

Pouzivam ako Ansible, tak Terraform a tiez Nix. Vsetko je dobre na nieco ine. Terraform je urcite skvely na infrastrukturu. Nix je fajn na dev shell a aj NixOS samotny je celkom fajn. Ansible je skvele hlavne tam kde nemusis riesit zmeny v case a kde vzdy vsetko zostavujes "od nuly" - napriklad testovacia infrastruktura, pripadne rovno seria testov, tvorba images v kombinacii s Packerom a podobne.

A niekde na hranici tychto vyuziti su tie trecie plochy.

V Nix je to sprava hesiel. A vseobecne problem s tym, ked cast stavu systemu nie je riadena Nix-om. (klasicky priklad pre Nix je Steam, alebo iny externy package manager, Terraform ma tiez s tym problem napriklad pri sprave objektov v k8s)

V Terraform fakt ze musis niekde bezpecne a zdielatelne udrziavat state. A vobec vseobecne sprava state - terraform donedavna nemal moved a removed block, jeden to musel riesit rucne alebo externymi nastrojmi.

Ansible zas neprinasa idempotenciu "out of the box" a casom ti hrozi konfiguracny drift. Tiez casto nie je uplne zjavne co sa stane ked zbehne playbook. Jeden musi mat pomerne slusny test coverage aby sa na Ansible vedel spolahnut.

Kazde ma svoje miesto. Kazde ma svoje problemy.</description>

<author>M P</author>
<pubDate>Fri, 23 Feb 2024 14:13:18 GMT</pubDate>

<guid isPermaLink="false">blog.root.cz-blogComment-1142468</guid>


</item>
<item>
<title>Sněhová vločka na mojem serveru</title>
<link>https://blog.root.cz/programatorska-epopej/snehova-vlocka-na-mojem-serveru/#o1142408?utm_source=rss&amp;utm_medium=text&amp;utm_campaign=rss</link>
<description>NixOS je fajn. GuixOS je podobný avšak lepší https://guix.gnu.org/
Už nejaké dva roky používam Guix ako môj main OS.</description>

<author>abcd efgh</author>
<pubDate>Fri, 23 Feb 2024 00:26:00 GMT</pubDate>

<guid isPermaLink="false">blog.root.cz-blogComment-1142408</guid>


</item>
<item>
<title>Sněhová vločka na mojem serveru</title>
<link>https://blog.root.cz/programatorska-epopej/snehova-vlocka-na-mojem-serveru/#o1142399?utm_source=rss&amp;utm_medium=text&amp;utm_campaign=rss</link>
<description>kdysi jsem také používal, došel jsem ale k přesvědčení, že chci mít dokumentaci systému někde jinde a chci být schopný ho sestavit z nuly rychle, etckeeper mě jen částečně nahrazoval dokumentaci.

Pak jsem nějakou dobu žil s argumentem, že aspoň sleduji, jestli nastavení někdo nezměnil. Dnes na kontrolu integrity již používám auditd a sleduji to systémově s přímým napojením na monitoring, pokud si to provoz žádá.</description>

<author>Tomáš Tomáš</author>
<pubDate>Thu, 22 Feb 2024 20:54:48 GMT</pubDate>

<guid isPermaLink="false">blog.root.cz-blogComment-1142399</guid>


</item>
<item>
<title>Sněhová vločka na mojem serveru</title>
<link>https://blog.root.cz/programatorska-epopej/snehova-vlocka-na-mojem-serveru/#o1142397?utm_source=rss&amp;utm_medium=text&amp;utm_campaign=rss</link>
<description>@tb - souhlasím s tvou myšlenkou, jen dvě drobnosti:

- git v /etc je super nápad, bez etckeeperu bych nenixový server spravovat nechtěl.
- git umí trackovat symlinky, práva jen omezeně (pouze +x), uživatele a skupiny ne</description>

<author>Ondřej Kudlík</author>
<pubDate>Thu, 22 Feb 2024 20:42:26 GMT</pubDate>

<guid isPermaLink="false">blog.root.cz-blogComment-1142397</guid>


</item>
<item>
<title>Sněhová vločka na mojem serveru</title>
<link>https://blog.root.cz/programatorska-epopej/snehova-vlocka-na-mojem-serveru/#o1142396?utm_source=rss&amp;utm_medium=text&amp;utm_campaign=rss</link>
<description>Velmi děkujeme za tvůj hodnotný příspěvek do diskuze, seš opravdu borec.</description>

<author>Ondřej Kudlík</author>
<pubDate>Thu, 22 Feb 2024 20:37:36 GMT</pubDate>

<guid isPermaLink="false">blog.root.cz-blogComment-1142396</guid>


</item>
<item>
<title>Sněhová vločka na mojem serveru</title>
<link>https://blog.root.cz/programatorska-epopej/snehova-vlocka-na-mojem-serveru/#o1142385?utm_source=rss&amp;utm_medium=text&amp;utm_campaign=rss</link>
<description>Jasně. Bezpečnost a škálovatelnost, rozdělení výkonu, vím.

Mám zkušenost, už staršího data, že když neoddělíš hned na začátku zvlášť http server a db server, tak si docela zavaříš.

No, ale s nixos to jako problém nevidím. Asi záleží na situaci a úhlu pohledu, ale kdybych měl třeba měnit nastavení přístupu k databázi u desítek webů v jejich konfiguracích, často v těch php scriptech a jako alternativa k tomu dobře napsaný nixos konfigurace a změnit to na jednom místě a přebuildit - tak třeba tohle je rozdíl mezi otročinou na dlouho a úpravou na pár minut.

To jsou prostě takové ty situace, kdy člověk potřebuje něco vyzkoušet a teď stojí před komplexností svý infrastruktury a říká si, abych tohle vyzkoušel a nerozbil tamto. A když to vyzkouším na nějakém testovacím serveru a pak to dám na ostrý, tak s překvapením zjistím, že jsem zapomněl zase na tamto a ono to kvůli tomu nefunguje.

Ale jasně, vždy je spousta možných cest a třeba pomocí ansiblu lez v podstatě dosáhnu téhož cíle.

Pořád řešíme rovnici o x neznámých a výsledkem vždy bude množina možných řešení. Nixos je jen jedním z možných řešení. Nebo vzhledem k tomu, že i s nixos se dá dělat různě, tak je to nejspíš zase množina dalších řešení jak tu infrastrukturu vybudovat.

Sám jsem zvědavý, co v podaní nixos znamená to slovo "reprodukovatelný", kterým s etak zašťituje. Zatím myslím, že to znamená opravdu hodně a že to funguje.</description>

<author>Živoslav Petr Bolf</author>
<pubDate>Thu, 22 Feb 2024 15:29:50 GMT</pubDate>

<guid isPermaLink="false">blog.root.cz-blogComment-1142385</guid>


</item>
<item>
<title>Sněhová vločka na mojem serveru</title>
<link>https://blog.root.cz/programatorska-epopej/snehova-vlocka-na-mojem-serveru/#o1142383?utm_source=rss&amp;utm_medium=text&amp;utm_campaign=rss</link>
<description>ty secrets v nixu jsou nešikovné, ale je to možná tím, že od toho čekáš víc. Používám hashicorp vault, pro službu, která potřebuje credentials generuje before další službu s vaultem, který secrets připraví buď přes šablonu nebo jako environments a až pak se spustí daná službu. Stejně mám řešené aktualizace, přes reload/restart. Něco na způsob https://github.com/DeterminateSystems/nixos-vault-service, ale napsal jsem si to trochu jinak.

Pro offline instalace mám vault server jako službu přímo na daném stroji, teraform jí nastaví při spuštění stejně jako mám nastavený produkční cluster a přes agenix (či něco podobného) tam vložím šifrovaný dump s hesly pro import do vaultu.

Pokud je potřeba služby konfigurovat externě, používám v definici něco jako condition file exists a služba se nespustí dokud někdo externí tam nevloží data. Pak je možné (třeba v rámci CI) jedním příkazem zavolat deploy přes nix a druhým spustit ansible, který to nakonfiguruje a služby spustí. Nebo dokonce deployment přes nix může být součástí ansible playbooku, waitovat na to, až bude ssh ready a pak tam klasicky naspouštět zbylé úlohy. Beru nixos jako generátor stavu OS, ale runtime věci, monitoring a provoz si stejně musím řešit sám.

Ansible používám skoro od počátku, ale musím říct, že mě už pěkně štve. Postupně jsem hodně věcí zmigroval do teraformu, lépe se mi tam řeší clusterové závislosti a konfigurace služeb na více serverech zároveň.</description>

<author>Tomáš Tomáš</author>
<pubDate>Thu, 22 Feb 2024 14:49:07 GMT</pubDate>

<guid isPermaLink="false">blog.root.cz-blogComment-1142383</guid>


</item>
<item>
<title>Sněhová vločka na mojem serveru</title>
<link>https://blog.root.cz/programatorska-epopej/snehova-vlocka-na-mojem-serveru/#o1142372?utm_source=rss&amp;utm_medium=text&amp;utm_campaign=rss</link>
<description>Agenix poznam, je to celkom dobre riesenie, ale proste nix principialne riesi niektore veci inak a dosledok toho je ze je praca s credentials obcas vyrazne zlozitejsia alebo vyzaduje nie celkom idealne riesenie.

Napriklad Tailscale. V Ansible je pomerne jednoduche pocas aplikovania konfiguracie vygenerovat docasny auth key - kludne s platnostou par minut a pri konfiguracii servera ho automaticky registrovat v tailnet. Vysledok je server ktory je automaticky pripojeny do VPN bez toho aby server samotny musel mat niekde ulozeny auth key alebo dokonca bez toho aby vobec nejaky platny auth key po ukonceni ansible existoval.

Naproti tomu nixos toto riesi tak, ze ma extra systemd service ktory vykona tailscale up a ten kluc je potom vo vysledku potrebny priamo na stroji. Tiez je velmi neprakticke aby to bol nejaky short-lived token, pretoze agenix tak proste nefunguje. Cize vo vysledku je na serveri dlhodobo platny token.

Agenix je dobry na situacie kedy je cielom aby samotne hesla boli priamo niekde na serveri a aj tam si dovolim tvrdit, ze je to extremne kostrbate riesenie v porovnani s Ansible - napriklad ak jeden potrebuje vlozit heslo do konfiguracneho suboru. To co sa v ansible riesi pomerne priamociarym (a velmi flexibilnym) template systemom musi jeden s Agenix riesit rucne.

A takychto prikladov je vela.

Okrem Agenix je vela dalsich rieseni a v podstate vsetky obchadzaju nix nejakym sposobom - casto sposobom kedy je velmi lahke omylom mat secrets roztrusene niekde v nix store alebo commitnute plaintext v gite.

Na druhej strane su veci ktore su v Ansible extremne zlozite, zatial co v Nix je to trivialna zalezitost. Cize netvrdim, ze je jedno lepsie ako druhe, obe pouzivam (aj v kombinacii) ale konkretne sprava hesiel a inych tajnych udajov mi pride v nixe vyrazne zlozitejsia.</description>

<author>M P</author>
<pubDate>Thu, 22 Feb 2024 09:58:58 GMT</pubDate>

<guid isPermaLink="false">blog.root.cz-blogComment-1142372</guid>


</item>
<item>
<title>Sněhová vločka na mojem serveru</title>
<link>https://blog.root.cz/programatorska-epopej/snehova-vlocka-na-mojem-serveru/#o1142344?utm_source=rss&amp;utm_medium=text&amp;utm_campaign=rss</link>
<description>https://nixos.wiki/wiki/Agenix je fajn a celkem pohodlný :)</description>

<author>Kateřina Churanová</author>
<pubDate>Wed, 21 Feb 2024 18:41:34 GMT</pubDate>

<guid isPermaLink="false">blog.root.cz-blogComment-1142344</guid>


</item>
</channel>
</rss>