Átjáró-útválasztási minta

Azure Application Gateway

Kérelmek átirányítása több szolgáltatáshoz vagy több szolgáltatáspéldányhoz egyetlen végpont használatával. A minta akkor hasznos, ha:

  • Több szolgáltatás megjelenítése egyetlen végponton, és a kérés alapján a megfelelő szolgáltatáshoz vezető út
  • Ugyanazon szolgáltatás több példányának elérhetővé tétele egyetlen végponton terheléselosztási vagy rendelkezésre állási célokra
  • Ugyanazon szolgáltatás különböző verzióinak felfedése egyetlen végponton, és forgalom átirányítása a különböző verziók között

Kontextus és probléma

Ha egy ügyfélnek több szolgáltatást, több szolgáltatáspéldányt vagy mindkettő kombinációját kell használnia, a szolgáltatások hozzáadásakor vagy eltávolításakor frissíteni kell az ügyfelet. Fontolja meg a következő forgatókönyveket.

  • Több különálló szolgáltatás – Az e-kereskedelmi alkalmazások olyan szolgáltatásokat nyújthatnak, mint a keresés, a vélemények, a kosár, a fizetés és a rendelési előzmények. Mindegyik szolgáltatáshoz külön API tartozik. Az ügyfél ezeken keresztül éri el a szolgáltatásokat, és ismernie kell minden egyes végpontot ahhoz, hogy csatlakozhasson a szolgáltatásokhoz. Ha egy API megváltozik, az ügyfelet is frissíteni kell. Ha újrabont egy szolgáltatást két vagy három önálló szolgáltatásra, a szolgáltatás és az ügyfél kódját is módosítani kell.
  • Ugyanazon szolgáltatás több példánya – A rendszer megkövetelheti ugyanazon szolgáltatás több példányának futtatását ugyanazon vagy különböző régiókban. Több példány futtatása elvégezhető terheléselosztási célokra vagy a rendelkezésre állási követelményeknek való megfelelés érdekében. Minden alkalommal, amikor egy példány felfelé vagy lefelé pörög az igényeknek megfelelően, az ügyfelet frissíteni kell.
  • Ugyanazon szolgáltatás több verziója – Az üzembe helyezési stratégia részeként a szolgáltatás új verziói is üzembe helyezhetők a meglévő verziók mellett. Ezt kék zöld üzemelő példányoknak nevezzük. Ezekben a forgatókönyvekben az ügyfelet minden alkalommal frissíteni kell, amikor módosul az új verzióra és a meglévő végpontra átirányított forgalom százalékos aránya.

Megoldás

Helyezzen egy átjárót az alkalmazások, szolgáltatások vagy telepítések csoportja elé. Az alkalmazás 7. rétegbeli útválasztását használva irányítsa át a kérést a megfelelő példányokhoz.

Ezzel a mintával az ügyfélalkalmazásnak csak egyetlen végpontról kell tudnia, és egyetlen végponttal kell kommunikálnia. Az alábbiakban bemutatjuk, hogyan kezeli az átjáró-útválasztási minta a környezet és a probléma szakaszban felvázolt három forgatókönyvet.

Több különálló szolgáltatás

A keresési szolgáltatás, a pénztárszolgáltatás, a rendeléselőzmény-szolgáltatás, a kosárszolgáltatás és a felülvizsgálati szolgáltatás előtt ülő átjáró diagramja.

Az átjáró útválasztási mintája akkor hasznos, ha egy ügyfél több szolgáltatást használ. Ha egy szolgáltatás konszolidálva, bontva vagy lecserélve van, az ügyfél nem feltétlenül igényel frissítést. Az továbbra is küldhet kéréseket az átjárónak, csak az útválasztás változik.

Az átjáró ezenkívül lehetővé teszi a háttérszolgáltatások elkülönítését az ügyfelektől, így az ügyfél hívásai egyszerűek maradnak, de az átjáró mögötti háttérszolgáltatások módosíthatók lesznek. Az ügyfél hívásai átirányíthatók a szolgáltatáshoz vagy szolgáltatásokhoz, amely(ek)nek kezelnie kell a várt ügyfélviselkedést. Ez lehetővé teszi szolgáltatások hozzáadását, felosztását és átszervezését az átjáró mögött az ügyfél módosítása nélkül.

Ugyanazon szolgáltatás több példánya

Az 1. régióban található keresési szolgáltatás előtt található átjáró és a 2. régióban található keresési szolgáltatás ábrája.

A rugalmasság kulcsfontosságú a felhőalapú számítástechnikában. A szolgáltatások felpöröghetnek, hogy megfeleljenek a növekvő igényeknek, vagy ha a kereslet alacsony, pénzt takarítson meg. A szolgáltatáspéldányok regisztrálásának és regisztrációjának megszüntetésének összetettségét az átjáró foglalja össze. Az ügyfél nem tud a szolgáltatások számának növekedéséről vagy csökkenéséről.

A szolgáltatáspéldányok egyetlen vagy több régióban is üzembe helyezhetők. A Geode-minta azt részletezi, hogy egy többrégiós, aktív-aktív üzembe helyezés hogyan javíthatja a késést és növelheti a szolgáltatás rendelkezésre állását.

Ugyanazon szolgáltatás több verziója

A keresési szolgáltatás 1.1-es verziójának és a keresési szolgáltatás 1.1-es verziójának előtt ülő átjáró diagramja.

Ez a minta az üzemelő példányokhoz használható, mivel lehetővé teszi a frissítések felhasználók számára történő bevezetésének kezelését. A szolgáltatás újabb verziójának telepítésekor az az aktuális verzióval egyidejűleg telepíthető. Az útválasztással szabályozhatja, hogy a szolgáltatás melyik verziója jelenik meg az ügyfelek számára, így rugalmasan használhat különböző kiadási stratégiákat, akár növekményes, párhuzamos vagy teljes frissítéseket. Az új szolgáltatás telepítése után felfedezett hibák gyorsan visszavonhatók az átjáró konfigurációjának módosításával, ami nem befolyásolja az ügyfeleket.

Problémák és megfontolandó szempontok

  • Az átjárószolgáltatás egyetlen hibapontot vezethet be. Győződjön meg arról, hogy megfelelően van kialakítva, hogy megfeleljen a rendelkezésre állási követelményeknek. Fontolja meg a rugalmasságot és a hibatűrési képességeket a megvalósítás során.
  • Az átjárószolgáltatás szűk keresztmetszetet okozhat. Győződjön meg arról, hogy az átjáró megfelelő teljesítménnyel bír a várható terhelés kezelésére, és skálázható a várható későbbi növekedésnek megfelelően.
  • Végezzen terhelésteszteket az átjárón annak ellenőrzéséhez, hogy az nem indít-e el hibasorozatokat a szolgáltatásokban.
  • Az átjáró útválasztása 7. szintű. Az útválasztás történhet IP-cím, port, fejléc vagy URL-cím alapján.
  • Az átjárószolgáltatások lehetnek globálisak vagy regionálisak. Az Azure Front Door egy globális átjáró, míg Azure-alkalmazás átjáró regionális. Használjon globális átjárót, ha a megoldás többrégiós szolgáltatások üzembe helyezését igényli. Fontolja meg az Application Gateway használatát, ha olyan regionális számítási feladattal rendelkezik, amely részletes szabályozást igényel a forgalom kiegyensúlyozottságáról. Például ki szeretné egyensúlyozni a virtuális gépek közötti forgalmat.
  • Az átjárószolgáltatás az előtte található szolgáltatások nyilvános végpontja. Fontolja meg a háttérszolgáltatásokhoz való nyilvános hálózati hozzáférés korlátozását úgy, hogy a szolgáltatásokat csak az átjárón vagy egy magánhálózaton keresztül teszi elérhetővé.

Mikor érdemes ezt a mintát használni?

Használja ezt a mintát, ha:

  • Az ügyfélnek több szolgáltatást kell használnia, amelyek egy átjáró mögött érhetőek el.
  • Egyszerűsíteni szeretné az ügyfélalkalmazásokat egyetlen végpont használatával.
  • A kérést kívülről címezhető végpontokról belső virtuális végpontokra kell átirányítani (például egy virtuális gép portjainak elérhetővé tétele virtuális IP-címek fürtözéséhez).
  • Az ügyfélnek több régióban futó szolgáltatásokat kell használnia a késés vagy a rendelkezésre állás előnyei miatt.
  • Az ügyfélnek változó számú szolgáltatáspéldányt kell használnia.
  • Olyan üzembehelyezési stratégiát szeretne implementálni, amelyben az ügyfelek egyszerre férnek hozzá a szolgáltatás több verziójához.

Nem érdemes ezt a mintát használni olyan egyszerű alkalmazásokhoz, amelyek csupán egy vagy két szolgáltatást használnak.

Számítási feladatok tervezése

Az tervezőknek értékelniük kell, hogyan használható az átjáró-útválasztási minta a számítási feladat tervezése során az Azure Well-Architected Framework pilléreiben foglalt célok és alapelvek kezelésére. Példa:

Pillér Hogyan támogatja ez a minta a pillércélokat?
A megbízhatósági tervezési döntések segítenek a számítási feladatnak ellenállóvá válni a hibás működéssel szemben, és biztosítani, hogy a hiba bekövetkezése után teljesen működőképes állapotba kerüljön. Az átjáró-útválasztás lehetővé teszi, hogy a forgalmat csak kifogástalan állapotú csomópontokra irányozza át a rendszerben.

- RE:05 Redundancia
- RE:10 Állapotfigyelés
Az operatív kiválóság szabványosított folyamatok és a csapat kohéziója révén segít a számítási feladatok minőségének biztosításában. Az átjáró-útválasztás lehetővé teszi a kérések leválasztását a háttérrendszerektől, ami lehetővé teszi, hogy a háttérrendszer támogatja a fejlett üzemi modelleket, a platformváltásokat, valamint a tartománynévfeloldás és az átvitel közbeni titkosítás egyetlen felügyeleti pontját.

- OE:04 Eszközök és folyamatok
- OE:11 Széf üzembehelyezési eljárások
A teljesítményhatékonyság a skálázás, az adatok és a kód optimalizálásával segíti a számítási feladatok hatékony kielégítését . Az átjáró-útválasztás lehetővé teszi a forgalom elosztását a rendszer csomópontjai között a terheléselosztás érdekében.

- PE:05 Skálázás és particionálás

Mint minden tervezési döntésnél, fontolja meg az ezzel a mintával bevezethető többi pillér céljaival szembeni kompromisszumokat.

Példa

Az Nginxet útválasztóként használva létrehozhatja ezt az egyszerű konfigurációs fájt, amely a különböző virtuális könyvtárakban található alkalmazások kéréseit a háttérrendszer különböző gépeire irányíthatja át.

server {
    listen 80;
    server_name domain.com;

    location /app1 {
        proxy_pass http://10.0.3.10:80;
    }

    location /app2 {
        proxy_pass http://10.0.3.20:80;
    }

    location /app3 {
        proxy_pass http://10.0.3.30:80;
    }
}

Az átjáró-útválasztási minta implementálásához az alábbi Azure-szolgáltatások használhatók: