Projekt Cozystack vydal Talm, konfigurátor pro Talos Linux

Vývojáři otevřené PaaS platformy Cozystack připravili projekt Talm, jehož cílem je zjednodušit konfiguraci bare-metal serverů pro Talos Linux, operační systém pro spuštění Kubernetes, který má Kubernetes-podobné API a nastavuje se jedním Yaml manifestem. Ačkoli byl Talm vytvořen k popisu deklarativní instalace Cozystack, není konkrétně vázán na tuto platformu a může být použit k ovládání jakýchkoli konfigurací Talos Linux. Projekt se vyvíjí pod licencí MPL.

Potřeba vyvinout další manažer konfigurací pro Talos Linux vyplývá z orientace na bare-metal servery. Vývojáři se snažili vytvořit co nejjednodušší rozhraní, podobné Helm a kubectl, které jsou administrátorům Kubernetes dobře známy.

Vzhledem k tomu, že každý fyzický server má různou konfiguraci (MAC adresy, rozhraní a disky), je nutné mít samostatný konfigurační soubor pro každý uzel. Potřebujeme jednoduchého manažera, který by generoval tyto konfigurační soubory na základě shromážděných informací a deklarativně je aktualizoval.

K tomu se používá dynamické generování konfiguračních souborů podle zadané šablony. Jsou k dispozici předem připravené předvolby „generic“ a „cozystack“. Talm dokáže během generace shromáždit informace z Talos API a využít je pro výsledné konfigurace. Tyto konfigurační soubory neobsahují tajemství, ale pouze změny, což umožňuje pohodlné uchovávání v Gitu a deklarativní správu.

Většina Talm opakuje strukturu Helm a operuje s pojmem chart, ve kterém jsou popsány šablony pro generování konfigurace. Podporovány jsou funkce podobné Helm lookup pro dotazování Talos API přímo a shromažďování dalších metadat pro generování konfiguračních souborů s využitím „go templates“ a knihovny sprig.

Příkaz: talm template -t templates/controlplane.yaml -e 1.2.3.4 -n 1.2.3.4 > nodes/srv1.yaml

Dotazuje uzel „1.2.3.4“ přes API, generuje pro něj nový konfigurační soubor ze šablony, přičemž vkládá potřebná data. Získaný konfigurační soubor lze okamžitě aplikovat pouze jedním příkazem: talm apply -f nodes/srv1.yaml

Také v každém takovém konfiguračním souboru Talm nastavuje svou modelinu, ve které si pamatuje koncové body uzlu a šablony, z nichž byl získán, aby je bylo možné snadno používat a aktualizovat bez uvádění dalších možností. Talm podporuje všechny stejné příkazy jako upstream utilita talosctl, ale umožňuje předávat jim konfigurační soubor uzlu, například: talm dashboard -f nodes/srv1.yaml -f nodes/srv2.yaml -f nodes/srv3.yaml

vypíše interaktivní dashboard pro všechny tři uzly. A příkaz: talm get routes -f nodes/srv1.yaml

vypíše seznam rout na uzlu „srv1“

V případě potřeby lze konfigurační soubory exportovat s volbou „—full“ na samostatný PXE server, což umožňuje uzlům stáhnout je automaticky. Takto Talm zachovává variabilitu bare-metal servery, zajišťující snadnou správu v souladu s nejlepšími praktikami GitOps.

Zdroj: opennet.ru

Koupit spolehlivý hosting pro webové stránky s ochranou proti DDoS, VPS VDS servery 🔥 Koupit spolehlivý hosting pro webové stránky s ochranou proti DDoS, VPS VDS servery | ProHoster