<?xml version="1.0" encoding="utf-8" standalone="yes"?><rss version="2.0" xmlns:atom="http://www.w3.org/2005/Atom"><channel><title>Blog on 5ok — sysadmin, devops, hosting</title><link>https://www.5ok.sk/blog/</link><description>Recent content in Blog on 5ok — sysadmin, devops, hosting</description><generator>Hugo</generator><language>sk</language><lastBuildDate>Thu, 18 Jun 2026 00:00:00 +0000</lastBuildDate><atom:link href="https://www.5ok.sk/blog/index.xml" rel="self" type="application/rss+xml"/><item><title>Ako sme prešli na k3s a prečo to dáva zmysel</title><link>https://www.5ok.sk/blog/ako-sme-pre%C5%A1li-na-k3s-a-pre%C4%8Do-to-d%C3%A1va-zmysel/</link><pubDate>Thu, 18 Jun 2026 00:00:00 +0000</pubDate><guid>https://www.5ok.sk/blog/ako-sme-pre%C5%A1li-na-k3s-a-pre%C4%8Do-to-d%C3%A1va-zmysel/</guid><description>&lt;p&gt;Pred troma rokmi sme si nasadili plný Kubernetes na sadu vlastných serverov. Bola to dobrá voľba — vtedy. Mali sme tím, ktorý vedel, čo robí, a aplikácie, ktoré z toho ťažili.&lt;/p&gt;
&lt;p&gt;Postupom času sa však ukázalo, že väčšinu toho, čo Kubernetes ponúka, sme vôbec nevyužívali. A údržba samotného control-plane začala zaberať viac času než prevádzka aplikácií, ktoré na ňom bežali.&lt;/p&gt;
&lt;h2 id="prečo-k3s"&gt;Prečo k3s&lt;/h2&gt;
&lt;p&gt;k3s je distribúcia Kubernetes od Rancher Labs, ktorá vmestí celý cluster do jediného binárneho súboru. Žiadne samostatné etcd, žiadny oddelený kube-proxy, žiadna hodinová inštalácia.&lt;/p&gt;</description></item><item><title>Migrácia z bare-metal na Proxmox bez výpadku</title><link>https://www.5ok.sk/blog/migr%C3%A1cia-z-bare-metal-na-proxmox-bez-v%C3%BDpadku/</link><pubDate>Mon, 11 May 2026 00:00:00 +0000</pubDate><guid>https://www.5ok.sk/blog/migr%C3%A1cia-z-bare-metal-na-proxmox-bez-v%C3%BDpadku/</guid><description>&lt;p&gt;Klient mal štyri fyzické servery, každý s jednou aplikáciou. Klasika z rokov 2015–2018: jeden server = jedna služba, žiadna virtualizácia, žiadne zálohy okrem &lt;code&gt;rsync&lt;/code&gt; na NAS.&lt;/p&gt;
&lt;p&gt;Zadanie: dostať to na Proxmox, získať snapshoty a živú migráciu, a &lt;strong&gt;nemať výpadok dlhší než pár minút&lt;/strong&gt; na službu.&lt;/p&gt;
&lt;h2 id="plán"&gt;Plán&lt;/h2&gt;
&lt;p&gt;Postup, ktorý používame skoro vždy:&lt;/p&gt;
&lt;ol&gt;
&lt;li&gt;Postaviť nový Proxmox cluster vedľa (tri nody, Ceph pool).&lt;/li&gt;
&lt;li&gt;Pre každú službu vytvoriť VM a nasadiť ju z konfiguračného manažmentu — &lt;strong&gt;nie&lt;/strong&gt; klonovaním starého disku.&lt;/li&gt;
&lt;li&gt;Nechať obe inštancie bežať paralelne, dáta synchronizovať jednosmerne.&lt;/li&gt;
&lt;li&gt;Prepnúť DNS / load balancer, sledovať, starú inštanciu nechať týždeň v pohotovosti.&lt;/li&gt;
&lt;/ol&gt;
&lt;p&gt;Bod 2 je dôležitý. Klonovanie fyzického disku do VM (P2V) je rýchle, ale prenesie so sebou aj desať rokov nánosov — staré balíky, ručné zmeny v &lt;code&gt;/etc&lt;/code&gt;, ktoré nikto nezdokumentoval. Ak máte Ansible, radšej postavte nanovo.&lt;/p&gt;</description></item><item><title>Teltonika RUTM52 — prvé dojmy z 5G AX</title><link>https://www.5ok.sk/blog/teltonika-rutm52-prv%C3%A9-dojmy-z-5g-ax/</link><pubDate>Fri, 03 Apr 2026 00:00:00 +0000</pubDate><guid>https://www.5ok.sk/blog/teltonika-rutm52-prv%C3%A9-dojmy-z-5g-ax/</guid><description>&lt;p&gt;RUTM52 je Teltonika odpoveď na otázku „čo ak chceme 5G aj Wi-Fi 6 v jednej DIN-rail krabici&amp;quot;. Dostali sme prvý kus na testovanie, tu sú poznámky po dvoch týždňoch.&lt;/p&gt;
&lt;h2 id="čo-sedí"&gt;Čo sedí&lt;/h2&gt;
&lt;ul&gt;
&lt;li&gt;&lt;strong&gt;Prepínanie SIM je rýchle.&lt;/strong&gt; Failover medzi operátormi nám v teste trval konzistentne pod 8 sekúnd, čo je citeľne lepšie než RUTX50 (12–20 s).&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;Wi-Fi 6 naozaj pomáha&lt;/strong&gt; v hustom prostredí. V dielni s dvadsiatimi klientmi bol rozdiel v latencii oproti Wi-Fi 5 markantný.&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;RutOS 7.x&lt;/strong&gt; je stabilné. Web UI je pomalšie než by človek chcel, ale API a CLI fungujú spoľahlivo.&lt;/li&gt;
&lt;/ul&gt;
&lt;h2 id="čo-nesedí"&gt;Čo nesedí&lt;/h2&gt;
&lt;ul&gt;
&lt;li&gt;&lt;strong&gt;Teplota.&lt;/strong&gt; Pri plnom 5G zaťažení sa krabica poriadne zohreje. V uzavretom rozvádzači bez ventilácie by sme to nenasadili bez merania.&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;Cena.&lt;/strong&gt; Oproti RUT956 je to zhruba trojnásobok. Ak nepotrebujete 5G, nemá zmysel.&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;Dokumentácia k Modbus mapovaniu&lt;/strong&gt; je stále rozhádzaná medzi wiki a PDF.&lt;/li&gt;
&lt;/ul&gt;
&lt;h2 id="pre-koho-to-je"&gt;Pre koho to je&lt;/h2&gt;
&lt;p&gt;Nasadenia, kde potrebujete jedno zariadenie miesto dvoch — 5G uplink &lt;strong&gt;a&lt;/strong&gt; poriadne Wi-Fi pre viacero klientov. Typicky mobilné pracoviská, stavby, dočasné kancelárie, event infraštruktúra.&lt;/p&gt;</description></item><item><title>systemd timers namiesto cronu</title><link>https://www.5ok.sk/blog/systemd-timers-namiesto-cronu/</link><pubDate>Sat, 21 Mar 2026 00:00:00 +0000</pubDate><guid>https://www.5ok.sk/blog/systemd-timers-namiesto-cronu/</guid><description>&lt;p&gt;Cron má jednu obrovskú výhodu: každý ho pozná. A jednu nevýhodu: keď zlyhá, dozviete sa to e-mailom na &lt;code&gt;root@localhost&lt;/code&gt;, ktorý nikto nečíta.&lt;/p&gt;
&lt;p&gt;systemd timers riešia presne toto.&lt;/p&gt;
&lt;h2 id="základ"&gt;Základ&lt;/h2&gt;
&lt;p&gt;Timer sa skladá z dvoch súborov — &lt;code&gt;.service&lt;/code&gt; (čo sa má spustiť) a &lt;code&gt;.timer&lt;/code&gt; (kedy).&lt;/p&gt;
&lt;div class="highlight"&gt;&lt;pre tabindex="0" class="chroma"&gt;&lt;code class="language-ini" data-lang="ini"&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt;&lt;span class="c1"&gt;# /etc/systemd/system/backup.service&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt;&lt;span class="k"&gt;[Unit]&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt;&lt;span class="na"&gt;Description&lt;/span&gt;&lt;span class="o"&gt;=&lt;/span&gt;&lt;span class="s"&gt;Nočná záloha&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt;&lt;span class="na"&gt;After&lt;/span&gt;&lt;span class="o"&gt;=&lt;/span&gt;&lt;span class="s"&gt;network-online.target&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt;&lt;span class="k"&gt;[Service]&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt;&lt;span class="na"&gt;Type&lt;/span&gt;&lt;span class="o"&gt;=&lt;/span&gt;&lt;span class="s"&gt;oneshot&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt;&lt;span class="na"&gt;ExecStart&lt;/span&gt;&lt;span class="o"&gt;=&lt;/span&gt;&lt;span class="s"&gt;/usr/local/bin/backup.sh&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;div class="highlight"&gt;&lt;pre tabindex="0" class="chroma"&gt;&lt;code class="language-ini" data-lang="ini"&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt;&lt;span class="c1"&gt;# /etc/systemd/system/backup.timer&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt;&lt;span class="k"&gt;[Unit]&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt;&lt;span class="na"&gt;Description&lt;/span&gt;&lt;span class="o"&gt;=&lt;/span&gt;&lt;span class="s"&gt;Spusti zálohu každú noc&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt;&lt;span class="k"&gt;[Timer]&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt;&lt;span class="na"&gt;OnCalendar&lt;/span&gt;&lt;span class="o"&gt;=&lt;/span&gt;&lt;span class="s"&gt;*-*-* 02:30:00&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt;&lt;span class="na"&gt;RandomizedDelaySec&lt;/span&gt;&lt;span class="o"&gt;=&lt;/span&gt;&lt;span class="s"&gt;15m&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt;&lt;span class="na"&gt;Persistent&lt;/span&gt;&lt;span class="o"&gt;=&lt;/span&gt;&lt;span class="s"&gt;true&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt;&lt;span class="k"&gt;[Install]&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt;&lt;span class="na"&gt;WantedBy&lt;/span&gt;&lt;span class="o"&gt;=&lt;/span&gt;&lt;span class="s"&gt;timers.target&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;div class="highlight"&gt;&lt;pre tabindex="0" class="chroma"&gt;&lt;code class="language-bash" data-lang="bash"&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt;systemctl &lt;span class="nb"&gt;enable&lt;/span&gt; --now backup.timer
&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt;systemctl list-timers
&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;h2 id="čo-cron-nevie"&gt;Čo cron nevie&lt;/h2&gt;
&lt;p&gt;&lt;strong&gt;&lt;code&gt;Persistent=true&lt;/code&gt;&lt;/strong&gt; — ak bol stroj v čase spustenia vypnutý, úloha sa spustí hneď po štarte. Cron ju jednoducho preskočí.&lt;/p&gt;</description></item><item><title>Observabilita s Grafana stackom — čo naozaj potrebujete</title><link>https://www.5ok.sk/blog/observabilita-s-grafana-stackom-%C4%8Do-naozaj-potrebujete/</link><pubDate>Sun, 15 Feb 2026 00:00:00 +0000</pubDate><guid>https://www.5ok.sk/blog/observabilita-s-grafana-stackom-%C4%8Do-naozaj-potrebujete/</guid><description>&lt;p&gt;Grafana Labs má dnes komponent na všetko. Prometheus na metriky, Loki na logy, Tempo na traces, Mimir na dlhodobé uloženie, Pyroscope na profiling, Alloy ako zberač. Je ľahké skončiť s piatimi novými službami, ktoré treba spravovať.&lt;/p&gt;
&lt;p&gt;Náš odporúčaný postup je nasadzovať to &lt;strong&gt;v poradí podľa hodnoty&lt;/strong&gt;, nie naraz.&lt;/p&gt;
&lt;h2 id="1-metriky-prometheus--grafana"&gt;1. Metriky (Prometheus + Grafana)&lt;/h2&gt;
&lt;p&gt;Ak nemáte nič, začnite tu. Prometheus + node_exporter + Grafana vám za pol dňa dá odpoveď na 80 % otázok typu „prečo je to pomalé&amp;quot;.&lt;/p&gt;</description></item><item><title>Sme akreditovaným registrátorom SK-NIC</title><link>https://www.5ok.sk/blog/sme-akreditovan%C3%BDm-registr%C3%A1torom-sk-nic/</link><pubDate>Thu, 08 Jan 2026 00:00:00 +0000</pubDate><guid>https://www.5ok.sk/blog/sme-akreditovan%C3%BDm-registr%C3%A1torom-sk-nic/</guid><description>&lt;p&gt;Od začiatku roka sme akreditovaným registrátorom SK-NIC. Prakticky to znamená, že .sk domény pre našich klientov vieme registrovať, prevádzať a spravovať priamo — bez tretej strany v reťazci.&lt;/p&gt;
&lt;h2 id="čo-sa-mení-pre-existujúcich-klientov"&gt;Čo sa mení pre existujúcich klientov&lt;/h2&gt;
&lt;p&gt;Nič, pokiaľ nechcete. Domény, ktoré máte inde, tam môžu zostať. Ak ich ale chcete presunúť k nám, prevod je zadarmo a vybavíme ho do 48 hodín.&lt;/p&gt;
&lt;h2 id="prečo-sme-do-toho-išli"&gt;Prečo sme do toho išli&lt;/h2&gt;
&lt;p&gt;Väčšina našich hostingových klientov mala domény roztrúsené u troch-štyroch registrátorov, často s prístupmi u bývalých zamestnancov. Keď je potrebné rýchlo zmeniť DNS záznam počas incidentu, hľadanie hesla k účtu z roku 2016 nie je ideálny začiatok.&lt;/p&gt;</description></item></channel></rss>