Felsöka problem med delade privata länkar i Azure AI Search

Med en delad privat länk kan Azure AI Search göra säkra utgående anslutningar via en privat slutpunkt när du får åtkomst till kundresurser i ett virtuellt nätverk. Den här artikeln kan hjälpa dig att lösa fel som kan uppstå.

Att skapa en delad privat länk är en söktjänstkontrollplansåtgärd. Du kan skapa en delad privat länk med hjälp av antingen portalen eller ett REST API för hantering. Under etableringen är tillståndet för begäran "Uppdatera". När åtgärden har slutförts är statusen "Lyckades". En privat slutpunkt till resursen, tillsammans med dns-zoner och mappningar, skapas. Den här slutpunkten används uteslutande av din söktjänstinstans och hanteras via Azure AI Search.

Steps involved in creating shared private link resources

Några vanliga fel som inträffar under genereringsfasen visas nedan.

Valideringsfel för begäranden

  • SKU:n stöds inte: Delade privata länkar stöds på Basic-nivån och senare. För indexerare med kompetensuppsättningar är miniminivån Standard 2 (S2).

  • Ogiltigt namn: Namngivningsregler för en delad privat länk är:

    • Längden ska vara mellan 1 och 60 tecken
    • Alfanumeriska tecken
    • Namn kan innehålla understreck _, punkt .och bindestreck - så länge det inte är det första tecknet i namnet
  • Ogiltigt grupp-ID: Grupp-ID:t är skiftlägeskänsliga och måste vara ett av värdena i tabellen nedan:

    Azure-resurs Grupp-ID Första tillgängliga API-versionen
    Azure Storage – Blob (eller) ADLS Gen 2 blob 2020-08-01
    Azure Storage – tabeller table 2020-08-01
    Azure Cosmos DB för NoSQL Sql 2020-08-01
    Azure SQL Database sqlServer 2020-08-01
    Azure Database för MySQL (förhandsversion) mysqlServer 2020-08-01-Preview
    Azure Key Vault vault 2020-08-01
    Azure Functions (förhandsversion) sites 2020-08-01-Preview

    Resurser som har markerats med "(förhandsversion)" måste skapas med en förhandsversion av REST API-versionerna för hantering.

  • privateLinkResourceId typvalidering: På liknande sätt groupIdverifierar Azure AI Search att den "korrekta" resurstypen anges i privateLinkResourceId. Följande är giltiga resurstyper:

    Azure-resurs Resurstyp Första tillgängliga API-versionen
    Azure Storage Microsoft.Storage/storageAccounts 2020-08-01
    Azure Cosmos DB Microsoft.DocumentDb/databaseAccounts 2020-08-01
    Azure SQL Database Microsoft.Sql/servers 2020-08-01
    Azure Key Vault Microsoft.KeyVault/vaults 2020-08-01
    Azure Database för MySQL (förhandsversion) Microsoft.DBforMySQL/servers 2020-08-01-Preview
    Azure Functions (förhandsversion) Microsoft.Web/sites 2020-08-01-Preview
    Azure SQL Managed Instance (förhandsversion) Microsoft.Sql/managedInstance 2020-08-01-Preview

    Dessutom måste den angivna groupId vara giltig för den angivna resurstypen. Till exempel groupId är "blob" giltigt för typen "Microsoft.Storage/storageAccounts" och kan inte användas med någon annan resurstyp. För en viss api-version för sökhantering kan kunderna ta reda på information om vilka resurser som stöds groupId och resurstyp genom att använda API:et lista som stöds.

  • Kvotbegränsning: tjänsten Search har kvoter för det distinkta antalet delade privata länkresurser som kan skapas och antalet olika målresurstyper som används (baserat på groupId). Dessa dokumenteras i avsnittet Resursbegränsningar för delad privat länk på sidan Azure AI-tjänsten Search gränser.

Distributionsfel

En söktjänst initierar begäran om att skapa en delad privat länk, men Azure Resource Manager utför det faktiska arbetet. Du kan kontrollera distributionens status i portalen eller efter fråga och åtgärda eventuella fel som kan inträffa.

Delade privata länkresurser som har misslyckats med Azure Resource Manager-distributionen visas i Lista och Hämta API-anrop, men kommer att ha etableringstillståndet Failed. När orsaken till Azure Resource Manager-distributionsfelet har fastställts tar du bort resursen och skapar den Failed igen när du har tillämpat lämplig lösning från följande tabell.

Orsak till distributionsfel beskrivning Åtgärd
"LinkedAuthorizationFailed" Felmeddelandet anger att klienten har behörighet att skapa den delade privata länken i söktjänsten, men har inte behörighet att utföra åtgärden "privateEndpoint Anslut ionApproval/action" i det länkade omfånget. Kontrollera det privata länk-ID:t igen i begäran för att se till att det inte finns några fel eller utelämnanden i URI:n. Om Azure AI Search och Azure PaaS-resursen finns i olika prenumerationer och om du använder REST eller ett kommandoradsgränssnitt kontrollerar du att det aktiva Azure-kontot är för Azure PaaS-resursen. För REST-klienter kontrollerar du att du inte använder en förfallen ägartoken och att token är giltig för den aktiva prenumerationen.
Nätverksresursprovidern är inte registrerad i målresursens prenumeration En privat slutpunkt (och associerade DNS-mappningar) skapas för målresursen (lagringskonto, Azure Cosmos DB, Azure SQL) via Microsoft.Network resursprovidern (RP). Om den prenumeration som är värd för målresursen ("målprenumeration") inte har registrerats med Microsoft.Network RP kan Azure Resource Manager-distributionen misslyckas. Du måste registrera den här RP:n i deras målprenumeration. Du kan registrera resursprovidern med hjälp av Azure-portalen, PowerShell eller CLI.
Ogiltigt groupId för målresursen När Azure Cosmos DB-konton skapas kan du ange API-typen för databaskontot. Azure Cosmos DB erbjuder flera olika API-typer, men Azure AI Search stöder endast "Sql" som groupId för delade privata länkresurser. När en delad privat länk av typen "Sql" skapas för att privateLinkResourceId peka på ett icke-Sql-databaskonto misslyckas Azure Resource Manager-distributionen på grund av matchningsfelet groupId . Azure-resurs-ID för ett Azure Cosmos DB-konto räcker inte för att fastställa vilken API-typ som används. Azure AI Search försöker skapa den privata slutpunkten, som sedan nekas av Azure Cosmos DB. Du bör se till att den angivna Azure Cosmos DB-resursen privateLinkResourceId är för ett databaskonto av "SQL"-API-typ
Målresursen hittades inte Förekomsten av målresursen som anges i privateLinkResourceId kontrolleras endast när Azure Resource Manager-distributionen påbörjas. Om målresursen inte längre är tillgänglig misslyckas distributionen. Du bör se till att målresursen finns i den angivna prenumerationen och resursgruppen och inte flyttas eller tas bort.
Tillfälliga/andra fel Azure Resource Manager-distributionen kan misslyckas om det uppstår ett infrastrukturfel eller på grund av andra oväntade orsaker. Detta bör vara sällsynt och indikerar vanligtvis ett tillfälligt tillstånd. Försök att skapa den här resursen igen vid ett senare tillfälle. Kontakta Azure-supporten om problemet kvarstår.

Problem med att godkänna den privata slutpunkten för säkerhetskopiering

En privat slutpunkt skapas till azure-målresursen enligt beskrivningen i begäran om att skapa en delad privat länk. Det här är ett av de sista stegen i den asynkrona Azure Resource Manager-distributionsåtgärden, men Azure AI Search måste länka den privata slutpunktens privata IP-adress som en del av nätverkskonfigurationen. När den här länken är klar går resursen provisioningState för den delade privata länken till ett terminaltillstånd Succeeded. Kunder bör endast godkänna eller neka (eller i allmänhet ändra konfigurationen av den privata slutpunkten för säkerhetskopiering) efter att tillståndet har övergått till Succeeded. Att ändra den privata slutpunkten på något sätt innan detta kan resultera i en ofullständig distributionsåtgärd och kan leda till att resursen för delad privat länk hamnar (antingen omedelbart eller vanligtvis inom några timmar) i ett Failed tillstånd.

tjänsten Search nätverksanslutningsändringen har stoppats i tillståndet "Uppdatera"

Delade privata länkar och privata slutpunkter används när åtkomsten till det offentliga nätverket i söktjänsten är inaktiverad. Normalt bör det gå att ändra nätverksanslutningen inom några minuter efter att begäran har godkänts. I vissa fall kan det ta flera timmar för Azure AI Search att slutföra anslutningsändringsåtgärden.

Screenshot of changing public network access to disabled.

Om du ser att anslutningsändringsåtgärden tar mycket tid väntar du några timmar. Anslut ivity change operations omfattar åtgärder som att uppdatera DNS-poster som kan ta längre tid än förväntat.

Om åtkomsten till det offentliga nätverket ändras kanske befintliga delade privata länkar och privata slutpunkter inte fungerar korrekt. Om befintliga delade privata länkar och privata slutpunkter slutar fungera under en anslutningsändringsåtgärd väntar du några timmar på att åtgärden ska slutföras. Om de fortfarande inte fungerar kan du prova att ta bort och återskapa dem.

Vanligtvis bör en resurs för delad privat länk ha ett terminaltillstånd (Succeeded eller Failed) inom några minuter efter att begäran har godkänts.

I sällsynta fall kan Azure AI Search misslyckas med att korrekt markera tillståndet för resursen för delad privat länk till ett terminaltillstånd (Succeeded eller Failed). Detta inträffar vanligtvis på grund av ett oväntat fel. Delade privata länkresurser övergår automatiskt till ett Failed tillstånd om de har "fastnat" i ett icke-terminaltillstånd i mer än några timmar.

Om du observerar att resursen för den delade privata länken inte har övergått till ett terminaltillstånd väntar du några timmar för att se till att den blir Failed det innan du kan ta bort den och återskapa den. I stället för att vänta kan du också försöka skapa en annan resurs för delad privat länk med ett annat namn (och behålla alla andra parametrar på samma sätt).

En befintlig resurs för delad privat länk kan uppdateras med hjälp av API:et Skapa eller uppdatera. Sökning tillåter endast smala uppdateringar av resursen för delad privat länk – endast begärandemeddelandet kan ändras via det här API:et.

  • Det går inte att uppdatera någon av "kärnegenskaperna" för en befintlig delad privat länkresurs (till exempel privateLinkResourceId eller groupId) och detta stöds alltid inte. Om någon annan egenskap förutom begärandemeddelandet behöver ändras rekommenderar vi kunderna att ta bort och återskapa resursen för delad privat länk.

  • Försök att uppdatera begärandemeddelandet för en delad privat länkresurs är bara möjligt om det har nått etableringstillståndet Succeededför .

Kunder kan ta bort en befintlig resurs för delad privat länk via borttagnings-API:et. På samma sätt som processen för att skapa (eller uppdatera) är detta också en asynkron åtgärd med fyra steg:

  1. Du begär en söktjänst för att ta bort resursen för delad privat länk.

  2. Söktjänsten verifierar att resursen finns och är i ett tillstånd som är giltigt för borttagning. I så fall initieras en Azure Resource Manager-borttagningsåtgärd för att ta bort resursen.

  3. Sök frågor för slutförandet av åtgärden (vilket vanligtvis tar några minuter). I det här läget skulle resursen för delad privat länk ha etableringstillståndet "Ta bort".

  4. När åtgärden har slutförts tas den privata slutpunkten och eventuella associerade DNS-mappningar bort. Resursen visas inte som en del av liståtgärden och försök att utföra en Get-åtgärd på den här resursen resulterar i att 404 inte hittas.

Steps involved in deleting shared private link resources

Några vanliga fel som uppstår under borttagningsfasen visas nedan.

Feltyp beskrivning Åtgärd
Resursen är i icke-terminaltillstånd En delad privat länkresurs som inte är i terminaltillstånd (Succeeded eller Failed) kan inte tas bort. Det är möjligt (sällsynt) att en resurs för delad privat länk fastnar i ett icke-terminaltillstånd i upp till 8 timmar. Vänta tills resursen har nått ett terminaltillstånd och försök ta bort begäran igen.
Borttagningsåtgärden misslyckades med felet "Konflikt" Azure Resource Manager-åtgärden för att ta bort en resurs för delad privat länk når ut till resursprovidern för målresursen som anges i privateLinkResourceId ("mål-RP") innan den kan ta bort den privata slutpunkten och DNS-mappningarna. Kunder kan använda Azure-resurslås för att förhindra ändringar i sina resurser. När Azure Resource Manager når ut till mål-RP måste mål-RP:en ändra målresursens tillstånd (för att ta bort information om den privata slutpunkten från dess metadata). När målresursen har ett lås konfigurerat på den (eller dess resursgrupp/prenumeration) misslyckas Azure Resource Manager-åtgärden med en "konflikt" (och lämplig information). Resursen för den delade privata länken tas inte bort. Kunder bör ta bort låset på målresursen innan de försöker ta bort åtgärden igen. Obs! Det här problemet kan också uppstå när kunder försöker ta bort en söktjänst med delade privata länkresurser som pekar på "låsta" målresurser
Det gick inte att ta bort åtgärden Den asynkrona borttagningsåtgärden för Azure Resource Manager kan misslyckas i sällsynta fall. När den här åtgärden misslyckas får kunderna ett felmeddelande och lämplig information när de frågar efter tillståndet för den asynkrona åtgärden. Försök igen vid ett senare tillfälle eller kontakta Azure Support om problemet kvarstår.
Resursen har fastnat i tillståndet "Ta bort" I sällsynta fall kan en resurs för delad privat länk ha fastnat i tillståndet "Ta bort" i upp till 8 timmar, sannolikt på grund av ett katastrofalt fel i sök-RP: et. Vänta i 8 timmar, varefter resursen övergår till Failed tillstånd och sedan återutge begäran.

Nästa steg

Läs mer om resurser för delad privat länk och hur du använder dem för säker åtkomst till skyddat innehåll.