تكوين وحدة التحكم
تتكون وحدة التحكم الخاصة ب SAP Deployment Automation Framework من المكونات التالية:
- الموزع Deployer
- مكتبة SAP
الموزع Deployer
الموزع هو محرك تنفيذ SAP Deployment Automation Framework. إنه جهاز ظاهري تم تكوينه مسبقا (VM) يستخدم لتشغيل أوامر Terraform و Ansible. عند استخدام Azure DevOps، يكون الموزع عاملا مستضافا ذاتيا.
يتم تنفيذ تكوين التوزيع في ملف متغير Terraform tfvars
.
إذا كنت ترغب في استخدام مجموعة موارد موجودة للنشر، فوفر معرف مورد Azure لمجموعة الموارد باستخدام المعلمة resource_group_arm_id
في ملف tfvars الخاص بالموزع. إذا لم يتم تعريف المعلمة، يتم إنشاء مجموعة الموارد باستخدام التسمية الافتراضية. يمكنك تغيير الاسم الافتراضي باستخدام المعلمة resource_group_name
.
معلمات Terraform
يعرض هذا الجدول معلمات Terraform. يجب إدخال هذه المعلمات يدويا إذا كنت لا تستخدم البرامج النصية للتوزيع.
المتغير | الوصف | النوع |
---|---|---|
tfstate_resource_id |
معرف مورد Azure لحساب التخزين في مكتبة SAP التي تحتوي على ملفات حالة Terraform | المطلوب |
معلمات البيئة
يعرض هذا الجدول المعلمات التي تحدد تسمية المورد.
المتغير | الوصف | النوع | ملاحظات |
---|---|---|---|
environment |
معرف مستوى التحكم (5 أحرف كحد أقصى). | إلزامي | على سبيل المثال، PROD لبيئة إنتاج وبيئة NP غير إنتاجية. |
location |
منطقة Azure التي سيتم التوزيع فيها. | المطلوب | استخدم الأحرف الصغيرة. |
codename |
مكون إضافي لتسمية الموارد. | اختياري | |
name_override_file |
ملف تجاوز الاسم. | اختياري | راجع التسمية المخصصة. |
place_delete_lock_on_resources |
ضع تأمين حذف على الموارد الرئيسية. | اختياري |
مجموعة الموارد
يعرض هذا الجدول المعلمات التي تحدد مجموعة الموارد.
المتغير | الوصف | النوع |
---|---|---|
resourcegroup_name |
اسم مجموعة الموارد المطلوب إنشاؤها | اختياري |
resourcegroup_arm_id |
معرف مورد Azure لمجموعة موارد حالية | اختياري |
resourcegroup_tags |
سيتم ربط العلامات بمجموعة الموارد | اختياري |
معلمات الشبكة
يدعم إطار التشغيل التلقائي إنشاء الشبكة الظاهرية والشبكات الفرعية (الحقل الأخضر) أو استخدام شبكة ظاهرية موجودة وشبكات فرعية موجودة (حقل بني) أو مزيج من الحقل الأخضر وحقل بني:
- سيناريو الحقل الأخضر: يجب تحديد مساحة عنوان الشبكة الظاهرية وبادئات عنوان الشبكة الفرعية.
- سيناريو الحقل البني: يجب تحديد معرف مورد Azure للشبكة الظاهرية والشبكات الفرعية.
CIDR الموصى به لمساحة عنوان الشبكة الافتراضية هو /27، والذي يسمح بمساحة ل 32 عنوان IP. تسمح قيمة CIDR البالغة /28 ب 16 عنوان IP فقط. إذا كنت تريد تضمين جدار حماية Azure، فاستخدم قيمة CIDR مقدارها /25، لأن جدار حماية Azure يتطلب نطاقا من /26.
قيمة CIDR الموصى بها للشبكة الفرعية للإدارة هي /28، والتي تسمح ب 16 عنوان IP. قيمة CIDR الموصى بها للشبكة الفرعية لجدار الحماية هي /26، والتي تسمح ب 64 عنوان IP.
يعرض هذا الجدول معلمات الشبكة.
المتغير | الوصف | النوع | ملاحظات |
---|---|---|---|
management_network_name |
اسم الشبكة الظاهرية التي سيتم نشر الموزع فيها | اختياري | بالنسبة إلى عمليات نشر الحقول الخضراء |
management_network_logical_name |
الاسم المنطقي للشبكة (DEV-WEEU-MGMT01-INFRASTRUCTURE) | المطلوب | |
management_network_arm_id |
معرف مورد Azure للشبكة الظاهرية | اختياري | بالنسبة إلى عمليات توزيع الحقول البني |
management_network_address_space |
نطاق العناوين للشبكة الظاهرية | إلزامي | بالنسبة إلى عمليات نشر الحقول الخضراء |
management_subnet_name |
اسم الشبكة الفرعية | اختياري | |
management_subnet_address_prefix |
نطاق العناوين للشبكة الفرعية | إلزامي | بالنسبة إلى عمليات نشر الحقول الخضراء |
management_subnet_arm_id |
معرف مورد Azure للشبكة الفرعية | إلزامي | بالنسبة إلى عمليات توزيع الحقول البني |
management_subnet_nsg_name |
اسم مجموعة أمان الشبكة | اختياري | |
management_subnet_nsg_arm_id |
معرف مورد Azure لمجموعة أمان الشبكة | إلزامي | بالنسبة إلى عمليات توزيع الحقول البني |
management_subnet_nsg_allowed_ips |
نطاق عناوين IP المسموح بإضافتها إلى جدار حماية Azure | اختياري | |
management_firewall_subnet_arm_id |
معرف مورد Azure للشبكة الفرعية لجدار حماية Azure | إلزامي | بالنسبة إلى عمليات توزيع الحقول البني |
management_firewall_subnet_address_prefix |
نطاق العناوين للشبكة الفرعية | إلزامي | بالنسبة إلى عمليات نشر الحقول الخضراء |
management_bastion_subnet_arm_id |
معرف مورد Azure للشبكة الفرعية Azure Bastion | إلزامي | بالنسبة إلى عمليات توزيع الحقول البني |
management_bastion_subnet_address_prefix |
نطاق العناوين للشبكة الفرعية | إلزامي | بالنسبة إلى عمليات نشر الحقول الخضراء |
webapp_subnet_arm_id |
معرف مورد Azure لشبكة تطبيق الويب الفرعية | إلزامي | بالنسبة إلى عمليات توزيع الحقول البني |
webapp_subnet_address_prefix |
نطاق العناوين للشبكة الفرعية | إلزامي | بالنسبة إلى عمليات نشر الحقول الخضراء |
use_private_endpoint |
استخدم نقاط النهاية الخاصة. | اختياري | |
use_service_endpoint |
استخدم نقاط نهاية الخدمة للشبكات الفرعية. | اختياري |
إشعار
عند استخدام شبكة فرعية موجودة لتطبيق الويب، يجب أن تكون الشبكة الفرعية فارغة، في نفس المنطقة التي يتم فيها نشر مجموعة الموارد، وأن يتم تفويضها إلى Microsoft.Web/serverFarms.
معلمات الجهاز الظاهري للموزع
يعرض هذا الجدول المعلمات المتعلقة بالجهاز الظاهري للموزع.
المتغير | الوصف | النوع |
---|---|---|
deployer_size |
تعريف وحدة SKU للجهاز الظاهري لاستخدامها، افتراضيا: Standard_D4ds_v4 | اختياري |
deployer_count |
تحديد عدد الموزعين | اختياري |
deployer_image |
تعريف صورة الجهاز الظاهري لاستخدامها، الافتراضي: Ubuntu 22.04 | اختياري |
plan |
تعريف الخطة المقترنة بصورة الجهاز الظاهري | اختياري |
deployer_disk_type |
تعريف نوع القرص، الافتراضي: Premium_LRS | اختياري |
deployer_use_DHCP |
التحكم في ما إذا كان يجب استخدام عناوين IP التي توفرها شبكة Azure الفرعية (ديناميكية) true | اختياري |
deployer_private_ip_address |
تعريف عنوان IP الخاص المراد استخدامه | اختياري |
deployer_enable_public_ip |
يحدد ما إذا كان لدى جهة التوزيع عنوان IP عام | اختياري |
auto_configure_deployer |
تحديد ما إذا تم تكوين الموزع مع البرنامج المطلوب (Terraform و Ansible) | اختياري |
add_system_assigned_identity |
تحديد ما إذا تم تعيين هوية نظام للموزع | اختياري |
يتم تعريف صورة الجهاز الظاهري باستخدام البنية التالية:
xxx_vm_image = {
os_type = ""
source_image_id = ""
publisher = "Canonical"
offer = "0001-com-ubuntu-server-jammy"
sku = "22_04-lts"
version = "latest"
type = "marketplace"
}
إشعار
يمكن أن يكون marketplace/marketplace_with_plan/custom
النوع .
يتطلب استخدام صورة من النوع marketplace_with_plan
استخدام الصورة المعنية مرة واحدة على الأقل في الاشتراك. يطالب الاستخدام الأول المستخدم بقبول شروط الترخيص ولا تملك الأتمتة أي وسيلة للموافقة عليها.
معلمات المصادقة
يحدد هذا القسم المعلمات المستخدمة لتعريف مصادقة الجهاز الظاهري.
المتغير | الوصف | النوع |
---|---|---|
deployer_vm_authentication_type |
تعريف المصادقة الافتراضية للموزع | اختياري |
deployer_authentication_username |
اسم حساب المسؤول | اختياري |
deployer_authentication_password |
كلمة مرور المسؤول | اختياري |
deployer_authentication_path_to_public_key |
المسار إلى المفتاح العمومي المستخدم للمصادقة | اختياري |
deployer_authentication_path_to_private_key |
المسار إلى المفتاح الخاص المستخدم للمصادقة | اختياري |
use_spn |
إذا تم تعريفه، فسيتم تنفيذ النشر باستخدام كيان الخدمة، وإلا فإن MSI | اختياري |
معلمات المخزن الرئيسي
يحدد هذا القسم المعلمات المستخدمة لتعريف معلومات Azure Key Vault.
المتغير | الوصف | النوع |
---|---|---|
user_keyvault_id |
معرف مورد Azure لمخزن مفاتيح المستخدم. | اختياري |
spn_keyvault_id |
معرف مورد Azure لمخزن المفاتيح الذي يحتوي على بيانات اعتماد النشر. | اختياري |
deployer_private_key_secret_name |
الاسم السري لمخزن المفاتيح للمفتاح الخاص للموزع. | اختياري |
deployer_public_key_secret_name |
الاسم السري لمخزن المفاتيح للمفتاح العام للموزع. | اختياري |
deployer_username_secret_name |
اسم البيانات السرية لمخزن المفاتيح لاسم مستخدم الموزع. | اختياري |
deployer_password_secret_name |
الاسم السري لمخزن المفاتيح لكلمة مرور الموزع. | اختياري |
additional_users_to_add_to_keyvault_policies |
قائمة بمعرفات عناصر المستخدم لإضافتها إلى نهج الوصول إلى مخزن مفاتيح النشر. | اختياري |
set_secret_expiry |
تعيين انتهاء الصلاحية لمدة 12 شهرا للبيانات السرية للمخزن الرئيسي. | اختياري |
soft_delete_retention_days |
عدد الأيام التي يجب الاحتفاظ بالعناصر فيها في فترة الحذف المبدئي. | اختياري |
deployer_assign_subscription_permissions |
يتحكم في تعيين إذن الاشتراك. | اختياري |
دعم DNS
المتغير | الوصف | النوع |
---|---|---|
dns_label |
اسم DNS لمنطقة DNS الخاصة. | اختياري |
use_custom_dns_a_registration |
يستخدم نظاما خارجيا ل DNS، تم تعيينه إلى false ل Azure الأصلي. | اختياري |
management_dns_subscription_id |
معرف الاشتراك للاشتراك الذي يحتوي على منطقة DNS الخاصة. | اختياري |
management_dns_resourcegroup_name |
مجموعة الموارد التي تحتوي على منطقة DNS الخاصة. | اختياري |
معلمات أخرى
المتغير | الوصف | النوع | ملاحظات |
---|---|---|---|
firewall_deployment |
علامة منطقية تتحكم في ما إذا كان سيتم نشر جدار حماية Azure. | اختياري | |
bastion_deployment |
علامة منطقية تتحكم في نشر مضيف Azure Bastion. | اختياري | |
bastion_sku |
SKU لمضيف Azure Bastion ليتم نشره (أساسي/قياسي). | اختياري | |
enable_purge_control_for_keyvaults |
علامة منطقية تتحكم في ما إذا تم تمكين عنصر تحكم التطهير على مخزن المفاتيح. | اختياري | استخدم فقط لإجراء عمليات نشر الاختبار. |
enable_firewall_for_keyvaults_and_storage |
تقييد الوصول إلى الشبكات الفرعية المحددة. | اختياري | |
Agent_IP |
عنوان IP للعامل. | اختياري | |
add_Agent_IP |
التحكم في ما إذا تمت إضافة عنوان IP للعامل إلى مخزن المفاتيح وجدران حماية حساب التخزين | اختياري |
معلمات تطبيق الويب
المتغير | الوصف | النوع | ملاحظات |
---|---|---|---|
use_webapp |
قيمة منطقية تشير إلى ما إذا كان يجب نشر تطبيق ويب. | اختياري | |
app_service_SKU_name |
SKU لخطة خدمة التطبيقات. | اختياري | |
app_registration_app_id |
معرف تسجيل التطبيق الذي سيتم استخدامه لتطبيق الويب. | اختياري | |
webapp_client_secret |
SKU لخطة خدمة التطبيقات. | اختياري | سيتم الاستمرار في Key Vault |
مثال على ملف المعلمات للمنشر (المعلمات المطلوبة فقط)
# 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
مكتبة SAP
توفر مكتبة SAP التخزين المستمر لملفات حالة Terraform ووسائط تثبيت SAP التي تم تنزيلها لمستوى التحكم.
يتم تنفيذ تكوين مكتبة SAP في ملف متغير Terraform tfvars
.
إذا كنت ترغب في استخدام مجموعة موارد موجودة لمكتبة SAP، فوفر معرف مورد Azure لمجموعة الموارد باستخدام المعلمة resource_group_arm_id
في ملف tfvars الخاص بالموزع. إذا لم يتم تعريف المعلمة، يتم إنشاء مجموعة الموارد باستخدام التسمية الافتراضية. يمكنك تغيير الاسم الافتراضي باستخدام المعلمة resource_group_name
.
معلمات Terraform
يعرض هذا الجدول معلمات Terraform. يجب إدخال هذه المعلمات يدويا إذا كنت لا تستخدم البرامج النصية للتوزيع أو Azure Pipelines.
المتغير | الوصف | النوع | ملاحظات |
---|---|---|---|
deployer_tfstate_key |
اسم ملف الحالة للموزع | المطلوب |
معلمات البيئة
يعرض هذا الجدول المعلمات التي تحدد تسمية المورد.
المتغير | الوصف | النوع | ملاحظات |
---|---|---|---|
environment |
معرف مستوى التحكم (بحد أقصى خمسة أحرف) | إلزامي | على سبيل المثال، PROD لبيئة إنتاج وبيئة NP غير إنتاجية. |
location |
منطقة Azure التي سيتم التوزيع فيها | المطلوب | استخدم الأحرف الصغيرة. |
name_override_file |
ملف تجاوز الاسم | اختياري | راجع التسمية المخصصة. |
مجموعة الموارد
يعرض هذا الجدول المعلمات التي تحدد مجموعة الموارد.
المتغير | الوصف | النوع |
---|---|---|
resourcegroup_name |
اسم مجموعة الموارد المطلوب إنشاؤها | اختياري |
resourcegroup_arm_id |
معرف مورد Azure لمجموعة موارد حالية | اختياري |
resourcegroup_tags |
سيتم ربط العلامات بمجموعة الموارد | اختياري |
حساب تخزين وسائط تثبيت SAP
المتغير | الوصف | النوع |
---|---|---|
library_sapmedia_arm_id |
معرف المورد Azure | اختياري |
حساب تخزين الحالة البعيدة Terraform
المتغير | الوصف | النوع |
---|---|---|
library_terraform_state_arm_id |
معرف المورد Azure | اختياري |
دعم DNS
المتغير | الوصف | النوع |
---|---|---|
dns_label |
اسم DNS لمنطقة DNS الخاصة. | اختياري |
use_custom_dns_a_registration |
استخدم منطقة DNS خاصة موجودة. | اختياري |
management_dns_subscription_id |
معرف الاشتراك للاشتراك الذي يحتوي على منطقة DNS الخاصة. | اختياري |
management_dns_resourcegroup_name |
مجموعة الموارد التي تحتوي على منطقة DNS الخاصة. | اختياري |
الحد الأقصى للمعلمات
المتغير | الوصف | النوع |
---|---|---|
use_private_endpoint |
استخدم نقاط النهاية الخاصة. | اختياري |
use_service_endpoint |
استخدم نقاط نهاية الخدمة للشبكات الفرعية. | اختياري |
enable_firewall_for_keyvaults_and_storage |
تقييد الوصول إلى الشبكات الفرعية المحددة. | اختياري |
subnets_to_add_to_firewall_for_keyvaults_and_storage |
الشبكات الفرعية التي تحتاج إلى الوصول إلى خزائن المفاتيح وحسابات التخزين. | اختياري |
مثال ملف المعلمات لمكتبة SAP (المعلمات المطلوبة فقط)
# 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"