Mengonfigurasi bidang kontrol
Sarana kontrol untuk Kerangka Kerja Otomatisasi Penyebaran SAP terdiri dari komponen berikut:
- Penyebar
- Pustaka SAP
Penyebar
Penyebar adalah mesin eksekusi SAP Deployment Automation Framework. Ini adalah komputer virtual (VM) yang telah dikonfigurasi sebelumnya yang digunakan untuk menjalankan perintah Terraform dan Ansible. Saat Anda menggunakan Azure DevOps, penyebar adalah agen yang dihost sendiri.
Konfigurasi penyebar dilakukan dalam file variabel Terraform tfvars
.
Jika Anda ingin menggunakan grup sumber daya yang ada untuk Deployer, berikan ID sumber daya Azure untuk grup sumber daya menggunakan resource_group_arm_id
parameter dalam file tfvars penyebar. Jika parameter tidak ditentukan, grup sumber daya dibuat menggunakan penamaan default. Anda dapat mengubah nama default menggunakan resource_group_name
parameter .
Parameter Terraform
Tabel ini memperlihatkan parameter Terraform. Parameter ini perlu dimasukkan secara manual jika Anda tidak menggunakan skrip penyebaran.
Variabel | Deskripsi | Jenis |
---|---|---|
tfstate_resource_id |
Pengidentifikasi sumber daya Azure untuk akun penyimpanan di pustaka SAP yang berisi file status Terraform | Diperlukan |
Parameter lingkungan
Tabel ini memperlihatkan parameter yang menentukan penamaan sumber daya.
Variabel | Deskripsi | Jenis | Catatan |
---|---|---|---|
environment |
Pengidentifikasi untuk sarana kontrol (maksimal 5 karakter). | Wajib | Misalnya, PROD untuk lingkungan produksi dan NP untuk lingkungan nonproduksi. |
location |
Wilayah Azure untuk disebarkan. | Diperlukan | Gunakan huruf kecil. |
codename |
Komponen tambahan untuk penamaan sumber daya. | Opsional | |
name_override_file |
File penimpaan nama. | Opsional | Lihat Penamaan kustom. |
place_delete_lock_on_resources |
Tempatkan kunci penghapusan pada sumber daya utama. | Opsional |
Grup sumber daya
Tabel ini memperlihatkan parameter yang menentukan grup sumber daya.
Variabel | Deskripsi | Jenis |
---|---|---|
resourcegroup_name |
Nama grup sumber daya yang akan dibuat | Opsional |
resourcegroup_arm_id |
Pengidentifikasi sumber daya Azure untuk grup sumber daya yang ada | Opsional |
resourcegroup_tags |
Tag yang akan dikaitkan dengan grup sumber daya | Opsional |
Parameter jaringan
Kerangka kerja otomatisasi mendukung pembuatan jaringan virtual dan subnet (bidang hijau) atau menggunakan jaringan virtual yang ada dan subnet yang ada (bidang coklat) atau kombinasi bidang hijau dan bidang coklat:
- Skenario bidang hijau: Ruang alamat jaringan virtual dan awalan alamat subnet harus ditentukan.
- Skenario bidang coklat: Pengidentifikasi sumber daya Azure untuk jaringan virtual dan subnet harus ditentukan.
CIDR yang direkomendasikan untuk ruang alamat jaringan virtual adalah /27, yang memungkinkan ruang untuk 32 alamat IP. Nilai CIDR /28 hanya memungkinkan 16 alamat IP. Jika Anda ingin menyertakan Azure Firewall, gunakan nilai CIDR /25, karena Azure Firewall memerlukan rentang /26.
Nilai CIDR yang direkomendasikan untuk subnet manajemen adalah /28, yang memungkinkan 16 alamat IP. Nilai CIDR yang direkomendasikan untuk subnet firewall adalah /26, yang memungkinkan 64 alamat IP.
Tabel ini memperlihatkan parameter jaringan.
Variabel | Deskripsi | Jenis | Catatan |
---|---|---|---|
management_network_name |
Nama jaringan virtual tempat penyebar akan disebarkan | Opsional | Untuk penyebaran bidang hijau |
management_network_logical_name |
Nama logis jaringan (DEV-WEEU-MGMT01-INFRASTRUCTURE) | Diperlukan | |
management_network_arm_id |
Pengidentifikasi sumber daya Azure untuk jaringan virtual | Opsional | Untuk penyebaran bidang coklat |
management_network_address_space |
Rentang alamat untuk jaringan virtual | Wajib | Untuk penyebaran bidang hijau |
management_subnet_name |
Nama subnet | Opsional | |
management_subnet_address_prefix |
Rentang alamat untuk subnet | Wajib | Untuk penyebaran bidang hijau |
management_subnet_arm_id |
Pengidentifikasi sumber daya Azure untuk subnet | Wajib | Untuk penyebaran bidang coklat |
management_subnet_nsg_name |
Nama grup keamanan jaringan | Opsional | |
management_subnet_nsg_arm_id |
Pengidentifikasi sumber daya Azure untuk grup keamanan jaringan | Wajib | Untuk penyebaran bidang coklat |
management_subnet_nsg_allowed_ips |
Rentang alamat IP yang diizinkan untuk ditambahkan ke Azure Firewall | Opsional | |
management_firewall_subnet_arm_id |
Pengidentifikasi sumber daya Azure untuk subnet Azure Firewall | Wajib | Untuk penyebaran bidang coklat |
management_firewall_subnet_address_prefix |
Rentang alamat untuk subnet | Wajib | Untuk penyebaran bidang hijau |
management_bastion_subnet_arm_id |
Pengidentifikasi sumber daya Azure untuk subnet Azure Bastion | Wajib | Untuk penyebaran bidang coklat |
management_bastion_subnet_address_prefix |
Rentang alamat untuk subnet | Wajib | Untuk penyebaran bidang hijau |
webapp_subnet_arm_id |
Pengidentifikasi sumber daya Azure untuk subnet aplikasi web | Wajib | Untuk penyebaran bidang coklat |
webapp_subnet_address_prefix |
Rentang alamat untuk subnet | Wajib | Untuk penyebaran bidang hijau |
use_private_endpoint |
Gunakan titik akhir privat. | Opsional | |
use_service_endpoint |
Gunakan titik akhir layanan untuk subnet. | Opsional |
Catatan
Saat Anda menggunakan subnet yang ada untuk aplikasi web, subnet harus kosong, di wilayah yang sama dengan grup sumber daya yang sedang disebarkan, dan didelegasikan ke Microsoft.Web/serverFarms.
Parameter komputer virtual penyebar
Tabel ini memperlihatkan parameter yang terkait dengan VM penyebar.
Variabel | Deskripsi | Jenis |
---|---|---|
deployer_size |
Menentukan SKU VM yang akan digunakan, default: Standard_D4ds_v4 | Opsional |
deployer_count |
Menentukan jumlah penyebar | Opsional |
deployer_image |
Menentukan gambar VM yang akan digunakan, default: Ubuntu 22.04 | Opsional |
plan |
Menentukan rencana yang terkait dengan gambar VM | Opsional |
deployer_disk_type |
Menentukan jenis disk, default: Premium_LRS | Opsional |
deployer_use_DHCP |
Mengontrol apakah alamat IP yang disediakan subnet Azure harus digunakan (dinamis) benar | Opsional |
deployer_private_ip_address |
Menentukan alamat IP privat yang akan digunakan | Opsional |
deployer_enable_public_ip |
Mendefinisikan jika penyebar memiliki IP publik | Opsional |
auto_configure_deployer |
Menentukan apakah penyebar dikonfigurasi dengan perangkat lunak yang diperlukan (Terraform dan Ansible) | Opsional |
add_system_assigned_identity |
Menentukan apakah penyebar diberi identitas sistem | Opsional |
Gambar VM didefinisikan dengan menggunakan struktur berikut:
xxx_vm_image = {
os_type = ""
source_image_id = ""
publisher = "Canonical"
offer = "0001-com-ubuntu-server-jammy"
sku = "22_04-lts"
version = "latest"
type = "marketplace"
}
Catatan
Jenisnya bisa .marketplace/marketplace_with_plan/custom
Menggunakan gambar jenis marketplace_with_plan
mengharuskan gambar yang dimaksud digunakan setidaknya sekali dalam langganan. Penggunaan pertama meminta pengguna untuk menerima persyaratan lisensi dan otomatisasi tidak memiliki cara untuk menyetujuinya.
Parameter autentikasi
Bagian ini menentukan parameter yang digunakan untuk menentukan autentikasi VM.
Variabel | Deskripsi | Jenis |
---|---|---|
deployer_vm_authentication_type |
Menentukan autentikasi default untuk penyebar | Opsional |
deployer_authentication_username |
Nama akun administrator | Opsional |
deployer_authentication_password |
Kata sandi administrator | Opsional |
deployer_authentication_path_to_public_key |
Jalur ke kunci umum yang digunakan untuk autentikasi | Opsional |
deployer_authentication_path_to_private_key |
Jalur ke kunci privat yang digunakan untuk autentikasi | Opsional |
use_spn |
Jika didefinisikan, penyebaran akan dilakukan menggunakan Perwakilan Layanan, jika tidak, MSI | Opsional |
Parameter brankas kunci
Bagian ini menentukan parameter yang digunakan untuk menentukan informasi Azure Key Vault.
Variabel | Deskripsi | Jenis |
---|---|---|
user_keyvault_id |
Pengidentifikasi sumber daya Azure untuk brankas kunci pengguna. | Opsional |
spn_keyvault_id |
Pengidentifikasi sumber daya Azure untuk brankas kunci yang berisi kredensial penyebaran. | Opsional |
deployer_private_key_secret_name |
Nama rahasia brankas kunci untuk kunci privat penyebar. | Opsional |
deployer_public_key_secret_name |
Nama rahasia brankas kunci untuk kunci umum penyebar. | Opsional |
deployer_username_secret_name |
Nama rahasia brankas kunci untuk nama pengguna penyebar. | Opsional |
deployer_password_secret_name |
Nama rahasia brankas kunci untuk kata sandi penyebar. | Opsional |
additional_users_to_add_to_keyvault_policies |
Daftar ID objek pengguna untuk ditambahkan ke kebijakan akses brankas kunci penyebaran. | Opsional |
set_secret_expiry |
Atur kedaluwarsa 12 bulan untuk rahasia brankas kunci. | Opsional |
soft_delete_retention_days |
Jumlah hari item harus dipertahankan dalam periode penghapusan sementara. | Opsional |
deployer_assign_subscription_permissions |
Mengontrol penetapan izin langganan. | Opsional |
Dukungan DNS
Variabel | Deskripsi | Jenis |
---|---|---|
dns_label |
Nama DNS zona DNS Privat. | Opsional |
use_custom_dns_a_registration |
Menggunakan sistem eksternal untuk DNS, diatur ke false untuk Asli Azure. | Opsional |
management_dns_subscription_id |
ID Langganan untuk langganan yang berisi zona DNS Privat. | Opsional |
management_dns_resourcegroup_name |
Grup sumber daya yang berisi zona DNS Privat. | Opsional |
Parameter lainnya
Variabel | Deskripsi | Jenis | Catatan |
---|---|---|---|
firewall_deployment |
Bendera Boolean yang mengontrol apakah firewall Azure akan disebarkan. | Opsional | |
bastion_deployment |
Bendera Boolean yang mengontrol apakah host Azure Bastion akan disebarkan. | Opsional | |
bastion_sku |
SKU untuk host Azure Bastion yang akan disebarkan (Dasar/Standar). | Opsional | |
enable_purge_control_for_keyvaults |
Bendera Boolean yang mengontrol apakah kontrol penghapusan menyeluruh diaktifkan pada brankas kunci. | Opsional | Gunakan hanya untuk penyebaran pengujian. |
enable_firewall_for_keyvaults_and_storage |
Membatasi akses ke subnet yang dipilih. | Opsional | |
Agent_IP |
Alamat IP agen. | Opsional | |
add_Agent_IP |
Mengontrol apakah IP Agen ditambahkan ke brankas kunci dan firewall akun penyimpanan | Opsional |
Parameter Aplikasi Web
Variabel | Deskripsi | Jenis | Catatan |
---|---|---|---|
use_webapp |
Nilai Boolean yang menunjukkan apakah aplikasi web harus disebarkan. | Opsional | |
app_service_SKU_name |
SKU Paket App Service. | Opsional | |
app_registration_app_id |
Id pendaftaran aplikasi yang akan digunakan untuk aplikasi web. | Opsional | |
webapp_client_secret |
SKU Paket App Service. | Opsional | Akan dipertahankan di Key Vault |
Contoh file parameter untuk penyebar (parameter yang diperlukan saja)
# 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
pustaka SAP
Pustaka SAP menyediakan penyimpanan persisten file status Terraform dan media penginstalan SAP yang diunduh untuk sarana kontrol.
Konfigurasi pustaka SAP dilakukan dalam file variabel Terraform tfvars
.
Jika Anda ingin menggunakan grup sumber daya yang ada untuk Pustaka SAP, berikan ID sumber daya Azure untuk grup sumber daya menggunakan resource_group_arm_id
parameter dalam file tfvars penyebar. Jika parameter tidak ditentukan, grup sumber daya dibuat menggunakan penamaan default. Anda dapat mengubah nama default menggunakan resource_group_name
parameter .
Parameter Terraform
Tabel ini memperlihatkan parameter Terraform. Parameter ini perlu dimasukkan secara manual jika Anda tidak menggunakan skrip penyebaran atau Azure Pipelines.
Variabel | Deskripsi | Jenis | Catatan |
---|---|---|---|
deployer_tfstate_key |
Nama file status untuk penyebar | Diperlukan |
Parameter lingkungan
Tabel ini memperlihatkan parameter yang menentukan penamaan sumber daya.
Variabel | Deskripsi | Jenis | Catatan |
---|---|---|---|
environment |
Pengidentifikasi untuk sarana kontrol (maksimum lima karakter) | Wajib | Misalnya, PROD untuk lingkungan produksi dan NP untuk lingkungan nonproduksi. |
location |
Wilayah Azure tempat penyebaran | Diperlukan | Gunakan huruf kecil. |
name_override_file |
File penimpaan nama | Opsional | Lihat Penamaan kustom. |
Grup sumber daya
Tabel ini memperlihatkan parameter yang menentukan grup sumber daya.
Variabel | Deskripsi | Jenis |
---|---|---|
resourcegroup_name |
Nama grup sumber daya yang akan dibuat | Opsional |
resourcegroup_arm_id |
Pengidentifikasi sumber daya Azure untuk grup sumber daya yang ada | Opsional |
resourcegroup_tags |
Tag yang akan dikaitkan dengan grup sumber daya | Opsional |
Akun penyimpanan media penginstalan SAP
Variabel | Deskripsi | Jenis |
---|---|---|
library_sapmedia_arm_id |
Pengidentifikasi sumber daya Azure | Opsional |
Akun penyimpanan status jarak jauh Terraform
Variabel | Deskripsi | Jenis |
---|---|---|
library_terraform_state_arm_id |
Pengidentifikasi sumber daya Azure | Opsional |
Dukungan DNS
Variabel | Deskripsi | Jenis |
---|---|---|
dns_label |
Nama DNS zona DNS Privat. | Opsional |
use_custom_dns_a_registration |
Gunakan zona DNS Privat yang sudah ada. | Opsional |
management_dns_subscription_id |
ID Langganan untuk langganan yang berisi zona DNS Privat. | Opsional |
management_dns_resourcegroup_name |
Grup sumber daya yang berisi zona DNS Privat. | Opsional |
Parameter tambahan
Variabel | Deskripsi | Jenis |
---|---|---|
use_private_endpoint |
Gunakan titik akhir privat. | Opsional |
use_service_endpoint |
Gunakan titik akhir layanan untuk subnet. | Opsional |
enable_firewall_for_keyvaults_and_storage |
Membatasi akses ke subnet yang dipilih. | Opsional |
subnets_to_add_to_firewall_for_keyvaults_and_storage |
Subnet yang memerlukan akses ke brankas kunci dan akun penyimpanan. | Opsional |
Contoh file parameter untuk pustaka SAP (hanya parameter yang diperlukan)
# 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"