Sdílet prostřednictvím


Vytvoření sdíleného privátního propojení pro spravovanou instanci SQL z Azure AI Search

Tento článek vysvětluje, jak nakonfigurovat indexer ve službě Azure AI Search pro privátní připojení ke spravované instanci SQL, která běží ve virtuální síti. Privátní připojení je prostřednictvím sdíleného privátního propojení a Služby Azure Private Link.

U privátního připojení ke spravované instanci musí plně kvalifikovaný název domény (FQDN) instance obsahovat zónu DNS. V současné době pouze rozhraní REST API služby Azure AI Search Management poskytuje resourceRegion parametr pro přijetí specifikace zóny DNS.

I když můžete rozhraní REST API pro správu volat přímo, je jednodušší použít modul Azure CLI az rest k odesílání volání rozhraní REST API pro správu z příkazového řádku. Tento článek používá Azure CLI s REST k nastavení privátního propojení.

Poznámka:

Tento článek se týká webu Azure Portal pro získání vlastností a potvrzení kroků. Při vytváření sdíleného privátního propojení pro službu SQL Managed Instance se ale ujistěte, že používáte rozhraní REST API. I když se na kartě Sítě zobrazuje Microsoft.Sql/managedInstances možnost, portál v současné době nepodporuje rozšířený formát adresy URL používaný službou SQL Managed Instance.

Požadavky

  • Azure CLI

  • Azure AI Search, Basic nebo vyšší. Pokud používáte rozšíření AI a sady dovedností, použijte Standard 2 (S2) nebo vyšší. Podrobnosti najdete v tématu Omezení služby.

  • Spravovaná instance Azure SQL nakonfigurovaná tak, aby běžela ve virtuální síti.

  • Ve službě Azure AI Search i ve spravované instanci SQL byste měli mít minimálně oprávnění přispěvatele.

  • Azure SQL Managed Instance připojovací řetězec. Spravovaná identita se v současné době nepodporuje se sdíleným privátním propojením. Vaše připojovací řetězec musí obsahovat uživatelské jméno a heslo.

Poznámka:

Sdílené privátní propojení se účtují prostřednictvím cen služby Azure Private Link a poplatky se účtují na základě využití.

1. Načtení informací o připojení

Načtěte plně kvalifikovaný název domény spravované instance, včetně zóny DNS. Zóna DNS je součástí názvu domény spravované instance SQL. Pokud je například plně kvalifikovaný název domény spravované instance my-sql-managed-instance.00000000000.database.windows.netSQL , zóna DNS je 00000000000.

  1. Na webu Azure Portal vyhledejte objekt spravované instance SQL.

  2. Na kartě Přehled vyhledejte vlastnost Hostitel. Zkopírujte část zóny DNS plně kvalifikovaného názvu domény pro další krok.

  3. Na kartě řetězce Připojení ion zkopírujte ADO.NET připojovací řetězec pro pozdější krok. Při testování privátního připojení je potřeba připojení ke zdroji dat.

Další informace o vlastnostech připojení najdete v tématu Vytvoření spravované instance Azure SQL.

2. Vytvoření textu požadavku

  1. Pomocí textového editoru vytvořte JSON pro sdílený privátní odkaz.

    {
        "name": "{{shared-private-link-name}}",
        "properties": {
            "privateLinkResourceId": "/subscriptions/{{target-resource-subscription-ID}}/resourceGroups/{{target-resource-rg}}/providers/Microsoft.Sql/managedInstances/{{target-resource-name}}",
            "resourceRegion": "a1b22c333d44",
            "groupId": "managedInstance",
            "requestMessage": "please approve",
        }
    }
    
  2. Zadejte smysluplný název sdíleného privátního propojení. Sdílený privátní odkaz se zobrazí společně s dalšími privátními koncovými body. Název, například "shared-private-link-for-search", vám může připomenout, jak se používá.

  3. Vložte název zóny DNS do "resourceRegion", který jste získali v předchozím kroku.

  4. Upravte privateLinkResourceId tak, aby odrážel privátní koncový bod vaší spravované instance. Zadejte ID předplatného, název skupiny prostředků a název objektu spravované instance.

  5. Uložte soubor místně jako create-pe.json (nebo použijte jiný název, nezapomeňte v dalším kroku aktualizovat syntaxi Azure CLI).

  6. Do Azure CLI zadejte dir aktuální umístění souboru.

  1. Z příkazového řádku se přihlaste k Azure pomocí az login.

  2. Pokud máte více předplatných, ujistěte se, že používáte předplatné, které chcete použít: az account show.

    Pokud chcete nastavit předplatné, použijte az account set --subscription {{subscription ID}}

  3. Voláním az rest příkazu použijte rozhraní REST API pro správu služby Azure AI Search.

    Vzhledem k tomu, že podpora sdíleného privátního propojení pro spravované instance SQL je stále ve verzi Preview, potřebujete verzi Preview rozhraní REST API. Použije se 2021-04-01-preview pro tento krok.

    az rest --method put --uri https://management.azure.com/subscriptions/{{search-service-subscription-ID}}/resourceGroups/{{search service-resource-group}}/providers/Microsoft.Search/searchServices/{{search-service-name}}/sharedPrivateLinkResources/{{shared-private-link-name}}?api-version=2021-04-01-preview --body @create-pe.json
    

    Zadejte ID předplatného, název skupiny prostředků a název služby vašeho prostředku Azure AI Search.

    Zadejte stejný název sdíleného privátního propojení, který jste zadali v textu JSON.

    Pokud jste přešli mimo umístění souboru, zadejte cestu k souboru create-pe.json . Na příkazovém řádku můžete zadat dir potvrzení, že je soubor v aktuálním adresáři.

  4. Stisknutím klávesy Enter příkaz spusťte.

Po dokončení těchto kroků byste měli mít sdílený privátní odkaz, který je zřízený ve stavu čekání na vyřízení. Vytvoření odkazu trvá několik minut. Po vytvoření musí vlastník prostředku žádost před provozem schválit.

4. Schválení připojení privátního koncového bodu

Na straně spravované instance SQL musí vlastník prostředku schválit žádost o privátní připojení, kterou jste vytvořili.

  1. Na webu Azure Portal otevřete kartu připojení privátního koncového bodu spravované instance.

  2. Najděte část se seznamem připojení privátních koncových bodů.

  3. Vyberte připojení a pak vyberte Schválit. Aktualizace stavu na portálu může trvat několik minut.

Po schválení privátního koncového bodu azure AI Search vytvoří potřebná mapování zón DNS v zóně DNS, která je pro ni vytvořená.

Na straně Azure AI Search můžete potvrdit schválení žádostí na kartě Sdílený privátní přístup na stránce Sítě vyhledávací služby. stav Připojení ionu by měl být schválen.

Snímek obrazovky webu Azure Portal zobrazující prostředek sdíleného privátního propojení Schváleno

6. Konfigurace indexeru pro spuštění v privátním prostředí

Teď můžete nakonfigurovat indexer a jeho zdroj dat tak, aby používaly odchozí privátní připojení k vaší spravované instanci.

Pro tento krok můžete použít Průvodce importem dat , ale indexer, který je vygenerovaný, nebude pro tento scénář platný. Budete muset upravit vlastnost JSON indexeru, jak je popsáno v tomto kroku, aby vyhovovala tomuto scénáři. Pak budete muset resetovat a znovu spustit indexer , aby se kanál plně otestil pomocí aktualizovaného indexeru.

Tento článek předpokládá klienta REST a používá rozhraní REST API k usnadnění zobrazení všech vlastností. Vzpomeňte si, že rozhraní REST API volá indexery a zdroje dat, používají k vytvoření sdíleného privátního propojení rozhraní REST API služby Search, nikoli rozhraní REST API pro správu. Syntaxe a verze rozhraní API se mezi těmito dvěma rozhraními REST API liší.

  1. Vytvořte definici zdroje dat jako obvykle pro Azure SQL. Formát připojovací řetězec se u spravované instance mírně liší, ale jiné vlastnosti jsou stejné, jako kdybyste konfigurovali připojení ke zdroji dat k databázi Azure SQL.

    Zadejte připojovací řetězec, které jste zkopírovali dříve.

    POST https://myservice.search.windows.net/datasources?api-version=2020-06-30
     Content-Type: application/json
     api-key: admin-key
     {
         "name" : "my-sql-datasource",
         "description" : "A database for testing Azure AI Search indexes.",
         "type" : "azuresql",
         "credentials" : { 
             "connectionString" : "Server=tcp:contoso.public.0000000000.database.windows.net,1433; Persist Security Info=false; User ID=<your user name>; Password=<your password>;MultipleActiveResultsSets=False; Encrypt=True;Connection Timeout=30;" 
            },
         "container" : { 
             "name" : "Name of table or view to index",
             "query" : null (not supported in the Azure SQL indexer)
             },
         "dataChangeDetectionPolicy": null,
         "dataDeletionDetectionPolicy": null,
         "encryptionKey": null,
         "identity": null
     }
    
  2. Vytvořte definici indexeru a nastavte spouštěcí prostředí indexeru na "privátní".

    Provádění indexeru probíhá buď v privátním prostředí specifickém pro vyhledávací službu, nebo v prostředí s více tenanty, které se používá interně k přesměrování nákladného zpracování sady dovedností pro více zákazníků. Při připojování přes privátní koncový bod musí být spuštění indexeru privátní.

     POST https://myservice.search.windows.net/indexers?api-version=2020-06-30
      Content-Type: application/json
      api-key: admin-key
        {
         "name": "indexer",
         "dataSourceName": "my-sql-datasource",
         "targetIndexName": "my-search-index",
         "parameters": {
             "configuration": {
                 "executionEnvironment": "private"
             }
         },
         "fieldMappings": []
         }
    
  3. Spusťte indexer. Pokud se spuštění indexeru úspěšně spustí a index vyhledávání se naplní, funguje sdílený privátní odkaz.

Stav indexeru můžete monitorovat na webu Azure Portal nebo pomocí rozhraní API stavu indexeru.

Obsah indexu můžete zkontrolovat pomocí Průzkumníka služby Search na webu Azure Portal.

Pokud jste indexer spustili v předchozím kroku a úspěšně indexovali obsah ze spravované instance, test byl úspěšný. Pokud ale indexer selže nebo v indexu není žádný obsah, můžete upravit objekty a opakovat testování výběrem libovolného klienta, který může vyvolat odchozí požadavek z indexeru.

Snadnou volbou je spuštění indexeru na webu Azure Portal, ale můžete také vyzkoušet klienta REST a rozhraní REST API pro větší přesnost. Za předpokladu, že vaše vyhledávací služba není nakonfigurovaná také pro privátní připojení, může být připojení klienta REST ke službě Search přes veřejný internet.

Tady je několik připomenutí pro testování:

  • Pokud používáte klienta REST, vytvořte sdílený privátní odkaz pomocí rozhraní REST API pro správu a verze rozhraní API verze 2021-04-01-Preview. K vytváření a vyvolání indexerů a zdrojů dat použijte rozhraní REST API služby Search a stabilní verzi rozhraní API.

  • Průvodce importem dat můžete použít k vytvoření indexeru, zdroje dat a indexu. Vygenerovaný indexer ale nebude mít správné nastavení spouštěcího prostředí.

  • Kód JSON zdroje dat a indexeru můžete upravit na webu Azure Portal a změnit vlastnosti, včetně spouštěcího prostředí a připojovací řetězec.

  • Indexer můžete resetovat a spustit znovu na webu Azure Portal. Resetování je pro tento scénář důležité, protože vynutí úplné opětovné zpracování všech dokumentů.

  • Pomocí Průzkumníka služby Search můžete zkontrolovat obsah indexu.

Viz také