LFCA: Koyi Tushen Ka'idodin Amfani da Kwantena - Sashe na 22


A tsawon lokaci, yayin da buƙatar gwajin sauri da tura aikace-aikacen ke ƙaruwa tare da saurin kasuwancin kasuwanci, an tilasta ƙungiyoyi su ƙirƙira don ci gaba da yanayin kasuwanci mai sauri.

Ƙoƙarin sabunta aikace-aikace da gina sababbi don ƙirƙirar ayyukan aiki agile ya haifar da manufar yin amfani da kwantena. Fasahar sarrafa kwantena ta kusan tsufa kamar yadda ake iya gani. Koyaya, kwantena ba su kunna farin ciki da yawa ba har sai Docker ya fashe a wurin a cikin 2013 kuma ya haifar da sha'awa tsakanin masu haɓakawa da sauran ƙwararrun IT.

A halin yanzu, duk manyan cibiyoyin fasaha irin su Google, Amazon, Microsoft, da Red Hat in ambaci wasu kaɗan sun yi tsalle a kan bandwagon.

Me yasa Kwantena?

Ɗaya daga cikin ƙalubalen da masu haɓakawa ke fuskanta shine bambanci a cikin mahallin kwamfuta a kowane mataki na haɓaka software. Matsaloli suna tasowa lokacin da yanayin software ya bambanta daga mataki ɗaya zuwa na gaba.

Misali, aikace-aikacen na iya gudana ba tare da matsala ba akan yanayin gwaji ta amfani da Python 3.6. Koyaya, aikace-aikacen yana da ban mamaki, yana dawo da wasu kurakurai ko faɗuwa gaba ɗaya lokacin da aka tura shi zuwa yanayin samarwa da ke gudana Python 3.9.

Kwantena sun zo wurin don magance wannan ƙalubalen da kuma tabbatar da cewa aikace-aikacen suna gudana da aminci lokacin da aka motsa daga yanayin kwamfuta guda ɗaya zuwa na gaba a kowane mataki na haɓaka software - daga PC masu haɓakawa har zuwa yanayin samarwa. Kuma ba kawai yanayin software ba ne zai iya haifar da irin wannan rashin daidaituwa, har ma da bambance-bambancen manufofin tsaro.

Menene Kwantena?

Kwantena wani keɓantaccen naúrar software ne wanda ke tattara duk lambobin binary, dakunan karatu, masu aiwatarwa, dogaro, da fayilolin daidaitawa a cikin fakiti ɗaya ta yadda aikace-aikacen zai gudana cikin sauƙi lokacin da aka tura shi daga yanayin kwamfuta zuwa wani. Ba ya zuwa da hoton tsarin aiki wanda ke sa shi sauƙi kuma mai sauƙin ɗauka.

Hoton kwantena shi kadai, mai nauyi, kuma kunshin da za a iya aiwatarwa wanda ke tattare duk abin da ake bukata don aiwatar da aikace-aikacen. A lokacin aiki, hoton akwati yana canzawa zuwa akwati. A cikin yanayin Docker, alal misali, hoton Docker ya zama akwati mai docker lokacin da aka kashe shi akan Injin Docker. Docker yanayi ne na lokacin aiki da ake amfani da shi don gina aikace-aikacen kwantena.

Kwantena suna gudana cikin cikakkiyar keɓance daga tsarin aiki mai tushe, kuma aikace-aikacen da aka ɗora a ciki koyaushe za su yi aiki akai-akai ba tare da la'akari da yanayin kwamfuta ko kayan aikin ba. Wannan shine dalilin da ya sa mai haɓakawa zai iya haɓaka aikace-aikacen daga jin daɗin wannan kwamfutar tafi-da-gidanka kuma a shirye ya tura shi a kan sabar.

Daidaituwa da amincin kwantena masu gudana suna ba masu haɓaka kwanciyar hankali don sanin cewa aikace-aikacen su za su gudana kamar yadda aka sa ran komai inda aka tura su.

Ta yaya Kwantena suka bambanta da Injin Kaya?

Wani abu na yau da kullun da kwantena da injunan kama-da-wane ke rabawa shine cewa suna aiki a cikin yanayi mai ƙima. Kwantena, a wata ma'ana, wani nau'i ne na fasaha mai ƙima. Koyaya, kwantena sun bambanta da injunan kama-da-wane ta hanyoyi da yawa fiye da ɗaya.

Na'urar kama-da-wane kuma ana kiranta da misalin kama-da-wane ko VM a takaice kwaikwaya ce ta uwar garken jiki ko PC. Ƙwararren fasaha fasaha ce da ke ba da damar ƙirƙirar injuna. Tunanin da aka yi amfani da shi ya samo asali ne tun farkon shekarun 1970 kuma ya aza harsashi ga ƙarni na farko na fasahar girgije.

A cikin ƙirƙira, an ƙirƙiri wani yanki na abstraction a saman sabar da ba ta da ƙarfe ko kayan aikin kwamfuta. Wannan yana ba da damar albarkatun kayan masarufi na uwar garken guda ɗaya don raba su a cikin injunan kama-da-wane da yawa.

Ana kiran software ɗin da ake amfani da shi don yin Layer abstraction a matsayin hypervisor. Hypervisor yana zayyana na'ura mai kama-da-wane da kuma OS ɗin baƙo daga ainihin ƙarfe ko kayan aikin kwamfuta. Don haka, injin kama-da-wane yana zaune a saman hypervisor wanda ke samar da albarkatun kayan masarufi godiya ga Layer abstraction.

Injin na'ura mai mahimmanci suna gudanar da cikakken tsarin aiki (baƙi OS) wanda ke zaman kansa daga tsarin aiki na asali ( OS mai watsa shiri ) wanda aka sanya hypervisor akansa. OS ɗin baƙo yana ba da dandamali don ginawa, gwadawa da tura aikace-aikace tare da ɗakunan karatu da binaries.

[Kila kuma son: Yadda ake Sanya KVM akan CentOS/RHEL 8]

Akwai nau'i biyu na Hypervisors:

An shigar da wannan hypervisor kai tsaye a kan uwar garken jiki ko kayan aikin da ke ƙasa. Babu wani tsarin aiki da ke zaune tsakanin hypervisor da kayan aikin kwamfuta, don haka sunan tag ɗin bare-metal hypervisor. Yana ba da kyakkyawan tallafi tun da ba a raba albarkatu tare da tsarin aiki mai watsa shiri.

Saboda ingancin su, Nau'in 1 hypervisors galibi ana amfani da su a cikin mahallin kasuwanci. Nau'in dillalai na hypervisor na 1 sun haɗa da VMware Esxi da KVM.

Hakanan ana ɗaukar wannan azaman hypervisor da aka shirya. An shigar da shi a saman tsarin aiki na rundunar kuma yana raba kayan aikin kayan aiki tare da OS mai masaukin baki.

Nau'in hypervisors na 2 sun dace don ƙananan mahallin kwamfuta kuma galibi ana amfani da su don gwada tsarin aiki da bincike. Nau'in dillalan hypervisor na 2 sun haɗa da VMware Workstation Pro.

Na'urori masu mahimmanci suna da girma a cikin girman (Za su iya ɗaukar GBs da yawa), jinkirin farawa da dakatarwa da haɓaka yawancin albarkatun tsarin da ke haifar da ratayewa da jinkirin aiki saboda ƙarancin albarkatu. Don haka, ana ɗaukar injin kama-da-wane mai girma kuma yana da alaƙa da tsadar kaya.

Kwantena

Ba kamar injin kama-da-wane ba, kwantena baya buƙatar hypervisor. Kwantena yana zaune a saman uwar garken jiki da tsarin aiki kuma yana raba kwaya iri ɗaya da OS a tsakanin sauran abubuwa kamar ɗakunan karatu da binaries. Kwantena da yawa na iya gudana akan tsarin iri ɗaya, kowanne yana gudanar da nasa tsarin aikace-aikacen da kuma aiwatar da shi daga sauran. Shahararrun dandamalin kwantena sun haɗa da Docker da Podman.

Ba kamar injuna na kama-da-wane ba, kwantena suna aiki cikin keɓewa daga tsarin aiki da ke ƙasa. Kwantena suna da nauyi na musamman - 'yan Megabytes kawai - suna ɗaukar sarari kaɗan, kuma suna da abokantaka. Suna da sauƙin farawa da tsayawa kuma suna iya ɗaukar ƙarin aikace-aikace fiye da injin kama-da-wane.

Kwantena suna ba da ingantacciyar hanya ta ƙira, gwaji, da tura aikace-aikace daga PC ɗinku dama zuwa yanayin samarwa, ya kasance akan fage ko gajimare. Anan akwai wasu fa'idodin amfani da aikace-aikacen kwantena.

Kafin kwantena, muna da samfurin monolithic na tsohon zamani inda za a haɗa dukkan aikace-aikacen da ya ƙunshi duka gaba da gaba da baya cikin fakiti ɗaya. Akwatunan suna ba da damar raba aikace-aikacen zuwa sassa daban-daban waɗanda za su iya sadarwa tare da juna.

Ta wannan hanyar, ƙungiyoyin haɓakawa za su iya yin haɗin gwiwa a sassa daban-daban na aikace-aikacen muddin ba a yi wasu manyan gyare-gyare ba dangane da yadda aikace-aikacen ke hulɗa da juna.

Wannan shine abin da manufar microservices ta dogara akansa.

Ƙarin daidaitawa yana nufin ƙarin aiki tunda masu haɓakawa suna iya yin aiki a kan sassa daban-daban na aikace-aikacen da kuma cire kurakurai da sauri fiye da da.

Idan aka kwatanta da injina da sauran mahallin kwamfuta na al'ada, kwantena suna amfani da ƙarancin albarkatun tsarin tunda ba su haɗa da tsarin aiki ba. Wannan yana hana kashe kuɗi mara amfani akan sayan sabar masu tsada don ginawa da gwada aikace-aikace.

Saboda ƙananan sawun sawun su, ana iya tura aikace-aikacen kwantena cikin sauƙi zuwa mahallin kwamfuta/tsarin aiki da yawa.

Kwantenan suna ba da izinin turawa da sauri da ƙima na aikace-aikace. Hakanan suna ba da sassaucin da ake buƙata don tura aikace-aikace a cikin mahallin software da yawa.

Ta yaya Kwantenan Suke Amfanar Ƙungiyoyin DevOps?

Kwantena suna taka muhimmiyar rawa a cikin DevOps kuma ba zai yuwu a yi tunanin yadda lamarin zai kasance ba tare da aikace-aikacen da aka ajiye ba. Don haka, menene kwantena ke kawo teburin?

Na farko, kwantena suna arfafa tsarin gine-ginen ƙananan sabis, yana ba da damar haɓaka ginshiƙan ginin gabaɗayan aikace-aikacen, turawa, da daidaita su da kansu. Kamar yadda aka ambata, wannan yana haifar da babban haɗin gwiwa da saurin tura aikace-aikacen.

Kwantena kuma yana taka muhimmiyar rawa wajen sauƙaƙe bututun CI/CD ta hanyar samar da yanayi mai sarrafawa da daidaito don aikace-aikacen gini. Dukkan ɗakunan karatu da abubuwan dogaro an tattara su tare da lambar zuwa naúrar guda ɗaya don saurin turawa da sauƙi. Aikace-aikacen da aka gwada shine ainihin software da za a tura wajen samarwa.

Bugu da kari, kwantena suna haɓaka fitar da faci da sabuntawa lokacin da aka raba aikace-aikacen zuwa maƙamai masu yawa., Kowanne a cikin akwati daban. Ana iya bincika kwantena ɗaya ɗaya, faci, da sake kunnawa ba tare da katse sauran aikace-aikacen ba.

Duk wata ƙungiyar da ke neman isa ga balaga a cikin DevOps ya kamata ta yi la'akari da yin amfani da ƙarfin kwantena don agile da turawa marasa ƙarfi. Kalubalen ya ta'allaka ne ga sanin yadda ake daidaitawa, amintacce, da tura su ba tare da matsala ba zuwa wurare da yawa.