Pozn. přek.: Originální text napsal Rob Scott — vedoucí SRE inženýr společnosti ReactiveOps, která stojí za vývojem avizovaného projektu. Myšlenka centralizované validace toho, co se nasazuje do Kubernetes, je nám velmi blízká, a proto s velkým zájmem sledujeme podobné iniciativy.

S radostí představujeme — projekt s otevřeným zdrojovým kódem, který pomáhá udržovat „zdraví“ klastru Kubernetes. Vytvořili jsme Polaris k automatizaci některých z nejlepších praktik, které ReactiveOps používá pro zajištění bezpečného a spolehlivého provozu klastrů pro velké množství zákazníků. Nastal čas uvolnit zdrojový kód.
Znovu a znovu jsme byli svědky toho, jak se zdánlivě malé chyby v konfiguraci proměnily ve vážné problémy, které inženýrům bránily klidně spát. Něco zdánlivě jednoduchého — jako například zapomenutá konfigurace požadavků na zdroje (resource requests) — mohlo zničit automatické škálování a dokonce způsobit, že pracovní zátěže zůstaly bez zdrojů. Pokud dříve drobné chyby v konfiguraci vedly k výpadkům v produkci, nyní Polaris tyto problémy dokáže zcela zabránit.
Polaris pomáhá vyhnout se problémům s konfigurací, které ovlivňují stabilitu, spolehlivost, škálovatelnost a bezpečnost vašich aplikací. Umožňuje snadno odhalit nedostatky v konfiguraci nasazení a předcházet budoucím problémům. S Polarisem můžete klidně spát, protože víte, že aplikace jsou nasazeny podle sady dobře prověřených standardů.
Polaris se skládá ze dvou klíčových komponentů:
- monitorovacího panelu, který poskytuje informace o tom, jak je správně nakonfigurováno stávající nasazení v klastru;
- experimentálního kontrolního webhooku, který zabraňuje nasazení, která nevyhovují přijatému standardu.
Polaris Dashboard
Panel v Polaris byl vytvořen pro jednoduchou a přehlednou možnost vidět aktuální stav nasazení v Kubernetes a získat doporučení pro zlepšení. Poskytuje kompletní přehled o klastru a rozděluje výsledky podle kategorií, prostorů názvů a nasazení.

Standardy nastavené v Polariu jsou dostatečně vysoké, takže se nedivte, pokud hodnocení bude nižší, než jste očekávali. Hlavním cílem Polaria je stanovovat vysoké standardy a usilovat o vynikající výchozí konfiguraci. Pokud se navrhovaná konfigurace zdá být příliš přísná, lze ji modifikovat během procesu konfigurace nasazení, optimalizováním pro konkrétní pracovní zátěže.
V rámci vydání Polaria jsme se rozhodli nejen představit samotný nástroj, ale i podrobně popsat testy, které jsou do něj zahrnuty. Každá kontrola obsahuje odkaz na příslušnou dokumentaci, kde je vysvětleno, proč to považujeme za důležité, a uvádíme odkazy na další zdroje na toto téma.
Polaris Webhook
Pokud panel monitorování pomáhá získat přehled o aktuální konfiguraci nasazení, pak webhook zajišťuje dodržování standardů pro všechna nasazení, která budou nasazena do cloudu.
Jakmile budou odstraněny problémy, které odhalil monitorovací panel, můžete využít webhook k zajištění toho, že konfigurace nikdy nespadne pod stanovený standard. Webhook nedovolí nasadit v cloudu nasazení, jejichž konfigurace obsahuje zásadní odchylky (úroveň „error“).
Potenciál tohoto webhooku je povzbudivý, avšak k tomu, aby byl považován za připravený pro provoz, bude ještě třeba důkladné testování. V tuto chvíli je to experimentální funkce a součást zcela nového projektu Open Source. Protože může bránit aktualizaci nasazení, používejte ho s opatrností.
Začínáme
Doufám, že pokud stále čtete tento oznámení, Polaris je nástroj, který se vám může hodit. Chcete si vyzkoušet Dashboard sami? Nasadit panel do cloudu je velmi snadné. Instaluje se s minimálními právy (pouze pro čtení) a všechna data zůstávají uvnitř. Chcete-li nasadit Dashboard pomocí kubectl, proveďte:
kubectl apply -f https://raw.githubusercontent.com/reactiveops/polaris/master/deploy/dashboard.yamlNyní je potřeba nastavit přesměrování portů, abyste mohli přistupovat k Dashboardu přes místní port 8080:
kubectl port-forward --namespace polaris svc/polaris-dashboard 8080:80Samozřejmě existuje mnoho dalších způsobů, jak používat a nasazovat Polaris, včetně pomocí Helmu. O tom a mnohém dalším se můžete dozvědět z .
To je jen začátek
Jsme rádi, že jsme již dokázali integrovat do Polaris, ale tím příběh nekončí. Přichází množství nových testů, které bychom rádi přidali pro rozšíření funkcionality. Také hledáme nejlepší způsob implementace pravidel pro kontrolu výjimek na úrovni prostorů názvů nebo zdrojů. Pokud chcete získat další informace o našich plánech, podívejte se na .
Pokud máte dojem, že by Polaris mohl být užitečný — prosím, najděte si čas na jeho vyzkoušení. Rádi přijmeme jakékoli nápady, zpětnou vazbu, otázky nebo pull requesty. Kontaktovat nás můžete na , v nebo na .
P.S. od překladatele
Přečtěte si také náš blog:
- «»;
- «»;
- «»;
- «».
Zdroj: habr.com
