Поделиться через


Расширение Azure для системных объектов SQL Server

Применимо к:SQL Server

В этой статье перечислены системные объекты, которые развёртывает и управляет расширение Azure для SQL Server. К ним относятся:

  • Files
  • Разделы реестра
  • Службы Windows
  • Tables

Файлы Windows Server

Path Description
%ProgramFiles%\AzureConnectedMachineAgent\* azcmagent Исполняемые файлы службы метаданных интерфейса командной строки и экземпляра
%ProgramFiles%\AzureConnectedMachineAgent\GCArcService\GC\* Исполняемые файлы службы расширений
%ProgramData%\AzureConnectedMachineAgent\* Файлы маркеров конфигурации, журнала и идентификации для azcmagent службы метаданных интерфейса командной строки и экземпляра
%ProgramData%\Application Data\Microsoft\Crypto\RSA\MachineKeys Закрытые ключи сертификата Windows

Файлы SQL Server

Path Описание и заметки
%ProgramFiles%\SQL Server Extension\* Файлы программы расширения
%SYSTEMDRIVE%\Packages\Plugins\Microsoft.AzureData.WindowsAgent.SQLServer\<extension_version>\* Исполняемые файлы расширения
%SYSTEMDRIVE%\Windows\system32\extensionUpload\* Файлы использования
C:\Windows\System32\Tasks\Microsoft\SqlServerExtension XML для запланированной задачи для предоставления привилегий
C:\Windows\ServiceProfiles\SqlServerExtension\AppData\Local\Microsoft SQL Server Extension Agent\* При настройке наименьших привилегий

Приложение компонентов
C:\Windows\System32\config\systemprofile\AppData\Local\Microsoft SQL Server Extension Agent\* Если не настроено для наименьших привилегий

Приложение компонентов

Note

В настоящее время наименее привилегированная конфигурация не применяется по умолчанию.

Существующие серверы с версией расширения 1.1.2859.223 или более поздней в конечном итоге получат наименее привилегированную конфигурацию. Это расширение было выпущено в ноябре 2024 года. Чтобы предотвратить автоматическое применение минимальных привилегий, заблокируйте обновление расширения после 1.1.2859.223.

Службы Windows

Название сервиса Показать имя Имя процесса Description
SqlServerExtension Служба расширений Microsoft SQL Server SqlServerExtension.exe Подключает экземпляр SQL Server к Azure.
himds Гибридная служба метаданных экземпляров Azure himds.exe Синхронизирует метаданные с Azure и хостит локальный REST API, чтобы расширения и приложения могли получить доступ к метаданным и запросить токены управляемой идентификации Microsoft Entra.
GCArcService Служба Arc конфигурации компьютера gc_arc_service.exe (gc_service.exe раньше версии 1.36) Выполняет аудит и применяет политики конфигурации компьютера Azure на компьютере.
ExtensionService Служба расширения конфигурации компьютера gc_extension_service.exe (gc_service.exe раньше версии 1.36) Устанавливает и обновляет расширениями на компьютере, а также управляет ими.

Учетные записи виртуальной службы

Виртуальная учетная запись Description
NT SERVICE\himds Непривилегированная учетная запись, используемая для запуска службы Hybrid Instance Metadata Service.
NT Service\SQLServerExtension Непривилегированная учетная запись, используемая для запуска службы расширений SQL Server в режиме наименьших привилегий.

Разделы реестра

Базовый ключ: HKEY_LOCAL_MACHINE

Key Описание и заметки
SOFTWARE\Microsoft\Microsoft SQL Server\<InstanceRegistryName>\MSSQLSERVER Раздел реестра идентификаторов Microsoft Entra
SOFTWARE\Microsoft\Microsoft SQL Server\<InstanceRegistryName>\PurviewConfig Раздел реестра Purview
SOFTWARE\Microsoft\SystemCertificates Раздел реестра сертификатов Windows

Tables

В каждом экземпляре SQL Server, включенном Azure Arc, расширение создает следующие таблицы в msdb:

Имена таблиц Цель
dq.arcJobTriggers00, dt.arcJobDefinitions Эти таблицы хранят фоновое определение задания и журнал выполнения. Фоновые задания выполняют запланированные и инициированные пользователем действия. Эти таблицы позволяют длительно выполнять задачи автоматически, если расширение Azure для SQL Server перезапущено.
dbo.SQLServerAzureArcProperties Эта таблица содержит удостоверение ресурса для экземпляра SQL Server в Azure Resource Manager. Эту таблицу можно использовать для определения того, включен ли экземпляр SQL Server Arc, и если да, идентификатор ресурса находится в Azure.

Часто задаваемые вопросы

Где же эти фоновые работы?

Фоновые задания используются для выполнения долгосрочных задач, которые могут сохраняться в состоянии при повторном запуске компьютера. Логика заданий хранится в расширении, а состояние — в msdb. Например, выполнение задачи оценки миграции может занимать много времени, поэтому состояние хранится в msdb.

В каком контексте безопасности выполняются эти работы?

В режиме наименьших привилегий задания выполняются в контексте C:\Program Files\SQL Server Extension\SqlServerExtension.Service.exe сервиса. Сервис подключается к msdb базе данных на SQL Server вместе с учётной NT Service\SQLServerExtension записью. Этот сервис обладает минимальными разрешениями, необходимыми для работы на msdb.

Если расширение агента не находится в режиме привилегий, соединение осуществляется с помощью аккаунта LocalSystem .

Как долго сохраняются строки на этом столе? Какова политика чистки?

Максимальный срок службы — 15 дней. Эта настройка в настоящее время не настраивается пользователем через API Azure Resource Manager. Через 15 дней движок автоматически очищает старые выполненные задачи.

Максимальный срок службы работы составляет один день, прежде чем она провалится. Этот период ограничивает срок работы, в течение которой работа может оставаться в системе.

Насколько большими ожидается рост этих столов?

Ожидается, что столы будут небольшими. Срок удержания ограничен, и вакансий всего несколько.

Какие индексы мне нужны на этих таблицах?

Индексы не повышают результаты. Таблицы должны быть тривиальными, так как они привязаны к числу функций/заданий, выполняемых в определённый момент времени.

Какие функции используют эти таблицы и задания?

Различные функции расширения Arc SQL используют фоновые задания для хранения состояния.

Вот некоторые из таких причин.

  • Оценка лучших практик
  • Оценка миграции
  • Резервное копирование и восстановление базы данных

Таблицы позволяют расширению выполнять дорогостоящие операции (такие как обнаружение), которые могут занимать долгие периоды времени, не начиная с нуля каждый раз.

Что произойдёт, если эти таблицы случайно упадают или если в них происходит повреждение?

Если таблицы убрасываются, состояние теряется, и развертывание расширения воссоздаёт таблицу. Если таблицы повреждены изменяющим состоянием, из которого читаются задания, расширение может выйти из строя.

Как можно вручную воссоздать эти таблицы, если их нет?

Любое действие Arc, вызывающее развертывание расширения — например, изменение настроек ARM или апгрейд — воссоздаёт таблицы.