Nastavení back-endu Service Fabric ve službě API Management pomocí webu Azure Portal

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

Pozadí najdete v tématu Back-endy ve službě API Management.

Požadavky

Požadavky na konfiguraci ukázkové služby v clusteru Service Fabric se systémem Windows jako vlastní back-end:

  • Vývojové prostředí pro Windows – Nainstalujte sadu Visual Studio 2019 a vývoj pro Azure, ASP.NET a vývoj pro web a úlohy vývoje pro různé platformy .NET Core. Potom nastavte vývojové prostředí .NET.

  • Cluster Service Fabric – Viz kurz: Nasazení clusteru Service Fabric se systémem Windows do virtuální sítě Azure. Můžete vytvořit cluster s existujícím certifikátem X.509 nebo pro účely testování 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 služby API Management se Service Fabric v Azure.

    Tyto kroky vytvoří základní bezstavovou službu 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 služby Azure API Management.

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

  • Instance SLUŽBY API Management – Existující nebo nová instance služby API Management na úrovni Premium nebo Developer a ve stejné oblasti jako cluster Service Fabric. Pokud ji potřebujete, vytvořte instanci služby API Management.

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

    Postup povolení připojení k virtuální síti pro instanci služby API Management najdete v tématu Použití služby 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 služby 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 služby API Management jako klientský certifikát.

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

Poznámka:

Doporučujeme přidat certifikát do služby API Management tak, že odkazujete na certifikát trezoru klíčů.

Přidání back-endu Service Fabric

  1. Na webu Azure Portal přejděte k vaší instanci služby API Management.

  2. V části Rozhraní API vyberte Back-endy>+ Přidat.

  3. Zadejte název back-endu a volitelný popis.

  4. V typu vyberte Service Fabric.

  5. Do adresy URL modulu runtime zadejte název back-endové služby Service Fabric, do které bude služba API Management předávat požadavky. Příklad: fabric:/myApplication/myService.

  6. Do pole Maximální počet opakování rozlišení oddílů 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, například https://mysfcluster.eastus.cloudapp.azure.com:19080.

  8. V klientském certifikátu vyberte certifikát clusteru Service Fabric, který jste přidali do instance služby API Management v předchozí části.

  9. V metodě 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 tls.

  10. Povolte nastavení Ověření řetězu certifikátů a Ověření názvu certifikátu.

  11. V přihlašovacích údajích pro autorizaci zadejte v případě potřeby přihlašovací údaje pro přístup ke nakonfigurované back-endové službě v Service Fabric. Pro ukázkovou aplikaci použitou v tomto scénáři nejsou přihlašovací údaje pro autorizaci potřeba.

  12. Vyberte Vytvořit.

    Vytvoření back-endu Service Fabric

Použití back-endu

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

Zásady set-backend-service můžou 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 tak, aby směrovat požadavky rozhraní API na back-end Service Fabric.

Vytvoření rozhraní API

Pokud chcete vytvořit prázdné rozhraní API, postupujte podle kroků v části Přidání rozhraní API ručně .

  • V nastavení rozhraní API ponechte 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-endové služby Service Fabric, ukázková služba ASP.NET Core nasazená v clusteru Service Fabric podporuje jednu operaci HTTP GET v cestě /api/valuesURL .

Výchozí odpověď na této cestě je pole JSON se dvěma řetězci:

["value1", "value2"]

Pokud chcete otestovat integraci služby API Management s clusterem, přidejte odpovídající operaci GET do rozhraní API na 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-endu zadejte následující hodnoty a vyberte Uložit.

    Nastavení Hodnota
    Zobrazované jméno 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 uvnitř příchozího >< prvku

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

    • Nahraďte backend-idnázev back-endu Service Fabric.

    • Jedná se sf-resolve-condition o podmínku opětovného překladu umístění služby a opětovného odeslání žádosti. 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. Zvolte Uložit.

    Konfigurace zásad back-endové služby set-back-end

Poznámka:

Pokud jeden nebo více uzlů v clusteru Service Fabric přestane fungovat nebo se odebere, služba API Management nezístane automatické oznámení a bude dál posílat provoz do těchto uzlů. Pokud chcete tyto případy zpracovat, nakonfigurujte podmínku řešení podobnou této: 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