Tèarainteachd Helm

Dh’ fhaodadh brìgh na sgeòil mun mhanaidsear pacaid as mòr-chòrdte airson Kubernetes a bhith air a nochdadh le bhith a’ cleachdadh emoji:

  • tha am bogsa Helm (is e sin an rud as fhaisge air an naidheachd Emoji as ùire);
  • glas - tèarainteachd;
  • is e am fear beag am fuasgladh air an trioblaid.

Tèarainteachd Helm

Gu dearbh, bidh a h-uile dad beagan nas iom-fhillte, agus tha an sgeulachd làn de mhion-fhiosrachadh teicnigeach mu dheidhinn Mar a nì thu Helm sàbhailte.

  • Gu h-aithghearr dè a th’ ann an Helm gun fhios nach biodh fios agad no gun dìochuimhnich thu. Dè na duilgheadasan a bhios e a’ fuasgladh agus càite a bheil e suidhichte san eag-shiostam.
  • Bheir sinn sùil air ailtireachd Helm. Chan eil còmhradh sam bith mu thèarainteachd agus mar a nì thu inneal no fuasgladh nas tèarainte coileanta gun a bhith a’ tuigsinn ailtireachd a’ cho-phàirt.
  • Bruidhnidh sinn mu cho-phàirtean Helm.
  • Is e a’ cheist as loisgte an àm ri teachd - an dreach ùr de Helm 3. 

Tha a h-uile dad san artaigil seo a’ buntainn ri Helm 2. Tha an dreach seo an-dràsta ann an riochdachadh agus is coltaiche gur e am fear a tha thu a’ cleachdadh an-dràsta, agus is e an dreach anns a bheil na cunnartan tèarainteachd.


Mu neach-labhairt: Alasdair Khayorov (aillxx) air a bhith a’ leasachadh airson 10 bliadhna, a’ cuideachadh le bhith a’ leasachadh susbaint Moscow Python Conf ++ agus chaidh e dhan chomataidh Mullach Helm. A-nis tha e ag obair aig Chainstack mar stiùiriche leasachaidh - tha seo na mheasgachadh eadar manaidsear leasachaidh agus neach air a bheil uallach airson fiosan deireannach a lìbhrigeadh. Is e sin, tha e suidhichte air an raon-catha, far a bheil a h-uile càil a 'tachairt bho bhith a' cruthachadh toradh gu obair.

Is e companaidh tòiseachaidh beag a tha a’ fàs gu gnìomhach a th’ ann an Chainstack agus is e an rùn leigeil le teachdaichean dìochuimhneachadh mu bhun-structar agus iom-fhillteachd thagraidhean dì-mheadhanaichte; tha an sgioba leasachaidh suidhichte ann an Singapore. Na iarr air Chainstack cryptocurrency a reic no a cheannach, ach tairg bruidhinn mu fhrèamaichean blockchain iomairt, agus freagraidh iad thu gu toilichte.

Helm

Is e seo manaidsear pacaid (clàr) airson Kubernetes. An dòigh as intuitive agus uile-choitcheann airson tagraidhean a thoirt gu buidheann Kubernetes.

Tèarainteachd Helm

Tha sinn, gu dearbh, a’ bruidhinn air dòigh-obrach nas structarail agus tionnsgalach na bhith a’ cruthachadh na taisbeanaidhean YAML agad fhèin agus a’ sgrìobhadh goireasan beaga.

Is e Helm an rud as fheàrr a tha ri fhaighinn an-dràsta agus mòr-chòrdte.

Carson Helm? Sa mhòr-chuid air sgàth gu bheil e a’ faighinn taic bhon CNCF. Tha Cloud Native na bhuidheann mòr agus tha e na phrìomh chompanaidh airson pròiseactan Kubernetes, msaa, Fluentd agus feadhainn eile.

Is e fìrinn chudromach eile gur e pròiseact mòr-chòrdte a th’ ann an Helm. Nuair a thòisich mi a’ bruidhinn air mar a nì thu Helm tèarainte san Fhaoilleach 2019, bha mìle rionnag aig a’ phròiseact air GitHub. Ron Chèitean bha 12 mìle dhiubh ann.

Tha ùidh aig mòran dhaoine ann an Helm, mar sin eadhon mura cleachd thu e fhathast, gheibh thu buannachd bho bhith eòlach air a thèarainteachd. Tha sàbhailteachd cudromach.

Tha prìomh sgioba Helm a’ faighinn taic bho Microsoft Azure agus mar sin tha e na phròiseact gu math seasmhach, eu-coltach ri mòran eile. Tha sgaoileadh Helm 3 Alpha 2 ann am meadhan an Iuchair a 'nochdadh gu bheil tòrr dhaoine ag obair air a' phròiseact, agus tha miann agus lùth aca Helm a leasachadh agus a leasachadh.

Tèarainteachd Helm

Bidh Helm a’ fuasgladh grunn dhuilgheadasan bunaiteach a thaobh riaghladh tagraidh ann an Kubernetes.

  • Iarrtas pacaidh. Tha eadhon tagradh mar “Hello, World” air WordPress mu thràth air a dhèanamh suas de ghrunn sheirbheisean, agus tha thu airson am pacadh còmhla.
  • A’ riaghladh an iom-fhillteachd a thig an cois a bhith a’ riaghladh nan tagraidhean sin.
  • Cearcall beatha nach tig gu crìch às deidh an tagradh a chuir a-steach no a chuir a-steach. Tha e fhathast beò, feumar ùrachadh, agus tha Helm a’ cuideachadh le seo agus a’ feuchainn ris na ceumannan agus na poileasaidhean ceart a thoirt a-steach airson seo.

Bagging tha e air a chuir air dòigh ann an dòigh shoilleir: tha meata-dàta ann a rèir obair manaidsear pacaid cunbhalach airson Linux, Windows no MacOS. Is e sin, stòr, eisimeileachd air diofar phasganan, meta-fhiosrachadh airson tagraidhean, roghainnean, feartan rèiteachaidh, clàr-amais fiosrachaidh, msaa. Leigidh Helm leat seo uile fhaighinn agus a chleachdadh airson tagraidhean.

Riaghladh iom-fhillteachd. Ma tha mòran thagraidhean den aon sheòrsa agad, tha feum air parameterization. Tha teamplaidean a’ tighinn bho seo, ach gus nach fheum thu do dhòigh fhèin a chruthachadh air teamplaidean a chruthachadh, faodaidh tu na tha Helm a’ tabhann a chleachdadh a-mach às a’ bhogsa.

Riaghladh Cuairt-beatha Iarrtas - nam bheachd-sa, is e seo a’ cheist as inntinniche agus gun fhuasgladh. Is ann air an adhbhar seo a thàinig mi gu Helm air ais san latha. Dh’ fheumadh sinn sùil a chumail air cearcall-beatha an tagraidh agus bha sinn airson ar CI/CD agus cearcallan tagraidh a ghluasad chun pharadigm seo.

Leigidh Helm leat:

  • riaghladh cleachdadh, a’ toirt a-steach bun-bheachd rèiteachaidh agus ath-sgrùdaidh;
  • toirt air ais gu soirbheachail;
  • cleachd dubhan airson diofar thachartasan;
  • cuir sgrùdaidhean tagraidh a bharrachd ris agus freagair na toraidhean aca.

A bharrachd air sin Tha “bataraidhean” aig Helm - àireamh mhòr de rudan blasda a dh'fhaodar a ghabhail a-steach ann an cruth plugins, a 'sìmpleachadh do bheatha. Faodar plugins a sgrìobhadh gu neo-eisimeileach, tha iad gu math iomallach agus chan fheum iad ailtireachd co-chòrdail. Ma tha thu airson rudeigin a chuir an gnìomh, tha mi a’ moladh a dhèanamh mar plugan, agus an uairsin is dòcha a thoirt a-steach suas an abhainn.

Tha Helm stèidhichte air trì prìomh bhun-bheachdan:

  • Clàr Repo - tuairisgeul agus raon de pharamadairean comasach airson do thaisbeanaidh. 
  • Rèiteachadh -is e sin, na luachan a thèid a chur an sàs (teacsa, luachan àireamhach, msaa).
  • release a 'cruinneachadh an dà phàirt àrd, agus còmhla bidh iad a' tionndadh gu Release. Faodar sgaoilidhean a thionndadh, agus mar sin a’ coileanadh cearcall beatha eagraichte: beag aig àm an stàlaidh agus mòr aig àm ùrachadh, ìsleachadh no tilleadh air ais.

Helm ailtireachd

Tha an diagram gu bun-bheachdail a’ sealltainn ailtireachd àrd-ìre Helm.

Tèarainteachd Helm

Leig leam do chuimhneachadh gu bheil Helm rudeigin co-cheangailte ri Kubernetes. Mar sin, chan urrainn dhuinn a dhèanamh às aonais cruinneachadh Kubernetes (ceart-cheàrnach). Tha am pàirt kube-apiserver an urra ris a’ mhaighstir. Às aonais Helm tha Kubeconfig againn. Bheir Helm aon binary beag, mas urrainn dhut sin a ghairm, Helm CLI utility, a tha air a chuir a-steach air coimpiutair, laptop, prìomh fhrèam - air rud sam bith.

Ach chan eil seo gu leòr. Tha pàirt frithealaiche aig Helm ris an canar Tiller. Tha e a’ riochdachadh ùidhean Helm taobh a-staigh a’ bhuidheann; tha e na thagradh taobh a-staigh cruinneachadh Kubernetes, dìreach mar a tha gin eile.

Is e an ath phàirt de Chart Repo stòr le clàran. Tha stòr oifigeil ann, agus dh'fhaodadh gum bi stòras prìobhaideach de chompanaidh no pròiseact ann.

Eadar-obrachadh

Bheir sinn sùil air mar a bhios na pàirtean ailtireachd ag eadar-obrachadh nuair a tha sinn airson tagradh a chuir a-steach a’ cleachdadh Helm.

  • Tha sinn a ’bruidhinn Helm install, faigh cothrom air an stòr (Chart Repo) agus faigh cairt Helm.

  • Bidh goireas Helm (Helm CLI) ag eadar-obrachadh le Kubeconfig gus faighinn a-mach dè am buidheann ris am bu chòir fios a chuir. 
  • Às deidh dhuinn am fiosrachadh seo fhaighinn, tha an goireas a’ toirt iomradh air Tiller, a tha suidhichte anns a’ bhuidheann againn, mar thagradh. 
  • Bidh Tiller a ’gairm Kube-apiserver gus gnìomhan a dhèanamh ann an Kubernetes, cruthaich cuid de nithean (seirbheisean, pods, mac-samhail, dìomhaireachdan, msaa).

An ath rud, nì sinn iom-fhillte air an diagram gus am faicear an vectar ionnsaigh a dh’ fhaodas ailtireachd Helm gu h-iomlan a bhith fosgailte. Agus an uairsin feuchaidh sinn ri a dìon.

Vector ionnsaigh a thoirt air a

Is e a 'chiad phuing lag a dh'fhaodadh a bhith ann API sochair-an neach-cleachdaidh. Mar phàirt den sgeama, is e neach-tarraing a tha seo a tha air cothrom rianachd fhaighinn air Helm CLI.

Cleachdaiche API gun bhuannachd faodaidh e cuideachd a bhith na chunnart ma tha e an àiteigin faisg air làimh. Bidh co-theacs eadar-dhealaichte aig a leithid de neach-cleachdaidh, mar eisimpleir, faodar a shuidheachadh ann an aon ainm brabhsair ann an roghainnean Kubeconfig.

Is dòcha gur e am vectar ionnsaigh as inntinniche pròiseas a tha a’ fuireach taobh a-staigh cruinneachadh an àiteigin faisg air Tiller agus a gheibh cothrom air. Faodaidh seo a bhith na fhrithealaiche lìn no meanbh-sheirbheis a chì àrainneachd lìonra a’ bhraisle.

Tha tionndadh ionnsaigh annasach, ach a tha a’ sìor fhàs mòr-chòrdte, a’ toirt a-steach Chart Repo. Faodaidh goireasan mì-shàbhailte a bhith ann an cairt a chruthaich ùghdar neo-fhiosrachail, agus cuiridh tu crìoch air le bhith ga ghabhail air creideamh. No faodaidh e a dhol an àite a’ chlàir a luchdaich thu sìos bhon stòr oifigeil agus, mar eisimpleir, goireas a chruthachadh ann an cruth phoileasaidhean agus ruigsinneachd a mheudachadh.

Tèarainteachd Helm

Feuchaidh sinn ri stad a chuir air ionnsaighean bho na ceithir taobhan sin uile agus obraich a-mach càite a bheil duilgheadasan ann an ailtireachd Helm, agus càite, is dòcha, nach eil gin ann.

Leudaichidh sinn an diagram, cuir barrachd eileamaidean ris, ach cumaibh na pàirtean bunaiteach uile.

Tèarainteachd Helm

Bidh an Helm CLI a’ conaltradh ris a’ Chart Repo, ag eadar-obrachadh le Kubeconfig, agus tha an obair air a ghluasad chun bhuidheann chun phàirt Tiller.

Tha Tiller air a riochdachadh le dà rud:

  • Tiller-deploy svc, a tha a 'nochdadh seirbheis shònraichte;
  • Tiller-cleachdadh pod (anns an dealbh ann an aon leth-bhreac ann an aon mac-samhail), air a bheil an luchd gu lèir a 'ruith, a gheibh cothrom air a' bhuidheann.

Bithear a’ cleachdadh diofar phròtacalan agus sgeamaichean airson eadar-obrachadh. Bho thaobh tèarainteachd, tha ùidh mhòr againn ann an:

  • An dòigh anns am faigh Helm CLI cothrom air repo a’ chlàir: dè am pròtacal, a bheil dearbhadh ann agus dè ghabhas dèanamh leis.
  • Am protocol leis am bi Helm CLI, a’ cleachdadh kubectl, a’ conaltradh ri Tiller. Is e seo frithealaiche RPC air a chuir a-steach don bhuidheann.
  • Tha Tiller fhèin ruigsinneach do mhicro-sheirbheisean a tha a’ fuireach sa bhuidheann agus a bhios ag eadar-obrachadh leis an Kube-apiserver.

Tèarainteachd Helm

Bruidhnidh sinn mu na raointean sin uile ann an òrdugh.

RBAC

Chan eil feum sam bith a bhith a’ bruidhinn mu thèarainteachd sam bith airson Helm no seirbheis sam bith eile taobh a-staigh a’ bhuidheann mura h-eil RBAC air a chomasachadh.

Tha e coltach nach e seo am moladh as ùire, ach tha mi cinnteach nach eil mòran dhaoine fhathast air comas a thoirt do RBAC eadhon ann an cinneasachadh, leis gu bheil e tòrr fealla-dhà agus feumar tòrr rudan a rèiteachadh. Ach, tha mi gad bhrosnachadh gus seo a dhèanamh.

Tèarainteachd Helm

https://rbac.dev/ - neach-lagha làrach-lìn airson RBAC. Tha tòrr stuthan inntinneach ann a chuidicheas tu gus RBAC a stèidheachadh, sealltainn carson a tha e math agus mar as urrainn dhut a bhith beò leis ann an riochdachadh.

Feuchaidh mi ri mìneachadh mar a tha Tiller agus RBAC ag obair. Bidh Tiller ag obair taobh a-staigh a’ bhuidheann fo chunntas seirbheis sònraichte. Mar as trice, mura h-eil RBAC air a rèiteachadh, is e seo an superuser. Anns an rèiteachadh bunaiteach, bidh Tiller na rianaire. Sin as coireach gu bheilear ag ràdh gu tric gur e tunail SSH a th’ ann an Tiller don bhuidheann agad. Gu dearbh, tha seo fìor, gus an urrainn dhut cunntas seirbheis sònraichte fa leth a chleachdadh an àite a’ Chunntas Seirbheis Bunaiteach san dealbh gu h-àrd.

Nuair a thòisicheas tu Helm agus a stàlaicheas tu e air an fhrithealaiche airson a’ chiad uair, faodaidh tu an cunntas seirbheis a shuidheachadh a’ cleachdadh --service-account. Leigidh seo leat cleachdaiche a chleachdadh leis an t-seata chòraichean as lugha a tha a dhìth. Fìor, feumaidh tu a leithid de “garland” a chruthachadh: Dreuchd agus Ceangal Role.

Tèarainteachd Helm

Gu mì-fhortanach, cha dèan Helm seo dhut. Feumaidh tu fhèin no an rianadair cruinneachadh Kubernetes agad seata de Roles and RoleBindings ullachadh airson a’ chunntas seirbheis ro làimh gus a dhol seachad air Helm.

Tha a’ cheist ag èirigh - dè an diofar eadar Role agus ClusterRole? Is e an eadar-dhealachadh gu bheil ClusterRole ag obair airson a h-uile àite ainm, eu-coltach ri Roles agus RoleBindings cunbhalach, a bhios ag obair airson àite ainm sònraichte a-mhàin. 'S urrainn dhut poileasaidhean a chur air dòigh airson a' chnuasaich gu lèir agus a h-uile àite ainm, no pearsanachadh airson gach ainm-àite fa leth.

Is fhiach a ràdh gu bheil RBAC a’ fuasgladh duilgheadas mòr eile. Bidh mòran dhaoine a’ gearain nach eil Helm, gu mì-fhortanach, ioma-ghnèitheachd (chan eil e a’ toirt taic do ioma-ghabhaltas). Ma bhios grunn sgiobaidhean ag ithe cruinneachadh agus a’ cleachdadh Helm, tha e gu ìre mhòr eu-comasach poileasaidhean a stèidheachadh agus an ruigsinneachd taobh a-staigh a’ bhuidheann seo a chuingealachadh, leis gu bheil cunntas seirbheis sònraichte ann fon bheil Helm a’ ruith, agus bidh e a’ cruthachadh a h-uile goireas sa bhuidheann bho bhith fodha. , a tha uaireannan glè ghoireasach. Tha seo fìor - mar am faidhle binary fhèin, mar am pròiseas, Chan eil bun-bheachd aig Helm Tiller air ioma-ghabhaltas.

Ach, tha dòigh mhath ann a leigeas leat Tiller a ruith iomadh uair ann am brabhsair. Chan eil duilgheadas sam bith ann le seo, faodar Tiller a chuir air bhog anns a h-uile àite ainm. Mar sin, faodaidh tu RBAC, Kubeconfig a chleachdadh mar cho-theacsa, agus casg a chuir air ruigsinneachd gu Helm sònraichte.

Seallaidh e mar seo.

Tèarainteachd Helm

Mar eisimpleir, tha dà Kubeconfigs ann le co-theacsa airson diofar sgiobaidhean (dà àite ainm): Sgioba X airson an sgioba leasachaidh agus am buidheann rianachd. Tha an Tiller farsaing aige fhèin aig a’ bhuidheann rianachd, a tha suidhichte ann an àite-ainm siostam Kube, cunntas seirbheis adhartach a rèir sin. Agus àite-ainm air leth airson an sgioba leasachaidh, bidh e comasach dhaibh na seirbheisean aca a chuir gu àite ainm sònraichte.

Is e dòigh-obrach obrachail a tha seo, chan eil Tiller cho acrach le cumhachd gun toir e buaidh mhòr air a’ bhuidseit agad. Is e seo aon de na fuasglaidhean sgiobalta.

Faodaidh tu Tiller a rèiteachadh air leth agus co-theacsa a thoirt do Kubeconfig airson an sgioba, airson leasaiche sònraichte no airson na h-àrainneachd: Dev, Staging, Production (tha e teagmhach gum bi a h-uile càil air an aon bhuidheann, ge-tà, faodar seo a dhèanamh).

A’ leantainn leis an sgeulachd againn, gluaisidh sinn bho RBAC agus bruidhnidh sinn mu ConfigMaps.

ConfigMaps

Bidh Helm a’ cleachdadh ConfigMaps mar an stòr dàta aige. Nuair a bha sinn a’ bruidhinn air ailtireachd, cha robh stòr-dàta ann an àite sam bith a bhiodh a’ stòradh fiosrachadh mu sgaoilidhean, rèiteachaidhean, ro-aithrisean, msaa. Tha ConfigMaps air a chleachdadh airson seo.

Tha fios air a’ phrìomh dhuilgheadas le ConfigMaps - tha iad cunnartach ann am prionnsapal; chan eil e comasach dàta mothachail a stòradh. Tha sinn a 'bruidhinn mu dheidhinn a h-uile rud nach bu chòir a dhol nas fhaide na an t-seirbheis, mar eisimpleir, faclan-faire. Is e an dòigh as dùthchasach dha Helm an-dràsta gluasad bho bhith a’ cleachdadh ConfigMaps gu dìomhaireachdan.

Tha seo air a dhèanamh gu math sìmplidh. Thoir thairis air suidheachadh Tiller agus sònraich gum bi an stòradh na dhìomhaireachd. An uairsin airson gach cleachdadh chan fhaigh thu ConfigMap, ach dìomhaireachd.

Tèarainteachd Helm

Dh’ fhaodadh tu argamaid gur e bun-bheachd neònach a th’ ann an dìomhaireachdan fhèin agus nach eil iad gu math tèarainte. Ach, is fhiach a bhith mothachail gu bheil an luchd-leasachaidh Kubernetes fhèin a 'dèanamh seo. A’ tòiseachadh bho dhreach 1.10, i.e. Airson ùine mhòr a-nis, tha e air a bhith comasach, co-dhiù ann an sgòthan poblach, an stòradh ceart a cheangal ri dìomhaireachdan a stòradh. Tha an sgioba a-nis ag obair air dòighean gus ruigsinneachd gu dìomhaireachdan, pods fa leth, no buidhnean eile a sgaoileadh.

Tha e nas fheàrr Helm Stòraidh a ghluasad gu dìomhaireachdan, agus tha iad sin, ann an tionndadh, tèarainte sa mheadhan.

Gu dearbh bidh e air fhàgail crìoch stòraidh dàta de 1 MB. Bidh Helm an seo a’ cleachdadh msaa mar stòradh sgaoilte airson ConfigMaps. Agus an sin bha iad den bheachd gur e pìos dàta iomchaidh a bha seo airson ath-riochdachadh, msaa. Tha còmhradh inntinneach mu dheidhinn seo air Reddit, tha mi a’ moladh an leughadh èibhinn seo a lorg airson an deireadh-sheachdain no an earrann a leughadh an seo.

Cairt Repos

Is e clàran an fheadhainn as so-leònte gu sòisealta agus faodaidh iad a bhith nan stòr de “Man in the middle”, gu sònraichte ma chleachdas tu fuasgladh stoc. An toiseach, tha sinn a’ bruidhinn mu dheidhinn stòran a tha fosgailte tro HTTP.

Feumaidh tu gu cinnteach Helm Repo a nochdadh thairis air HTTPS - is e seo an roghainn as fheàrr agus tha e saor.

Thoir aire dha uidheamachd ainm-sgrìobhte cairt. Tha an teicneòlas cho sìmplidh ri ifrinn. Is e seo an aon rud a chleachdas tu air GitHub, inneal PGP cunbhalach le iuchraichean poblach is prìobhaideach. Stèidhich agus bi cinnteach, leis na h-iuchraichean riatanach agad agus a’ soidhnigeadh a h-uile càil, gur e seo dha-rìribh do chairt.

A bharrachd air sin, Bidh neach-dèiligidh Helm a’ toirt taic do TLS (chan ann san t-seagh HTTP taobh an fhrithealaiche, ach TLS dha chèile). Faodaidh tu iuchraichean frithealaiche agus teachdaiche a chleachdadh gus conaltradh a dhèanamh. Gus a bhith onarach, cha bhith mi a’ cleachdadh inneal mar sin oir cha toil leam teisteanasan dha chèile. Gu bunaiteach, taigh-tasgaidh - am prìomh inneal airson Helm Repo a stèidheachadh airson Helm 2 - cuideachd a’ toirt taic do dh’ ùghdar bunaiteach. Faodaidh tu ùghdar bunaiteach a chleachdadh ma tha e nas goireasaiche agus nas sàmhaiche.

Tha plugan ann cuideachd stiùir-gcs, a leigeas leat aoigheachd a thoirt do Chart Repos air Google Cloud Storage. Tha seo gu math goireasach, ag obair gu math agus gu math sàbhailte, leis gu bheil na h-innealan uile air an ath-chuairteachadh.

Tèarainteachd Helm

Ma bheir thu comas do HTTPS no TLS, cleachd mTLS, agus leig le ùghdar bunaiteach gus cunnartan a lughdachadh tuilleadh, gheibh thu sianal conaltraidh tèarainte le Helm CLI agus Chart Repo.

gRPC API

Tha an ath cheum glè chudromach - gus Tiller a dhèanamh tèarainte, a tha suidhichte anns a 'bhraisle agus a tha, air an aon làimh, na fhrithealaiche, air an làimh eile, bidh e fhèin a' faighinn cothrom air co-phàirtean eile agus a 'feuchainn ri leigeil a-mach gur e cuideigin a th' ann.

Mar a thuirt mi mu thràth, is e seirbheis a th’ ann an Tiller a tha a ’nochdadh gRPC, bidh an neach-dèiligidh Helm a’ tighinn thuige tro gRPC. Gu gnàthach, gu dearbh, tha TLS ciorramach. Is e ceist deasbaid a th’ ann carson a chaidh seo a dhèanamh, tha e coltach riumsa an suidheachadh a dhèanamh nas sìmplidhe aig an toiseach.

Airson cinneasachadh agus eadhon àrd-ùrlar, tha mi a’ moladh comas a thoirt do TLS air gRPC.

Nam bheachd-sa, eu-coltach ri mTLS airson clàran, tha seo iomchaidh an seo agus tha e air a dhèanamh gu math sìmplidh - cruthaich bun-structar PQI, cruthaich teisteanas, cuir air bhog Tiller, gluais an teisteanas aig àm tòiseachaidh. Às deidh seo, faodaidh tu a h-uile òrdugh Helm a chuir an gnìomh, a ’toirt dhut fhèin an teisteanas ginte agus an iuchair phrìobhaideach.

Tèarainteachd Helm

San dòigh seo dìonaidh tu thu fhèin bho gach iarrtas gu Tiller bho thaobh a-muigh na buidhne.

Mar sin, tha sinn air an t-sianal ceangail a dhèanamh tèarainte gu Tiller, tha sinn air bruidhinn mu RBAC mu thràth agus air còraichean an Kubernetes apiserver atharrachadh, a’ lughdachadh na h-àrainn leis am faod e eadar-obrachadh.

Helm fo dhìon

Bheir sinn sùil air an diagram mu dheireadh. Is e an aon ailtireachd a th’ ann leis na h-aon saighdean.

Tèarainteachd Helm

Faodar a h-uile ceangal a-nis a tharraing gu sàbhailte ann an uaine:

  • airson Chart Repo bidh sinn a’ cleachdadh TLS no mTLS agus ùghdar bunaiteach;
  • mTLS airson Tiller, agus tha e fosgailte mar sheirbheis gRPC le TLS, bidh sinn a’ cleachdadh theisteanasan;
  • bidh am buidheann a’ cleachdadh cunntas seirbheis sònraichte le Role and RoleBinding. 

Tha sinn air a’ bhuidheann a dhèanamh tèarainte gu mòr, ach thuirt cuideigin smart:

“Chan urrainn ach aon fhuasgladh gu tur sàbhailte a bhith ann - coimpiutair air a chuir dheth, a tha suidhichte ann am bogsa cruadhtan agus air a dhìon le saighdearan.”

Tha diofar dhòighean ann air dàta a làimhseachadh agus vectaran ionnsaigh ùra a lorg. Ach, tha mi misneachail gun coilean na molaidhean seo inbhe gnìomhachais bunaiteach airson sàbhailteachd.

Bònas

Chan eil am pàirt seo ceangailte gu dìreach ri tèarainteachd, ach bidh e feumail cuideachd. Seallaidh mi dhut cuid de rudan inntinneach air nach eil mòran dhaoine eòlach. Mar eisimpleir, mar a lorgas tu clàran - oifigeil agus neo-oifigeil.

Anns an ionad-tasgaidh github.com/helm/charts A-nis tha timcheall air 300 cairt agus dà shruth: seasmhach agus goir. Tha fios fìor mhath aig duine sam bith a chuireas ris cho duilich sa tha e faighinn bho ghoir gu stàball, agus cho furasta ‘s a tha e itealaich a-mach à stàball. Ach, chan e seo an inneal as fheàrr airson clàran a lorg airson Prometheus agus rud sam bith eile a thogras tu, airson aon adhbhar sìmplidh - chan e portal a th’ ann far an urrainn dhut pacaidean a lorg gu goireasach.

Ach tha seirbheis ann mol.helm.sh, a tha ga dhèanamh fada nas goireasaiche clàran a lorg. Nas cudromaiche, tha mòran a bharrachd de stòran taobh a-muigh agus faisg air 800 seun rim faighinn. A bharrachd air an sin, faodaidh tu do stòr a cheangal mura h-eil thu airson adhbhar air choireigin na clàran agad a chuir gu stàball.

Feuch hub.helm.sh agus leasaich sinn e còmhla. Tha an t-seirbheis seo fo phròiseact Helm, agus faodaidh tu eadhon cur ris an UI aige ma tha thu nad leasaiche aghaidh agus dìreach airson do choltas a leasachadh.

Bu mhath leam cuideachd d’ aire a tharraing gu Amalachadh API Open Service Broker. Tha e a’ faireachdainn trom agus neo-shoilleir, ach tha e a’ fuasgladh nan duilgheadasan a tha fa chomhair a h-uile duine. Leig leam mìneachadh le eisimpleir shìmplidh.

Tèarainteachd Helm

Tha cruinneachadh Kubernetes ann far a bheil sinn airson tagradh clasaigeach a ruith - WordPress. San fharsaingeachd, tha feum air stòr-dàta airson làn ghnìomhachd. Tha mòran fhuasglaidhean eadar-dhealaichte ann, mar eisimpleir, faodaidh tu an t-seirbheis stàiteil agad fhèin a chuir air bhog. Chan eil seo gu math goireasach, ach bidh mòran dhaoine ga dhèanamh.

Bidh cuid eile, mar sinne aig Chainstack, a’ cleachdadh stòran-dàta stiùirichte mar MySQL no PostgreSQL airson an luchd-frithealaidh. Sin as coireach gu bheil na stòran-dàta againn suidhichte an àiteigin san sgòth.

Ach tha duilgheadas ag èirigh: feumaidh sinn ar seirbheis a cheangal ri stòr-dàta, blas stòr-dàta a chruthachadh, an teisteanas a ghluasad agus dòigh air choireigin a riaghladh. Mar as trice bidh seo uile air a dhèanamh le làimh le rianadair an t-siostaim no leasaiche. Agus chan eil duilgheadas ann nuair nach eil mòran thagraidhean ann. Nuair a tha tòrr dhiubh ann, feumaidh tu measgachadh. Tha leithid de bhuain ann - is e Broker Seirbheis a th’ ann. Leigidh e leat plugan sònraichte a chleachdadh airson cruinneachadh sgòthan poblach agus goireasan òrdachadh bhon t-solaraiche tro Broker, mar gum b’ e API a bh’ ann. Gus seo a dhèanamh, faodaidh tu innealan dùthchasach Kubernetes a chleachdadh.

Tha e gu math sìmplidh. Faodaidh tu ceasnachadh, mar eisimpleir, Managed MySQL ann an Azure le sreath bunaiteach (faodar seo a rèiteachadh). A’ cleachdadh an Azure API, thèid an stòr-dàta a chruthachadh agus ullachadh airson a chleachdadh. Chan fheum thu casg a chuir air seo, tha am plugan an urra ri seo. Mar eisimpleir, tillidh OSBA (plugan Azure) teisteanas don t-seirbheis agus cuiridh e gu Helm e. Bidh e comasach dhut WordPress a chleachdadh le sgòth MySQL, gun a bhith a’ dèiligeadh ri stòran-dàta fo stiùir idir agus gun a bhith draghail mu sheirbheisean stàiteil a-staigh.

Faodaidh sinn a ràdh gu bheil Helm ag obair mar glaodh a leigeas leat, air an aon làimh, seirbheisean a chleachdadh, agus air an làimh eile, goireasan luchd-solair sgòthan ithe.

Faodaidh tu am plugan agad fhèin a sgrìobhadh agus an sgeulachd slàn seo a chleachdadh san togalach. An uairsin bidh dìreach am plugan agad fhèin airson an solaraiche corporra Cloud. Tha mi a’ moladh an dòigh-obrach seo fheuchainn, gu sònraichte ma tha sgèile mhòr agad agus gu bheil thu airson dev, stèidse, no am bun-structar gu lèir a chuir an sàs gu sgiobalta airson feart. Nì seo beatha nas fhasa dha na h-obraichean agad no DevOps.

Is e lorg eile air an tug mi iomradh mu thràth plugan helm-gcs, a leigeas leat Google-buckets (stòradh stuth) a chleachdadh gus clàran Helm a stòradh.

Tèarainteachd Helm

Chan fheum thu ach ceithir òrdughan airson tòiseachadh air a chleachdadh:

  1. stàlaich am plugan;
  2. a thòiseachadh;
  3. suidhich an t-slighe chun a 'bhucaid, a tha suidhichte ann an gcp;
  4. foillsich clàran san dòigh àbhaisteach.

Is e a’ bhòidhchead gun tèid an dòigh dùthchasach gcp a chleachdadh airson cead. Faodaidh tu cunntas seirbheis, cunntas leasaiche a chleachdadh, ge bith dè a tha thu ag iarraidh. Tha e gu math goireasach agus chan eil e a’ cosg dad airson obrachadh. Ma bhrosnaicheas tu, mar mise, an fheallsanachd opsless, bidh seo gu math goireasach, gu sònraichte dha sgiobaidhean beaga.

Roghainnean eile

Chan e Helm an aon fhuasgladh stiùireadh seirbheis. Tha tòrr cheistean ann mu dheidhinn, agus is dòcha gur e sin as coireach gun do nochd an treas dreach cho luath. Gu dearbh tha roghainnean eile ann.

Faodaidh iad seo a bhith nan fuasglaidhean sònraichte, mar eisimpleir, Ksonnet no Metaparticle. Faodaidh tu na h-innealan riaghlaidh bun-structair clasaigeach agad (Ansible, Terraform, Chef, msaa) a chleachdadh airson na h-aon adhbharan ris an do bhruidhinn mi.

Mu dheireadh tha fuasgladh ann Frèam gnìomhaiche, aig a bheil fèill a’ fàs.

Is e Frèam Gnìomhaiche am prìomh roghainn Helm airson beachdachadh.

Tha e nas dùthchasach do CNCF agus Kubernetes, ach tha an cnap-starra airson faighinn a-steach mòran nas àirde, feumaidh tu barrachd phrògraman a dhèanamh agus cunntas a thoirt air nochdaidhean nas lugha.

Tha diofar addons ann, leithid Dreach, Scaffold. Bidh iad a’ dèanamh beatha gu math nas fhasa, mar eisimpleir, bidh iad a’ sìmpleachadh a’ chearcall de bhith a’ cur agus a’ cur air bhog Helm airson luchd-leasachaidh gus àrainneachd deuchainn a chleachdadh. Chanainn iad luchd-cumhachdachaidh.

Seo clàr lèirsinneach de far a bheil a h-uile càil.

Tèarainteachd Helm

Air an x-axis tha an ìre de smachd pearsanta agad air na tha a’ tachairt, air an y-axis tha ìre dùthchasach Kubernetes. Tha tionndadh Helm 2 a 'tuiteam an àiteigin sa mheadhan. Ann an dreach 3, chan ann gu mòr, ach chaidh an dà chuid smachd agus ìre an dùthchasach a leasachadh. Tha fuasglaidhean aig ìre Ksonnet fhathast nas ìsle eadhon gu Helm 2. Ach, is fhiach coimhead orra gus faighinn a-mach dè eile a tha san t-saoghal seo. Gu dearbh, bidh am manaidsear rèiteachaidh agad fo do smachd, ach gu tur chan eil e dùthchasach do Kubernetes.

Tha am Frèam Gnìomhaiche gu tur dùthchasach do Kubernetes agus leigidh e leat a riaghladh tòrr nas eireachdail agus nas mionaidiche (ach cuimhnich mun ìre inntrigidh). An àite sin, tha seo freagarrach airson tagradh sònraichte agus cruthachadh riaghladh air a shon, seach mòr-bhuain airson pacadh àireamh mhòr de thagraidhean a ’cleachdadh Helm.

Bidh luchd-leudachaidh dìreach a’ leasachadh smachd beagan, a’ cur ri sruth-obrach, no a’ gearradh oiseanan air pìoban CI/CD.

Helm san àm ri teachd

Is e an deagh naidheachd gu bheil Helm 3 a 'tighinn. Tha an tionndadh alpha de Helm 3.0.0-alpha.2 air a leigeil ma sgaoil mu thràth, faodaidh tu feuchainn air. Tha e gu math seasmhach, ach tha comas-gnìomh fhathast cuibhrichte.

Carson a tha feum agad air Helm 3? An toiseach, is e sgeulachd mu dheidhinn a tha seo Tiller à sealladh, mar cho-phàirt. Tha seo, mar a thuigeas tu mu thràth, na cheum mòr air adhart, oir bho shealladh tèarainteachd na h-ailtireachd, tha a h-uile dad nas sìmplidhe.

Nuair a chaidh Helm 2 a chruthachadh, a bha timcheall air àm Kubernetes 1.8 no eadhon na bu thràithe, bha mòran de na bun-bheachdan neo-aibidh. Mar eisimpleir, tha bun-bheachd CRD a-nis ga chur an gnìomh gu gnìomhach, agus nì Helm Cleachd CRDairson structaran a stòradh. Bidh e comasach an neach-dèiligidh a-mhàin a chleachdadh agus gun a bhith a’ cumail suas pàirt an fhrithealaiche. Mar sin, cleachd òrdughan dùthchasach Kubernetes gus obrachadh le structaran agus goireasan. Is e ceum mòr air adhart a tha seo.

Nochdaidh taic airson stòran dùthchasach OCI (Iomairt Bogsa Fosgailte). Is e iomairt mhòr a tha seo, agus tha ùidh aig Helm gu sònraichte airson na clàran aige a phostadh. Tha e a’ tighinn chun na h-ìre gu bheil, mar eisimpleir, Docker Hub a ’toirt taic do dh’ iomadh inbhean OCI. Chan eil mi creidsinn, ach is dòcha gun tòisich solaraichean tasgaidh clasaigeach Docker a’ toirt cothrom dhut na clàran Helm agad a chumail.

Tha an sgeulachd chonnspaideach dhòmhsa Taic Lua, mar einnsean teamplaid airson sgriobtaichean a sgrìobhadh. Chan eil mi dèidheil air Lua, ach bhiodh seo na fheart gu tur roghainneil. Rinn mi sgrùdadh air seo 3 tursan - cha bhith feum air Lua a chleachdadh. Mar sin, bidh an fheadhainn a tha airson a bhith comasach air Lua a chleachdadh, an fheadhainn a tha dèidheil air Go, a’ tighinn còmhla ris a’ champa mhòr againn agus a’ cleachdadh go-tmpl airson seo.

Mu dheireadh, b 'e an rud a bha mi gu cinnteach a dhìth nochdadh sgeama agus dearbhadh seòrsa dàta. Cha bhith barrachd dhuilgheadasan ann le int no sreang, cha bhith feum air neoni a chòmhdach ann an luachan dùbailte. Nochdaidh sgeama JSONS a leigeas leat seo a mhìneachadh gu soilleir airson luachan.

Thèid ath-obrachadh gu mòr modail air a stiùireadh le tachartas. Tha e mu thràth air a mhìneachadh gu bun-bheachdail. Coimhead air meur Helm 3, agus chì thu cia mheud tachartas agus dubhan agus rudan eile a chaidh a chur ris, a nì gu mòr nas sìmplidhe agus, air an làimh eile, a chuireas smachd air na pròiseasan cleachdadh agus ath-bheachdan dhaibh.

Bidh Helm 3 nas sìmplidh, nas sàbhailte, agus nas spòrsail, chan ann air sgàth nach toil leinn Helm 2, ach air sgàth gu bheil Kubernetes a’ fàs nas adhartaiche. Mar sin, faodaidh Helm leasachaidhean Kubernetes a chleachdadh agus manaidsearan sàr-mhath a chruthachadh airson Kubernetes air.

Is e deagh naidheachd eile a tha sin DevOpsConf Alasdair Khayorov ag innse dhut. . an urrainn dha soithichean a bhith sàbhailte? Leig dhuinn do chuimhneachadh gun tèid a’ cho-labhairt air amalachadh pròiseasan leasachaidh, deuchainn agus obrachaidh a chumail ann am Moscow 30 Sultain agus 1 Dàmhair. Faodaidh tu fhathast a dhèanamh gu 20 Lùnastal cuir a-steach aithisg agus innis dhuinn mun eòlas agad leis an fhuasgladh fear de mhòran gnìomhan dòigh-obrach DevOps.

Lean puingean-sgrùdaidh co-labhairt agus naidheachdan aig liosta puist и sianal teileagram.

Source: www.habr.com

Cuir beachd ann