Polaris tika ieviests, lai Kubernetes kopas būtu veselīgas

Piezīme. tulk.: šī teksta oriģinālu uzrakstīja Robs Skots, vadošais SRE inženieris uzņēmumā ReactiveOps, kas ir aiz paziņotā projekta izstrādes. Ideja par Kubernetes izvietotā centralizētu validāciju mums ir ļoti tuva, tāpēc mēs ar interesi sekojam līdzi šādām iniciatīvām.

Polaris tika ieviests, lai Kubernetes kopas būtu veselīgas

Prieks iepazīstināt Polaris ir atvērtā koda projekts, kas palīdz uzturēt Kubernetes klastera veselību. Mēs izveidojām Polaris, lai automatizētu dažas no ReactiveOps izmantotajām paraugprakses, lai nodrošinātu klasteru drošu un uzticamu darbību lielam skaitam klientu. Ir pienācis laiks atvērt kodu.

Ik pa laikam esam redzējuši, ka šķietami nelielas konfigurācijas kļūdas rada nopietnas problēmas, kas neļauj inženieriem nomodā naktī. Kaut kas ļoti vienkāršs - piemēram, resursu pieprasījumu konfigurācija, kas tika aizmirsta aizmāršības dēļ (resursu pieprasījumi) — var pārtraukt automātisko mērogošanu un pat novest pie darba slodzes bez resursiem. Ja iepriekš nelielas kļūdas konfigurācijā izraisīja ražošanas pārtraukumus, tagad Polaris ļauj tās pilnībā novērst.

Polaris palīdz izvairīties no konfigurācijas problēmām, kas ietekmē jūsu lietojumprogrammu stabilitāti, uzticamību, mērogojamību un drošību. Tas ļauj viegli noteikt trūkumus izvietošanas konfigurācijās un novērst turpmākās problēmas. Izmantojot Polaris, varat mierīgi gulēt, zinot, ka jūsu lietojumprogrammas tiek izvietotas, izmantojot labi pārbaudītu standartu kopu.

Polaris sastāv no divām galvenajām sastāvdaļām:

  1. uzraudzības panelis, kas sniedz informāciju par to, cik labi ir konfigurētas esošās klastera izvietošanas;
  2. eksperimentālas testēšanas tīmekļa aizķere, kas neļauj ieviest izvietošanu, kas neatbilst pieņemtajam standartam.

Polaris informācijas panelis

Polaris informācijas panelis tika izveidots, lai nodrošinātu vienkāršu un vizuālu veidu, kā redzēt pašreizējo Kubernetes izvietošanas stāvokli un saņemt ieteikumus uzlabojumiem. Tas nodrošina pilnīgu kopas pārskatu, kā arī sadala rezultātus pēc kategorijas, nosaukumvietas un izvietošanas.

Polaris tika ieviests, lai Kubernetes kopas būtu veselīgas

Polaris noklusējuma standarti ir diezgan augsti, tāpēc nebrīnieties, ja jūsu rezultāts ir zemāks nekā gaidījāt. Polaris galvenais mērķis ir izvirzīt augstus standartus un tiekties pēc izcilas noklusējuma konfigurācijas. Ja piedāvātā konfigurācija šķiet pārāk stingra, to var labot izvietošanas konfigurācijas procesā, optimizējot to konkrētām darba slodzēm.

Polaris publikācijas ietvaros mēs nolēmām ne tikai prezentēt pašu rīku, bet arī detalizēti aprakstīt tajā iekļautos testus. Katrā pārskatā ir iekļauta saite uz saistīto dokumentāciju, kas izskaidro, kāpēc, mūsuprāt, tā ir svarīga, un sniedz saites uz papildu resursiem par šo tēmu.

Polaris Webhook

Ja informācijas panelis palīdz iegūt pārskatu par pašreizējo izvietojumu konfigurāciju, tīmekļa aizķere nodrošina atbilstību standartiem visiem izvietojumiem, kas tiks ieviesti klasterī.

Kad informācijas panelī konstatētās problēmas ir novērstas, varat izmantot tīmekļa aizķeri, lai nodrošinātu, ka konfigurācija vairs nekad nav zemāka par noteikto standartu. Tīmekļa aizķere neatļaus izvietošanu klasterī, kura konfigurācijā ir būtiskas novirzes (“kļūdas” līmenis).

Šīs tīmekļa aizķeres potenciāls ir aizraujošs, taču, lai to uzskatītu par gatavu ražošanai, joprojām būs jāveic plaša pārbaude. Pašlaik šī ir eksperimentāla funkcija un daļa no pilnīgi jauna atvērtā pirmkoda projekta. Tā kā tas var traucēt izvietošanas atjaunināšanu, izmantojiet to piesardzīgi.

Darba sākšana

Es ceru, ka, tā kā jūs joprojām lasāt šo paziņojumu, Polaris ir rīks, kas jums varētu noderēt. Vai vēlaties pats izmēģināt informācijas paneli? Paneļa izvietošana klasterī ir ļoti vienkārša. Tas ir instalēts ar minimālām tiesībām (tikai lasīšanai), un visi dati paliek iekšā. Lai izvietotu informācijas paneli, izmantojot kubectl, palaidiet:

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

Tagad jums ir jākonfigurē portu pāradresācija, lai piekļūtu informācijas panelim, izmantojot vietējo portu 8080:

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

Protams, ir daudz citu veidu, kā izmantot un izvietot Polaris, tostarp izmantojot Helm. Jūs varat uzzināt par šo un daudz ko citu no Polaris repozitorijs vietnē GitHub.

Šis ir tikai sākums

Mēs esam satraukti par to, ko Polaris ir uzbūvējis līdz šim, taču stāsts ar to nebeidzas. Ir daudz jaunu testu, ko mēs vēlētos pievienot, lai paplašinātu funkcionalitāti. Mēs arī meklējam labāku veidu, kā ieviest izņēmumu pārbaudes noteikumus nosaukumvietas vai resursu līmenī. Ja vēlaties uzzināt vairāk par mūsu plāniem, pārbaudiet ceļa karte.

Ja jums šķiet, ka Polaris varētu būt noderīgs, lūdzu, veltiet laiku, lai to izmēģinātu. Mēs ar prieku pieņemsim visas idejas, atsauksmes, jautājumus vai pieprasījumus. Jūs varat sazināties ar mums pa projekta vietneUz GitHub vai Twitter.

PS no tulka

Lasi arī mūsu emuārā:

Avots: www.habr.com

Pievieno komentāru