Su VPC CNI Pod gali turėti adresą iš VPC, o VPN naudotojas su tinkamu maršrutu gali pasiekti jį tiesiogiai. Todėl tiesioginė prieiga prie Pod atrodo kaip paprasčiausias variantas, ir taip iš tiesų yra, kol Pod pakeičiamas. Adresas, kurį naudotojas prisimena, turėtų priklausyti programai, o ne kopijai. Trijų įėjimų palyginimas galiausiai susiveda į tai, kuris objektas valdo adresą ir kas turi toliau veikti, kai darbo krūvis persikelia.

Pirmiausia rinkitės pagal gyvavimo ciklą, paskui pagal tai, ką tinklas turi padaryti, kad įėjimas būtų pasiekiamas.

Trys įėjimai, trys gyvavimo ciklai

Pod IP priklauso Pod: jis skiriamas kartu su juo ir atlaisvinamas jam pasibaigus. ClusterIP priklauso Service ir yra virtualus, jis turi prasmę tik ten, kur egzistuoja klasterio paslaugų maršrutizavimas. Vidinį balansuotoją valdo debesijos išteklius, kurį klasterio valdiklis programuoja backendais. Šie nuosavybės modeliai numato gedimą, kurį gausite: pasenusį adresą, nepasiekiamą pavadinimą arba pasenusį backendų rinkinį.

Užsirašykite palyginimą prieš rinkdamiesi. Kai savininkas ir gedimas įvardyti, pasirinkimas dažniausiai padaromas pats.

EntryOwnerFailure when the workload moves
Pod IPThe PodAddress changes and saved links break
ClusterIPThe ServiceVirtual address with no meaning outside cluster routing
Internal balancerCloud resource plus controllerBackends update, but the DNS view is yours to maintain

Tiesioginė prieiga prie Pod: naudinga, laikina

Tiesioginė prieiga tikrai naudinga kontroliuojamam patikrinimui: vienas administratorius, viena trumpa sesija, vienas konkretus prievadas. Tačiau naudotojams tai bloga sutartis, nes adresas yra įgyvendinimo detalė, kuri keičiasi su kiekvienu diegimu. O jo įrašymas į wiki yra būdas, kuriuo veikianti paslauga virsta gandu.

Tai taip pat kviečia plačias taisykles. Vieno administratoriaus leidimas pasiekti vieną Pod nėra leidimas kiekvienam mazgo potinklio adresui, ir paprastai įrašoma būtent antroji.

ClusterIP: pagal dizainą apribotas klasteriu

ClusterIP veikia todėl, kad klasterio duomenų plokštuma programuoja jam maršrutizavimą klasterio viduje. Iš nešiojamojo kompiuterio VPN tinkle adresas nieko nereiškia, nebent kažkas jį sąmoningai atskleidžia. Pavadinimas, besibaigiantis svc.cluster.local, priklauso klasterio DNS, todėl jo kopijavimas į klientą su kitu sprendikliu duoda ne maršrutizavimo klaidą, o neegzistuojantį pavadinimą.

ClusterIP išlieka tinkamas įėjimas klasterio vidaus kvietėjams, įskaitant kitus darbo krūvius. Tai tiesiog nėra publikavimo mechanizmas naudotojams už klasterio maršrutizavimo srities.

Vidinis balansuotojas: paskelbtas kelias

Vidinis balansuotojas suteikia stabilų privatų adresą ir pavadinimą, į kurį gali rodyti jūsų zona, o valdiklis palaiko backendų rinkinį aktualų, kaip aprašo EKS apkrovos balansavimo vadovas. Tai įėjimas, kuris atlaiko įprastą Pod pakeitimą be jokio dokumento redagavimo. Jis kainuoja debesijos išteklių, valdiklio konfigūraciją ir maršrutą iš VPN, ir būtent šias dalis žmonės nuvertina.

Naudokite tą valdiklio modelį, kurį klasteris iš tikrųjų vykdo. Anotacijos, parašytos vienai integracijai, netaikomos kitai.

Kas yra šaltinio adresas

Saugos grupės mato šaltinį, kuris pasiekia jų ribą, ir tai gali būti prisijungęs klientas arba išverstas adresas, priklausomai nuo VPN ir apkrovos balansavimo kelio. EC2 pagrindu veikiančiuose mazguose įprasti VPC CNI Pod paveldi mazgo ENI grupes pagal nutylėjimą, o palaikomos konfigūracijos gali prijungti Pod būdingas grupes. Rašykite taisykles dokumentuotam keliui, o ne numanomam nešiojamojo kompiuterio adresui.

Laikykite pačios programos klausytoją ir autentifikavimą atskirais valdikliais. Tinklo taisyklė, leidžianti srautą, nėra autorizacijos sprendimas ir neturėtų būti taip traktuojama.

Ką perduoti naudotojams

Duokite naudotojams paslaugos pavadinimą, o ne adresą. Paskelbkite pavadinimą privačioje zonoje, nukreipkite jį į vidinį įėjimą ir tada išbandykite pakeisdami backend Pod, kol klientas laiko tą patį pavadinimą atidarytą. Šis pratimas tikrina savybę, kuri svarbi: pasiekti tą pačią programą po įprasto diegimo.

Laikykite tiesioginę prieigą prie Pod kaip dokumentuotą operacinę išimtį su savo apimtimi, toli nuo naudotojams skirtų instrukcijų.

Susiję straipsniai