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
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"