Programiranje

Kako uporabljati API Kubernetes Ingress

Kubernetes je sprejet v tehnološki industriji in je na poti, da dejansko postane platforma za orkestracijo sodobnih storitev v oblaku. Kubernetes ne ponuja le primitivov za uvajanje mikro storitev v oblaku, ampak gre še korak dlje in razvijalcem pomaga določiti interakcije in upravljati življenjski cikel za svoje API-je.

API Ingress v Kubernetesu omogoča, da svojo mikro storitev izpostavite zunanjemu svetu in določite usmeritvene usmeritve za promet sever-jug, torej promet, ki prihaja v vaš virtualni podatkovni center.

Prednosti upravljanja življenjskih ciklov API s pomočjo cevovodov za neprekinjeno integracijo in neprekinjeno dostavo (CI / CD) z Ingress je veliko, toda preden to pokrijemo, začnimo z nekaj temeljnega znanja.

Zasnova in namen vira Ingress

Najenostavnejši opis gruče Kubernetes bi bil nabor upravljanih vozlišč, ki izvajajo aplikacije v vsebnikih. V večini primerov vozlišča v gruči Kubernetes niso neposredno izpostavljena javnemu internetu. To je smiselno, saj bi izpostavljenost vseh storitev na vozlišču ustvarila neverjetno veliko tveganje. Da bi omogočil javni dostop do izbranih storitev, Kubernetes zagotavlja vir Ingress.

Vir Ingress izpostavi poti HTTP in HTTPS zunaj gruče izbranim storitvam znotraj. Vir Ingress ponuja tudi pravila za nadzor prometa. Zaradi tega je vir Ingress odlična rešitev za ravnanje z različnimi API-ji, ki jih ponuja velika količina posameznih storitev. To stori tako, da zagotovi enotno vstopno točko za vse stranke in nato obdeluje zahteve za zaledne storitve. To je splošno znano kot konfiguracija navdušenja.

Kong

Vir Ingress lahko nastavite tudi za navidezno gostovanje na podlagi imen, kjer bo usmerjal zahteve na podlagi glave gostitelja:

Kong

Da bo vir Ingress deloval, je treba v gruči Kubernetes namestiti krmilnik Ingress. Krmilnik ustvari most med gručo Kubernetes in različnimi obstoječimi vmesniki, obrnjenimi na javnost. Na primer, večina ponudnikov oblakov, ki gosti Kubernetes, ponuja edinstven krmilnik Ingress za vmesnik s predpisanimi javnimi metodami. Vsi različni krmilniki delujejo drugače in lahko nudijo različno količino dodatnih funkcij.

Prednosti uporabe Ingressa za upravljanje življenjskega cikla API z uporabo cevovodov CI / CD

Vir Ingress je definiran z deklarativno konfiguracijsko datoteko, ki je običajno opisana v YAML. To je v skladu z vsemi viri Kubernetes in omogoča enostavno vključitev v sodobne vzorce uvajanja, kot je kombinirana praksa CI / CD. To pomeni, da lahko hitro, pogosto in varno uporabimo spremembe programa Ingress. Na ta način lahko vir Ingress vključimo v isti tip vzorcev življenjskega cikla razvoja programske opreme kot same aplikacije.

Kako lahko razvijalci dosežejo Ingress z uporabo Kong za Kubernetes

Priljubljen odprtokodni in v oblaku agnostični krmilnik Ingress je Kong za Kubernetes. Kong za Kubernetesov krmilnik vstopa je vgrajen kot definicije virov po meri (CRD) v Kubernetesu. To ustvarja Kubernetesovo domačo izkušnjo za tiste, ki so že vajeni določanja virov znotraj te platforme.

Tako kot vaše aplikacije in storitve je tudi Kong za Kubernetes mogoče namestiti prek Manifest, Helm ali Kustomize.

Kongresni krmilnik Kong for Kubernetes Ingress razširja zmogljivosti vira Ingress z zagotavljanjem obsežnega nabora vtičnikov, ki zajemajo širok spekter zmogljivosti, vključno z avtentikacijo, analitiko, nadzorom ter transformacijami zahtev in odzivov, če omenimo le nekatere. Z zagotavljanjem teh skupnih (in včasih ne tako pogostih) zahtev za krmilnik Ingress omogoča Kong za Kubernetes razvijalcem, da se bolj osredotočijo na osnovne zahteve storitev. Vrednost tega postane še posebej očitna, ko se organizacija od peščice monolitnih aplikacij premakne na stotine, če ne na tisoče mikro storitev.

Za seznam pogostih vtičnikov si oglejte //docs.konghq.com/hub/.

Kong-vtičniki so opredeljeni kot vir Kubernetes, kjer oddelek za konfiguracijo vsebuje nastavitve posameznih vtičnikov.

Spodaj je primer vtičnika za omejevanje hitrosti, ki bo omejil promet na pet zahtev na minuto:

Kong

Dodajanje vtičnika Kong v vir Kubernetes se izvede s preprostim pripisom v razdelku z metapodatki vira. To omogoča, da se vtičniki uporabljajo na različnih ravneh. Na primer, lahko vtičnik uporabite za celoten vir Ingress ali pa ga natančneje uporabite za posamezen vir storitve.

Tu je primer uporabe zgornjega vtičnika za vir Ingress:

Kong

Kong za Kubernetes je mogoče vključiti tudi v celoten nabor izdelkov Kong Enterprise, vključno s Kong Studio, Kong Dev Portal, Kong Manager, Kong Brain in Kong Immunity. To omogoča še naprednejše vtičnike Kong in celotno rešitev življenjskega cikla API. Ta sklop izdelkov zajema avtorstvo in objavljanje specifikacij za API ter upravljanje vaših virov Kong in celo analizo prometa.

Pri razvoju API-jev lahko uporabite pristop "spec-first" s pomočjo Kong Studia, kjer boste našli orodja za pisanje dokumentacije v standardni specifikaciji OpenAPI, skupaj z orodji za preskušanje za takojšnje povratne informacije. Kong Studio ponuja tudi orodja za delo z GraphQL. Kong Studio se sinhronizira neposredno v Git, kar omogoča integracijo datotek s specifikacijami v potek dela CI / CD, ki lahko avtomatizira posodobitve portala Kong Dev.

Kong Dev Portal gosti dokumentacijo za API (ki je lahko zasebna ali javna). Je izredno prilagodljiv in vam omogoča, da ga prilagodite slogu in blagovni znamki vaše organizacije. Dobro dokumentiran API je pomemben za produktivnost, dobro voden pretok med Kong Studioom in portalom Dev pa lahko pripomore k čim bolj posodobljeni dokumentaciji.

Kong Manager ponuja grafični vmesnik za opazovanje in upravljanje zbirke izdelkov Kong kot celote. Od tu lahko opazujete razmerja med svojimi potmi, storitvami in vtičniki. Spremljate lahko promet v realnem času in spremljate svoje potrošnike.

Kong Brain analizira promet, ki prihaja skozi Ingress, in ustvari vizualni zemljevid storitev medsektorskih odvisnosti. Ima tudi možnost samodejnega ustvarjanja specifikacijskih dokumentov OpenAPI na podlagi zemljevidov, ki jih ustvari. To je dragocena lastnost, saj tudi z najboljšimi nameni uvedene storitve morda ne bodo pravilno dokumentirane.

Kong Immunity analizira ves promet, ki prihaja skozi Ingress, in se nauči vzorcev za ugotavljanje nepravilnosti. To so pogosto prefinjene zahteve, ki ne izstopajo, vendar bi lahko bile zanimive, na primer neznani parameter, ki ga nenehno poskuša doseči. To je tudi zelo dragocena lastnost, saj opazovanje teh igel v senu stotin tisoč zapisov v dnevnikih ni enostavno.

Kong

Izkoriščanje Ingressa kar najbolje

Vir Kubernetes Ingress ponuja eno samo vstopno točko zunaj Kubernetesa do zalednih storitev znotraj. Z izkoriščanjem deklarativnih definicijskih datotek lahko vir Ingress obravnavamo kot vse druge oblike kode in ga vključimo v običajne življenjske cikle razvoja programske opreme.

Za premostitev komunikacije zunaj Kubernetesa je potreben krmilnik Ingress. Kong for Kubernetes je upravljavec Ingress, ki uporablja definicije virov po meri, da močno razširi zmogljivosti vira Ingress z zagotavljanjem velikega števila vtičnikov, ki razvijalcem omogočajo, da se osredotočijo na osnovno poslovno vrednost. Kong ima nabor orodij za podjetja, ki lahko močno povečajo produktivnost in varnost v celotnem življenjskem ciklu API.

Marco Palladino, izumitelj, razvijalec programske opreme in internetni podjetnik s sedežem v San Franciscu, je tehnični direktor in soustanovitelj podjetja Kong Inc.

Forum New Tech ponuja prizorišče za raziskovanje in razpravo o nastajajoči podjetniški tehnologiji v globini in širini brez primere. Izbor je subjektiven in temelji na našem izboru tehnologij, za katere menimo, da so pomembne in najbolj zanimajo bralce. ne sprejema tržnih zavarovanj za objavo in si pridržuje pravico do urejanja celotne prispevane vsebine. Vsa vprašanja pošljite na [email protected].

$config[zx-auto] not found$config[zx-overlay] not found