Nastavení back-endu Service Fabric v API Management pomocí Azure Portal

Tento článek ukazuje, jak nakonfigurovat službu Service Fabric jako vlastní back-end rozhraní API pomocí Azure Portal. Pro demonstrační účely ukazuje, jak nastavit základní bezstavovou ASP.NET Core Reliable Service jako back-end Service Fabric.

Informace o pozadí najdete v tématu Back-endy v API Management.

Požadavky

Požadavky na konfiguraci ukázkové služby v clusteru Service Fabric s Windows jako vlastním back-endem:

  • Vývojové prostředí pro Windows – Nainstalujte sadu Visual Studio 2019 a vývoj pro Azure, vývoj ASP.NET a web a sady funkcí pro vývoj pro více platforem .NET Core . Potom nastavte vývojové prostředí .NET.

  • Cluster Service Fabric – viz Kurz: Nasazení clusteru Service Fabric s Windows do virtuální sítě Azure. Můžete vytvořit cluster s existujícím certifikátem X.509 nebo pro testovací účely vytvořit nový certifikát podepsaný svým držitelem. Cluster se vytvoří ve virtuální síti.

  • Ukázková aplikace Service Fabric – Vytvořte aplikaci webového rozhraní API a nasaďte ji do clusteru Service Fabric, jak je popsáno v tématu Integrace API Management se Service Fabric v Azure.

    Tyto kroky vytvoří základní bezstavovou ASP.NET Core Reliable Service pomocí výchozí šablony projektu webového rozhraní API. Později zveřejníte koncový bod HTTP pro tuto službu prostřednictvím Azure API Management.

    Poznamenejte si název aplikace, například fabric:/myApplication/myService.

  • API Management instance – existující nebo nová instance API Management na úrovni Premium nebo Developer a ve stejné oblasti jako cluster Service Fabric. Pokud ji potřebujete, vytvořte instanci API Management.

  • Virtuální síť – Přidejte instanci API Management do virtuální sítě, kterou jste vytvořili pro cluster Service Fabric. API Management vyžaduje ve virtuální síti vyhrazenou podsíť.

    Postup povolení připojení k virtuální síti pro instanci API Management najdete v tématu Použití Azure API Management s virtuálními sítěmi.

Vytvoření back-endu – portál

Přidání certifikátu clusteru Service Fabric do API Management

Certifikát clusteru Service Fabric se ukládá a spravuje v trezoru klíčů Azure přidruženém ke clusteru. Přidejte tento certifikát do instance API Management jako klientský certifikát.

Postup přidání certifikátu do instance API Management najdete v tématu Zabezpečení back-endových služeb pomocí ověřování klientských certifikátů v Azure API Management.

Poznámka

Doporučujeme přidat certifikát do API Management odkazem na certifikát trezoru klíčů.

Přidání back-endu Service Fabric

  1. V Azure Portal přejděte na instanci API Management.
  2. V části Rozhraní API vyberte Back-endy>+ Přidat.
  3. Zadejte název back-endu a volitelný popis.
  4. V části Typ vyberte Service Fabric.
  5. V části Adresa URL modulu runtime zadejte název back-endové služby Service Fabric, do které API Management budou předávat požadavky. Příklad: fabric:/myApplication/myService.
  6. Do pole Maximální počet opakovaných pokusů o rozlišení oddílu zadejte číslo od 0 do 10.
  7. Zadejte koncový bod správy clusteru Service Fabric. Tento koncový bod je adresa URL clusteru na portu 19080, https://mysfcluster.eastus.cloudapp.azure.com:19080například .
  8. V části Klientský certifikát vyberte certifikát clusteru Service Fabric, který jste přidali do instance API Management v předchozí části.
  9. V části Metoda autorizace koncového bodu správy zadejte kryptografický otisk nebo název serveru X509 certifikátu používaného službou pro správu clusteru Service Fabric pro komunikaci protokolu TLS.
  10. Povolte nastavení Ověřit řetěz certifikátů a Ověřit název certifikátu .
  11. V části Autorizační přihlašovací údaje zadejte v případě potřeby přihlašovací údaje pro přístup k nakonfigurované back-endové službě v Service Fabric. Pro ukázkovou aplikaci použitou v tomto scénáři nejsou potřeba autorizační přihlašovací údaje.
  12. Vyberte Vytvořit.

Vytvoření back-endu Service Fabric

Použití back-endu

Pokud chcete použít vlastní back-end, odkazujte na set-backend-service něj pomocí zásad. Tato zásada transformuje výchozí back-endovou adresu URL základní služby příchozího požadavku rozhraní API na zadaný back-end, v tomto případě back-end Service Fabric.

Zásada set-backend-service může být užitečná u existujícího rozhraní API k transformaci příchozího požadavku na jiný back-end, než je ten zadaný v nastavení rozhraní API. Pro demonstrační účely v tomto článku vytvořte testovací rozhraní API a nastavte zásadu pro směrování požadavků rozhraní API do back-endu Service Fabric.

Vytvoření rozhraní API

Pokud chcete vytvořit prázdné rozhraní API, postupujte podle kroků v tématu Ruční přidání rozhraní API.

  • V nastavení rozhraní API nechejte adresu URL webové služby prázdnou.

  • Přidejte příponu adresy URL rozhraní API, například prostředky infrastruktury.

    Vytvoření prázdného rozhraní API

Přidání operace GET do rozhraní API

Jak je znázorněno v tématu Nasazení back-end služby Service Fabric, ukázková služba ASP.NET Core nasazená v clusteru Service Fabric podporuje jednu operaci HTTP GET na cestě /api/valuesURL .

Výchozí odpovědí na tuto cestu je pole JSON se dvěma řetězci:

["value1", "value2"]

Pokud chcete otestovat integraci API Management s clusterem, přidejte do rozhraní API odpovídající operaci GET v cestě /api/values:

  1. Vyberte rozhraní API, které jste vytvořili v předchozím kroku.

  2. Vyberte + Přidat operaci.

  3. V okně Front-end zadejte následující hodnoty a vyberte Uložit.

    Nastavení Hodnota
    Zobrazovaný název Testování back-endu
    Adresa URL GET
    Adresa URL /api/values

    Přidání operace GET do rozhraní API

Konfigurace set-backend-service zásad

Přidejte zásadu set-backend-service do testovacího rozhraní API.

  1. Na kartě Návrh v části Zpracování příchozích dat vyberte ikonu editoru kódu (</>).

  2. Umístění kurzoru do příchozího> elementu<

  3. Přidejte prohlášení o set-service-backend zásadách.

    • V backend-idsouboru nahraďte název vašeho back-endu Service Fabric.

    • Jedná se sf-resolve-condition o podmínku pro opětovné vyřešení umístění služby a opětovné odeslání požadavku. Počet opakování se nastavil při konfiguraci back-endu. Příklad:

      <set-backend-service backend-id="mysfbackend" sf-resolve-condition="@(context.LastError?.Reason == "BackendConnectionFailure")"/>
      
  4. Vyberte Uložit.

    Konfigurace zásad set-back-end-service

Poznámka

Pokud jeden nebo více uzlů v clusteru Service Fabric přestane fungovat nebo se odebere, API Management nedostane automatické oznámení a dál do těchto uzlů odesílá provoz. Pokud chcete tyto případy vyřešit, nakonfigurujte podobnou podmínku řešení: sf-resolve-condition="@((int)context.Response.StatusCode != 200 || context.LastError?.Reason == "BackendConnectionFailure" || context.LastError?.Reason == "Timeout")"

Testování back-endového rozhraní API

  1. Na kartě Test vyberte operaci GET , kterou jste vytvořili v předchozí části.
  2. Vyberte Odeslat.

Při správné konfiguraci se v odpovědi HTTP zobrazí kód úspěšného protokolu HTTP a kód JSON vrácený z back-endové služby Service Fabric.

Testování back-endu Service Fabric

Další kroky