MĂ€rk. tĂ”lge.: Selle teksti originaal on kirjutanud Rob Scott â ReactiveOps'i peamine SRE-insener, kes on ka selle teadetavalt vĂ€lja kuulutatud projekti arendaja. Meil on vĂ€ga lĂ€hedane idee kesksetest valideerimise protsessidest, mida kasutatakse Kubernetes'es, seetĂ”ttu jĂ€lgime huvi pĂ€rast sarnaseid algatusi.

Mul on hea meel tutvustada â avatud lĂ€htekoodiga projekti, mis aitab hoida Kubernetes'i klastri «terviseid». Me lĂ”ime Polaris'e, et automatiseerida mĂ”ningaid parimaid praktikaid, mida ReactiveOps kasutab, et tagada turvalise ja usaldusvÀÀrse töö hoidmine paljude klientide klastrite jaoks. On aeg avada lĂ€htekood.
Korduvalt oleme olnud tunnistajaks, kuidas esmapilgul vĂ€ikesed konfiguratsioonivead on pĂ”hjustanud tĂ”siseid probleeme, mis on hĂ€irinud inseneride und. RÀÀkides millestki tĂ€iesti lihtsast â nĂ€iteks unustatud ressursside taotlemise konfiguratsioon (resource requests) â vĂ”is rikuda automaatset skaleerimist ja isegi viia olukorrani, kus töökoormused jĂ€id ressursidest ilma. Kui varem viisid vĂ€iksemad konfiguratsiooni vead production'is katkestusteni, siis nĂŒĂŒd aitab Polaris neid tĂ€ielikult vĂ€ltida.
Polaris aitab vÀltida konfiguratsiooni probleeme, mis mÔjutavad teie rakenduste stabiilsust, usaldusvÀÀrsust, skaleeritavust ja turvalisust. See vÔimaldab hÔlpsasti tuvastada deployment'ide konfiguratsiooni puudusi ja ennetada tulevasi probleeme. Polaris'ega on rahulik magada, teades, et rakendused on juurutatud hÀsti testitud standardite kogumi abil.
Polaris koosneb kahest peamisest komponendist:
- monitooringupaneel, mis annab teavet selle kohta, kui Ôigesti on olemasolevad klastris olevad deployment'id konfigureeritud;
- eksperimentaalsest kontrollivast webhook'ist, mis takistab deployment'ide vÀlja andmist, mis ei vasta kehtivale standardile.
Polaris Dashboard
Polaris paneel on loodud selleks, et pakkuda lihtsat ja arusaadavat vĂ”imalust nĂ€ha Kubernetes'is deploymendi hetkeseisu ning saada soovitusi seadistuste parandamiseks. See annab tĂ€ieliku ĂŒlevaate klastrist ning toob tulemused vĂ€lja kategooriate, nimede ja deploymendi kaupa.

Polaris'e vaikevĂ”tmed on kĂ”rgel tasemel, seega Ă€rge imestage, kui hinne osutub madalamaks, kui ootasite. Polaris'e peamine eesmĂ€rk on seada kĂ”rged standardid ja pĂŒĂŒdleda suurepĂ€rase vaikeseadistuse poole. Kui pakutud seadistus tundub liiga range, on seda vĂ”imalik kohandada deploymendi konfigureerimise kĂ€igus, optimeerides see konkreetsete töökoormuste jĂ€rgi.
Polaris'e vĂ€ljalaske raames otsustasime tutvustada mitte ainult tööriista, vaid ka ĂŒksikasjalikult selgitada teste, mis sellesse kuuluvad. Iga kontroll sisaldab linki vastavasse dokumentatsiooni, kus selgitatakse, miks peame seda oluliseks, ja antakse viiteid tĂ€iendavatele ressurssidele selle teema kohta.
Polaris Webhook
Kui juhtpaneel aitab saada ĂŒlevaate praegusest deployment'ide konfiguratsioonist, siis veebikonks tagab, et kĂ”ikide tulevaste deployment'ide standardid on tĂ€idetud enne, kui need klastrisse juurutatakse.
PĂ€rast seda, kui juhtpaneeli tuvastatud probleemid on lahendatud, saab kasutada veebikonksu, et konfiguratsioon ei laguneks enam allapoole seadistatud standardit. Veebikonks ei luba klastrisse juurutada deployment'e, mille konfiguratsioonis on olulised erandid (tase 'error').
Selle veebikonksu potentsiaal on inspireeriv, kuid selle tootmisse viimiseks on vajalik pÔhjalik testimine. Praegusel hetkel on see eksperimentaalne funktsioon ja osa tÀiesti uuest avatud lÀhtekoodiga projektist. Kuna see vÔib takistada deployment'ide uuendamist, kasutage seda ettevaatlikult.
Alustamine
Loodame, et kuna loete seda teadet, on Polaris - tööriist, mis vÔib teid aidata. Kas soovite ise Dashboardi proovida? Paneelide seadistamine klastrisse on vÀga lihtne. Selle paigaldamiseks on vajalikud minimaalset Ôigused (ainult lugemiseks) ning kÔik andmed jÀÀvad sisse. Dashboardi seadistamiseks kubectl'i abil, kÀivitage:
kubectl apply -f https://raw.githubusercontent.com/reactiveops/polaris/master/deploy/dashboard.yamlNĂŒĂŒd peate seadistama portide suunamise, et pÀÀseda Dashboardile kohaliku pordi 8080 kaudu:
kubectl port-forward --namespace polaris svc/polaris-dashboard 8080:80Loomulikult on veel palju teisi viise Polarise kasutamiseks ja juurutamiseks, sealhulgas ka Helmiga. Selle ja paljude muude asjade kohta saate lugeda .
See on alles algus
Oleme rÔÔmsad, et oleme juba Polarisse integreerinud, kuid see ei ole veel kÔik. Tulemas on palju uusi teste, mida soovime lisada, et laiendada funktsionaalsust. Otsime ka paremaid vÔimalusi erandite kontrollimise reeglite rakendamiseks nimede vÔi ressursside tasemel. Kui soovite rohkem teavet meie plaanide kohta, vaadake .
Kui teil on mulje, et Polaris vĂ”ib olla kasulik, leidke palun aega selle proovimiseks. Ootame rÔÔmuga igasuguseid ideid, tagasisidet, kĂŒsimusi vĂ”i pull request'e. Meiega saate ĂŒhendust vĂ”tta , in vĂ”i .
P.S. tÔlkija mÀrkused
Lugege ka meie blogist:
- «»;
- «»;
- «»;
- «».
Allikas: habr.com
