Mbinu bora za Kubernetes. Kuchora ramani ya huduma za nje

Mbinu bora za Kubernetes. Kutengeneza vyombo vidogo
Mbinu bora za Kubernetes. Shirika la Kubernetes lenye nafasi ya majina
Mbinu bora za Kubernetes. Kuthibitisha Uhai wa Kubernetes kwa Majaribio ya Utayari na Uhai
Mbinu bora za Kubernetes. Kuweka maombi ya rasilimali na mipaka
Mbinu bora za Kubernetes. Kuzima kwa usahihi Komesha

Ikiwa wewe ni kama watu wengi, labda unatumia rasilimali ambazo ziko nje ya kikundi chako. Labda unatumia API ya Taleo kutuma ujumbe mfupi, au kuchanganua picha kwa kutumia API ya Maono ya Wingu la Google.

Ikiwa unatumia mwisho wa ombi la upande wa seva katika mazingira yako yote na huna mpango wa kuhamisha seva zako hadi Kubernetes, basi ni sawa kabisa kuwa na mwisho wa huduma katika nambari yako ya kuthibitisha. Hata hivyo, kuna matukio mengine mengi kwa ajili ya maendeleo ya matukio. Katika mfululizo huu wa Mbinu Bora za Kubernetes, utajifunza jinsi ya kutumia mbinu zilizojengewa ndani za Kubernetes kugundua huduma ndani na nje ya nguzo.

Mfano wa huduma ya kawaida ya nje ni hifadhidata inayoendesha nje ya nguzo ya Kubernetes. Tofauti na hifadhidata za wingu kama vile Google Cloud Data Store au Google Cloud Spanner, ambazo hutumia mwisho mmoja kwa ufikiaji wote, hifadhidata nyingi zina miisho tofauti kwa hali tofauti.
Mbinu bora za kutumia hifadhidata za kitamaduni kama vile MySQL na MongoDB kawaida humaanisha kuwa unaunganisha kwa vipengee tofauti vya mazingira tofauti. Unaweza kuwa na mashine kubwa ya data ya uzalishaji na mashine ndogo kwa mazingira ya majaribio. Kila moja yao itakuwa na anwani yake ya IP au jina la kikoa, lakini labda hautataka kubadilisha msimbo wako unapohama kutoka mazingira moja hadi nyingine. Kwa hivyo badala ya kuweka msimbo kwa bidii kwenye anwani hizi, unaweza kutumia ugunduzi wa huduma ya nje ya Kubernetes iliyojengwa ndani ya DNS kwa njia sawa na huduma asilia za Kubernetes.

Mbinu bora za Kubernetes. Kuchora ramani ya huduma za nje

Wacha tuseme unaendesha hifadhidata ya MongoDB kwenye Injini ya Kuhesabu ya Google. Utakwama katika ulimwengu huu wa mseto hadi utakapoweza kuihamisha hadi kwenye kundi.

Kwa bahati nzuri, unaweza kutumia huduma tuli za Kubernetes kurahisisha maisha yako. Katika mfano huu, niliunda seva ya MongoDB kwa kutumia Kizinduzi cha Wingu la Google. Kwa kuwa imeundwa kwenye mtandao sawa (au Kubernetes cluster VPC), inafikiwa kwa kutumia anwani ya IP ya utendaji wa juu.

Mbinu bora za Kubernetes. Kuchora ramani ya huduma za nje

Huu ndio mpangilio chaguomsingi kwenye Wingu la Google, kwa hivyo huhitaji kusanidi chochote. Sasa kwa kuwa una anwani ya IP, hatua ya kwanza ni kuunda huduma. Unaweza kugundua kuwa hakuna viteuzi vya pod kwa huduma hii. Hiyo ni, tumeunda huduma ambayo haitajua wapi kutuma trafiki. Hii itakuruhusu kuunda kipengee cha mwisho ambacho kitapokea trafiki kutoka kwa huduma hii.

Mbinu bora za Kubernetes. Kuchora ramani ya huduma za nje

Mfano wa msimbo ufuatao unaonyesha kuwa ncha huamua anwani ya IP ya hifadhidata kwa kutumia jina la mongo sawa na huduma.

Mbinu bora za Kubernetes. Kuchora ramani ya huduma za nje

Kubernetes itatumia anwani zote za IP kupata miisho kana kwamba ni Podi za Kubernetes za kawaida, kwa hivyo sasa unaweza kufikia hifadhidata kwa kamba rahisi ya unganisho kwa jina la hapo juu mongodb://mongo. Hakuna haja ya kutumia anwani za IP katika msimbo wako hata kidogo.

Ikiwa anwani za IP zitabadilika katika siku zijazo, unaweza kusasisha ncha zako kwa kutumia anwani mpya ya IP na programu zako hazitahitaji kurekebishwa kwa njia yoyote ya ziada.

Ikiwa unatumia hifadhidata iliyopangishwa kwa seva pangishi ya wahusika wengine, kuna uwezekano kuwa wamiliki wa seva pangishi wamekupa URI ya Kitambulisho cha Rasilimali Iliyofanana ili kuunganisha kwayo. Kwa hivyo ikiwa umepewa anwani ya IP, unaweza kutumia njia ya hapo awali. Mfano huu unaonyesha kuwa nina hifadhidata mbili za MongoDB zilizowekwa kwenye mwenyeji wa mLab.

Mbinu bora za Kubernetes. Kuchora ramani ya huduma za nje

Moja ni hifadhidata ya msanidi programu na nyingine ni hifadhidata ya uzalishaji. Mifuatano ya muunganisho ya hifadhidata hizi inaonekana kama hii - mLab hukupa URI inayobadilika na mlango unaobadilika. Kama unaweza kuona, wao ni tofauti.

Mbinu bora za Kubernetes. Kuchora ramani ya huduma za nje

Ili kuondoa hili, hebu tutumie Kubernetes na tuunganishe kwenye hifadhidata ya msanidi. Unaweza kuunda jina la huduma ya Kubernetes ya nje, ambayo itakupa huduma tuli ambayo itasambaza trafiki kwa huduma ya nje.

Mbinu bora za Kubernetes. Kuchora ramani ya huduma za nje

Huduma hii itafanya usambazaji rahisi wa CNAME kwenye kiwango cha kernel na athari ndogo ya utendakazi. Shukrani kwa hili unaweza kutumia kamba rahisi ya uunganisho.

Mbinu bora za Kubernetes. Kuchora ramani ya huduma za nje

Lakini kwa sababu jina la nje linatumia usambazaji wa CNAME, haliwezi kutekeleza usambazaji wa mlango. Kwa hivyo, suluhisho hili linatumika tu kwa bandari tuli na haliwezi kutumika na milango inayobadilika. Lakini mLab Free Tier humpa mtumiaji nambari ya bandari inayobadilika kwa chaguo-msingi na huwezi kuibadilisha. Hii inamaanisha kuwa unahitaji mistari tofauti ya amri ya unganisho kwa dev na prod. Jambo mbaya ni kwamba hii itakuhitaji kuweka nambari ya bandari ngumu. Kwa hivyo unapataje usambazaji wa bandari kufanya kazi?

Hatua ya kwanza ni kupata anwani ya IP kutoka kwa URI. Ukiendesha nslookup, jina la mpangishaji, au kubandika URI, unaweza kupata anwani ya IP ya hifadhidata. Ikiwa huduma inarudi anwani kadhaa za IP kwako, basi anwani hizi zote zinaweza kutumika katika mwisho wa kitu.

Mbinu bora za Kubernetes. Kuchora ramani ya huduma za nje

Jambo moja la kukumbuka ni kwamba URI za IP zinaweza kubadilika bila taarifa, na kuzifanya kuwa hatari sana kutumia katika uzalishaji. Kwa kutumia anwani hii ya IP, unaweza kuunganisha kwenye hifadhidata ya mbali bila kutaja bandari. Kwa hivyo, huduma ya Kubernetes hufanya usambazaji wa bandari kwa uwazi kabisa.

Mbinu bora za Kubernetes. Kuchora ramani ya huduma za nje

Kuchora ramani, au kuchora rasilimali za nje kwa zile za ndani, hukupa urahisi wa kutumia huduma hizi ndani ya kundi katika siku zijazo huku ukipunguza juhudi za kuchagiza upya. Pia hurahisisha udhibiti na kutoa maarifa kuhusu huduma za nje ambazo kampuni yako inatumia.

Itaendelea hivi punde...

Baadhi ya matangazo πŸ™‚

Asante kwa kukaa nasi. Je, unapenda makala zetu? Je, ungependa kuona maudhui ya kuvutia zaidi? Tuunge mkono kwa kuweka agizo au kupendekeza kwa marafiki, VPS ya wingu kwa watengenezaji kutoka $4.99, analogi ya kipekee ya seva za kiwango cha kuingia, ambayo ilivumbuliwa na sisi kwa ajili yako: Ukweli wote kuhusu VPS (KVM) E5-2697 v3 (6 Cores) 10GB DDR4 480GB SSD 1Gbps kutoka $19 au jinsi ya kushiriki seva? (inapatikana kwa RAID1 na RAID10, hadi cores 24 na hadi 40GB DDR4).

Dell R730xd 2x nafuu katika kituo cha data cha Equinix Tier IV huko Amsterdam? Hapa tu 2 x Intel TetraDeca-Core Xeon 2x E5-2697v3 2.6GHz 14C 64GB DDR4 4x960GB SSD 1Gbps 100 TV kutoka $199 nchini Uholanzi! Dell R420 - 2x E5-2430 2.2Ghz 6C 128GB DDR3 2x960GB SSD 1Gbps 100TB - kutoka $99! Soma kuhusu Jinsi ya kujenga miundombinu ya Corp. darasa na matumizi ya seva za Dell R730xd E5-2650 v4 zenye thamani ya euro 9000 kwa senti?

Chanzo: mapenzi.com

Kuongeza maoni