/etc/resolv.conf kuma-Kubernetes pods, i-ndots:inketho engu-5, lokhu kungaba nomthelela omubi kanjani ekusebenzeni kohlelo lokusebenza

/etc/resolv.conf kuma-Kubernetes pods, i-ndots:inketho engu-5, lokhu kungaba nomthelela omubi kanjani ekusebenzeni kohlelo lokusebenza

Sisanda kwethula i-Kubernetes 1.9 ku-AWS sisebenzisa i-Kops. Izolo, ngenkathi ngikhipha ithrafikhi entsha ngokushelelayo kumaqoqo ethu amakhulu e-Kubernetes, ngiqale ukuqaphela amaphutha angajwayelekile wokuxazulula amagama e-DNS afakwe uhlelo lwethu lokusebenza.

Kuningi kakhulu ngalokhu ku-GitHub wakhuluma, ngakho nami nganquma ukukucacisa. Ekugcineni, ngabona ukuthi esimweni sethu lokhu kubangelwa umthwalo owandayo kube-dns ΠΈ dnsmasq. Into ethakazelisa kakhulu nentsha kimi kwakuyisona sizathu sokwanda okukhulu kwethrafikhi yesicelo se-DNS. Okuthunyelwe kwami ​​kumayelana nalokhu nokuthi ngenzenjani ngakho.

Ukulungiswa kwe-DNS ngaphakathi kwesiqukathi - njengakunoma iyiphi isistimu ye-Linux - kunqunywa ifayela lokumisa /etc/resolv.conf. Okuzenzakalelayo Kubernetes dnsPolicy lokhu kungukuthi ClusterFirst, okusho ukuthi noma yisiphi isicelo se-DNS sizothunyelwa dnsmasq, egijima esidunjini kube-dns ngaphakathi kweqoqo, elizodlulisela isicelo kuhlelo lokusebenza kube-dns, uma igama ligcina ngesijobelelo seqoqo, noma, ngaphandle kwalokho, liye ezingeni eliphezulu leseva ye-DNS.

Π€Π°ΠΉΠ» /etc/resolv.conf ngaphakathi kwesiqukathi ngasinye okuzenzakalelayo kuzobukeka kanje:

nameserver 100.64.0.10
search namespace.svc.cluster.local svc.cluster.local cluster.local 
eu-west-1.compute.internal
options ndots:5

Njengoba ubona, kuneziqondiso ezintathu:

  1. Igama leseva yi-IP yesevisi kube-dns
  2. 4 izizinda zokusesha zendawo ezicacisiwe search
  3. Kukhona inketho ndots:5

Ingxenye ethokozisayo yalokhu kumisa ukuthi izizinda zosesho lwasendaweni kanye nezilungiselelo ndots:5 nizwane. Ukuze uqonde lokhu, udinga ukuqonda ukuthi isixazululo se-DNS samagama angafaneleki sisebenza kanjani.

Lithini igama eligcwele?

Igama elifaneleke ngokugcwele igama okungekho ukubhekwa kwalo kwendawo okuzokwenziwa futhi igama lizobhekwa njengeliphelele ngesikhathi sokulungiswa kwegama. Ngokwesimiso, isofthiwe ye-DNS ibheka igama njengelifaneleke ngokugcwele uma ligcina ngechashazi (.), futhi lingafaneleki ngokugcwele ngenye indlela. Leyo google.com. kuchazwe ngokugcwele futhi google.com - Cha.

Liphathwa kanjani igama elingafaneleki?

Uma uhlelo lokusebenza luxhumeka kumsingathi wesilawuli kude esishiwo egameni, ukulungiswa kwegama le-DNS ngokuvamile kwenziwa kusetshenziswa ikholi yesistimu, isb. getaddrinfo(). Kodwa uma igama lingafaneleki (aligcini ngokuthi.) Ngiyazibuza ukuthi uma ikholi yesistimu izozama ukuxazulula igama njengegama eliphelele kuqala, noma idlule ezizindeni zokusesha zasendaweni kuqala? Kuya ngenketho ndots.

Kusukela kumanuwali resolv.conf:

ndots:n

устанавливаСт ΠΏΠΎΡ€ΠΎΠ³ для количСства Ρ‚ΠΎΡ‡Π΅ΠΊ, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Π΅ Π΄ΠΎΠ»ΠΆΠ½Ρ‹ ΠΏΠΎΡΠ²ΠΈΡ‚ΡŒΡΡ Π² ΠΈΠΌΠ΅Π½ΠΈ, ΠΏΡ€Π΅ΠΆΠ΄Π΅ Ρ‡Π΅ΠΌ Π±ΡƒΠ΄Π΅Ρ‚ сдСлан Π½Π°Ρ‡Π°Π»ΡŒΠ½Ρ‹ΠΉ Π°Π±ΡΠΎΠ»ΡŽΡ‚Π½Ρ‹ΠΉ запрос. Π—Π½Π°Ρ‡Π΅Π½ΠΈΠ΅ ΠΏΠΎ ΡƒΠΌΠΎΠ»Ρ‡Π°Π½ΠΈΡŽ для n Ρ€Π°Π²Π½ΠΎ 1, Ρ‡Ρ‚ΠΎ ΠΎΠ·Π½Π°Ρ‡Π°Π΅Ρ‚, Ρ‡Ρ‚ΠΎ Ссли Π² ΠΈΠΌΠ΅Π½ΠΈ Π΅ΡΡ‚ΡŒ ΠΊΠ°ΠΊΠΈΠ΅-Π»ΠΈΠ±ΠΎ Ρ‚ΠΎΡ‡ΠΊΠΈ, имя Π±ΡƒΠ΄Π΅Ρ‚ сначала ΠΎΠΏΡ€ΠΎΠ±ΠΎΠ²Π°Π½ΠΎ ΠΊΠ°ΠΊ Π°Π±ΡΠΎΠ»ΡŽΡ‚Π½ΠΎΠ΅ имя, ΠΏΡ€Π΅ΠΆΠ΄Π΅ Ρ‡Π΅ΠΌ ΠΊ Π½Π΅ΠΌΡƒ Π±ΡƒΠ΄ΡƒΡ‚ Π΄ΠΎΠ±Π°Π²Π»Π΅Π½Ρ‹ ΠΊΠ°ΠΊΠΈΠ΅-Π»ΠΈΠ±ΠΎ элСмСнты списка поиска.

Lokhu kusho ukuthi uma for ndots uma kunikezwe inani elingu-5 futhi igama liqukethe amachashazi angaphansi kuka-5, ikholi yesistimu izozama ukuyixazulula ngokulandelana, kuqala inqamule zonke izizinda zokusesha zendawo, futhi, uma kuhlulekile, ekugcineni ixazulule njengegama eliphelele.

Kungani pho ndots:5 kungaba nomthelela omubi ekusebenzeni kohlelo lokusebenza?

Njengoba ungacabanga, uma uhlelo lwakho lokusebenza lisebenzisa ithrafikhi eningi yangaphandle, kukho konke ukuxhumana kwe-TCP okusungulwe (noma ngokunembe kakhulu, kuwo wonke amagama axazululiwe), izokhipha imibuzo emi-5 ye-DNS ngaphambi kokuthi igama lixazululwe kahle, ngoba lizoqala lidlule. 4 isizinda sokusesha sendawo, futhi ekugcineni sizokhipha isicelo sokuxazulula igama ngokuphelele.

Ishadi elilandelayo libonisa inani lethrafikhi kumamojula wethu we-kube-dns angu-3 ngaphambi nangemuva kokuthi sishintshe amagama omethuleli ambalwa amiswe kuhlelo lwethu lokusebenza ukuba afaneleke ngokugcwele.

/etc/resolv.conf kuma-Kubernetes pods, i-ndots:inketho engu-5, lokhu kungaba nomthelela omubi kanjani ekusebenzeni kohlelo lokusebenza

Umdwebo olandelayo ubonisa ukubambezeleka kohlelo lokusebenza ngaphambi nangemuva kokuthi sishintshe amagama omethuleli amaningana amisiwe kuhlelo lwethu lokusebenza abe amagama aphelele (umugqa oluhlaza okwesibhakabhaka oqondile uwukusetshenziswa):

/etc/resolv.conf kuma-Kubernetes pods, i-ndots:inketho engu-5, lokhu kungaba nomthelela omubi kanjani ekusebenzeni kohlelo lokusebenza

Isixazululo #1 - Sebenzisa amagama afaneleke ngokugcwele

Uma unamagama ambalwa angaphandle amile (okungukuthi achazwe ekucushweni kohlelo lokusebenza) owakha kuwo inqwaba yokuxhumana, mhlawumbe isisombululo esilula ukuwashintshela kwabafaneleke ngokugcwele ngokumane uwahlanganise. ekugcineni.

Lesi akusona isixazululo sokugcina, kodwa kusiza ukushesha, nakuba hhayi ngokuhlanzekile, ukuthuthukisa isimo. Sisebenzise lesi siqeshana ukuze sixazulule inkinga yethu, imiphumela yayo eboniswe kuzithombe-skrini ezingenhla.

Isixazululo #2 - ukwenza ngokwezifiso ndots Π² dnsConfig

Ku-Kubernetes 1.9, ukusebenza kuvele kumodi ye-alpha (inguqulo ye-beta v1.10), ekuvumela ukuthi ulawule kangcono amapharamitha e-DNS ngesakhiwo se-pod dnsConfig. Phakathi kwezinye izinto, ikuvumela ukuthi ulungiselele inani ndots nge-pod ethile, i.e.

apiVersion: v1
kind: Pod
metadata:
  namespace: default
  name: dns-example
spec:
  containers:
    - name: test
      image: nginx
  dnsConfig:
    options:
      - name: ndots
        value: "1"

Imithombo

Funda nezinye izindatshana kubhulogi yethu:

Source: www.habr.com

Engeza amazwana