Distributioner i flera regioner i Azure AI-sökning

Note

Azure AI-sökning är tillgängligt via Azure-portalen, REST-API:er och Azure-SDK:er. Den ligger också till grund för Foundry IQ, det hanterade kunskapsskiktet som omvandlar företagsinnehåll till återanvändbara, behörighetsmedvetna kunskapsbaser för agenter i Microsoft Foundry-portalen.

Även om Azure AI-sökning är en tjänst för en region kan du uppnå högre tillförlitlighet genom att distribuera flera söktjänster med identiska konfigurationer och innehåll i flera regioner.

Den här artikeln beskriver komponenterna i en lösning för flera regioner, som förlitar sig på ditt anpassade skript eller din kod för att hantera redundans om en tjänst blir otillgänglig.

Mer information om tillförlitlighetsfunktionerna i Azure AI-sökning, inklusive intraregional återhämtning via tillgänglighetszoner, finns i Tillförlitlighet i Azure AI-sökning.

Varför ska du använda flera regioner?

Om du behöver två eller flera söktjänster kan skapandet av dem i olika regioner uppfylla följande driftskrav:

  • Motståndskraft mot regionavbrott. Om det uppstår ett avbrott ger Azure AI-sökning inte omedelbar redundans till en annan region.

  • Snabba prestanda för ett globalt distribuerat program. Om indexerings- och frågebegäranden kommer från hela världen får användare som är närmast värddatacentret snabbare prestanda. Att skapa fler tjänster i regioner med närhet till dessa användare kan utjämna prestanda för alla.

Arkitektur för flera regioner

I en installation med flera regioner finns två eller flera söktjänster i olika regioner och har synkroniserade index. Användare dirigeras automatiskt till tjänsten med den lägsta svarstiden.

Azure AI-sökning tillhandahåller inte någon automatiserad metod för indexreplikering mellan regioner. Du kan dock synkronisera data med push- eller pull-modellindexering, som båda beskrivs i följande avsnitt. Du kan också lägga till Azure Traffic Manager eller en annan lastbalanserare för omdirigering av begäranden.

Följande diagram illustrerar en geo-distribuerad uppsättning söktjänster:

Diagram som visar en korsfliksvy över tjänster efter region.

Bicep-exempel för flera regioner

Prova att köra det här exemplet för att se hur du distribuerar Azure AI-sökning-tjänster i flera regioner med redundans som hanteras av Azure Front Door: Azure-Samples/azure-search-multiple-regions.

Distributionen skapar identiska Azure AI-sökning-tjänster i två regioner och exponerar dem via Azure Functions-API :er.

Genom att kombinera hälsoavsökningar med prioritetsbaserad routning kan Azure Front Door automatiskt omdirigera trafik till en sekundär region under ett regionalt fel. Utvecklare använder ofta det här mönstret för flera regioner för att förbättra tillgängligheten och haveriberedskapen för sökbaserade program.

Datasynkronisering

Om du vill synkronisera två eller flera distinkta söktjänster kan du antingen:

Om du använder REST-API:erna för att skicka innehåll till ditt index kan du synkronisera flera söktjänster genom att skicka uppdateringar till varje tjänst när ändringar sker. Se till att koden hanterar fall där en uppdatering misslyckas för en tjänst men lyckas för andra tjänster.

Plats för datalagring

När du skapar flera söktjänster i olika regioner lagras innehållet i den region som du har valt för varje tjänst.

Azure AI-sökning lagrar inte data utanför din angivna region utan din auktorisering. Auktorisering är implicit när du använder funktioner som skriver till Azure Storage, för vilka du anger ett lagringskonto i önskad region. Dessa funktioner omfattar bland annat:

Om söktjänsten och lagringskontot finns i samma region använder nätverkstrafiken privata IP-adresser via Microsofts stamnätverk, så du kan inte konfigurera IP-brandväggar eller privata slutpunkter för nätverkssäkerhet. Du kan också använda undantaget för betrodda tjänster.

Begära överbelastningsskydd och omdirigering

För redundans på begärandenivå tillhandahåller Azure flera alternativ för belastningsutjämning:

Använd Azure Application Gateway för att belastningsutjämning mellan servrar i en region på programnivå.

Som standard nås tjänstslutpunkter via en offentlig Internetanslutning. Använd Application Gateway om du konfigurerar en privat slutpunkt för klientanslutningar som kommer från ett virtuellt nätverk.

När du utvärderar dessa alternativ för belastningsutjämning bör du tänka på följande punkter:

  • Azure AI-sökning är en serverdelstjänst som accepterar indexering och frågebegäranden från en klient.

  • Som standard nås tjänstslutpunkter via en offentlig Internetanslutning. Vi rekommenderar Azure Application Gateway för privata slutpunkter som kommer från ett virtuellt nätverk.

  • Azure AI-sökning accepterar begäranden som är adresserade till <your-search-service-name>.search.windows.net slutpunkten. Om du når samma slutpunkt med ett annat DNS-namn i värdhuvudet, till exempel ett CNAME, avvisas begäran.

  • Begäranden från klienten till en söktjänst måste autentiseras. För att få åtkomst till sökåtgärder måste anroparen ha rollbaserade behörigheter eller ange en API-nyckel med begäran.