تكوين وحدة التحكم

تتكون وحدة التحكم الخاصة ب 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"

الخطوة التالية