Konfigurowanie płaszczyzny sterowania

Płaszczyzna sterowania platformy SAP Deployment Automation Framework składa się z następujących składników:

  • Narzędzie do wdrażania
  • Biblioteka SAP

Diagram przedstawiający płaszczyznę sterowania.

Narzędzie do wdrażania

Moduł wdrażania to aparat wykonywania platformy SAP Deployment Automation Framework. Jest to wstępnie skonfigurowana maszyna wirtualna używana do uruchamiania poleceń programu Terraform i rozwiązania Ansible. W przypadku korzystania z usługi Azure DevOps wdrożenie jest własnym agentem.

Konfiguracja narzędzia wdrażania jest wykonywana w pliku zmiennej programu Terraform tfvars .

Jeśli chcesz użyć istniejącej grupy zasobów dla narzędzia deployer, podaj identyfikator zasobu platformy Azure dla grupy zasobów przy użyciu parametru resource_group_arm_id w pliku tfvars dostawcy wdrażania. Jeśli parametr nie jest zdefiniowany, grupa zasobów zostanie utworzona przy użyciu domyślnego nazewnictwa. Nazwę domyślną można zmienić przy użyciu parametru resource_group_name .

Parametry narzędzia Terraform

W tej tabeli przedstawiono parametry narzędzia Terraform. Te parametry należy wprowadzić ręcznie, jeśli nie używasz skryptów wdrażania.

Zmienna opis Type
tfstate_resource_id Identyfikator zasobu platformy Azure dla konta magazynu w bibliotece SAP, który zawiera pliki stanu programu Terraform Wymagania

Parametry środowiska

W tej tabeli przedstawiono parametry definiujące nazewnictwo zasobów.

Zmienna opis Type Uwagi
environment Identyfikator płaszczyzny sterowania (maksymalnie 5 znaków). Obowiązkowy Na przykład PROD w przypadku środowiska produkcyjnego i NP środowiska nieprodukcyjnego.
location Region świadczenia usługi Azure, w którym ma zostać wdrożony. Wymagania Użyj małych liter.
codename Dodatkowy składnik nazewnictwa zasobów. Opcjonalnie
name_override_file Zastąpić plik nazwy. Opcjonalnie Zobacz Niestandardowe nazewnictwo.
place_delete_lock_on_resources Umieść blokadę usuwania w zasobach kluczy. Opcjonalnie

Grupa zasobów

W tej tabeli przedstawiono parametry definiujące grupę zasobów.

Zmienna opis Type
resourcegroup_name Nazwa grupy zasobów do utworzenia Opcjonalnie
resourcegroup_arm_id Identyfikator zasobu platformy Azure dla istniejącej grupy zasobów Opcjonalnie
resourcegroup_tags Tagi do skojarzenia z grupą zasobów Opcjonalnie

Parametry sieci

Platforma automatyzacji obsługuje zarówno tworzenie sieci wirtualnej, jak i podsieci (zielone pole) lub używanie istniejącej sieci wirtualnej i istniejących podsieci (pole brązowe) lub kombinację pola zielonego i brązowego pola:

  • Scenariusz z zielonym polem: należy określić przestrzeń adresową sieci wirtualnej i prefiksy adresów podsieci.
  • Scenariusz z polem brązowym: należy określić identyfikator zasobu platformy Azure dla sieci wirtualnej i podsieci.

Zalecana ciDR przestrzeni adresowej sieci wirtualnej to /27, co pozwala na przestrzeń dla 32 adresów IP. Wartość CIDR /28 zezwala tylko na 16 adresów IP. Jeśli chcesz dołączyć usługę Azure Firewall, użyj wartości CIDR /25, ponieważ usługa Azure Firewall wymaga zakresu /26.

Zalecana wartość CIDR dla podsieci zarządzania to /28, która zezwala na 16 adresów IP. Zalecana wartość CIDR dla podsieci zapory to /26, która zezwala na 64 adresy IP.

W tej tabeli przedstawiono parametry sieciowe.

Zmienna opis Type Uwagi
management_network_name Nazwa sieci wirtualnej, w której zostanie wdrożony program wdrażania Opcjonalnie W przypadku wdrożeń zielonych pól
management_network_logical_name Nazwa logiczna sieci (DEV-WEEU-MGMT01-INFRASTRUCTURE) Wymagania
management_network_arm_id Identyfikator zasobu platformy Azure dla sieci wirtualnej Opcjonalnie W przypadku wdrożeń z brązowym polem
management_network_address_space Zakres adresów sieci wirtualnej Obowiązkowy W przypadku wdrożeń zielonych pól
management_subnet_name Nazwa podsieci Opcjonalnie
management_subnet_address_prefix Zakres adresów podsieci Obowiązkowy W przypadku wdrożeń zielonych pól
management_subnet_arm_id Identyfikator zasobu platformy Azure dla podsieci Obowiązkowy W przypadku wdrożeń z brązowym polem
management_subnet_nsg_name Nazwa sieciowej grupy zabezpieczeń Opcjonalnie
management_subnet_nsg_arm_id Identyfikator zasobu platformy Azure dla sieciowej grupy zabezpieczeń Obowiązkowy W przypadku wdrożeń z brązowym polem
management_subnet_nsg_allowed_ips Zakres dozwolonych adresów IP do dodania do usługi Azure Firewall Opcjonalnie
management_firewall_subnet_arm_id Identyfikator zasobu platformy Azure dla podsieci usługi Azure Firewall Obowiązkowy W przypadku wdrożeń z brązowym polem
management_firewall_subnet_address_prefix Zakres adresów podsieci Obowiązkowy W przypadku wdrożeń zielonych pól
management_bastion_subnet_arm_id Identyfikator zasobu platformy Azure dla podsieci usługi Azure Bastion Obowiązkowy W przypadku wdrożeń z brązowym polem
management_bastion_subnet_address_prefix Zakres adresów podsieci Obowiązkowy W przypadku wdrożeń zielonych pól
webapp_subnet_arm_id Identyfikator zasobu platformy Azure dla podsieci aplikacji internetowej Obowiązkowy W przypadku wdrożeń z brązowym polem
webapp_subnet_address_prefix Zakres adresów podsieci Obowiązkowy W przypadku wdrożeń zielonych pól
use_private_endpoint Użyj prywatnych punktów końcowych. Opcjonalnie
use_service_endpoint Użyj punktów końcowych usługi dla podsieci. Opcjonalnie

Uwaga

Jeśli używasz istniejącej podsieci dla aplikacji internetowej, podsieć musi być pusta, w tym samym regionie co wdrażana grupa zasobów i delegowana do aplikacji Microsoft.Web/serverFarms.

Parametry maszyny wirtualnej modułu wdrażania

W tej tabeli przedstawiono parametry związane z maszyną wirtualną wdrażania.

Zmienna opis Type
deployer_size Definiuje jednostkę SKU maszyny wirtualnej do użycia, domyślną: Standard_D4ds_v4 Opcjonalnie
deployer_count Definiuje liczbę wdrożeń Opcjonalnie
deployer_image Definiuje obraz maszyny wirtualnej do użycia, wartość domyślna: Ubuntu 22.04 Opcjonalnie
plan Definiuje plan skojarzony z obrazem maszyny wirtualnej Opcjonalnie
deployer_disk_type Definiuje typ dysku, domyślny: Premium_LRS Opcjonalnie
deployer_use_DHCP Określa, czy adresy IP dostarczone przez podsieć platformy Azure powinny być używane (dynamiczne) true Opcjonalnie
deployer_private_ip_address Definiuje prywatny adres IP do użycia Opcjonalnie
deployer_enable_public_ip Określa, czy wdrożenie ma publiczny adres IP Opcjonalnie
auto_configure_deployer Określa, czy moduł wdrażania jest skonfigurowany przy użyciu wymaganego oprogramowania (Terraform i Ansible) Opcjonalnie
add_system_assigned_identity Określa, czy dostawca wdrażania ma przypisaną tożsamość systemową Opcjonalnie

Obraz maszyny wirtualnej jest definiowany przy użyciu następującej struktury:

xxx_vm_image  = {
  os_type         = ""
  source_image_id = ""
  publisher       = "Canonical"
  offer           = "0001-com-ubuntu-server-jammy"
  sku             = "22_04-lts"
  version         = "latest"
  type            = "marketplace"
}

Uwaga

Typ może mieć wartość marketplace/marketplace_with_plan/custom. Użycie obrazu typu marketplace_with_plan wymaga, aby obraz, którego mowa, był używany co najmniej raz w subskrypcji. Pierwsze użycie monituje użytkownika o zaakceptowanie postanowień licencyjnych, a automatyzacja nie ma możliwości jej zatwierdzenia.

Parametry uwierzytelniania

W tej sekcji zdefiniowano parametry używane do definiowania uwierzytelniania maszyny wirtualnej.

Zmienna opis Type
deployer_vm_authentication_type Definiuje domyślne uwierzytelnianie dla narzędzia wdrażania Opcjonalnie
deployer_authentication_username nazwa konta Administracja istrator Opcjonalnie
deployer_authentication_password hasło Administracja istratora Opcjonalnie
deployer_authentication_path_to_public_key Ścieżka do klucza publicznego używanego do uwierzytelniania Opcjonalnie
deployer_authentication_path_to_private_key Ścieżka do klucza prywatnego używanego do uwierzytelniania Opcjonalnie
use_spn Jeśli wdrożenie zostanie zdefiniowane przy użyciu jednostki usługi, w przeciwnym razie tożsamość usługi zarządzanej Opcjonalnie

Parametry magazynu kluczy

W tej sekcji zdefiniowano parametry używane do definiowania informacji usługi Azure Key Vault.

Zmienna opis Type
user_keyvault_id Identyfikator zasobu platformy Azure dla magazynu kluczy użytkownika. Opcjonalnie
spn_keyvault_id Identyfikator zasobu platformy Azure dla magazynu kluczy, który zawiera poświadczenia wdrożenia. Opcjonalnie
deployer_private_key_secret_name Nazwa wpisu tajnego magazynu kluczy dla klucza prywatnego wdrażania. Opcjonalnie
deployer_public_key_secret_name Nazwa wpisu tajnego magazynu kluczy dla klucza publicznego narzędzia wdrażania. Opcjonalnie
deployer_username_secret_name Nazwa wpisu tajnego magazynu kluczy dla nazwy użytkownika narzędzia wdrażania. Opcjonalnie
deployer_password_secret_name Nazwa wpisu tajnego magazynu kluczy dla hasła modułu wdrażania. Opcjonalnie
additional_users_to_add_to_keyvault_policies Lista identyfikatorów obiektów użytkownika do dodania do zasad dostępu magazynu kluczy wdrożenia. Opcjonalnie
set_secret_expiry Ustaw czas wygaśnięcia 12 miesięcy dla wpisów tajnych magazynu kluczy. Opcjonalnie
soft_delete_retention_days Liczba dni przechowywania elementów w okresie usuwania nietrwałego. Opcjonalnie
deployer_assign_subscription_permissions Steruje przypisaniem uprawnień subskrypcji. Opcjonalnie

Obsługa systemu DNS

Zmienna opis Type
dns_label Nazwa DNS strefy Prywatna strefa DNS. Opcjonalnie
use_custom_dns_a_registration Używa systemu zewnętrznego dla systemu DNS ustawionego na wartość false dla natywnej platformy Azure. Opcjonalnie
management_dns_subscription_id Identyfikator subskrypcji subskrypcji, która zawiera strefę Prywatna strefa DNS. Opcjonalnie
management_dns_resourcegroup_name Grupa zasobów zawierająca strefę Prywatna strefa DNS. Opcjonalnie

Inne parametry

Zmienna opis Type Uwagi
firewall_deployment Flaga logiczna, która kontroluje, czy ma zostać wdrożona zapora platformy Azure. Opcjonalnie
bastion_deployment Flaga logiczna określająca, czy host usługi Azure Bastion ma zostać wdrożony. Opcjonalnie
bastion_sku Jednostka SKU hosta usługi Azure Bastion do wdrożenia (Podstawowa/Standardowa). Opcjonalnie
enable_purge_control_for_keyvaults Flaga logiczna, która określa, czy kontrolka przeczyszczania jest włączona w magazynie kluczy. Opcjonalnie Użyj tylko w przypadku wdrożeń testowych.
enable_firewall_for_keyvaults_and_storage Ogranicz dostęp do wybranych podsieci. Opcjonalnie
Agent_IP Adres IP agenta. Opcjonalnie
add_Agent_IP Określa, czy adres IP agenta jest dodawany do magazynu kluczy i zapór konta magazynu Opcjonalnie

Parametry aplikacji internetowej

Zmienna opis Type Uwagi
use_webapp Wartość logiczna wskazująca, czy aplikacja internetowa powinna zostać wdrożona. Opcjonalnie
app_service_SKU_name Jednostka SKU planu usługi App Service. Opcjonalnie
app_registration_app_id Identyfikator rejestracji aplikacji do użycia dla aplikacji internetowej. Opcjonalnie
webapp_client_secret Jednostka SKU planu usługi App Service. Opcjonalnie Zostanie utrwalone w usłudze Key Vault

Przykładowy plik parametrów dla narzędzia wdrażania (tylko wymagane parametry)

# The environment value is a mandatory field, it is used for partitioning the environments, for example (PROD and NP)
environment="MGMT"

# The location/region value is a mandatory field, it is used to control where the resources are deployed
location="westeurope"

# management_network_address_space is the address space for management virtual network
management_network_address_space="10.10.20.0/25"

# management_subnet_address_prefix is the address prefix for the management subnet
management_subnet_address_prefix="10.10.20.64/28"

# management_firewall_subnet_address_prefix is the address prefix for the firewall subnet
management_firewall_subnet_address_prefix="10.10.20.0/26"

# management_bastion_subnet_address_prefix is a mandatory parameter if bastion is deployed and if the subnets are not defined in the workload or if existing subnets are not used
management_bastion_subnet_address_prefix = "10.10.20.128/26"

deployer_enable_public_ip=false

firewall_deployment=true

bastion_deployment=true

Biblioteka SAP

Biblioteka SAP zapewnia trwały magazyn plików stanu programu Terraform i pobranego nośnika instalacyjnego SAP dla płaszczyzny sterowania.

Konfiguracja biblioteki SAP jest wykonywana w pliku zmiennej terraform tfvars .

Jeśli chcesz użyć istniejącej grupy zasobów dla biblioteki SAP, podaj identyfikator zasobu platformy Azure dla grupy zasobów przy użyciu parametru resource_group_arm_id w pliku tfvars dostawcy wdrażania. Jeśli parametr nie jest zdefiniowany, grupa zasobów zostanie utworzona przy użyciu domyślnego nazewnictwa. Nazwę domyślną można zmienić przy użyciu parametru resource_group_name .

Parametry narzędzia Terraform

W tej tabeli przedstawiono parametry narzędzia Terraform. Te parametry należy wprowadzić ręcznie, jeśli nie używasz skryptów wdrażania ani usługi Azure Pipelines.

Zmienna opis Type Uwagi
deployer_tfstate_key Nazwa pliku stanu dla narzędzia wdrażania Wymagania

Parametry środowiska

W tej tabeli przedstawiono parametry definiujące nazewnictwo zasobów.

Zmienna opis Type Uwagi
environment Identyfikator płaszczyzny sterowania (maksymalnie pięć znaków) Obowiązkowy Na przykład PROD w przypadku środowiska produkcyjnego i NP środowiska nieprodukcyjnego.
location Region świadczenia usługi Azure, w którym należy wdrożyć Wymagania Użyj małych liter.
name_override_file Zastępowanie pliku nazwy Opcjonalnie Zobacz Niestandardowe nazewnictwo.

Grupa zasobów

W tej tabeli przedstawiono parametry definiujące grupę zasobów.

Zmienna opis Type
resourcegroup_name Nazwa grupy zasobów do utworzenia Opcjonalnie
resourcegroup_arm_id Identyfikator zasobu platformy Azure dla istniejącej grupy zasobów Opcjonalnie
resourcegroup_tags Tagi do skojarzenia z grupą zasobów Opcjonalnie

Konto magazynu nośnika instalacyjnego SAP

Zmienna opis Type
library_sapmedia_arm_id Identyfikator zasobu platformy Azure Opcjonalnie

Konto magazynu stanu zdalnego programu Terraform

Zmienna opis Type
library_terraform_state_arm_id Identyfikator zasobu platformy Azure Opcjonalnie

Obsługa systemu DNS

Zmienna opis Type
dns_label Nazwa DNS strefy Prywatna strefa DNS. Opcjonalnie
use_custom_dns_a_registration Użyj istniejącej strefy Prywatna strefa DNS. Opcjonalnie
management_dns_subscription_id Identyfikator subskrypcji subskrypcji, która zawiera strefę Prywatna strefa DNS. Opcjonalnie
management_dns_resourcegroup_name Grupa zasobów zawierająca strefę Prywatna strefa DNS. Opcjonalnie

Dodatkowe parametry

Zmienna opis Type
use_private_endpoint Użyj prywatnych punktów końcowych. Opcjonalnie
use_service_endpoint Użyj punktów końcowych usługi dla podsieci. Opcjonalnie
enable_firewall_for_keyvaults_and_storage Ogranicz dostęp do wybranych podsieci. Opcjonalnie
subnets_to_add_to_firewall_for_keyvaults_and_storage Podsieci, które wymagają dostępu do magazynów kluczy i kont magazynu. Opcjonalnie

Przykładowy plik parametrów biblioteki SAP (tylko wymagane parametry)

# The environment value is a mandatory field, it is used for partitioning the environments, for example (PROD and NP)
environment = "MGMT"

# The location/region value is a mandatory field, it is used to control where the resources are deployed
location = "westeurope"

Następny krok