ProHoster > Blag > Riarachán > CRI-O in ionad Docker mar thimpeallacht ama rite do Kubernetes: socrú ar CentOS 8
CRI-O in ionad Docker mar thimpeallacht ama rite do Kubernetes: socrú ar CentOS 8
Dia dhuit! Sergey is ainm dom, is DevOps mé ag Surf. Tá sé mar aidhm ag roinn DevOps ag Surf ní hamháin idirghníomhaíocht a bhunú idir speisialtóirí agus próisis oibre a chomhtháthú, ach freisin taighde gníomhach a dhéanamh ar theicneolaíochtaí reatha agus iad a chur i bhfeidhm ina mbonneagar féin agus i mbonneagar an chustaiméara.
Anseo thíos labhróidh mé beagán faoi na hathruithe sa chruach teicneolaíochta le haghaidh coimeádáin ar tháinig muid orthu agus muid ag déanamh staidéir ar an dáileadh 8 CentOS agus faoi cad é CRI-O agus conas timpeallacht inrite a chur ar bun go tapa le haghaidh Kubernetes.
Cén fáth nach bhfuil Docker san áireamh i CentOS 8?
Tar éis na heisiúintí móra is déanaí a shuiteáil ríl 8 nó 8 CentOS ní féidir cabhrú ach a thabhairt faoi deara: níl an feidhmchlár sna dáiltí agus na stórtha oifigiúla seo dhugaire, a chuireann pacáistí in ionad idé-eolaíoch agus feidhmiúil podman, Tóga (i láthair sa dáileadh de réir réamhshocraithe) agus CRI-O. Tá sé seo mar gheall ar chur i bhfeidhm praiticiúil na gcaighdeán arna bhforbairt, i measc rudaí eile, ag Red Hat mar chuid den tionscadal Tionscnamh Coimeádán Oscailte (OCI).
Is é sprioc OCI, atá mar chuid den Fhondúireacht Linux, ná caighdeáin tionscail oscailte a chruthú le haghaidh formáidí coimeádán agus amanna rite a réitíonn roinnt fadhbanna ag an am céanna. Ar an gcéad dul síos, níor tháinig siad salach ar fhealsúnacht Linux (mar shampla, sa chuid gur cheart do gach clár gníomh amháin a dhéanamh, agus dhugaire is cineál comhcheangail uile-i-amháin). Ar an dara dul síos, d'fhéadfadh siad deireadh a chur le gach easnamh atá ann cheana féin sna bogearraí dhugaire. Ar an tríú dul síos, bheadh siad ag luí go hiomlán leis na ceanglais ghnó arna leagan síos ag ardáin thráchtála chun tosaigh chun feidhmchláir coimeádaithe a imscaradh, a bhainistiú agus a fhreastal (mar shampla, Red Hat OpenShift).
Teorainneacha dhugaire agus tá cur síos go mion cheana féin ar bhuntáistí na mbogearraí nua i an t-alt seo, agus tá cur síos mionsonraithe ar an gcruach bogearraí ar fad a thairgtear laistigh den tionscadal OCI agus a ghnéithe ailtireachta le fáil sna doiciméid oifigiúla agus sna hailt ó Red Hat féin (ní droch-cháil airteagal sa bhlag Red Hat) agus sa tríú páirtí léirmheasanna.
Tá sé tábhachtach a thabhairt faoi deara cén fheidhmiúlacht atá ag comhpháirteanna an chruach bheartaithe:
podman — idirghníomhú díreach le coimeádáin agus stóráil íomhánna tríd an bpróiseas runC;
Tóga — íomhánna a chur le chéile agus a uaslódáil chuig an gclár;
Sílim go bhfuil sé inmholta léaráid nasc a sholáthar anseo chun scéim ghinearálta na hidirghníomhaíochta idir comhpháirteanna an chairn a thuiscint. Kubernetes c rithC agus leabharlanna ar leibhéal íseal ag baint úsáide as CRI-O:
CRI-O и Kubernetes cloí leis an timthriall scaoileadh agus tacaíochta céanna (tá an maitrís comhoiriúnachta an-simplí: leaganacha móra Kubernetes и CRI-O ag an am céanna), agus tugann sé seo, ag cur san áireamh an fócas ar thástáil iomlán agus chuimsitheach ar oibriú an chairn ag forbróirí, an ceart dúinn a bheith ag súil leis an chobhsaíocht uasta insroichte i bhfeidhm faoi aon chásanna úsáide (tá Gile coibhneasta tairbheach freisin anseo CRI-O i gcomparáid le dhugaire mar gheall ar theorannú cuspóireach feidhmiúlacht).
Nuair a shuiteáil Kubernetes bealach "ceart" (de réir OCI, ar ndóigh) ag baint úsáide as CRI-O ar 8 CentOS Thángamar ar roinnt miondeacrachtaí, rud a d’éirigh linn, áfach, a shárú. Beidh áthas orm treoracha suiteála agus cumraíochta a roinnt leat, rud a thógfaidh thart ar 10 nóiméad san iomlán.
Conas Kubernetes a imscaradh ar CentOS 8 ag baint úsáide as an gcreat CRI-O
Réamhriachtanais: óstach amháin ar a laghad a bheith i láthair (2 chroílár, 4 GB RAM, 15 GB ar a laghad) le suiteáil 8 CentOS (moltar próifíl suiteála an “Freastalaí”), chomh maith le hiontrálacha dó sa DNS áitiúil (mar rogha dheireanach, is féidir leat dul isteach le hiontráil i /etc/hosts). Agus ná déan dearmad díchumasaigh babhtáil.
Déanaimid gach oibríocht ar an ósta mar an t-úsáideoir fréimhe, a bheith cúramach.
Sa chéad chéim, déanfaimid an OS a chumrú, a shuiteáil agus a chumrú réamhspleáchais do CRI-O.
Déanaimis an OS a nuashonrú:
dnf -y update
Ansin ní mór duit an balla dóiteáin agus SELinux a chumrú. Anseo braitheann gach rud ar an timpeallacht ina n-oibreoidh ár n-óstach nó ár n-óstach. Is féidir leat balla dóiteáin a shocrú de réir na moltaí ó doiciméadú, nó, má tá tú ar líonra iontaofa nó má úsáideann tú balla dóiteáin tríú páirtí, athraigh an crios réamhshocraithe go dtí an balla dóiteáin iontaofa nó múch:
socraigh an leagan riachtanach CRI-O (mórleagan CRI-O, mar a luadh cheana, a mheaitseáil leis an leagan riachtanach Kubernetes), ós rud é an leagan cobhsaí is déanaí Kubernetes faoi láthair 1.18:
Tabhair aird ar an gcéad nuance a bhíonn againn le linn an phróisis suiteála: ní mór duit an chumraíocht a chur in eagar CRI-O sula dtosaíonn tú ar an tseirbhís, ós rud é go bhfuil suíomh difriúil ag an gcomhpháirt cón a éilítear ná an ceann sonraithe:
sed -i 's//usr/libexec/crio/conmon//usr/bin/conmon/' /etc/crio/crio.conf
Anois is féidir leat an deamhan a ghníomhachtú agus a thosú CRI-O:
An dara nuance tábhachtach: ós rud é nach úsáidimid deamhan dhugaire, ach úsáidimid an deamhan CRI-O, roimh é a sheoladh agus a thúsú Kubernetes ní mór duit na socruithe cuí a dhéanamh sa chomhad cumraíochta /var/lib/kubelet/config.yaml, tar éis duit an t-eolaire atá uait a chruthú ar dtús:
An tríú pointe tábhachtach a bhíonn againn le linn na suiteála: in ainneoin gur léirigh muid an tiománaí a úsáideadh cgroup, agus a chumraíocht trí na hargóintí a ritheadh cuaille as dáta (mar a deirtear go sainráite sa cháipéisíocht), caithfimid argóintí a chur leis an gcomhad, nó ní dhéanfar ár mbraisle a thúsú:
Anois is féidir linn an deamhan a ghníomhachtú cuaille:
sudo systemctl enable --now kubelet
A shaincheapadh rialú-eitleán nó oibrí nóid i nóiméid, is féidir leat é a úsáid leis an script seo.
Tá sé in am ár mbraisle a thúsú.
Chun an braisle a thosú, rith an t-ordú:
kubeadm init --pod-network-cidr=10.244.0.0/16
Bí cinnte an t-ordú a scríobh síos chun dul isteach sa bhraisle “kubeadm join …”, a iarrtar ort a úsáid ag deireadh an aschuir, nó ar a laghad na comharthaí sonraithe.
Déanaimis an breiseán (CNI) a shuiteáil don líonra Pod. Molaim úsáid a bhaint as Calico. B'fhéidir níos mó tóir Flannel tá fadhbanna comhoiriúnachta aige le nftables, tá agus Calico - an t-aon chur chun feidhme CNI atá molta ag an tionscadal agus a thástáil go hiomlán Kubernetes:
Chun nód oibrithe a nascadh lenár mbraisle, ní mór duit é a chumrú de réir threoracha 1 agus 2, nó úsáid script, ansin rith an t-ordú ón aschur “kubeadm init...” a scríobhamar síos sa chéim roimhe seo:
Déanaimis seiceáil go bhfuil ár mbraisle tosaithe agus tosaithe ag obair:
kubectl --kubeconfig=/etc/kubernetes/admin.conf get pods -A
Réidh! Is féidir leat uaslódálacha a óstáil ar do bhraisle K8s cheana féin.
Cad atá romhainn
Tá súil agam gur chabhraigh na treoracha thuas roinnt ama agus nerves duit.
Braitheann toradh na bpróiseas a tharlaíonn sa tionscal go minic ar an gcaoi a nglacann formhór na n-úsáideoirí deiridh agus forbróirí bogearraí eile sa nideoige comhfhreagrach leo. Níl sé iomlán soiléir fós cad a bheidh mar thoradh ar thionscnaimh OCI i gceann cúpla bliain, ach beimid ag faire le pléisiúr. Is féidir leat do thuairim a roinnt anois sna tuairimí.
Fanacht tiúnta!
Léiríodh an t-alt seo a bhuíochas leis na foinsí seo a leanas: