Na cleachtais is fearr Kubernetes. Coimeádáin bheaga a chruthú

Na cleachtais is fearr Kubernetes. Coimeádáin bheaga a chruthú

Is é an chéad chéim le himscaradh chuig Kubernetes ná d’iarratas a chur i gcoimeádán. Sa tsraith seo, féachfaimid ar conas is féidir leat íomhá coimeádán beag, slán a chruthú.
Buíochas le Docker, ní raibh sé riamh níos éasca íomhánna coimeádáin a chruthú. Sonraigh íomhá bonn, cuir do chuid athruithe leis, agus cruthaigh coimeádán.

Na cleachtais is fearr Kubernetes. Coimeádáin bheaga a chruthú

Cé go bhfuil an teicníocht seo iontach chun tús a chur leis, d'fhéadfadh obair neamhshábháilte a bheith mar thoradh ar bhuníomhánna réamhshocraithe agus íomhánna móra lán le leochaileachtaí.

Ina theannta sin, úsáideann formhór na n-íomhánna i Docker Debian nó Ubuntu don bhuníomhá, agus cé go soláthraíonn sé seo comhoiriúnacht den scoth agus saincheaptha éasca (ní thógann comhad Docker ach dhá líne de chód), is féidir le híomhánna bonn na céadta meigeavata d'ualach breise a chur le do choimeádán. Mar shampla, tá thart ar 700 meigeavata i gcomhad node.js simplí d’fheidhmchlár Go “hello-world”, cé nach bhfuil ach cúpla meigibheart i méid d’fheidhmchlár iarbhír.

Na cleachtais is fearr Kubernetes. Coimeádáin bheaga a chruthú

Mar sin is cur amú spáis dhigitigh an t-ualach oibre breise seo agus is áit fholaigh iontach é do leochaileachtaí slándála agus do fhabhtanna. Mar sin déanaimis féachaint ar dhá bhealach chun méid íomhá coimeádán a laghdú.

Is é an chéad úsáid a bhaint as íomhánna bonn beag, is é an dara úsáid an Patrún Tógálaí. Is dócha gurb é an bealach is éasca chun méid do choimeádáin a laghdú ná buníomhánna níos lú a úsáid. Is dócha go soláthraíonn an teanga nó an chairn atá á úsáid agat íomhá feidhmchláir bhunaidh atá i bhfad níos lú ná an íomhá réamhshocraithe. Breathnaímid ar ár gcoimeádán nód.js.

Na cleachtais is fearr Kubernetes. Coimeádáin bheaga a chruthú

De réir réamhshocraithe i Docker, is é an nód:8 méid íomhá bonn 670 MB, agus an nód: Tá méid íomhá 8-alpach ach 65 MB, is é sin, 10 n-uaire níos lú. Trí úsáid a bhaint as an íomhá bonn Alpach níos lú, laghdóidh tú go suntasach méid do choimeádáin. Is dáileadh Linux beag agus éadrom é Alpach a bhfuil an-tóir air i measc úsáideoirí Docker toisc go bhfuil sé ag luí le go leor iarratas agus coimeádáin á gcoimeád beag. Murab ionann agus íomhá chaighdeánach "nód" an Docker, baintear "nód:alpach" go leor comhad seirbhíse agus clár, ag fágáil ach iad siúd atá leordhóthanach chun d'iarratas a rith.

Chun bogadh go buníomhá níos lú, níl le déanamh ach an Dockerfile a nuashonrú chun tosú ag obair leis an mbuníomhá nua:

Na cleachtais is fearr Kubernetes. Coimeádáin bheaga a chruthú

Anois, murab ionann agus an sean-íomhá onbuild, ní mór duit do chód a chóipeáil isteach sa choimeádán agus aon spleáchais a shuiteáil. I Dockerfile nua, tosaíonn an coimeádán le nód:íomhá alpach, cruthaítear ansin eolaire don chód, suiteálann sé spleáchais ag baint úsáide as bainisteoir pacáiste NPM, agus ar deireadh ritheann server.js.

Na cleachtais is fearr Kubernetes. Coimeádáin bheaga a chruthú

Mar thoradh ar an uasghrádú seo tá coimeádán atá 10 n-uaire níos lú i méid. Mura bhfuil feidhmiúlacht laghdaithe buníomhá ag do theanga ríomhchlárúcháin nó i do chairn, bain úsáid as Alpine Linux. Soláthróidh sé freisin an cumas ábhar an choimeádáin a bhainistiú go hiomlán. Is bealach iontach é íomhánna bonn beaga a úsáid chun coimeádáin bheaga a chruthú go tapa. Ach is féidir laghdú níos mó fós a bhaint amach ag baint úsáide as an Patrún Tógálaí.

Na cleachtais is fearr Kubernetes. Coimeádáin bheaga a chruthú

I dteangacha ateangaireachta, cuirtear an cód foinse ar aghaidh chuig an ateangaire ar dtús agus ansin déantar é a fhorghníomhú go díreach. I dteangacha tiomsaithe, déantar an cód foinse a thiontú go cód tiomsaithe ar dtús. Mar sin féin, is minic a úsáideann tiomsú uirlisí nach bhfuil gá leo i ndáiríre chun an cód a rith. Ciallaíonn sé seo gur féidir leat na huirlisí seo a bhaint go hiomlán as an gcoimeádán deiridh. Is féidir leat Patrún Tógálaí a úsáid le haghaidh seo.

Na cleachtais is fearr Kubernetes. Coimeádáin bheaga a chruthú

Cruthaítear an cód sa chéad choimeádán agus cuirtear le chéile é. Déantar an cód tiomsaithe a phacáistiú ansin isteach i gcoimeádán deiridh gan na tiomsaitheoirí agus na huirlisí is gá chun an cód sin a thiomsú. Déanaimis iarratas Téigh tríd an bpróiseas seo. Ar dtús, bogfaimid ón íomhá onbuild go Alpach Linux.

Na cleachtais is fearr Kubernetes. Coimeádáin bheaga a chruthú

Sa Dockerfile nua, tosaíonn an coimeádán le golang:íomhá alpach. Ansin cruthaíonn sé eolaire don chód, déanann sé é a chóipeáil isteach sa bhunchód, tógann sé an cód foinse sin, agus ritheann sé an feidhmchlár. Tá an coimeádán seo i bhfad níos lú ná an coimeádán onbuild, ach fós tá an tiomsaitheoir agus uirlisí Go eile ann nach bhfuil ag teastáil uainn i ndáiríre. Mar sin, déanaimis an clár tiomsaithe a bhaint as agus é a chur ina choimeádán féin.

Na cleachtais is fearr Kubernetes. Coimeádáin bheaga a chruthú

Seans go dtabharfaidh tú faoi deara rud éigin aisteach sa chomhad Docker seo: tá dhá líne FROM ann. Breathnaíonn an chéad chuid 4 líne díreach mar an gcéanna leis an Dockerfile roimhe seo ach amháin go n-úsáideann sé an eochairfhocal AS chun an chéim seo a ainmniú. Tá líne nua FROM sa chéad chuid eile chun íomhá nua a thosú, áit a n-úsáidfimid Raw alpach mar bhuníomhá in ionad an íomhá golang:alpach.

Níl aon deimhnithe SSL suiteáilte ag Raw Alpine Linux, rud a fhágann go dteipfidh ar an chuid is mó de ghlaonna API thar HTTPS, mar sin déanaimis roinnt teastais CA fréimhe a shuiteáil.

Anois tagann an chuid spraoi: chun an cód tiomsaithe a chóipeáil ón gcéad choimeádán go dtí an dara ceann, is féidir leat an t-ordú COPY atá suite ar líne 5 den dara cuid a úsáid. Ní dhéanfaidh sé ach comhad iarratais amháin a chóipeáil agus ní dhéanfaidh sé difear d'uirlisí fóntais Go. Beidh íomhá coimeádán sa chomhad Docker ilchéime nua nach bhfuil ach 12 meigeavata i méid, i gcomparáid leis an íomhá coimeádán bunaidh a bhí 700 meigeavata, rud atá ina difríocht mhór!
Mar sin is bealaí iontacha iad íomhánna bonn beaga agus Patrún Tógálaí a úsáid chun coimeádáin i bhfad níos lú a chruthú gan a lán oibre.
Is féidir, ag brath ar an gcruach feidhmchlár, go bhfuil bealaí breise ann chun íomhá agus méid coimeádáin a laghdú, ach an bhfuil buntáiste intomhaiste ag coimeádáin bheaga i ndáiríre? Breathnaímid ar dhá réimse ina bhfuil coimeádáin bheaga thar a bheith éifeachtach - feidhmíocht agus slándáil.

Chun an méadú feidhmíochta a mheas, smaoinigh ar fhad an phróisis chun coimeádán a chruthú, é a chur isteach sa chlár (a bhrú), agus ansin é a aisghabháil ó ann (tarraingt). Is féidir leat a fheiceáil go bhfuil buntáiste ar leith ag coimeádán níos lú thar choimeádán níos mó.

Na cleachtais is fearr Kubernetes. Coimeádáin bheaga a chruthú

Déanfaidh Docker na sraitheanna a thaisceadh ionas go mbeidh tógáil ina dhiaidh sin an-tapa. Mar sin féin, ní dhéanann go leor córais CI a úsáidtear chun coimeádáin a thógáil agus a thástáil sraitheanna taisce, agus mar sin tá coigilteas suntasach ama ann. Mar a fheiceann tú, tá an t-am chun coimeádán mór a thógáil, ag brath ar chumhacht do mheaisín, ó 34 go 54 soicind, agus nuair a úsáidtear coimeádán laghdaithe ag baint úsáide as an Patrún Tógálaí - ó 23 go 28 soicind. I gcás oibríochtaí den chineál seo, beidh an méadú ar tháirgiúlacht 40-50%. Mar sin, smaoinigh ar cé mhéad uair a thógann tú do chód agus a thástáil.

Tar éis an coimeádán a thógáil, ní mór duit a íomhá (íomhá coimeádán a bhrú) a bhrú isteach sa chlár coimeádán ionas gur féidir leat é a úsáid ansin i do bhraisle Kubernetes. Molaim úsáid a bhaint as Google Container Registry.

Na cleachtais is fearr Kubernetes. Coimeádáin bheaga a chruthú

Le Clárlann Coimeádán Google (GCR), ní íocann tú ach as stóráil amh agus líonrú, agus níl aon táillí bainistíochta coimeádán breise i gceist. Tá sé príobháideach, slán agus an-tapa. Úsáideann GCR go leor cleasanna chun an oibríocht tarraingt a bhrostú. Mar a fheiceann tú, tógfaidh sé 15 go 48 soicind le coimeádán Íomhá Coimeádán Docker a chur isteach ag baint úsáide as go:onbuild, ag brath ar fheidhmíocht an ríomhaire, agus tógfaidh an oibríocht chéanna le coimeádán níos lú ó 14 go 16 soicind, agus le haghaidh meaisíní nach bhfuil chomh táirgiúil. Méadaíonn an buntáiste i luas oibríochta faoi 3 huaire. I gcás meaisíní níos mó, tá an t-am thart ar an gcéanna, ós rud é go n-úsáideann GCR taisce domhanda le haghaidh bunachar sonraí comhroinnte íomhánna, rud a chiallaíonn nach gá duit iad a luchtú ar chor ar bith. I ríomhaire ísealchumhachta, is é an LAP an tranglam, agus mar sin tá an buntáiste a bhaineann le coimeádáin bheaga a úsáid i bhfad níos mó anseo.

Má tá GCR á úsáid agat, molaim go mór úsáid a bhaint as Google Container Builder (GCB) mar chuid de do chóras tógála.

Na cleachtais is fearr Kubernetes. Coimeádáin bheaga a chruthú

Mar a fheiceann tú, ceadaíonn a úsáid duit torthaí i bhfad níos fearr a bhaint amach chun fad na hoibríochta Build+Push a laghdú ná fiú meaisín táirgiúil - sa chás seo, déantar an próiseas tógála agus seolta coimeádáin chuig an óstach a luathú beagnach 2 uair. . Ina theannta sin, faigheann tú 120 nóiméad tógála saor in aisce gach lá, a chlúdaíonn do riachtanais tógála coimeádán i bhformhór na gcásanna.

Ansin tagann an méadrach feidhmíochta is tábhachtaí - an luas a bhaineann le coimeádáin Tarraingthe a aisghabháil nó a íoslódáil. Agus mura bhfuil mórán imní ort faoin am a chaitear ar oibríocht bhrú, ansin bíonn tionchar tromchúiseach ag fad an phróisis tarraingthe ar fheidhmíocht iomlán an chórais. Ligean le rá go bhfuil cnuasach de thrí nód agat agus teipeann ar cheann acu. Má tá córas bainistíochta á úsáid agat mar Google Kubernetes Engine, cuirfidh sé ceann nua in ionad an nód marbh go huathoibríoch. Mar sin féin, beidh an nód nua seo go hiomlán folamh agus beidh ort do chuid coimeádáin go léir a tharraingt isteach ann le go dtosóidh sé ag obair. Má thógann an oibríocht tarraingt fada go leor, rithfidh do bhraisle ag feidhmíocht níos ísle an t-am ar fad.

Tá go leor cásanna ann inar féidir leis seo tarlú: nód nua a chur le braisle, nóid a uasghrádú, nó fiú aistriú chuig coimeádán nua le himscaradh. Mar sin, is príomhfhachtóir é an t-am astarraingthe tarraingthe a íoslaghdú. Ní féidir a shéanadh go n-íoslódálann coimeádán beag i bhfad níos tapúla ná ceann mór. Má tá tú ag rith coimeádán iolrach i mbraisle Kubernetes, is féidir leis an coigilteas ama a bheith suntasach.

Na cleachtais is fearr Kubernetes. Coimeádáin bheaga a chruthú

Féach ar an gcomparáid seo: tógann oibríocht tarraingthe ar choimeádáin bheaga 4-9 huaire níos lú ama, ag brath ar chumhacht an mheaisín, ná an oibríocht chéanna ag baint úsáide as go:onbuild. Trí úsáid a bhaint as íomhánna comhroinnte, bonn coimeádáin, cuireann sé go mór an t-am agus an luas ar féidir nóid Kubernetes nua a imscaradh agus teacht ar líne.

Breathnaímid ar cheist na slándála. Meastar go bhfuil coimeádáin níos lú i bhfad níos sábháilte ná na cinn níos mó toisc go bhfuil dromchla ionsaithe níos lú acu. An bhfuil sé i ndáiríre? Ceann de na gnéithe is úsáidí de Chlár Coimeádán Google ná an cumas do choimeádáin a scanadh go huathoibríoch le haghaidh leochaileachtaí. Cúpla mí ó shin chruthaigh mé coimeádáin onbuild agus multistage araon, mar sin déanaimis a fheiceáil an bhfuil aon leochaileachtaí ann.

Na cleachtais is fearr Kubernetes. Coimeádáin bheaga a chruthú

Tá an toradh iontach: níor aimsíodh ach 3 leochaileacht mheánacha i gcoimeádán beag, agus fuarthas 16 leochaileacht chriticiúil agus 376 leochaileacht eile i gcoimeádán mór. Má fhéachaimid ar ábhar coimeádán mór, is féidir linn a fheiceáil nach bhfuil baint ag an chuid is mó de na fadhbanna slándála lenár n-iarratas, ach go mbaineann siad le cláir nach n-úsáideann muid fiú. Mar sin nuair a labhraíonn daoine faoi dhromchla mór ionsaithe, sin an rud atá i gceist leo.

Na cleachtais is fearr Kubernetes. Coimeádáin bheaga a chruthú

Tá an beir leat soiléir: tóg coimeádáin bheaga mar go dtugann siad fíor-bhuntáistí feidhmíochta agus slándála do do chóras.

Na cleachtais is fearr Kubernetes. Eagraíocht na Kubernetes le hainmspás

Roinnt fógraí 🙂

Go raibh maith agat as fanacht linn. An maith leat ár n-alt? Ar mhaith leat ábhar níos suimiúla a fheiceáil? Tacaigh linn trí ordú a dhéanamh nó moladh a thabhairt do chairde, scamall VPS d'fhorbróirí ó $4.99, analóg uathúil de fhreastalaithe leibhéal iontrála, a cheap muid duit: An fhírinne iomlán a insint faoi VPS (KVM) E5-2697 v3 (6 Cores) 10GB DDR4 480GB SSD 1Gbps ó $19 nó conas freastalaí a roinnt? (ar fáil le RAID1 agus RAID10, suas le 24 croíleacan agus suas le 40GB DDR4).

Dell R730xd 2x níos saoire i lárionad sonraí Equinix Tier IV in Amstardam? Ach anseo 2 x Intel TetraDeca-Core Xeon 2x E5-2697v3 2.6GHz 14C 64GB DDR4 4x960GB SSD 1Gbps 100 teilifíse ó $199 san Ísiltír! Dell R420 - 2x E5-2430 2.2Ghz 6C 128GB DDR3 2x960GB SSD 1Gbps 100TB - ó $99! Léigh faoi Conas corprú bonneagair a thógáil. rang le húsáid freastalaithe Dell R730xd E5-2650 v4 fiú 9000 euro ar phingin?

Foinse: will.com

Add a comment