Azure API Management-példány üzembe helyezése több Azure-régióban

Az Azure API Management támogatja a többrégiós üzembe helyezést, amely lehetővé teszi, hogy az API-közzétevők regionális API-átjárókat adjanak hozzá egy meglévő API Management-példányhoz egy vagy több támogatott Azure-régióban. A többrégiós üzembe helyezés segít csökkenteni a földrajzilag elosztott API-felhasználók által érzékelt kérelmek késését, és javítja a szolgáltatás rendelkezésre állását, ha egy régió offline állapotba kerül.

Régió hozzáadásakor konfigurálja a következőt:

Fontos

Az a lehetőség, hogy az ügyféladatot egyetlen régióban lehessen tárolni, jelenleg csak Délkelet-Ázsia (Szingapúr) és az Ázsia és a Csendes-óceáni térség földrajzi helyeken érhető el. Minden más régió esetén az ügyféladatok a földrajzi helyen lesznek tárolva.

Elérhetőség

Fontos

Ez a funkció csak az API Management prémium szintjén érhető el.

A v2-szintek (előzetes verzió) funkció rendelkezésre állását a v2-szintek áttekintésében tekintheti meg.

Tudnivalók a többrégiós üzembe helyezésről

  • A rendszer csak az API Management-példány átjáróösszetevőjét replikálja több régióba. A példány felügyeleti síkja és fejlesztői portálja csak az elsődleges régióban, azon a régióban marad, ahol eredetileg üzembe helyezte a szolgáltatást.

  • Ha egy másodlagos helyet szeretne konfigurálni az API Management-példányhoz, amikor üzembe helyezi (injektálja) egy virtuális hálózaton, a virtuális hálózatnak és az alhálózati régiónak meg kell egyeznie a konfigurált másodlagos helytel. Ha hozzáadja, eltávolítja vagy engedélyezi a rendelkezésre állási zónát az elsődleges régióban, vagy ha módosítja az elsődleges régió alhálózatát, akkor az API Management-példány VIP-címe megváltozik. További információ: Az Azure API Management szolgáltatás IP-címei. Ha azonban másodlagos régiót ad hozzá, az elsődleges régió VIP-címe nem változik, mert minden régiónak saját privát VIP-címe van.

  • Az átjárókonfigurációk, például az API-k és a szabályzatdefiníciók rendszeresen szinkronizálódnak a hozzáadott elsődleges és másodlagos régiók között. A regionális átjárók frissítéseinek propagálása általában kevesebb, mint 10 másodpercet vesz igénybe. A többrégiós üzembe helyezés több régióban biztosítja az API-átjáró rendelkezésre állását, és biztosítja a szolgáltatások rendelkezésre állását, ha egy régió offline állapotba kerül.

  • Amikor az API Management nyilvános HTTP-kéréseket fogad a Traffic Manager-végponthoz (a külső virtuális hálózatra és az API Management nem hálózatos üzemmódjaira vonatkozik), a forgalom egy regionális átjáróra lesz irányítva a legalacsonyabb késés alapján, ami csökkentheti a földrajzilag elosztott API-felhasználók által tapasztalt késést.

  • Az átjáró minden régióban (beleértve az elsődleges régiót is) egy regionális DNS-névvel rendelkezik, amely a például https://contoso-westus2-01.regional.azure-api.netaz URL-mintát https://<service-name>-<region>-01.regional.azure-api.netköveti.

  • Ha egy régió offline állapotba kerül, a rendszer automatikusan átirányítja az API-kéréseket a sikertelen régió körül a következő legközelebbi átjáróhoz.

  • Ha az elsődleges régió offline állapotba kerül, az API Management felügyeleti síkja és a fejlesztői portál elérhetetlenné válik, de a másodlagos régiók továbbra is kiszolgálják az API-kéréseket a legfrissebb átjárókonfigurációval.

Előfeltételek

  • Ha még nem hozott létre API Management szolgáltatáspéldányt, olvassa el az API Management szolgáltatáspéldány létrehozása című témakört. Válassza ki a Prémium szolgáltatási szintet.
  • Ha az API Management-példány egy virtuális hálózaton van üzembe helyezve, győződjön meg arról, hogy egy virtuális hálózatot, alhálózatot és nyilvános IP-címet állít be a hozzáadni kívánt helyen és ugyanazon az előfizetésen belül. Tekintse meg a virtuális hálózat előfeltételeit.

API Management szolgáltatás üzembe helyezése egy további régióban

  1. Az Azure Portalon keresse meg az API Management szolgáltatást, és válassza a Helyek lehetőséget a bal oldali menüből.
  2. Válassza a +Hozzáadás lehetőséget a felső sávon.
  3. Válassza ki a hozzáadott helyet a legördülő listából.
  4. Válassza ki a skálázási egységek számát a helyen.
  5. Igény szerint válasszon ki egy vagy több rendelkezésre állási zónát.
  6. Ha az API Management-példány egy virtuális hálózaton van üzembe helyezve, konfigurálja a virtuális hálózati beállításokat a helyen. Válasszon ki egy meglévő virtuális hálózatot, alhálózatot és nyilvános IP-címet, amely elérhető a helyen.
  7. A megerősítéshez válassza a Hozzáadás lehetőséget.
  8. Ismételje meg ezt a folyamatot, amíg az összes helyet nem konfigurálja.
  9. A felső sávon válassza a Mentés lehetőséget az üzembe helyezési folyamat elindításához.

API Management szolgáltatásrégió eltávolítása

  1. Az Azure Portalon keresse meg az API Management szolgáltatást, és válassza a Helyek lehetőséget a bal oldali menüből.
  2. Az eltávolítani kívánt helyhez válassza a helyi menüt a táblázat jobb végén található ... gombbal. Válassza a Törlés lehetőséget.
  3. Erősítse meg a törlést, és kattintson a Mentés gombra a módosítások alkalmazásához.

API-hívások átirányítása regionális háttérszolgáltatásokhoz

Alapértelmezés szerint minden API egyetlen háttérszolgáltatás URL-címére irányítja a kéréseket. Még ha több régióban is konfigurálta az Azure API Management-átjárókat, az API-átjáró továbbra is továbbítja a kéréseket ugyanarra a háttérszolgáltatásra, amely csak egy régióban van üzembe helyezve. Ebben az esetben a teljesítménynövekedés csak az Azure API Managementben gyorsítótárazott válaszokból származik a kérelemhez tartozó régióban; a háttérrendszerrel való kapcsolatfelvétel világszerte továbbra is nagy késést okozhat.

A rendszer földrajzi eloszlásának előnyeinek kihasználásához a háttérszolgáltatásokat az Azure API Management-példányokkal azonos régiókban kell üzembe helyezni. Ezután szabályzatok és @(context.Deployment.Region) tulajdonságok használatával átirányíthatja a forgalmat a háttérrendszer helyi példányaihoz.

  1. Lépjen az Azure API Management-példányra, és válassza ki az API-kat a bal oldali menüből.

  2. Válassza ki a kívánt API-t.

  3. Válassza a Kódszerkesztőt a bejövő feldolgozás nyíl legördülő listájából.

    API code editor

  4. set-backend A feltételes choose szabályzatokkal kombinálva hozzon létre egy megfelelő útválasztási szabályzatot a <inbound> </inbound> fájl szakaszában.

    A következő XML-fájl például az USA nyugati és kelet-ázsiai régióiban működik:

    <policies>
        <inbound>
            <base />
            <choose>
                <when condition="@("West US".Equals(context.Deployment.Region, StringComparison.OrdinalIgnoreCase))">
                    <set-backend-service base-url="http://contoso-backend-us.com/" />
                </when>
                <when condition="@("East Asia".Equals(context.Deployment.Region, StringComparison.OrdinalIgnoreCase))">
                    <set-backend-service base-url="http://contoso-backend-asia.com/" />
                </when>
                <otherwise>
                    <set-backend-service base-url="http://contoso-backend-other.com/" />
                </otherwise>
            </choose>
        </inbound>
        <backend>
            <base />
        </backend>
        <outbound>
            <base />
        </outbound>
        <on-error>
            <base />
        </on-error>
    </policies>
    

A Traffic Manager használata a regionális háttérrendszerekhez való útválasztáshoz

A háttérszolgáltatásokat az Azure Traffic Managerrel is használhatja, átirányíthatja az API-hívásokat a Traffic Managerhez, és automatikusan feloldhatja az útválasztást.

  • Forgalomelosztáshoz és feladatátvételhez javasoljuk, hogy a Traffic Managert használja a földrajzi útválasztási módszerrel. Nem javasoljuk, hogy a Traffic Managert a Súlyozott útválasztási módszerrel használja API Management-háttérrendszerekkel.

  • A karbantartási műveletek során végzett forgalomszabályozáshoz a prioritási útválasztási módszert javasoljuk.

Egyéni útválasztás használata az API Management regionális átjáróihoz

Az API Management a legkisebb késés alapján irányítja a kéréseket egy regionális átjáróra. Bár ezt a beállítást nem lehet felülbírálni az API Managementben, saját Traffic Managert használhat egyéni útválasztási szabályokkal.

  1. Hozzon létre egy saját Azure Traffic Managert.
  2. Ha egyéni tartományt használ, használja azt a Traffic Managerrel az API Management szolgáltatás helyett.
  3. Konfigurálja az API Management regionális végpontjait a Traffic Managerben. A regionális végpontok például https://contoso-westus2-01.regional.azure-api.netaz URL-mintát követikhttps://<service-name>-<region>-01.regional.azure-api.net.
  4. Konfigurálja az API Management regionális állapotvégpontjait a Traffic Managerben. A regionális állapotvégpontok például https://contoso-westus2-01.regional.azure-api.net/status-0123456789abcdefaz URL-mintát követikhttps://<service-name>-<region>-01.regional.azure-api.net/status-0123456789abcdef.
  5. Adja meg a Traffic Manager útválasztási módját .

Útválasztás letiltása regionális átjáróhoz

Bizonyos feltételek mellett előfordulhat, hogy ideiglenesen le kell tiltania az útválasztást az egyik regionális átjáróra. Példa:

  • Új régió hozzáadása után letilthatja azt a regionális háttérszolgáltatás konfigurálása és tesztelése során
  • A háttérrendszer rendszeres karbantartása során egy régióban
  • Forgalom átirányítása más régiókba egy nem elérhető régiót szimuláló tervezett vészhelyreállítási gyakorlat során vagy regionális hiba esetén

Ha le szeretné tiltani az API Management-példányban lévő regionális átjáróhoz való útválasztást, frissítse az átjáró tulajdonságértékét disableGateway a következőre true: . Az értéket a REST API létrehozása vagy frissítése , az az apim update parancs az Azure CLI-ben, a set-azapimanagement Azure PowerShell-parancsmag vagy más Azure-eszközök használatával állíthatja be.

Feljegyzés

Csak akkor tilthatja le az útválasztást egy regionális átjáróra, ha az API Management alapértelmezett útválasztását használja, nem egyéni útválasztási megoldást.

Regionális átjáró letiltása az Azure CLI használatával:

  1. Az az apim show paranccsal megjelenítheti az API Management-példányhoz konfigurált helyeket, átjárók állapotát és regionális URL-címeit.

    az apim show --name contoso --resource-group apim-hello-world-resource \
        --query "additionalLocations[].{Location:location,Disabled:disableGateway,Url:gatewayRegionalUrl}" \
        --output table
    

    Példa a kimenetre:

    Location    Disabled    Url
    ----------  ----------  ------------------------------------------------------------
    West US 2   True        https://contoso-westus2-01.regional.azure-api.net
    West Europe True        https://contoso-westeurope-01.regional.azure-api.net
    
  2. Az az apim update paranccsal letilthatja az átjárót egy elérhető helyen, például az USA 2. nyugati régiójában.

    az apim update --name contoso --resource-group apim-hello-world-resource \
    --set additionalLocations[location="West US 2"].disableGateway=true
    

    A frissítés eltarthat néhány percig.

  3. Ellenőrizze, hogy a regionális átjáró URL-címére irányuló forgalom átirányítva van-e egy másik régióba.

A regionális átjáró útválasztásának visszaállításához állítsa a következő értékre disableGatewayfalse: .

Virtuális hálózat

Ez a szakasz a többrégiós üzemelő példányokkal kapcsolatos szempontokat ismerteti, amikor az API Management-példányt egy virtuális hálózatba injektálják.

  • Konfigurálja egymástól függetlenül az egyes regionális hálózatokat. A kapcsolati követelmények , például a hozzáadott régióban lévő virtuális hálózatokhoz szükséges hálózati biztonsági csoportszabályok általában megegyeznek az elsődleges régióban lévő hálózatokra vonatkozó követelményekkel.
  • A különböző régiókban lévő virtuális hálózatokat nem kell társviszonyba helyezni.

Fontos

Ha belső virtuális hálózati módban van konfigurálva, minden regionális átjárónak kimenő kapcsolattal kell rendelkeznie az 1443-es porton az API Management-példányhoz konfigurált Azure SQL-adatbázishoz, amely csak az elsődleges régióban található. Győződjön meg arról, hogy engedélyezi az Azure SQL-adatbázis teljes tartománynevéhez vagy IP-címéhez való kapcsolódást a másodlagos régiókban lévő hálózatokhoz konfigurált útvonalakon vagy tűzfalszabályokban; Ebben a forgatókönyvben az Azure SQL-szolgáltatáscímke nem használható. Ha meg szeretné keresni az Azure SQL-adatbázis nevét az elsődleges régióban, nyissa meg az API Management-példány hálózati>hálózat állapotlapját a portálon.

IP-címek

  • A rendszer minden régióban létrehoz egy nyilvános virtuális IP-címet, amely egy virtuális hálózathoz van hozzáadva. Külső vagy belső módban lévő virtuális hálózatok esetén ez a nyilvános IP-cím szükséges a porton 3443lévő forgalom kezeléséhez.

    • Külső virtuális hálózati mód – A nyilvános IP-címekre is szükség van a nyilvános HTTP-forgalom API-átjárókhoz való átirányításához.

    • Belső virtuális hálózat mód – A rendszer minden olyan régióban létrehoz egy privát IP-címet is, amely egy virtuális hálózattal van hozzáadva. Ezekkel a címekkel csatlakozhat a hálózaton belül az API Management-végpontokhoz az elsődleges és a másodlagos régiókban.

Útválasztás

  • Külső virtuális hálózat mód – A nyilvános HTTP-forgalom regionális átjárókra való átirányítása automatikusan történik, ugyanúgy, mint egy nem hálózati API Management-példány esetében.

  • Belső virtuális hálózat mód – A privát HTTP-forgalom alapértelmezés szerint nincs átirányítva vagy terheléselosztással a regionális átjárókhoz. A felhasználók az útválasztást birtokolják, és felelősek azért, hogy saját megoldást hozzanak létre az útválasztás és a privát terheléselosztás kezelésére több régióban. Példamegoldások például az Azure-alkalmazás Gateway és az Azure Traffic Manager.

Következő lépések