Configuração da zona de carga de trabalho na estrutura de automação SAP
Um aplicativo SAP normalmente tem várias camadas de desenvolvimento. Por exemplo, você pode ter níveis de desenvolvimento, garantia de qualidade e produção. O SAP Deployment Automation Framework chama essas camadas de zonas de carga de trabalho. Consulte o diagrama a seguir para obter um exemplo de uma zona de carga de trabalho com dois sistemas SAP.
A zona de carga de trabalho fornece serviços compartilhados para todos os sistemas SAP na zona de carga de trabalho. Estes serviços partilhados incluem:
- Rede Virtual do Azure
- Azure Key Vault
- Conta de Armazenamento do Azure Compartilhada para mídia de instalação
- Conta e pool de capacidade do Azure NetApp Files (opcional)
A zona de carga de trabalho é normalmente implantada em uma assinatura spoke e a implantação de todos os artefatos na zona de carga de trabalho é feita usando entidade de serviço exclusiva.
Configuração de implantação da zona de carga de trabalho
A configuração da zona de carga de trabalho SAP é feita através de um arquivo variável Terraform tfvars
. Você pode encontrar exemplos do arquivo variável na samples/WORKSPACES/LANDSCAPE
pasta.
As seções a seguir mostram as diferentes seções do arquivo variável.
Parâmetros do ambiente
Esta tabela contém os parâmetros que definem as configurações do ambiente.
Variável | Description | Type | Notas |
---|---|---|---|
environment |
Identificador da zona de carga de trabalho (máximo de cinco caracteres) | Obrigatório | Por exemplo, PROD para um ambiente de produção e QA para um ambiente de garantia de qualidade. |
location |
A região do Azure na qual implantar | Necessário | |
name_override_file |
Arquivo de substituição de nome | Opcional | Consulte Nomenclatura personalizada. |
tags |
Um dicionário de tags para associar a todos os recursos. | Opcional |
Parâmetros do grupo de recursos
Esta tabela contém os parâmetros que definem o grupo de recursos.
Variável | Description | Type |
---|---|---|
resourcegroup_name |
Nome do grupo de recursos a ser criado | Opcional |
resourcegroup_arm_id |
Identificador de recursos do Azure para um grupo de recursos existente | Opcional |
resourcegroup_tags |
Tags a serem associadas ao grupo de recursos | Opcional |
Parâmetros de rede
A estrutura de automação suporta a criação da rede virtual e das sub-redes (campo verde) ou o uso de uma rede virtual existente e sub-redes existentes (campo marrom) ou uma combinação de campo verde e campo marrom:
- Cenário de campo verde: O espaço de endereço de rede virtual e os prefixos de endereço de sub-rede devem ser especificados.
- Cenário de campo marrom: o identificador de recurso do Azure para a rede virtual e as sub-redes deve ser especificado.
Verifique se o espaço de endereço da rede virtual é grande o suficiente para hospedar todos os recursos.
Esta tabela contém os parâmetros de rede.
Variável | Description | Type | Notas |
---|---|---|---|
network_logical_name |
O nome lógico da rede, por exemplo, SAP01 |
Necessário | Usado para nomenclatura de recursos |
network_name |
O nome da rede | Opcional | |
network_arm_id |
O identificador de recurso do Azure para a rede virtual | Opcional | Para implantações brown-field |
network_address_space |
O intervalo de endereços para a rede virtual | Obrigatório | Para implantações green-field |
admin_subnet_address_prefix |
O intervalo de endereços para a admin sub-rede |
Obrigatório | Para implantações green-field |
admin_subnet_arm_id |
O identificador de recurso do Azure para a admin sub-rede |
Obrigatório | Para implantações brown-field |
admin_subnet_name |
O nome da admin sub-rede |
Opcional | |
admin_subnet_nsg_name |
O nome do admin grupo de segurança de rede |
Opcional | |
admin_subnet_nsg_arm_id |
O identificador de recurso do Azure para o admin grupo de segurança de rede |
Obrigatório | Para implantações brown-field |
db_subnet_address_prefix |
O intervalo de endereços para a db sub-rede |
Obrigatório | Para implantações green-field |
db_subnet_arm_id |
O identificador de recurso do Azure para a db sub-rede |
Obrigatório | Para implantações brown-field |
db_subnet_name |
O nome da db sub-rede |
Opcional | |
db_subnet_nsg_name |
O nome do db grupo de segurança de rede |
Opcional | |
db_subnet_nsg_arm_id |
O identificador de recurso do Azure para o db grupo de segurança de rede |
Obrigatório | Para implantações brown-field |
app_subnet_address_prefix |
O intervalo de endereços para a app sub-rede |
Obrigatório | Para implantações green-field |
app_subnet_arm_id |
O identificador de recurso do Azure para a app sub-rede |
Obrigatório | Para implantações brown-field |
app_subnet_name |
O nome da app sub-rede |
Opcional | |
app_subnet_nsg_name |
O nome do app grupo de segurança de rede |
Opcional | |
app_subnet_nsg_arm_id |
O identificador de recurso do Azure para o app grupo de segurança de rede |
Obrigatório | Para implantações brown-field |
web_subnet_address_prefix |
O intervalo de endereços para a web sub-rede |
Obrigatório | Para implantações green-field |
web_subnet_arm_id |
O identificador de recurso do Azure para a web sub-rede |
Obrigatório | Para implantações brown-field |
web_subnet_name |
O nome da web sub-rede |
Opcional | |
web_subnet_nsg_name |
O nome do web grupo de segurança de rede |
Opcional | |
web_subnet_nsg_arm_id |
O identificador de recurso do Azure para o web grupo de segurança de rede |
Obrigatório | Para implantações brown-field |
Esta tabela contém os parâmetros de rede se os Arquivos NetApp do Azure forem usados.
Variável | Description | Type | Notas |
---|---|---|---|
anf_subnet_arm_id |
O identificador de recurso do Azure para a ANF sub-rede |
Necessário | Ao usar sub-redes existentes |
anf_subnet_address_prefix |
O intervalo de endereços para a ANF sub-rede |
Necessário | Ao usar ANF para implantações |
anf_subnet_name |
O nome da ANF sub-rede |
Opcional | |
anf_subnet_nsg_name |
O nome do anf grupo de segurança de rede |
Opcional | |
anf_subnet_nsg_arm_id |
O identificador de recurso do Azure para o anf grupo de segurança de rede |
Opcional | Para implantações brown-field |
Esta tabela contém os parâmetros de rede se os dispositivos iSCSI forem hospedados a partir dessa zona de carga de trabalho.
Variável | Description | Type | Notas |
---|---|---|---|
iscsi_subnet_address_prefix |
O intervalo de endereços para a iscsi sub-rede |
Obrigatório | Para implantações green-field |
iscsi_subnet_arm_id |
O identificador de recurso do Azure para a iscsi sub-rede |
Obrigatório | Para implantações brown-field |
iscsi_subnet_name |
O nome da iscsi sub-rede |
Opcional | |
iscsi_subnet_nsg_arm_id |
O identificador de recurso do Azure para o iscsi grupo de segurança de rede |
Obrigatório | Para implantações brown-field |
iscsi_subnet_nsg_name |
O nome do iscsi grupo de segurança de rede |
Opcional |
Esta tabela contém os parâmetros de rede se o Azure Monitor for SAP estiver hospedado a partir dessa zona de carga de trabalho.
Variável | Description | Type | Notas |
---|---|---|---|
ams_subnet_address_prefix |
O intervalo de endereços para a iscsi sub-rede |
Obrigatório | Para implantações green-field |
ams_subnet_arm_id |
O identificador de recurso do Azure para a iscsi sub-rede |
Obrigatório | Para implantações brown-field |
ams_subnet_name |
O nome da iscsi sub-rede |
Opcional | |
ams_subnet_nsg_arm_id |
O identificador de recurso do Azure para o iscsi grupo de segurança de rede |
Obrigatório | Para implantações brown-field |
ams_subnet_nsg_name |
O nome do iscsi grupo de segurança de rede |
Opcional |
Esta tabela contém parâmetros de rede adicionais.
Variável | Description | Type | Notas |
---|---|---|---|
use_private_endpoint |
São pontos de extremidade privados criados para contas de armazenamento e cofres de chaves. | Opcional | |
use_service_endpoint |
São pontos de extremidade de serviço definidos para as sub-redes. | Opcional | |
peer_with_control_plane_vnet |
São redes virtuais emparelhadas com a rede virtual do plano de controle. | Opcional | Necessário para a instalação do SAP |
public_network_access_enabled |
O acesso público está habilitado nas contas de armazenamento e nos cofres de chaves | Opcional |
Definição mínima de rede necessária
network_logical_name = "SAP01"
network_address_space = "10.110.0.0/16"
db_subnet_address_prefix = "10.110.96.0/19"
app_subnet_address_prefix = "10.110.32.0/19"
Parâmetros de autenticação
Esta tabela define as credenciais usadas para definir a autenticação da máquina virtual.
Variável | Description | Type | Notas |
---|---|---|---|
automation_username |
Nome da conta de administrador | Opcional | Predefinição: azureadm |
automation_password |
Palavra-passe de administrador | Opcional | |
automation_path_to_public_key |
Caminho para a chave pública existente | Opcional | |
automation_path_to_private_key |
Caminho para a chave privada existente | Opcional | |
use_spn |
Se definido, a implantação será executada usando uma entidade de serviço, caso contrário, um MSI | Opcional |
Definição mínima de autenticação necessária
automation_username = "azureadm"
Parâmetros principais do cofre
Esta tabela define os parâmetros usados para definir as informações do cofre de chaves.
Variável | Description | Type | Notas |
---|---|---|---|
spn_keyvault_id |
Identificador de recursos do Azure para o cofre de chaves de credenciais de implantação (SPNs) existentes | Opcional | |
user_keyvault_id |
Identificador de recursos do Azure para o cofre de chaves de credenciais do sistema existente | Opcional | |
additional_users_to_add_to_keyvault_policies |
Uma lista de IDs de objeto de usuário a serem adicionadas às políticas de acesso ao cofre da chave de implantação | Opcional | |
enable_purge_control_for_keyvaults |
Desabilita a proteção contra limpeza para cofres de chaves do Azure | Opcional | Use apenas para ambientes de teste. |
enable_rbac_authorization_for_keyvault |
Habilita o RBAC em cofres de chaves | Opcional | |
soft_delete_retention_days |
O número de dias que os itens devem ser retidos no período de exclusão suave | Opcional | |
keyvault_private_endpoint_id |
ID de recurso do Azure do ponto de extremidade privado do cofre de chaves | Opcional |
DNS Privado
Variável | Description | Type |
---|---|---|
dns_label |
Se especificado, é o nome DNS da zona DNS privada | Opcional |
dns_resource_group_name |
O nome do grupo de recursos que contém a zona DNS privada | Opcional |
register_virtual_network_to_dns |
Controla se a SAP Virtual Network está registrada na zona DNS privada | Opcional |
dns_server_list |
Se especificado, uma lista de endereços IP do servidor DNS | Opcional |
Suporte a NFS
Variável | Description | Type | Notas |
---|---|---|---|
create_transport_storage |
Se definido, crie armazenamento para os diretórios de transporte. | Opcional | |
export_install_path |
Se fornecido, exporte o caminho de montagem para a mídia de instalação. | Opcional | |
export_transport_path |
Se fornecido, exporte o caminho de montagem para o compartilhamento de transporte. | Opcional | |
install_always_create_fileshares |
Sempre crie compartilhamentos de arquivos. | Opcional | |
install_private_endpoint_id |
ID de recurso do Azure para o install ponto de extremidade privado. |
Opcional | Para os parâmetros de avaliação existentes |
install_volume_size |
Define o tamanho (em GB) do install volume. |
Opcional | |
NFS_provider |
Define qual back-end NFS usar. | Opcional | As opções são AFS para Azure Files NFS ou ANF para Azure NetApp Files, NONE para NFS do servidor SCS ou NFS para uma solução NFS externa. |
transport_private_endpoint_id |
ID de recurso do Azure do ponto de extremidade privado do cofre de chaves | Opcional | |
transport_volume_size |
Define o tamanho (em GB) do transport volume. |
Opcional | |
use_AFS_for_installation_media |
Se fornecido, usa AFS para a mídia de instalação. | Opcional |
Suporte a NFS do Azure Files
Variável | Description | Type | Notas |
---|---|---|---|
install_storage_account_id |
Identificador de recurso do Azure para a install conta de armazenamento |
Opcional | Para implantações brown-field |
transport_storage_account_id |
Identificador de recurso do Azure para a transport conta de armazenamento |
Opcional | Para implantações brown-field |
Storage account replication type |
Tipo de replicação de conta de armazenamento, ZRS padrão | Opcional |
Definição mínima necessária do Azure Files NFS
NFS_provider = "AFS"
use_private_endpoint = true
Suporte a Arquivos NetApp do Azure
Variável | Description | Type | Notas |
---|---|---|---|
ANF_account_name |
Nome da conta do Azure NetApp Files | Opcional | |
ANF_service_level |
Nível de serviço para o pool de capacidade de Arquivos NetApp do Azure | Opcional | |
ANF_pool_size |
O tamanho (em GB) do pool de capacidade dos Arquivos NetApp do Azure | Opcional | |
ANF_qos_type |
A qualidade do tipo de serviço da piscina (automática ou manual) | Opcional | |
ANF_use_existing_pool |
Usar existente para o pool de capacidade de Arquivos NetApp do Azure | Opcional | |
ANF_pool_name |
O nome do pool de capacidade do Azure NetApp Files | Opcional | |
ANF_account_arm_id |
Identificador de recurso do Azure para a conta do Azure NetApp Files | Opcional | Para implantações brown-field |
ANF_transport_volume_use_existing |
Define se um volume de transporte existente é usado | Opcional | |
ANF_transport_volume_name |
Define o nome do volume de transporte | Opcional | Para implantações brown-field |
ANF_transport_volume_size |
Define o tamanho do volume de transporte em GB | Opcional | |
ANF_transport_volume_throughput |
Define a taxa de transferência do volume de transporte | Opcional | |
ANF_transport_volume_zone |
Define a zona de disponibilidade do volume de transporte | Opcional | |
ANF_install_volume_use_existing |
Define se um volume de instalação existente é usado | Opcional | |
ANF_install_volume_name |
Define o nome do volume de instalação | Opcional | Para implantações brown-field |
ANF_install_volume_size |
Define o tamanho do volume de instalação em GB | Opcional | |
ANF_install_volume_throughput |
Define a taxa de transferência do volume de instalação | Opcional | |
ANF_install_volume_zone |
Define a zona de disponibilidade do volume de instalação | Opcional |
Definição mínima exigida de FAN
NFS_provider = "ANF"
anf_subnet_address_prefix = "10.110.64.0/27"
ANF_service_level = "Ultra"
Suporte a DNS
Variável | Description | Type |
---|---|---|
dns_label |
Nome DNS da zona DNS privada. | Opcional |
management_dns_resourcegroup_name |
Grupo de recursos que contém a zona DNS privada. | Opcional |
management_dns_subscription_id |
ID de subscrição para a subscrição que contém a zona DNS privada. | Opcional |
use_custom_dns_a_registration |
Use uma zona DNS privada existente. | Opcional |
Outros parâmetros
Variável | Description | Type | Notas |
---|---|---|---|
diagnostics_storage_account_arm_id |
O identificador de recurso do Azure para a conta de armazenamento de diagnóstico. | Necessário | Para implantações brown-field. |
place_delete_lock_on_resources |
Coloca bloqueios de exclusão nos cofres de chaves e na rede virtual | Opcional | |
witness_storage_account_arm_id |
O identificador de recurso do Azure para a conta de armazenamento testemunha. | Necessário | Para implantações brown-field. |
Agent_IP |
Endereço IP do agente. | Opcional | |
add_Agent_IP |
Controla se o IP do agente é adicionado ao cofre de chaves e aos firewalls da conta de armazenamento | Opcional | |
enable_firewall_for_keyvaults_and_storage |
Restrinja o acesso a sub-redes selecionadas. | Opcional |
Parâmetros iSCSI
Variável | Description | Type | Notas |
---|---|---|---|
iscsi_authentication_type |
Define a autenticação padrão para as máquinas virtuais iSCSI | Opcional | |
iscsi_authentication_username |
Nome da conta de administrador | Opcional | |
iscsi_count |
O número de máquinas virtuais iSCSI | Opcional | |
iscsi_size |
O tamanho das máquinas virtuais iSCSI | Opcional | |
iscsi_image |
Define a imagem da máquina virtual a ser usada (tabela seguinte) | Opcional | |
iscsi_nic_ips |
Endereços IP para as máquinas virtuais iSCSI | Opcional | Ignorado se iscsi_use_DHCP estiver definido |
iscsi_use_DHCP |
Controla se os endereços IP dinâmicos fornecidos pela sub-rede do Azure devem ser usados | Opcional | |
iscsi_vm_zones |
Zonas de disponibilidade para as máquinas virtuais iSCSI | Opcional |
Parâmetros da VM do utilitário
Variável | Description | Type | Notas |
---|---|---|---|
utility_vm_count |
Define o número de máquinas virtuais utilitárias a serem implantadas | Opcional | Usar a máquina virtual do utilitário para hospedar o SAPGui |
utility_vm_image |
Define a imagem da máquina virtual a ser usada | Opcional | Padrão: Windows Server 2019 |
utility_vm_nic_ips |
Define os endereços IP para as máquinas virtuais | Opcional | |
utility_vm_os_disk_size |
Define o tamanho do disco do sistema operacional para a máquina virtual | Opcional | Padrão: 128 |
utility_vm_os_disk_type |
Define o tipo de disco do sistema operacional para a máquina virtual | Opcional | Padrão: Premium_LRS |
utility_vm_size |
Define a SKU para as máquinas virtuais do utilitário | Opcional | Padrão: Standard_D4ds_v4 |
utility_vm_useDHCP |
Define se os IPs fornecidos pela sub-rede do Azure devem ser usados | Opcional | |
«user_assigned_identity_id | Identidade atribuída pelo usuário para atribuir às máquinas virtuais | Opcional |
A máquina virtual e a imagem do sistema operacional são definidas usando a seguinte estrutura:
{
os_type = "linux"
type = "marketplace"
source_image_id = ""
publisher = "SUSE"
offer = "sles-sap-15-sp5"
sku = "gen2"
version= " latest"
}
Azure Monitor para parâmetros SAP
Variável | Description | Type | Notas |
---|---|---|---|
create_ams_instance |
Define se uma instância do Azure Monitor for SAP deve ser criada | Opcional | |
ams_instance_name |
Define o nome da instância | Opcional | |
ams_laws_arm_id |
Define o ID do recurso ARM para o espaço de trabalho do Log Analytics | Opcional |
Parâmetros Terraform
Esta tabela contém os parâmetros Terraform. Esses parâmetros precisam ser inseridos manualmente se você não estiver usando os scripts de implantação.
Variável | Description | Type |
---|---|---|
tfstate_resource_id |
O identificador de recurso do Azure para a conta de armazenamento na biblioteca SAP que contém os arquivos de estado Terraform. | Necessário |
deployer_tfstate_key |
O nome do arquivo de estado para o implantador. | Necessário |