Примечание
Для доступа к этой странице требуется авторизация. Вы можете попробовать войти или изменить каталоги.
Для доступа к этой странице требуется авторизация. Вы можете попробовать изменить каталоги.
Применимо к: База данных SQL Azure
В этой статье приведены действия, необходимые для создания, настройки и управления эластичными заданиями для База данных SQL Azure. Вы можете выполнить многие из этих действий в портал Azure и с помощью T-SQL, PowerShell и REST API. Задания обработки эластичных баз данных позволяют выполнять скрипты Transact-SQL (T-SQL) в нескольких базах данных одновременно. Дополнительные сведения о концепциях автоматизации заданий см. в База данных SQL Azure или дополнительные сведения о заданиях Elastic в База данных SQL Azure.
Создание и настройка агента эластичных заданий
Создайте или определите пустую База данных SQL Azure S1 или более поздней версии с помощью модели покупки DTU. Эта база данных должна находиться на том же сервере, что и агент задания. Эта база данных используется в качестве базы данных заданий во время создания агента эластичных заданий. Вы можете создать отдельную базу данных с помощью портал Azure, Azure CLI, Azure CLI (sql up) или PowerShell.
Создайте агент эластичного задания в портал Azure или PowerShell.
Ниже приведены инструкции по созданию агента эластичного задания в портал Azure.
- В портал Azure найдите агенты заданий Elastic. Выберите "Создать", чтобы начать подготовку нового ресурса агента эластичных заданий. Или следуйте этой ссылке, чтобы создать агент эластичного задания в портал Azure.
- Укажите имя агента заданий Elastic.
- Выберите подписку и группу ресурсов для агента. При необходимости создайте новую группу ресурсов. Эластичное задание может использовать базы данных в других группах ресурсов, подписках, даже в других регионах Azure.
- Выберите База данных SQL Azure логический сервер, который будет сервером агента эластичных заданий.
- Выберите базу данных задания на логическом сервере, чтобы быть базой данных агента эластичных заданий. Некоторые проверки гарантируют, что база данных подходит.
- В разделе "Уровень служб" выберите JA 100.
- Нажмите кнопку "Далее": удостоверение.
- Существует два метода проверки подлинности агента заданий для целевых серверов или баз данных, проверки подлинности Microsoft Entra с помощью управляемого удостоверения, назначаемого пользователем (UMI), или учетных данных с областью базы данных.
- Создайте UMI за пределами процесса подготовки агента эластичных заданий или используйте существующий UMI. Выберите "Добавить управляемое удостоверение, назначаемое пользователем". Выберите UMI. Выберите Добавить.
- Сведения об использовании учетных данных с областью базы данных см . далее в этом руководстве.
- Нажмите кнопку "Далее": теги.
- Рассмотрите возможность использования тегов Azure. Например, тег "Владелец" или "CreatedBy", чтобы определить, кто создал ресурс, и тег среды, чтобы определить, находится ли этот ресурс в рабочей среде, разработке и т. д. Дополнительные сведения см. в статье "Разработка стратегии именования и тегов для ресурсов Azure".
- Выберите Review + create (Просмотреть и создать).
- Проверьте выбор нового агента эластичных заданий на странице проверки и создания , а затем нажмите кнопку "Создать".
- Дальнейшие действия необходимы для проверки подлинности на целевых серверах или базах данных. Выполните действия, описанные в следующих разделах этой статьи.
Создание проверки подлинности агента задания
Агент эластичного задания должен иметь возможность проходить проверку подлинности на каждом целевом сервере или базе данных. В этом разделе описаны действия, необходимые агенту эластичных заданий для проверки подлинности на серверах или базах данных в целевых группах.
Существует два варианта проверки подлинности агента эластичного задания для целевых объектов:
- Использование пользователей базы данных, сопоставленных с назначаемого пользователем управляемого удостоверения (UMI), для проверки подлинности на целевых серверах или базах данных.
- Использование UMI с проверкой подлинности Microsoft Entra (прежнее название — Azure Active Directory) — это рекомендуемый метод.
- Используйте пользователи базы данных, сопоставленные с учетными данными с областью базы данных в каждой базе данных.
- Ранее учетные данные с областью базы данных были единственным вариантом для агента эластичных заданий для проверки подлинности в целевых объектах.
Использование проверки подлинности Microsoft Entra с управляемым удостоверением, назначаемое пользователем (UMI)
Используйте проверку подлинности Microsoft Entra (ранее Azure Active Directory) с управляемым удостоверением, назначаемое пользователем (UMI). Это рекомендуемый метод проверки подлинности.
- Включите проверку подлинности Microsoft Entra (ранее Azure Active Directory) на всех целевых логических серверах или базах данных задания и на логическом сервере задания.
- Создайте управляемое удостоверение, назначаемое пользователем (UMI) или используйте уже существующий UMI.
- Новый интерфейс UMI можно создать с помощью портал Azure, Azure CLI, PowerShell, Resource Manager или REST API.
- Назначьте UMI созданному агенту эластичных заданий.
- Рекомендуется назначить UMI при создании агента эластичного задания, см. инструкции по созданию и настройке агента эластичных заданий. При создании агента задания в портал Azure на вкладке Identity назначьте агенту эластичного задания.
- Чтобы обновить существующий агент эластичных заданий для использования UMI, на странице портал Azure агента эластичного задания перейдите в меню "Безопасность" в меню ресурсов. Выберите и назначьте UMI агенту эластичного задания.
- При создании или обновлении агента эластичного задания с
New-AzSqlElasticJobAgent
Set-AzSqlElasticJobAgent
помощью командлетов PowerShell используйте следующие параметры:-IdentityType UserAssigned -IdentityID <identity resource path>
Например:$parameters = @{ Name = '<job agent name>' ResourceGroupName = '<Resource_Group_Name>' IdentityType = 'UserAssigned' IdentityID = '/subscriptions/fa58cf66-caaf-4ba9-875d-f1234/resourceGroups/<resource group name>/providers/Microsoft.ManagedIdentity/userAssignedIdentities/<UMI name here>' } Set-AzSqlElasticJobAgent @parameters
- REST API также можно использовать для создания или обновления агента эластичных заданий.
- Создайте целевую группу и добавьте целевые объекты для заданий. Определите целевую группу и целевые объекты (базы данных, для которой требуется запустить задание) с помощью PowerShell или определите целевую группу и целевые объекты с помощью T-SQL.
- В каждом из целевых серверов или баз данных создайте автономного пользователя, сопоставленного с учетными данными UMI или базой данных, с помощью T-SQL или PowerShell:
- В выходной базе данных создайте и назначьте разрешения пользователю задания UMI. Подключитесь к выходной базе данных и запустите следующий пример скрипта для пользователя с именем
jobuserUMI
:CREATE USER [jobuserUMI] FROM EXTERNAL PROVIDER; GO
- Если выходные параметры указаны в вызове
sp_add_jobstep
the @output_table_name argument, учетные данные агента заданий или учетные данные с областью базы данных должны быть предоставлены разрешения на создание данных TABLE и INSERT в эту выходную таблицу.GRANT CREATE TABLE TO [job_user]; GRANT SELECT,INSERT,UPDATE,DELETE ON [dbo].[output_table_name] TO job_user;
- В каждом из целевых серверов или баз данных предоставьте пользователю базы данных необходимые разрешения для выполнения скриптов заданий. Эти разрешения зависят от требований запроса T-SQL.
Использование учетных данных с областью базы данных
Учетные данные с областью базы данных можно использовать в базе данных задания и на каждом целевом сервере или базе данных для проверки подлинности. В прошлом учетные данные с областью базы данных были единственным вариантом, доступным для эластичных заданий.
Примечание.
Если UMI назначен агенту задания, проверка подлинности SQL не будет использоваться для подключения к его целевым объектам. Агент заданий будет использовать проверку подлинности Microsoft Entra только с UMI для подключения ко всем целевым базам данных.
- Создайте учетные данные с областью действия базы данных в базе данных задания.
- Создание учетных данных в области базы данных с помощью PowerShell
- Используйте T-SQL для создания учетных данных в области базы данных.
- Определите целевую группу (базы данных, для которой требуется запустить задание) с помощью PowerShell или определите целевые объекты с помощью T-SQL.
- Создайте имя входа или пользователя агента заданий в каждой целевой базе данных, где будет выполняться задание. Имя входа или пользователя на каждом целевом сервере или базе данных должно иметь то же имя, что и удостоверение учетных данных, ограниченных базой данных для пользователя задания, и тот же пароль, что и учетные данные с областью базы данных для пользователя задания.
- Используйте PowerShell, чтобы добавить учетные данные и пользователя в каждую целевую базу данных.
- Дополнительные сведения о добавлении пользователей см. в разделе "Авторизация сервера" и доступа к базе данных с помощью учетных записей входа и учетных записей пользователей.
- В выходной базе данных создайте и назначьте разрешения пользователю задания.
- Подключитесь к
master
базе данных логического сервера, на котором размещена выходная база данных. Если он еще не существует, создайте имя для входа с проверкой подлинности SQL с тем же именем, что и удостоверение учетных данных в области базы данных для пользователя задания, и тот же пароль, что и учетные данные с областью базы данных для пользователя задания.CREATE LOGIN [job_user] WITH PASSWORD '<same_password_as_database-scoped_credential>' GO
- Подключитесь к выходной базе данных и запустите следующий пример скрипта для пользователя с именем
job_user
:CREATE USER [job_user] FROM LOGIN [job_user]; GO
- Если выходные параметры указаны в
sp_add_jobstep
вызове в аргументе @output_table_name , учетные данные агента заданий или учетные данные с областью базы данных должны быть предоставлены разрешения на создание данных TABLE и INSERT в эту выходную таблицу.GRANT CREATE TABLE TO [job_user]; GRANT SELECT,INSERT,UPDATE,DELETE ON [dbo].[output_table_name] TO job_user;
- Подключитесь к
- В каждом из целевых серверов или баз данных предоставьте пользователю базы данных необходимые разрешения для выполнения скриптов заданий. Эти разрешения зависят от требований запроса T-SQL.
Создание, запуск заданий и управление ими
- Используйте PowerShell для создания задания или использования T-SQL для создания задания.
- Добавьте шаги в каждое эластичное задание. Целевая группа должна быть выбрана для каждого шага задания. Используйте PowerShell для добавления шагов задания или использования T-SQL для добавления шагов задания.
- Используйте PowerShell для запуска задания или использования T-SQL для выполнения задания.
- Отслеживайте состояние выполнения задания с помощью портал Azure, отслеживайте задания с помощью PowerShell или отслеживайте задания с помощью T-SQL.
Настройка частной конечной точки эластичных заданий SQL Azure
Каждый целевой сервер можно получить с помощью управляемой службой частной конечной точки, созданной и управляемой корпорацией Майкрософт, а также исключительно для использования с эластичными заданиями. Создание частной конечной точки эластичных заданий устанавливает частную связь между эластичным заданием и целевым сервером. После настройки все соединения между агентом эластичных заданий и целевым сервером будут выполняться через частную конечную точку.
Конфигурация проста. Чтобы включить эту связь, необходимо создать частную конечную точку для каждого требуемого целевого сервера и выходного сервера задания.
- В меню навигации агента эластичных заданий в разделе "Безопасность" выберите частные конечные точки.
- Выберите " Добавить сервер" и создайте частную конечную точку.
- Откроется окно создания частной конечной точки .
- Вы можете выбрать целевой сервер из любой подписки в любой точке Azure.
- Выберите целевой База данных SQL Azure логический сервер в этой подписке.
- Укажите имя частной конечной точки.
- Выберите Создание частной конечной точки. Развертывание займет несколько минут. В ближайшее время состояние подключения на странице "Частные конечные точки" будет отображаться в ожидании.
- В портал Azure перейдите к целевому База данных SQL Azure логическому серверу.
- Администратор этого целевого База данных SQL Azure логического сервера в меню навигации SQL Server в разделе "Безопасность" выберите "Сеть".
- Выберите Закрытый доступ.
- Утвердить ожидающий запрос частной конечной точки.
- Состояние подключения на странице "Частные конечные точки" отображается "Утверждено". Теперь любая связь между агентом заданий и любыми базами данных или эластичными пулами в этом целевом База данных SQL Azure логическим сервером будет проходить через частную конечную точку, управляемую службой.
- Администратор этого целевого База данных SQL Azure логического сервера в меню навигации SQL Server в разделе "Безопасность" выберите "Сеть". Для назначения эластичных заданий не требуется включить общедоступный доступ .
Настройка оповещений агента заданий с помощью Azure Monitor
Настройте оповещения Azure Monitor в ресурсе агента эластичных заданий, чтобы получать уведомления о состоянии выполнения задания. Например, вы можете получать уведомления о сбое или успешном выполнении задания с помощью групп действий, настроенных пользователем.
Оповещения агента эластичных заданий можно создавать с помощью портал Azure, PowerShell или REST API.
Создание оповещений агента заданий с помощью портал Azure
Создайте правила генерации оповещений Azure Monitor с помощью портал Azure, Azure CLI, PowerShell и REST API. Правила генерации оповещений для эластичных заданий работают аналогично другим правилам генерации оповещений, например для База данных SQL Azure.
Чтобы продолжить работу с портал Azure, выполните следующие действия.
- В меню ресурсов портал Azure агента эластичных заданий перейдите в меню "Мониторинг" и выберите "Оповещения".
- В разделе "Настройка правил генерации оповещений" в этом запросе ресурса выберите "Создать правило генерации оповещений".
- На странице "Создание правила генерации оповещений" откроется страница выбора сигнала. Выберите метрики эластичных заданий сбоем, выполнение эластичных заданий успешно или время ожидания выполнения эластичных заданий.
- В разделе "Логика оповещения" оставьте пороговое значение, тип агрегирования, оператор и единицу по умолчанию.
- Задайте для порогового значения
0
значение . Оставьте другие параметры по умолчанию. - Нажмите кнопку "Далее": действия.
- Выберите "Создать группу действий" или выберите существующую группу действий.
- Создайте группы действий оповещений Azure Monitor в портал Azure, чтобы задать параметры уведомлений, например администраторам электронной почты или разработчикам сбоя.
- Проверьте группу действий генерации оповещений.
- Нажмите кнопку "Далее": сведения.
- Укажите подписку и группу ресурсов в качестве сведений о проекте.
- Укажите сведения о правиле генерации оповещений для связи с оповещениями. Укажите имя правила генерации оповещений.
- Выберите теги и укажите метаданные, такие как CreatedBy или Environment для этого оповещения.
- Выберите Review + Create (Просмотреть и создать). Нажмите кнопку создания. Для отображения правила генерации оповещений в портал Azure может потребоваться несколько минут.
- При необходимости создайте правила обработки оповещений Azure Monitor с помощью портал Azure, Azure CLI или PowerShell. Используйте правила обработки оповещений, чтобы решить, что происходит при активации оповещения, например подавление уведомлений или применение конкретных действий к определенным типам оповещений.
Масштабирование агента задания
По умолчанию агенты заданий создаются в JA100, что позволяет одновременно выполнять до 100 эластичных заданий. Инициирование изменения уровня обслуживания является асинхронной операцией, и новый уровень обслуживания будет доступен после короткой задержки подготовки.
Если требуется более 100 одновременных выполнений агентов эластичных заданий, доступны более высокие уровни обслуживания, см . раздел "Параллельные уровни емкости". В настоящее время можно изменить уровень обслуживания агента задания с помощью портал Azure, PowerShell или REST API.
Превышение уровня обслуживания с одновременными заданиями создаст задержки очереди до начала заданий, превышающих ограничение параллельных заданий уровня обслуживания.
Масштабирование агента эластичного задания с помощью портал Azure
- Перейдите на страницу агента эластичных заданий в портал Azure.
- Выберите ценовую категорию или выберите "Увеличить или уменьшить" в контекстном меню.
- Выберите новый уровень служб в раскрывающемся списке уровня служб.
- Просмотрите карту затрат.
- Выберите Обновить.
Масштабирование агента эластичных заданий с помощью PowerShell
Необязательный -ServiceObjective
параметр для можно использовать для Set-AzSqlElasticJobAgent
указания новой цели службы. Например:
$parameters = @{
Name = '<job agent name>'
ResourceGroupName = '<Resource_Group_Name>'
ServiceObjective = 'JA200'
}
Set-AzSqlElasticJobAgent @parameters
Масштабирование агента эластичных заданий с помощью REST API
Rest API агента заданий можно использовать для масштабирования агента задания. Например:
{
"id": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/group1/providers/Microsoft.Sql/servers/server1/jobAgents/agent1",
"name": "agent1",
"type": "Microsoft.Sql/servers/jobAgents",
"location": "southeastasia",
"sku": {
"name": "JA100 ",
"capacity": 100
},
"properties": {
"databaseId": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/group1/providers/Microsoft.Sql/servers/server1/databases/db1"
}
}