Последняя проверка: май 2026 г.
Разверните сервисы AWS для экзамена AZ-120 с помощью чистого Terraform: пошаговое руководство с привязкой каждого блока к разделам экзамена. Код также совместим с OpenTofu.
К концу этой лабораторной работы вы развернете с помощью чистого Terraform основу эталонной архитектуры Azure SAP — виртуальную сеть (VNet) с подсетями для приложений и базы данных, группу размещения поблизости (Proximity Placement Group), закрепляющую совместно размещенные ресурсы для обеспечения низкой задержки трафика SAP <-> HANA, группу доступности (Availability Set) для доменов сбоя уровня приложения, форму управляемого диска премиум SSD для требований к хранилищу HANA, а также частную зону DNS для имен хостов SAP.
Мы намеренно не развертываем сертифицированные SAP большие виртуальные машины (серии Mv2 / E, легко стоят $1000+ в месяц). После того как эта основа будет создана, виртуальные машины SAP подключаются к группе доступности + группе размещения поблизости + форме диска с помощью стандартных ресурсов azurerm_linux_virtual_machine соответствующего размера.
Поместите фрагменты кода в один файл main.tf, запустите terraform init, затем terraform apply шаг за шагом.
>= 1.5 или OpenTofu >= 1.6.az login).Основа лабораторной работы по сути бесплатна (без виртуальных машин):
Примерно $20/месяц простоя только за диск. Если вы фактически развернете сертифицированные SAP виртуальные машины (серия Mv2 имеет 2-12 ТБ ОЗУ, серия E — 64+ ГБ ОЗУ), ожидайте $1,000–$15,000/месяц за виртуальную машину. Не развертывайте виртуальные машины SAP в тестовых подписках, если у вас нет реального обязательства по бюджету Azure.
Стандартное начало работы с Azure. AZ-120 предполагает, что вы выберете регион, сертифицированный для SAP и поддерживающий необходимые вам виртуальные машины серии M — eastus2, westeurope, northeurope являются самыми безопасными вариантами.
terraform {
required_version = ">= 1.5"
required_providers {
azurerm = { source = "hashicorp/azurerm", version = "~> 4.0" }
}
}
provider "azurerm" {
features {}
}
locals {
tags = {
Project = "certlabpro-az-120"
ManagedBy = "terraform"
Workload = "SAP"
}
}
resource "azurerm_resource_group" "main" {
name = "certlabpro-az-120-rg"
location = "eastus2"
tags = local.tags
}Архитектуры SAP в Azure разделяют серверы приложений (средний ЦП, скромная память) и базу данных HANA (очень большая память) на отдельные подсети — обычно с более строгими NSG на уровне БД. AZ-120 проверяет это разделение уровней: подсеть приложений предоставляет службы SAP пользователям (или балансировщику нагрузки); подсеть БД является только внутренней, доступной только с уровня приложений.
Мы выделяем подсети app и db из VNet с префиксом /16. Группы безопасности сети (NSG) выходят за рамки данной лабораторной работы (их было бы легко добавить — по тому же принципу, что и в AZ-104, Шаг 2).
resource "azurerm_virtual_network" "sap" {
name = "vnet-sap"
resource_group_name = azurerm_resource_group.main.name
location = azurerm_resource_group.main.location
address_space = ["10.0.0.0/16"]
tags = local.tags
}
resource "azurerm_subnet" "app" {
name = "app"
resource_group_name = azurerm_resource_group.main.name
virtual_network_name = azurerm_virtual_network.sap.name
address_prefixes = ["10.0.1.0/24"]
}
resource "azurerm_subnet" "db" {
name = "db"
resource_group_name = azurerm_resource_group.main.name
virtual_network_name = azurerm_virtual_network.sap.name
address_prefixes = ["10.0.2.0/24"]
}Группы размещения поблизости (PPG) — это решение AZ-120 в разделе Проектирование и внедрение инфраструктуры для поддержки SAP для обеспечения сверхнизкой задержки между серверами приложений SAP и HANA. Виртуальные машины, совместно размещенные в PPG, находятся в одном и том же центре обработки данных (буквально в одной стойке), обеспечивая задержку между виртуальными машинами менее 1 мс, что необходимо для связи между HANA и приложениями SAP.
Группы доступности (Availability Sets) группируют виртуальные машины по доменам сбоя (отдельные линии электропитания/сети) в одном центре обработки данных. Комбинация — PPG для низкой задержки, Availability Set для отказоустойчивости — является эталонной формой AZ-120 для уровня приложений SAP. (Для зональной доступности Azure теперь также поддерживает размещение всех виртуальных машин в одной зоне доступности через PPG + зону — это более современный шаблон.)
resource "azurerm_proximity_placement_group" "sap" {
name = "ppg-sap"
resource_group_name = azurerm_resource_group.main.name
location = azurerm_resource_group.main.location
tags = local.tags
}
resource "azurerm_availability_set" "app" {
name = "avset-sap-app"
resource_group_name = azurerm_resource_group.main.name
location = azurerm_resource_group.main.location
platform_fault_domain_count = 2 # max for the region
platform_update_domain_count = 5
proximity_placement_group_id = azurerm_proximity_placement_group.sap.id
managed = true
tags = local.tags
}Для хранилища HANA требуется SSD премиум-класса или выше (уровень P-серии) для производственных рабочих нагрузок — спецификации IOPS и пропускной способности, сертифицированные SAP, предполагают использование дисков P30+ для данных/журналов HANA. Раздел AZ-120 Проектирование и внедрение инфраструктуры для поддержки SAP проверяет выбор уровня дисков как компромисс между повторяющимися затратами и производительностью.
Мы выделяем один управляемый диск P10 (128 ГБ) в качестве демонстрации формы — небольшой и дешевый, но использующий тот же тип учетной записи хранения Premium_LRS, что и производственный диск HANA. Подключение его к виртуальной машине является отдельным шагом (здесь не рассматривается). Для производственной HANA вы бы использовали диски P30 / P40 и объединили бы несколько дисков через LVM для обеспечения пропускной способности, требуемой SAP.
resource "azurerm_managed_disk" "hana_data_shape" {
name = "disk-hana-data-shape"
resource_group_name = azurerm_resource_group.main.name
location = azurerm_resource_group.main.location
storage_account_type = "Premium_LRS" # SAP-certified storage tier
create_option = "Empty"
disk_size_gb = 128 # P10 size — demonstration only; production HANA uses P30+
tags = local.tags
}Установки SAP сильно зависят от стабильных, предсказуемых имен хостов (sapha01, sapha02, sapdb01) — как SAPHostAgent, так и HANA System Replication требуют согласованного разрешения имен хостов. Раздел AZ-120 Проектирование и внедрение вычислительных и дисковых решений Azure проверяет Private DNS как решение для стабильности имен хостов внутри VNet без ручного редактирования /etc/hosts.
Мы создаем зону SAP и связываем ее с VNet из Шага 2 с registration_enabled = true, чтобы виртуальные машины SAP автоматически регистрировали свои имена хостов. После выполнения этого последнего шага основа готова: VNet с многоуровневыми подсетями, PPG для совместного размещения, Availability Set для отказоустойчивости, форма премиум-диска для хранилища HANA, Private DNS для стабильности имен хостов. Виртуальные машины SAP развертываются на этой основе с помощью стандартных ресурсов azurerm_linux_virtual_machine.
resource "azurerm_private_dns_zone" "sap" {
name = "sap.internal"
resource_group_name = azurerm_resource_group.main.name
tags = local.tags
}
resource "azurerm_private_dns_zone_virtual_network_link" "sap" {
name = "sap-vnet-link"
resource_group_name = azurerm_resource_group.main.name
private_dns_zone_name = azurerm_private_dns_zone.sap.name
virtual_network_id = azurerm_virtual_network.sap.id
registration_enabled = true
tags = local.tags
}terraform destroy удаляет всё. Управляемый диск премиум-класса ($20/месяц) — это единственная статья расходов, которая оплачивается круглосуточно — уничтожьте её незамедлительно. PPG и Availability Set являются только метаданными и удаляются мгновенно. Частные зоны DNS без записей удаляются без проблем.
AZ-120 охватывает специфические для SAP аспекты, которые не могут быть включены в эту лабораторную работу — фактические виртуальные машины SAP (серии Mv2 для HANA по $5–$15K/месяц каждая, серии E для серверов приложений), крупные экземпляры HANA (HANA на выделенном оборудовании, управляемом Azure), SAP в Azure HA + DR (кластеры Pacemaker ASCS/ERS), Azure NetApp Files (NFS премиум-класса для /hana/shared), ExpressRoute для гибридного подключения, Azure Site Recovery для аварийного восстановления между регионами, Azure Backup для SAP HANA, Azure Monitor для решений SAP (специализированное дополнение для мониторинга SAP) и автоматизацию развертывания Azure Center for SAP Solutions (ACSS).
Мы придерживаемся основы инфраструктуры, поскольку SKU виртуальных машин, специфичные для SAP, являются слишком дорогими для лабораторной подписки. Указанная выше основа (VNet, PPG, Availability Set, диск премиум-класса, Private DNS) — это точно то, с чего начинается каждая эталонная архитектура AZ-120 — ваши виртуальные машины SAP подключаются к этой базе.
Шаблоны, специфичные для виртуальных машин SAP, см. в разделах Просмотр, Справочник и Editorial на этой странице сертификации.