Примечание
Для доступа к этой странице требуется авторизация. Вы можете попробовать войти или изменить каталоги.
Для доступа к этой странице требуется авторизация. Вы можете попробовать изменить каталоги.
В этой статье объясняется, как настроить индексатор в службе "Поиск ИИ Azure" для частного подключения к управляемому экземпляру SQL, работающему в виртуальной сети. Частное подключение осуществляется через общую частную связь и Приватный канал Azure.
При частном подключении к управляемому экземпляру полное доменное имя экземпляра должно включать зону DNS. В настоящее время только REST API службы "Управление поиском ИИ Azure" предоставляет dnsZonePrefix
параметр для принятия спецификации зоны DNS.
Хотя вы можете напрямую вызвать REST API управления, проще использовать модуль Azure CLI az rest
для отправки вызовов REST API управления из командной строки. В этой статье используется Azure CLI с REST для настройки приватного канала.
Примечание.
В этой статье рассматриваются портал Azure для получения свойств и подтверждения действий. Однако при создании общей частной ссылки для Управляемый экземпляр SQL убедитесь, что вы используете REST API. Хотя вкладка "Сеть" отображается Microsoft.Sql/managedInstances
в качестве параметра, портал Azure в настоящее время не поддерживает расширенный формат URL-адресов, используемый Управляемый экземпляр SQL.
Предварительные условия
Поиск Azure AI, базовый или выше. Если вы используете обогащение ИИ и наборы навыков, используйте стандарт 2 (S2) или более новую версию. Дополнительные сведения см. в разделе "Ограничения службы".
Управляемый экземпляр SQL Azure, настроенный для запуска в виртуальной сети.
У вас должны быть права не ниже уровня участника для Azure AI Search и управлямого экземпляра SQL.
Строка подключения для управляемого экземпляра Azure SQL. Управляемое удостоверение на данный момент не поддерживается с общей частной ссылкой. Строка подключения должны содержать имя пользователя и пароль.
Примечание.
Общие частные ссылки оплачиваются с помощью Приватный канал Azure цены и расходы выставляются по счету на основе использования.
1. Получение сведений о подключении
В этом разделе вы получите зону DNS из имени узла и строка подключения.
На портале Azure найдите объект SQL управляемого экземпляра.
На вкладке "Обзор" найдите свойство Host. Скопируйте часть зоны DNS полного доменного имени для следующего шага. Зона DNS входит в состав доменного имени управляемого экземпляра SQL. Например, если полное доменное имя Управляемый экземпляр SQL имеет значение
my-sql-managed-instance.a1b22c333d44.database.windows.net
, зона DNS —a1b22c333d44
это.На вкладке "Строки подключения" скопируйте строку подключения ADO.NET для следующего шага. Он необходим для подключения к источнику данных при тестировании частного подключения.
Дополнительные сведения о свойствах подключения см. в разделе "Создание Управляемый экземпляр SQL Azure".
2. Создание текста запроса
С помощью текстового редактора создайте JSON для общей приватной ссылки.
{ "name": "{{shared-private-link-name}}", "properties": { "privateLinkResourceId": "/subscriptions/{{target-resource-subscription-ID}}/resourceGroups/{{target-resource-rg}}/providers/Microsoft.Sql/managedInstances/{{target-resource-name}}", "dnsZonePrefix": "a1b22c333d44", "groupId": "managedInstance", "requestMessage": "please approve" } }
Укажите понятное имя для общей приватной ссылки. Общая приватная ссылка отображается вместе с другими частными конечными точками. Имя, например "shared-private-link-for-search", может напомнить вам, как оно используется.
Вставьте имя зоны DNS в элемент dnsZonePrefix, полученный на предыдущем шаге.
Измените "privateLinkResourceId", затем замените заполнители на допустимые значения. Укажите допустимый идентификатор подписки, имя группы ресурсов и имя управляемого экземпляра.
Сохраните файл локально как create-pe.json (или используйте другое имя, не забывая обновить синтаксис Azure CLI на следующем шаге).
В Azure CLI введите
dir
, чтобы отметить текущее расположение файла.
3. Создание общей приватной ссылки
В командной строке войдите в Azure с помощью
az login
.Если у вас несколько подписок, убедитесь, что вы используете тот, который вы планируете использовать:
az account show
Чтобы задать подписку, используйте
az account set --subscription {{subscription ID}}
Вызовите команду
az rest
, чтобы использовать REST API управления для Azure AI Search.Так как поддержка общего приватного канала для управляемых экземпляров SQL по-прежнему находится в предварительной версии, вам нужна предварительная версия REST API управления. Используйте
2021-04-01-preview
или более позднюю версию API предварительной версии для этого шага. Мы рекомендуем использовать последнюю предварительную версию API.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=2025-05-01-preview --body @create-pe.json
Укажите идентификатор подписки, имя группы ресурсов и имя службы ресурса поиска ИИ Azure.
Укажите то же общее имя приватного канала, которое вы указали в тексте JSON.
Укажите путь к файлу create-pe.json , если вы покинули его местоположение. Чтобы подтвердить, что файл находится в текущем каталоге, можно ввести
dir
в командной строке.Выполните команду .
После выполнения этих действий у вас должна быть общая частная ссылка, подготовленная в состоянии ожидания. Создание ссылки занимает несколько минут. После создания владелец ресурса должен утвердить запрос, прежде чем он работает.
Вы можете проверить состояние общей приватной ссылки в портал Azure. На странице службы поиска в разделе "Свойства параметров>" прокрутите вниз, чтобы найти общие ресурсы приватного канала и просмотреть значение JSON. Когда состояние подготовки изменяется с ожидающее на завершено, вы можете перейти к следующему шагу.
4. Утверждение подключения к частной конечной точке
На стороне Управляемый экземпляр SQL владелец ресурса должен утвердить созданный вами запрос частного подключения.
В портале Azure откройте Безопасность>подключения к частной конечной точке управляемого экземпляра.
Найдите раздел, в который перечислены подключения к частной конечной точке.
Выберите подключение и нажмите кнопку "Утвердить". Для обновления состояния в портале Azure может потребоваться несколько минут.
После утверждения частной конечной точки поиск Azure создает необходимые сопоставления зон DNS в зоне DNS, созданной для нее.
5. Проверка состояния общей приватной связи
На стороне поиска ИИ Azure вы можете подтвердить утверждение запроса, вернув вкладку "Общий частный доступ" на странице "Сеть службы поиска". Состояние подключения должно быть утверждено.
6. Настройка индексатора для запуска в частной среде
Теперь можно настроить индексатор и его источник данных для использования исходящего частного подключения к управляемому экземпляру.
В этой статье предполагается использование клиента REST и интерфейсов REST API.
Создайте источника данных определение так же, как для Azure SQL. По умолчанию управляемый экземпляр прослушивает порт 3342, но в виртуальной сети он прослушивает 1433.
Укажите строку подключения, скопированную ранее, с начальным каталогом, установленным на название вашей базы данных.
POST https://myservice.search.windows.net/datasources?api-version=2024-07-01 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.a1b22c333d44.database.windows.net,1433;Persist Security Info=false; User ID=<your user name>; Password=<your password>;MultipleActiveResultsSets=False; Encrypt=True;Connection Timeout=30;Initial Catalog=<your database name>" }, "container" : { "name" : "Name of table or view to index", "query" : null (not supported in the Azure SQL indexer) }, "dataChangeDetectionPolicy": null, "dataDeletionDetectionPolicy": null, "encryptionKey": null }
Создайте определение индексатора, придав индексатору
executionEnvironment
значение private.Исполнение индексатора происходит либо в частной среде исполнения, специфичной для вашей службы поиска, либо в мультитенантной среде, размещенной корпорацией Майкрософт, и используется для распределения сложной обработки наборов навыков для нескольких клиентов. При подключении через частную конечную точку выполнение индексатора должно быть частным.
POST https://myservice.search.windows.net/indexers?api-version=2024-07-01 Content-Type: application/json api-key: admin-key { "name": "indexer", "dataSourceName": "my-sql-datasource", "targetIndexName": "my-search-index", "parameters": { "configuration": { "executionEnvironment": "private" } }, "fieldMappings": [] }
Запустите индексатор. Если выполнение индексатора успешно выполнено, и индекс поиска заполняется, общая приватная ссылка работает.
Вы можете отслеживать состояние индексатора в портале Azure или с помощью интерфейса программирования приложений состояния индексатора.
Вы можете использовать обозреватель поиска в портале Azure для проверки содержимого индекса.
7. Проверка общей приватной ссылки
Если вы запустили индексатор на предыдущем шаге и успешно индексировали содержимое из управляемого экземпляра, то тест был успешно выполнен. Однако если индексатор завершает работу с ошибкой или в индексе нет содержимого, вы можете изменить ваши объекты и повторить тестирование, выбрав любой клиент, который может инициировать исходящий запрос, используя индексатор.
Легкий выбор — это выполнить индексатор в портале Azure, но вы также можете попробовать клиент REST и REST API для повышения точности. Если служба поиска не настроена для частного подключения, подключение клиента REST к службе поиска ИИ Azure может находиться через общедоступный Интернет.
Ниже приведены некоторые напоминания о тестировании:
Если вы используете клиент REST, используйте REST API управления и версию API 2021-04-01-Preview, чтобы создать общую приватную ссылку. Используйте REST API поиска и стабильную версию API для создания и вызова индексаторов и источников данных.
Мастер импорта данных можно использовать для создания индексатора, источника данных и индекса. Однако созданный индексатор не будет иметь правильный параметр среды выполнения.
Вы можете изменить источник данных и индексатор JSON в портале Azure, чтобы изменить свойства, включая среду выполнения и строку подключения.
Вы можете сбросить и снова запустить индексатор в портале Azure. Сброс важен для этого сценария, поскольку он обеспечивает полную повторную обработку всех документов.
Обозреватель поиска можно использовать для проверки содержимого индекса.