Polaris introducerades för att hålla Kubernetes-kluster friska

Notera. transl.: Originalet till denna text skrevs av Rob Scott, en ledande SRE-ingenjör på ReactiveOps, som ligger bakom utvecklingen av det tillkännagivna projektet. Idén med centraliserad validering av det som distribueras till Kubernetes ligger oss väldigt nära, så vi följer sådana initiativ med intresse.

Polaris introducerades för att hålla Kubernetes-kluster friska

Glad att presentera Polaris är ett projekt med öppen källkod som hjälper till att upprätthålla hälsan hos ett Kubernetes-kluster. Vi byggde Polaris för att automatisera några av de bästa metoderna som används i ReactiveOps för att hålla kluster igång säkert och tillförlitligt över ett stort antal kunder. Det är dags att öppna källkoden.

Gång på gång har vi sett till synes mindre konfigurationsfel leda till stora problem som håller ingenjörerna vakna på natten. Något väldigt enkelt - till exempel konfigurationen av resursbegäranden som glömdes bort på grund av glömska (resursförfrågningar) — kan bryta automatisk skalning och till och med leda till att arbetsbelastningar lämnas utan resurser. Om tidigare mindre fel i konfigurationen ledde till avbrott i produktionen låter Polaris dig nu helt förhindra dem.

Polaris hjälper dig att undvika konfigurationsproblem som påverkar stabiliteten, tillförlitligheten, skalbarheten och säkerheten för dina applikationer. Det gör det enkelt att identifiera brister i distributionskonfigurationer och förhindra framtida problem. Med Polaris kan du sova lugnt och veta att dina applikationer distribueras med hjälp av en uppsättning väl beprövade standarder.

Polaris består av två nyckelkomponenter:

  1. en övervakningspanel som ger information om hur väl de befintliga distributionerna i klustret är konfigurerade;
  2. en experimentell testwebbhook som förhindrar att distributioner rullas ut som inte uppfyller den accepterade standarden.

Polaris instrumentbräda

Polaris-instrumentpanelen skapades för att ge ett enkelt och visuellt sätt att se det aktuella läget för Kubernetes-installationer och få rekommendationer för förbättringar. Det ger en fullständig översikt över klustret och delar även upp resultaten efter kategori, namnområde och distribution.

Polaris introducerades för att hålla Kubernetes-kluster friska

Polaris standardstandarder är ganska höga, så bli inte förvånad om din poäng är lägre än du förväntade dig. Polaris huvudmål är att sätta höga standarder och sträva efter en utmärkt standardkonfiguration. Om den föreslagna konfigurationen verkar för stel, kan den korrigeras under distributionskonfigurationsprocessen och optimera den för specifika arbetsbelastningar.

Som en del av Polaris-publikationen beslutade vi att inte bara presentera själva verktyget, utan också att i detalj beskriva testerna som ingår i det. Varje recension innehåller en länk till relaterad dokumentation, som förklarar varför vi anser att det är viktigt och ger länkar till ytterligare resurser om ämnet.

Polaris Webhook

Om instrumentpanelen hjälper till att få en överblick över den aktuella konfigurationen av implementeringar, säkerställer webhook efterlevnad av standarder för alla implementeringar som kommer att rullas ut till klustret.

När de problem som identifierats av instrumentpanelen är åtgärdade kan du använda en webhook för att säkerställa att konfigurationen aldrig faller under den etablerade standarden igen. Webhook kommer inte att tillåta distributioner i klustret vars konfiguration innehåller betydande avvikelser (”fel”-nivån).

Potentialen med denna webhook är spännande, men den kommer fortfarande att kräva omfattande tester för att anses vara produktionsklar. Detta är för närvarande en experimentell funktion och en del av ett helt nytt Open Source-projekt. Eftersom det kan störa distributionsuppdateringar, använd det med försiktighet.

Komma igång

Jag hoppas att eftersom du fortfarande läser detta tillkännagivande är Polaris ett verktyg som du kan ha nytta av. Vill du prova Dashboard själv? Att distribuera en panel i ett kluster är mycket enkelt. Den är installerad med minimala rättigheter (skrivskyddad), och all data finns kvar inuti. För att distribuera Dashboard med kubectl, kör:

kubectl apply -f https://raw.githubusercontent.com/reactiveops/polaris/master/deploy/dashboard.yaml

Nu måste du konfigurera portvidarebefordran för att komma åt Dashboard via lokal port 8080:

kubectl port-forward --namespace polaris svc/polaris-dashboard 8080:80

Naturligtvis finns det många andra sätt att använda och distribuera Polaris, inklusive att använda Helm. Du kan lära dig om detta och mycket mer av Polaris repository på GitHub.

Detta är bara början

Vi är exalterade över vad Polaris har byggt hittills, men historien slutar inte där. Det är många nya tester på väg som vi skulle vilja lägga till för att utöka funktionaliteten. Vi letar också efter ett bättre sätt att implementera regler för undantagskontroll på namnområdes- eller resursnivå. Om du vill ha mer information om våra planer, kolla in vägkarta.

Om du har intrycket att Polaris kan vara användbart, vänligen ta dig tid att prova det. Vi tar gärna emot alla idéer, feedback, frågor eller pull-förfrågningar. Du kan kontakta oss på projektwebbplatsI GitHub eller Twitter.

PS från översättaren

Läs även på vår blogg:

Källa: will.com

Lägg en kommentar