قابلية وصول عالية لمثيل SAP ASCS/SCS متعدد SID مع تجاوز الفشل للمجموعات في Windows Server والقرص المشترك ل Azure

Windows OS نوافذ

تركز هذه المقالة على كيفية الانتقال من تثبيت SAP ASCS/SCS واحد إلى تكوين معرفات نظام SAP المتعددة (SIDs) عن طريق تثبيت مثيلات SAP ASCS/SCS مجمعة إضافية في نظام مجموعة Windows Server Failover Clustering (WSFC) موجود مع قرص مشترك ل Azure. عند إكمال هذه العملية، قمت بتكوين مجموعة SAP متعددة SID.

المتطلبات الأساسية والقيود

يمكنك استخدام أقراص Azure Premium SSD كأقراص مشتركة ل Azure لمثيل SAP ASCS/SCS. القيود التالية مستخدمة حالياً:

  • لا يتم دعم أقراص Azure Ultra Disk Storage وأقراص Azure Standard SSD كأقراص مشتركة ل Azure لأحمال عمل SAP.
  • يتم دعم الأقراص المشتركة ل Azure مع أقراص Premium SSD لنشر SAP في مجموعات التوفر ومناطق التوفر.
  • تأتي الأقراص المشتركة ل Azure مع أقراص Premium SSD مع خيارين للتخزين:
    • يتم دعم التخزين الزائد محليا (LRS) للأقراص المشتركة Premium SSD (skuName قيمة Premium_LRS) مع النشر في مجموعات التوفر.
    • يتم دعم التخزين المتكرر للمنطقة (ZRS) للأقراص المشتركة Premium SSD (skuName قيمة Premium_ZRS) مع النشر في مناطق التوفر.
  • تحدد قيمة القرص المشترك Azure maxShares عدد عقد نظام المجموعة التي يمكنها استخدام القرص المشترك. بالنسبة لمثيل SAP ASCS/SCS، عادة ما تقوم بتكوين عقدتين في WSFC. ثم قم بتعيين القيمة ل maxShares إلى 2.
  • مجموعة موضع تقارب Azure (PPG) غير مطلوبة للأقراص المشتركة ل Azure. ولكن لنشر SAP مع PPGs، اتبع هذه الإرشادات:
    • إذا كنت تستخدم PPGs لنظام SAP المنتشر في منطقة ما، يجب أن تكون جميع الأجهزة الظاهرية التي تشترك في قرص جزءا من نفس PPG.
    • إذا كنت تستخدم PPGs لنظام SAP المنتشر عبر المناطق، كما هو موضح في مجموعات موضع التقارب مع عمليات النشر المناطقية، يمكنك إرفاق Premium_ZRS التخزين بالأجهزة الظاهرية التي تشترك في قرص.

لمزيد من المعلومات، راجع قسم القيود في وثائق الأقراص المشتركة ل Azure.

اعتبارات مهمة للأقراص المشتركة Premium SSD

ضع في اعتبارك هذه النقاط المهمة حول الأقراص المشتركة ل Azure Premium SSD:

  • LRS للأقراص المشتركة Premium SSD:

    • يعمل توزيع SAP مع LRS للأقراص المشتركة Premium SSD مع قرص مشترك Azure واحد على مجموعة تخزين واحدة. إذا كانت هناك مشكلة في نظام مجموعة التخزين حيث يتم نشر القرص المشترك Azure، فإنه يؤثر على مثيل SAP ASCS/SCS.
  • ZRS للأقراص المشتركة Premium SSD:

    • زمن انتقال الكتابة ل ZRS أعلى من زمن انتقال LRS لأن النسخ عبر المناطق للبيانات.
    • تختلف المسافة بين مناطق التوفر في مناطق مختلفة، وكذلك زمن انتقال قرص ZRS عبر مناطق التوفر. قياس الأقراص لتحديد زمن انتقال أقراص ZRS في منطقتك.
    • ينسخ ZRS للأقراص المشتركة Premium SSD البيانات بشكل متزامن عبر ثلاث مناطق توفر في المنطقة. إذا كانت هناك مشكلة في إحدى مجموعات التخزين، يستمر مثيل SAP ASCS/SCS في التشغيل لأن تجاوز فشل التخزين شفاف لطبقة التطبيق.
    • لمزيد من المعلومات، راجع قسم القيود في الوثائق حول ZRS للأقراص المدارة.

هام

يجب أن يستوفي الإعداد الشروط التالية:

  • يجب أن يكون لدى SID لكل نظام إدارة قاعدة بيانات (DBMS) مجموعة WSFC المخصصة الخاصة به.
  • يجب أن تحتوي خوادم تطبيقات SAP التي تنتمي إلى SAP SID واحد على أجهزتها الظاهرية المخصصة (VMs).
  • لا يتم دعم مزيج من Enqueue Replication Server 1 (ERS1) و Enqueue Replication Server 2 (ERS2) في نفس المجموعة.

إصدارات نظام التشغيل المدعومة

يتم دعم Windows Server 2016 و2019 والإصدارات الأحدث. استخدم أحدث صور مركز البيانات.

نوصي بشدة باستخدام Windows Server 2019 Datacenter على الأقل، لهذه الأسباب:

  • WSFC في Windows Server 2019 على علم ب Azure.
  • يتضمن Windows Server 2019 Datacenter تكاملا ووعيا بصيانة مضيف Azure وتجربة محسنة من خلال مراقبة الأحداث المجدولة في Azure.
  • يمكنك استخدام أسماء الشبكة الموزعة. (إنه الخيار الافتراضي.) ليست هناك حاجة إلى وجود عنوان IP مخصص لاسم شبكة نظام المجموعة. أيضا، لا تحتاج إلى تكوين عنوان IP على موازن تحميل داخلي Azure.

بناء الأنظمة

يتم دعم كل من ERS1 وERS2 في تكوين SID متعدد. مزيج من ERS1 وERS2 غير مدعوم في نفس المجموعة.

يوضح المثال التالي اثنين من SAP SIDs. كلاهما يحتوي على بنية ERS1 حيث:

  • يتم نشر SAP SID1 على قرص مشترك مع ERS1. يتم تثبيت مثيل ERS على مضيف محلي وعلى محرك أقراص محلي.

    يحتوي SAP SID1 على عنوان IP الظاهري الخاص به (SID1 (A) SCS IP1، والذي تم تكوينه على موازن التحميل الداخلي ل Azure.

  • يتم نشر SAP SID2 على قرص مشترك مع ERS1. يتم تثبيت مثيل ERS على مضيف محلي وعلى محرك أقراص محلي.

    يحتوي SAP SID2 على عنوان IP ظاهري خاص (SID2 (A)SCS IP2، والذي تم تكوينه على موازن التحميل الداخلي ل Azure.

رسم تخطيطي لمثيلي SAP ASCS/SCS عاليي التوفر مع تكوين ERS1.

يوضح المثال التالي أيضا اثنين من SAP SIDs. كلاهما يحتوي على بنية ERS2 حيث:

  • يتم نشر SAP SID1 على قرص جزء مع ERS2، والذي يتم تجميعه ويتم نشره على محرك أقراص محلي.

    يحتوي SAP SID1 على عنوان IP الظاهري الخاص به (SID1 (A) SCS IP1، والذي تم تكوينه على موازن التحميل الداخلي ل Azure.

    لدى SAP ERS2 عنوان IP الظاهري الخاص به (SID1 ERS2 IP2)، والذي تم تكوينه على موازن التحميل الداخلي ل Azure.

  • يتم نشر SAP SID2 على قرص جزء مع ERS2، والذي يتم تجميعه ويتم نشره على محرك أقراص محلي.

    لدى SAP SID2 عنوان IP ظاهري خاص (SID2 (A)SCS IP3)، والذي تم تكوينه على موازن التحميل الداخلي ل Azure.

    يحتوي SAP ERS2 على عنوان IP الظاهري الخاص به (SID2 ERS2 IP4)، والذي تم تكوينه على موازن التحميل الداخلي ل Azure.

  • هناك ما مجموعه أربعة عناوين IP ظاهرية:

    • SID1 (A)SCS IP1
    • SID2 ERS2 IP2
    • SID2 (A)SCS IP3
    • SID2 ERS2 IP4

رسم تخطيطي لمثيلي SAP ASCS/SCS عاليي التوفر مع تكوين ERS1 وERS2.

إعداد البنية الأساسية

يمكنك تثبيت مثيل SAP SID PR2 جديد، بالإضافة إلى مثيل SAP PR1 ASCS/SCS المتفاوت المسافات الموجود.

أسماء المضيفين وعناوين IP

استنادا إلى نوع النشر الخاص بك، يجب أن تكون أسماء المضيفين وعناوين IP للسيناريو مثل الأمثلة التالية.

فيما يلي تفاصيل توزيع SAP في مجموعة توفر Azure:

دور اسم المضيف اسم المضيف عنوان IP ثابت مجموعة التوفّر قيمة القرص SkuName
عقدة نظام المجموعة الأولى - مجموعة ASCS/SCS pr1-ascs-10 10.0.0.4 pr1-ascs-avset Premium_LRS
عقدة نظام المجموعة الثانية - مجموعة ASCS/SCS pr1-ascs-11 10.0.0.5 pr1-ascs-avset
اسم شبكة نظام المجموعة pr1clust 10.0.0.42 (فقط لنظام مجموعة Windows Server 2016) غير قابل للتطبيق
SID1 اسم شبكة نظام المجموعة ASCS pr1-ascscl 10.0.0.43 غير قابل للتطبيق
SID1 اسم شبكة نظام مجموعة ERS (فقط لـ ERS2) pr1-erscl 10.0.0.44 غير قابل للتطبيق
SID2 اسم شبكة نظام المجموعة ASCS pr2-ascscl 10.0.0.45 غير قابل للتطبيق
SID2 اسم شبكة نظام مجموعة ERS (فقط لـ ERS2) pr1-erscl 10.0.0.46 غير قابل للتطبيق

فيما يلي تفاصيل توزيع SAP في مناطق توفر Azure:

دور اسم المضيف اسم المضيف عنوان IP ثابت مناطق التوفّر قيمة القرص SkuName
عقدة نظام المجموعة الأولى - مجموعة ASCS/SCS pr1-ascs-10 10.0.0.4 AZ01 Premium_ZRS
عقدة نظام المجموعة الثانية - مجموعة ASCS/SCS pr1-ascs-11 10.0.0.5 AZ02
اسم شبكة نظام المجموعة pr1clust 10.0.0.42 (فقط لنظام مجموعة Windows Server 2016) غير قابل للتطبيق
SID1 اسم شبكة نظام المجموعة ASCS pr1-ascscl 10.0.0.43 غير قابل للتطبيق
SID2 اسم شبكة نظام مجموعة ERS (فقط لـ ERS2) pr1-erscl 10.0.0.44 غير قابل للتطبيق
SID2 اسم شبكة نظام المجموعة ASCS pr2-ascscl 10.0.0.45 غير قابل للتطبيق
SID2 اسم شبكة نظام مجموعة ERS (فقط لـ ERS2) pr1-erscl 10.0.0.46 غير قابل للتطبيق

تظل الخطوات الواردة في هذه المقالة كما هي لكلا نوعي النشر. ولكن إذا كان نظام المجموعة قيد التشغيل في مجموعة توفر، فأنت بحاجة إلى نشر LRS للأقراص المشتركة Azure Premium SSD (Premium_LRS). إذا كان نظام المجموعة قيد التشغيل في منطقة توفر، فستحتاج إلى نشر ZRS للأقراص المشتركة Azure Premium SSD (Premium_ZRS).

إنشاء موازن تحميل داخلي ل Azure

لتكوين SID متعدد ل SAP SID، PR2، يمكنك استخدام نفس موازن التحميل الداخلي الذي قمت بإنشائه لنظام SAP SID، PR1. بالنسبة إلى بنية ENSA1 على Windows، ستحتاج إلى عنوان IP ظاهري واحد فقط ل SAP ASCS/SCS. من ناحية أخرى، تتطلب بنية ENSA2 عنواني IP ظاهريين - أحدهما ل SAP ASCS والآخر ل ERS2.

تكوين عنوان IP إضافي للواجهة الأمامية وقاعدة موازنة التحميل ل SAP SID ونظام PR2 على موازن التحميل الحالي باستخدام الإرشادات التالية. يفترض هذا القسم أن تكوين موازن التحميل الداخلي القياسي ل SAP SID، PR1 موجود بالفعل كما هو موضح في إنشاء موازن التحميل.

  1. افتح نفس موازن التحميل الداخلي القياسي الذي قمت بإنشائه لنظام SAP SID، PR1.
  2. تكوين IP للواجهة الأمامية: إنشاء IP للواجهة الأمامية (مثال: 10.0.0.45).
  3. تجمع الواجهة الخلفية: تجمع الخلفية هو نفسه نظام SAP SID PR1.
  4. القواعد الواردة: إنشاء قاعدة موازنة التحميل.
    • عنوان IP للواجهة الأمامية: حدد IP للواجهة الأمامية
    • تجمع الواجهة الخلفية: حدد تجمع الواجهة الخلفية
    • تحقق من "منافذ قابلية وصول عالية"
    • Protocol: TCP
    • Health Probe: إنشاء مسبار صحي بالتفاصيل أدناه
      • Protocol: TCP
      • المنفذ: [على سبيل المثال: 620<Instance-no.> ل SAP SID، PR2 ASCS]
      • الفاصل الزمني: 5
      • عتبة الفحص: 2
    • مهلة الخمول (بالدقائق): 30
    • تحقق من "تمكين IP العائم"
  5. ينطبق على بنية ENSA2 فقط: إنشاء IP أمامي إضافي (10.0.0.44)، قاعدة موازنة التحميل (استخدم 621<Instance-no.> لمنفذ ERS2 health probe) كما هو موضح في النقطة 1 و3.

إشعار

لا يتم احترام خاصية تكوين التحقيق الصحي numberOfProbes، والمعروفة باسم "عتبة غير سليمة" في المدخل. لذلك للتحكم في عدد التحقيقات المتتالية الناجحة أو الفاشلة، قم بتعيين الخاصية "probeThreshold" إلى 2. لا يمكن حاليا تعيين هذه الخاصية باستخدام مدخل Microsoft Azure، لذا استخدم إما الأمر Azure CLI أو PowerShell .

إشعار

عند وضع أجهزة ظاهرية بدون عناوين IP عامة في التجمع الخلفي لموازن تحميل Azure قياسي داخلي (بدون عنوان IP عام)، لن يكون هناك اتصال إنترنت صادر ما لم تقم بإجراء تكوين إضافي للسماح بالتوجيه إلى نقاط النهاية العامة. للحصول على تفاصيل حول كيفية تحقيق الاتصال الصادر راجع اتصال نقطة النهاية العامة للأجهزة الظاهرية باستخدام موازن تحميل Azure قياسي في سيناريوهات SAP ذات قابلية الوصول العالية.

إنشاء قرص مشترك ثان ل Azure وإرفاقه

قم بتشغيل هذا الأمر على إحدى عقد نظام المجموعة. اضبط القيم للحصول على تفاصيل مثل مجموعة الموارد ومنطقة Azure وSAP SID.

$ResourceGroupName = "MyResourceGroup"
$location = "MyRegion"
$SAPSID = "PR2"
$DiskSizeInGB = 512
$DiskName = "$($SAPSID)ASCSSharedDisk"
$NumberOfWindowsClusterNodes = 2

# For SAP deployment in an availability set, use this storage SkuName value
$SkuName = "Premium_LRS"
# For SAP deployment in an availability zone, use this storage SkuName value
$SkuName = "Premium_ZRS"

$diskConfig = New-AzDiskConfig -Location $location -SkuName $SkuName  -CreateOption Empty  -DiskSizeGB $DiskSizeInGB -MaxSharesCount $NumberOfWindowsClusterNodes
    
$dataDisk = New-AzDisk -ResourceGroupName $ResourceGroupName -DiskName $DiskName -Disk $diskConfig
##################################
## Attach the disk to cluster VMs
##################################
# ASCS cluster VM1
$ASCSClusterVM1 = "pr1-ascs-10"
# ASCS cluster VM2
$ASCSClusterVM2 = "pr1-ascs-11"
# Next free LUN
$LUNNumber = 1

# Add the Azure shared disk to Cluster Node 1
$vm = Get-AzVM -ResourceGroupName $ResourceGroupName -Name $ASCSClusterVM1 
$vm = Add-AzVMDataDisk -VM $vm -Name $DiskName -CreateOption Attach -ManagedDiskId $dataDisk.Id -Lun $LUNNumber
Update-AzVm -VM $vm -ResourceGroupName $ResourceGroupName -Verbose

# Add the Azure shared disk to Cluster Node 2
$vm = Get-AzVM -ResourceGroupName $ResourceGroupName -Name $ASCSClusterVM2
$vm = Add-AzVMDataDisk -VM $vm -Name $DiskName -CreateOption Attach -ManagedDiskId $dataDisk.Id -Lun $LUNNumber
Update-AzVm -VM $vm -ResourceGroupName $ResourceGroupName -Verbose

تنسيق القرص المشترك باستخدام PowerShell

  1. الحصول على رقم القرص. تشغيل أوامر PowerShell على إحدى عقد نظام المجموعة:

     Get-Disk | Where-Object PartitionStyle -Eq "RAW"  | Format-Table -AutoSize 
     # Example output
     # Number Friendly Name     Serial Number HealthStatus OperationalStatus Total Size Partition Style
     # ------ -------------     ------------- ------------ ----------------- ---------- ---------------
     # 3      Msft Virtual Disk               Healthy      Online                512 GB RAW            
    
    
  2. تهيئة القرص. في هذا المثال، رقم القرص 3:

     # Format SAP ASCS disk number 3, with drive letter S
     $SAPSID = "PR2"
     $DiskNumber = 3
     $DriveLetter = "S"
     $DiskLabel = "$SAPSID" + "SAP"
    
     Get-Disk -Number $DiskNumber | Where-Object PartitionStyle -Eq "RAW" | Initialize-Disk -PartitionStyle GPT -PassThru |  New-Partition -DriveLetter $DriveLetter -UseMaximumSize | Format-Volume  -FileSystem ReFS -NewFileSystemLabel $DiskLabel -Force -Verbose
     # Example outout
     # DriveLetter FileSystemLabel FileSystem DriveType HealthStatus OperationalStatus SizeRemaining      Size
     # ----------- --------------- ---------- --------- ------------ ----------------- -------------      ----
     # S           PR2SAP          ReFS       Fixed     Healthy      OK                    504.98 GB 511.81 GB
    
  3. تحقق من أن القرص مرئي الآن كقرص نظام مجموعة:

     # List all disks
     Get-ClusterAvailableDisk -All
     # Example output
     # Cluster    : pr1clust
     # Id         : c469b5ad-d089-4d8f-ae4c-d834cbbde1a2
     # Name       : Cluster Disk 2
     # Number     : 3
     # Size       : 549755813888
     # Partitions : {\\?\GLOBALROOT\Device\Harddisk3\Partition2\}
    
  4. تسجيل القرص في نظام المجموعة:

     # Add the disk to the cluster 
     Get-ClusterAvailableDisk -All | Add-ClusterDisk
     # Example output 
     # Name           State  OwnerGroup        ResourceType 
     # ----           -----  ----------        ------------ 
     # Cluster Disk 2 Online Available Storage Physical Disk
    

إنشاء اسم مضيف ظاهري لمثيل SAP ASCS/SCS مجمع

  1. إنشاء إدخال DNS لاسم المضيف الظاهري لمثيل SAP ASCS/SCS جديد في إدارة Windows DNS.

    يجب أن يكون عنوان IP الذي قمت بتعيينه لاسم المضيف الظاهري في DNS هو نفس عنوان IP الذي قمت بتعيينه في Azure Load Balancer.

    لقطة شاشة تعرض خيارات تعريف إدخال DNS للاسم الظاهري لنظام مجموعة SAP ASCS/SCS وعنوان IP.

  2. إذا كنت تستخدم مثيلا متفاوت المسافات من SAP ERS2، فستحتاج إلى حجز اسم مضيف ظاهري ل ERS2 في DNS.

    يجب أن يكون عنوان IP الذي قمت بتعيينه لاسم المضيف الظاهري ل ERS2 في DNS هو نفس عنوان IP الذي قمت بتعيينه في Azure Load Balancer.

    لقطة شاشة تعرض خيارات تعريف إدخال DNS للاسم الظاهري لنظام مجموعة SAP ERS2 وعنوان IP.

  3. لتحديد عنوان IP المعين لاسم المضيف الظاهري، حدد DNS Manager>Domain.

    لقطة شاشة تعرض اسما ظاهريا جديدا وعنوان IP لتكوين نظام مجموعة SAP ASCS/SCS وERS2.

تثبيت SAP

تثبيت عقدة المجموعة الأولى SAP

اتبع إجراء التثبيت الموصوف من SAP. تأكد من تحديد First Cluster Node كخيار لبدء التثبيت. حدد القرص المشترك لنظام المجموعة كخيار التكوين. اختر القرص المشترك الذي تم إنشاؤه حديثا.

تعديل ملف تعريف SAP لمثيل ASCS/SCS

إذا كنت تقوم بتشغيل ERS1، أضف معلمة enque/encni/set_so_keepaliveملف تعريف SAP . تمنع معلمة ملف التعريف الاتصالات بين عمليات عمل SAP وخادم قائمة الانتظار من الإغلاق عندما تكون خاملة لفترة طويلة جدا. معلمة SAP غير مطلوبة ل ERS2.

  1. أضف معلمة ملف التعريف هذه إلى ملف تعريف مثيل SAP ASCS/SCS، إذا كنت تستخدم ERS1:

    enque/encni/set_so_keepalive = true
    

    بالنسبة إلى كل من ERS1 وERS2، فتأكد من أن معلمات نظام التشغيل keepalive معيّنة كما هو موضح في ملاحظة SAP 1410736.

  2. لتطبيق التغييرات على معلمة ملف تعريف SAP، أعد تشغيل مثيل SAP ASCS/SCS.

تكوين منفذ فحص على مورد نظام المجموعة

استخدم وظيفة تحقيق موازن التحميل الداخلي لجعل تكوين المجموعة بالكامل يعمل مع موازن تحميل Azure. عادة ما يقوم موازن التحميل الداخلي في Azure بتوزيع حمل العمل الوارد بالتساوي بين الأجهزة الظاهرية المشاركة.

ومع ذلك، لن يعمل هذا الأسلوب في بعض تكوينات نظام المجموعة لأن مثيل واحد فقط نشط. المثيل الآخر معطل ولا يمكنه قبول أي حمل عمل. تساعد وظيفة الفحص عندما يكتشف موازن التحميل الداخلي Azure المثيل النشط ويستهدف المثيل النشط فقط.

هام

في هذا المثال التكوين، يتم تعيين منفذ الفحص إلى 620nr. بالنسبة إلى SAP ASCS مع رقم المثيل 02، فإنه 62002.

تحتاج إلى ضبط التكوين لمطابقة أرقام مثيل SAP ومعرف SID SAP الخاص بك.

لإضافة منفذ فحص، قم بتشغيل وحدة PowerShell النمطية هذه على أحد الأجهزة الظاهرية لنظام المجموعة:

  • إذا كنت تستخدم SAP ASC/SCS مع رقم المثيل 02:

    Set-AzureLoadBalancerHealthCheckProbePortOnSAPClusterIPResource -SAPSID PR2 -ProbePort 62002
    
  • إذا كنت تستخدم ERS2 مع رقم المثيل 12، فقم بتكوين منفذ فحص. ليست هناك حاجة لتكوين منفذ فحص ل ERS1. يتم تجميع ERS2 مع رقم المثيل 12، بينما لا يتم تجميع ERS1.

    Set-AzureLoadBalancerHealthCheckProbePortOnSAPClusterIPResource -SAPSID PR2 -ProbePort 62012 -IsSAPERSClusteredInstance $True
    

تبدو التعليمات البرمجية للدالة Set-AzureLoadBalancerHealthCheckProbePortOnSAPClusterIPResource مثل هذا المثال:

 function Set-AzureLoadBalancerHealthCheckProbePortOnSAPClusterIPResource {
 <#
 .SYNOPSIS 
 Set-AzureLoadBalancerHealthProbePortOnSAPClusterIPResource will set a new Azure Load Balancer health probe port on the SAP $SAPSID IP cluster resource.
    
 .DESCRIPTION
 Set-AzureLoadBalancerHealthProbePortOnSAPClusterIPResource will set a new Azure Load Balancer health probe port on the SAP $SAPSID IP cluster resource.
 It will also restart the SAP cluster group (default behavior), to activate the changes. 
    
 You need to run it on one of the SAP ASCS/SCS Windows cluster nodes.
    
 The expectation is that the SAP group is installed with the official SWPM installation tool, which will set the default expected naming convention for:
 - SAP cluster group:               SAP $SAPSID
 - SAP cluster IP address resource: SAP $SAPSID IP 
    
 .PARAMETER SAPSID 
 SAP SID - three characters, starting with a letter.
    
 .PARAMETER ProbePort 
 Azure Load Balancer health check probe port.
    
 .PARAMETER RestartSAPClusterGroup 
 Optional parameter. Default value is $True, so the SAP cluster group will be restarted to activate the changes.
    
 .PARAMETER IsSAPERSClusteredInstance 
 Optional parameter. Default value is $False.
 If it's set to $True, then handle the clustered new SAP ERS2 instance.
    
    
 .EXAMPLE 
 # Set the probe port to 62000 on SAP cluster resource SAP AB1 IP, and restart the SAP cluster group SAP AB1 to activate the changes.
 Set-AzureLoadBalancerHealthCheckProbePortOnSAPClusterIPResource -SAPSID AB1 -ProbePort 62000 
    
 .EXAMPLE 
 # Set the probe port to 62000 on SAP cluster resource SAP AB1 IP. SAP cluster group SAP AB1 is not restarted, so the changes are not active.
 # To activate the changes, you need to manually restart the SAP AB1 cluster group.
 Set-AzureLoadBalancerHealthCheckProbePortOnSAPClusterIPResource -SAPSID AB1 -ProbePort 62000 -RestartSAPClusterGroup $False
    
 .EXAMPLE 
 # Set the probe port to 62001 on SAP cluster resource SAP AB1 ERS IP. SAP cluster group SAP AB1 ERS is restarted to activate the changes.
 Set-AzureLoadBalancerHealthCheckProbePortOnSAPClusterIPResource -SAPSID AB1 -ProbePort 62000 -IsSAPERSClusteredInstance $True
        
 #> 
    
     [CmdletBinding()]
     param(
            
         [Parameter(Mandatory=$True)]
         [ValidateNotNullOrEmpty()]  
         [ValidateLength(3,3)]      
         [string]$SAPSID,

         [Parameter(Mandatory=$True)]
         [ValidateNotNullOrEmpty()]        
         [int] $ProbePort,
    
         [Parameter(Mandatory=$False)] 
         [bool] $RestartSAPClusterGroup = $True,
    
         [Parameter(Mandatory=$False)] 
         [bool] $IsSAPERSClusteredInstance = $False
      
     )
  
     BEGIN{}
        
     PROCESS{
         try{                                      
                
             if($IsSAPERSClusteredInstance){
                 #Handle clustered SAP ERS instance
                 $SAPClusterRoleName = "SAP $SAPSID ERS"
                 $SAPIPresourceName = "SAP $SAPSID ERS IP"            
             }else{
                 #Handle clustered SAP ASCS/SCS instance
                 $SAPClusterRoleName = "SAP $SAPSID"
                 $SAPIPresourceName = "SAP $SAPSID IP"
             }

             $SAPIPResourceClusterParameters =  Get-ClusterResource $SAPIPresourceName | Get-ClusterParameter
             $IPAddress = ($SAPIPResourceClusterParameters | Where-Object {$_.Name -eq "Address" }).Value
             $NetworkName = ($SAPIPResourceClusterParameters | Where-Object {$_.Name -eq "Network" }).Value
             $SubnetMask = ($SAPIPResourceClusterParameters | Where-Object {$_.Name -eq "SubnetMask" }).Value
             $OverrideAddressMatch = ($SAPIPResourceClusterParameters | Where-Object {$_.Name -eq "OverrideAddressMatch" }).Value
             $EnableDhcp = ($SAPIPResourceClusterParameters | Where-Object {$_.Name -eq "EnableDhcp" }).Value
             $OldProbePort = ($SAPIPResourceClusterParameters | Where-Object {$_.Name -eq "ProbePort" }).Value
    
             $var = Get-ClusterResource | Where-Object {  $_.name -eq $SAPIPresourceName  }
    
             #Write-Host "Current configuration parameters for SAP IP cluster resource '$SAPIPresourceName' are:" -ForegroundColor Cyan
             Write-Output "Current configuration parameters for SAP IP cluster resource '$SAPIPresourceName' are:" 
   
             Get-ClusterResource -Name $SAPIPresourceName | Get-ClusterParameter
    
             Write-Output " "
             Write-Output "Current probe port property of the SAP cluster resource '$SAPIPresourceName' is '$OldProbePort'." 
             Write-Output " "
             Write-Output "Setting the new probe port property of the SAP cluster resource '$SAPIPresourceName' to '$ProbePort' ..." 
             Write-Output " "
    
             $var | Set-ClusterParameter -Multiple @{"Address"=$IPAddress;"ProbePort"=$ProbePort;"Subnetmask"=$SubnetMask;"Network"=$NetworkName;"OverrideAddressMatch"=$OverrideAddressMatch;"EnableDhcp"=$EnableDhcp}
    
             Write-Output " "
    
             #$ActivateChanges = Read-Host "Do you want to take restart SAP cluster role '$SAPClusterRoleName', to activate the changes (yes/no)?"
    
             if($RestartSAPClusterGroup){
                 Write-Output ""
                 Write-Output "Activating changes..." 
    
                 Write-Output " "
                 Write-Output "Taking SAP cluster IP resource '$SAPIPresourceName' offline ..."
                 Stop-ClusterResource -Name $SAPIPresourceName
                 sleep 5
    
                 Write-Output "Starting SAP cluster role '$SAPClusterRoleName' ..."
                 Start-ClusterGroup -Name $SAPClusterRoleName
    
                 Write-Output "New ProbePort parameter is active." 
                 Write-Output " "
    
                 Write-Output "New configuration parameters for SAP IP cluster resource '$SAPIPresourceName':" 
                 Write-Output " " 
                 Get-ClusterResource -Name $SAPIPresourceName | Get-ClusterParameter
             }else
             {
                 Write-Output "SAP cluster role '$SAPClusterRoleName' is not restarted, therefore changes are not activated."
             }
         }
         catch{
            Write-Error  $_.Exception.Message
        }
    
     }
    
     END {}
 }

متابعة تثبيت SAP

  1. قم بتثبيت مثيل قاعدة البيانات باتباع العملية الموضحة في دليل تثبيت SAP.

  2. تثبيت SAP على عقدة نظام المجموعة الثانية باتباع الخطوات الموضحة في دليل SAP للتثبيت.

  3. تثبيت مثيل SAP Primary Application Server (PAS) على الجهاز الظاهري المعين لاستضافة PAS.

    اتبع العملية الموضحة في دليل SAP للتثبيت. لا توجد تبعيات على Azure.

  4. تثبيت خوادم تطبيق SAP إضافية على الأجهزة الظاهرية التي تم تعيينها لاستضافة مثيلات خادم تطبيق SAP.

    اتبع العملية الموضحة في دليل SAP للتثبيت. لا توجد تبعيات على Azure.

اختبار تجاوز فشل مثيل SAP ASCS/SCS

تفترض اختبارات تجاوز الفشل الموضحة أن SAP ASCS نشط على العقدة A.

  1. تحقق من أن نظام SAP يمكن أن يفشل بنجاح من العقدة A إلى العقدة B. في هذا المثال، الاختبار هو لSAP SID PR2.

    تأكد من أن كل SAP SID يمكنه الانتقال بنجاح إلى عقدة نظام المجموعة الأخرى. اختر أحد هذه الخيارات لبدء تجاوز فشل مجموعة نظام مجموعة SAP <SID> من عقدة نظام المجموعة A إلى عقدة نظام المجموعة B:

    • Failover Cluster Manager
    • أوامر PowerShell لمجموعات تجاوز الفشل
    $SAPSID = "PR2"     # SAP <SID>
    
    $SAPClusterGroup = "SAP $SAPSID"
    Move-ClusterGroup -Name $SAPClusterGroup
    
    
  2. إعادة تشغيل عقدة نظام المجموعة A داخل نظام التشغيل الضيف Windows. تبدأ هذه الخطوة تجاوز فشل تلقائي لمجموعة نظام مجموعة SAP <SID> من العقدة A إلى العقدة B.

  3. إعادة تشغيل عقدة نظام المجموعة A من مدخل Azure. تبدأ هذه الخطوة تجاوز فشل تلقائي لمجموعة نظام مجموعة SAP <SID> من العقدة A إلى العقدة B.

  4. إعادة تشغيل عقدة نظم المجموعة A باستخدام Azure PowerShell. تبدأ هذه الخطوة تجاوز فشل تلقائي لمجموعة نظام مجموعة SAP <SID> من العقدة A إلى العقدة B.

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