توفر عالٍ لتوسيع نظام SAP HANA مع HSR على خادم SUSE Linux Enterprise Server

توضح هذه المقالة كيفية نشر تكوين توسيع نظام SAP HANA عالي التوفر باستخدام النسخ المتماثل لنظام HANA (HSR) وPacemaker على الأجهزة الظاهرية لـ Azure SUSE Linux Enterprise (VMs). أنظمة الملفات المشتركة في البنية المقدمة هي NFS مثبتة ويتم توفيرها بواسطة Azure NetApp Files أو مشاركة NFS على Azure Files.

في مثال التكوينات وأوامر التثبيت وما إلى ذلك، يشير مثيل HANA إلى 03 ومعرف نظام HANA هو HN1.

قبل البدء، راجع ملاحظات وأوراق SAP التالية:

نظرة عامة

تتمثل إحدى الطرق لتحقيق قابلية وصول عالية لـ HANA لعمليات تثبيت HANA القابلة للتوسعة، في إمكانية تكوين النسخ المتماثل لنظام HANA، وحماية الحل باستخدام نظام مجموعة Pacemaker للسماح بتجاوز الفشل التلقائي. عند فشل عقدة نشطة، تفشل نظام المجموعة تجاوز موارد HANA إلى الموقع الآخر.
يعرض التكوين المقدم ثلاث عقد HANA في كل موقع، بالإضافة إلى عقدة صانع الأغلبية لمنع سيناريو الانقسام. يمكن تكييف التعليمات لتشمل المزيد من الأجهزة الظاهرية كعُقد قاعدة بيانات HANA.

يمكن توفير نظام /hana/shared الملفات المشتركة HANA في البنية المقدمة بواسطة Azure NetApp Files أو مشاركة NFS على Azure Files. نظام الملفات المشتركة HANA هو NFS مثبت على كل عقدة HANA في نفس موقع النسخ المتماثل لنظام HANA. أنظمة /hana/data الملفات وأنظمة /hana/log الملفات المحلية ولا تتم مشاركتها بين عقد HANA DB. سيتم تثبيت SAP HANA في الوضع غير المشترك.

للحصول على تكوينات تخزين SAP Hana الموصى بها، راجع تكوينات تخزين أجهزة SAP HANA Azure الظاهرية.

هام

إذا كان نشر جميع أنظمة ملفات HANA على Azure NetApp Files، لأنظمة الإنتاج، حيث يكون الأداء مفتاحا، نوصي بتقييم واستخدام مجموعة وحدة تخزين تطبيق Azure NetApp Files ل SAP HANA.

تحذير

النشر /hana/data و/hana/log على NFS على ملفات Azure غير مدعوم.

توسيع SAP HANA باستخدام نظام مجموعة HSR وPacemaker على SLES

في المخطط السابق، هناك ثلاث شبكات فرعية ممثلة داخل شبكة Azure ظاهرية واحدة، باتباع توصيات الشبكة SAP HANA:

  • للتواصل مع العميل: client 10.23.0.0/24
  • للاتصال الداخلي بين العقدةHANA - inter 10.23.1.128/26
  • النسخ المتماثل للنظام SAP HANA - hsr10.23.1.192/26

كما /hana/data يتم نشر و /hana/log على الأقراص المحلية، ليس من الضروري نشر شبكة فرعية منفصلة وبطاقات شبكة ظاهرية منفصلة للاتصال بالتخزين.

إذا كنت تستخدم Azure NetApp Files، يتم نشر وحدات تخزين NFS ل /hana/shared، في شبكة فرعية منفصلة، مفوضة إلى Azure NetApp Files: anf 10.23.1.0/26.

تجهيز البنية التحتية

في الإرشادات التالية، نفترض أنه سبق لك إنشاء مجموعة الموارد، وهي شبكة Azure الظاهرية مع ثلاث شبكات فرعية لشبكة Azure: client وinter وhsr.

استخدام أجهزة Linux الظاهرية عبر مدخل Microsoft Azure

  1. نشر أجهزة Azure الظاهرية.

    للتكوين المعروض في هذا المستند، قم بنشر سبعة أجهزة ظاهرية:

    • ثلاثة أجهزة ظاهرية لتكون بمثابة عُقد HANA DB لموقع النسخ المتماثل HANA 1: hana-s1-db1 وhana-s1-db2 وhana-s1-db3
    • ثلاثة أجهزة ظاهرية لتكون بمثابة عُقد HANA DB لموقع النسخ المتماثل HANA 2: hana-s2-db1 وhana-s2-db2 وhana-s2-db3
    • جهاز ظاهري صغير ليكون بمثابة صانع الأغلبية: hana-s-mm

    يجب أن تكون الأجهزة الظاهرية التي تم نشرها كعُقد SAP DB HANA معتمدة من قبل SAP لـ HANA، كما هو منشور في دليل أجهزة SAP HANA. عند نشر عُقد قاعدة بيانات HANA، تأكد من تحديد الشبكة المتسارعة.

    بالنسبة لعقدة صانع الأغلبية، يمكنك نشر جهاز ظاهري صغير، وذلك لأن هذا الجهاز الظاهري لا يقوم بتشغيل أي من موارد SAP HANA. يتم استخدام الجهاز الظاهري صانع الأغلبية في تكوين نظام المجموعة لتحقيق عدد فردي من العُقد العنقودية في سيناريو split-brain. يحتاج الجهاز الظاهري صانع الأغلبية إلى واجهة شبكة ظاهرية واحدة فقط في الشبكة الفرعية client في هذا المثال.

    نشر الأقراص المدارة المحلية لـ /hana/data و/hana/log. الحد الأدنى من تكوين التخزين الموصى به لـ /hana/data و/hana/log الموضح في تكوينات تخزين أجهزة SAP HANA Azure الظاهرية.

    نشر واجهة الشبكة الأساسية لكل جهاز ظاهري في الشبكة الفرعية للشبكة الظاهرية client.
    عند استخدام الجهاز الظاهري عبر مدخل Azure، يتم إنشاء اسم واجهة الشبكة تلقائياً. في هذه التعليمات للبساطة سنشير إلى واجهات الشبكة الأساسية التي تم إنشاؤها تلقائياً، والتي يتم إرفاقها بشبكة client Azure الظاهرية العرفية كـ hana-s1-db1-client، hana-s1-db2-client، hana-s1-db3-client، وما إلى ذلك.

    هام

    • تأكد من أن نظام التشغيل الذي تحدده معتمد من SAP HANA على أنواع الأجهزة الظاهرية المحددة التي تستخدمها. للحصول على قائمة بأنواع الأجهزة الظاهرية المعتمدة SAP HANA وإصدارات نظام التشغيل لهذه الأنواع، انتقل إلى موقع منصات IaaS المعتمد SAP HANA. انقر فوق تفاصيل نوع الجهاز الظاهري المدرج للحصول على القائمة الكاملة لإصدارات نظام التشغيل المدعومة SAP HANA لهذا النوع.
    • إذا اخترت النشر /hana/shared على NFS على Azure Files، نوصي بالنشر على SLES 15 SP2 وما فوق.
  2. أنشئ ست واجهات شبكة، واحدة لكل جهاز ظاهري لقاعدة بيانات HANA، في الشبكة الفرعية للشبكة الظاهرية inter (في هذا المثال، hana-s1-db1-inter وhana-s1-db2-inter وhana-s1-db3-inter وhana-s2-db1-inter وhana-s2-db2-inter وhana-s2-db3-inter).

  3. أنشئ ست واجهات شبكة، واحدة لكل جهاز ظاهري لقاعدة بيانات HANA، في الشبكة الفرعية للشبكة الظاهرية hsr (في هذا المثال، hana-s1-db1-hsr وhana-s1-db2-hsr وhana-s1-db3-hsr وhana-s2-db1-hsr وhana-s2-db2-hsr وhana-s2-db3-hsr).

  4. يمكنك إرفاق واجهات الشبكة الظاهرية التي تم إنشاؤها حديثًا بالأجهزة الظاهرية المقابلة:

    1. انتقل إلى جهازك الظاهري في مدخل Microsoft Azure.
    2. في الجزء الأيسر، حدد ⁧⁧⁩⁩الأجهزة الظاهرية⁧⁧⁩⁩. تصفية على اسم الجهاز الظاهري (على سبيل المثال، hana-s1-db1)، ومن ثم حدد الجهاز الظاهري.
    3. في جزء نظرة عامة، حدد إيقاف لتوزيع الجهاز الظاهري.
    4. حدد الشبكة، ثم قم بتوصيل واجهة الشبكة. في القائمة المنسدلة إرفاق واجهة شبكة الاتصال، حدد واجهات الشبكة التي تم إنشاؤها مسبقا interوhsr للشبكات الفرعية.
    5. حدد حفظ.
    6. كرر الخطوات من "ب" إلى "هـ" للأجهزة الظاهرية المتبقية (في مثالنا، hana-s1-db2 وhana-s1-db3 وhana-s2-db1 وhana-s2-db2 وhana-s2-db3).
    7. اترك الأجهزة الظاهرية في حالة توقف في الوقت الحالي. بعد ذلك، سنقوم بتمكين الشبكات المتسارعة لجميع واجهات الشبكة المتصلة حديثا.
  5. تمكين الشبكات المعجلة لواجهات الشبكة الإضافية للشبكات inter والشبكات hsr الفرعية من خلال القيام بالخطوات التالية:

    1. افتح Azure Cloud Shell في مدخل Azure.

    2. نفذ الأوامر التالية لتمكين الشبكات المسرعة لواجهات الشبكة الإضافية، والتي يتم إرفاقها بالشبكتين الفرعيتين inter وhsr.

      az network nic update --id /subscriptions/your subscription/resourceGroups/your resource group/providers/Microsoft.Network/networkInterfaces/hana-s1-db1-inter --accelerated-networking true
      az network nic update --id /subscriptions/your subscription/resourceGroups/your resource group/providers/Microsoft.Network/networkInterfaces/hana-s1-db2-inter --accelerated-networking true
      az network nic update --id /subscriptions/your subscription/resourceGroups/your resource group/providers/Microsoft.Network/networkInterfaces/hana-s1-db3-inter --accelerated-networking true
      az network nic update --id /subscriptions/your subscription/resourceGroups/your resource group/providers/Microsoft.Network/networkInterfaces/hana-s2-db1-inter --accelerated-networking true
      az network nic update --id /subscriptions/your subscription/resourceGroups/your resource group/providers/Microsoft.Network/networkInterfaces/hana-s2-db2-inter --accelerated-networking true
      az network nic update --id /subscriptions/your subscription/resourceGroups/your resource group/providers/Microsoft.Network/networkInterfaces/hana-s2-db3-inter --accelerated-networking true
      
      az network nic update --id /subscriptions/your subscription/resourceGroups/your resource group/providers/Microsoft.Network/networkInterfaces/hana-s1-db1-hsr --accelerated-networking true
      az network nic update --id /subscriptions/your subscription/resourceGroups/your resource group/providers/Microsoft.Network/networkInterfaces/hana-s1-db2-hsr --accelerated-networking true
      az network nic update --id /subscriptions/your subscription/resourceGroups/your resource group/providers/Microsoft.Network/networkInterfaces/hana-s1-db3-hsr --accelerated-networking true
      az network nic update --id /subscriptions/your subscription/resourceGroups/your resource group/providers/Microsoft.Network/networkInterfaces/hana-s2-db1-hsr --accelerated-networking true
      az network nic update --id /subscriptions/your subscription/resourceGroups/your resource group/providers/Microsoft.Network/networkInterfaces/hana-s2-db2-hsr --accelerated-networking true
      az network nic update --id /subscriptions/your subscription/resourceGroups/your resource group/providers/Microsoft.Network/networkInterfaces/hana-s2-db3-hsr --accelerated-networking true
      
  6. بدء تشغيل الأجهزة الظاهرية لقاعدة بيانات HANA

تكوين موازن تحميل Azure

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

إشعار

  • لتوسيع نطاق HANA، حدد NIC للشبكة الفرعية client عند إضافة الأجهزة الظاهرية في تجمع الخلفية.
  • تضيف المجموعة الكاملة من الأوامر في Azure CLI وPowerShell الأجهزة الظاهرية مع NIC الأساسي في تجمع الخلفية.

اتبع الخطوات الواردة في إنشاء موازن تحميل لإعداد موازن تحميل قياسي لنظام SAP عالي التوفر باستخدام مدخل Microsoft Azure. أثناء إعداد موازن التحميل، ضع في اعتبارك النقاط التالية:

  1. تكوين IP للواجهة الأمامية: إنشاء عنوان IP للواجهة الأمامية. حدد نفس اسم الشبكة الظاهرية والشبكة الفرعية مثل الأجهزة الظاهرية لقاعدة البيانات.
  2. تجمع الواجهة الخلفية: إنشاء تجمع خلفي وإضافة أجهزة ظاهرية لقاعدة البيانات.
  3. القواعد الواردة: إنشاء قاعدة موازنة التحميل. اتبع نفس الخطوات لكل من قواعد موازنة التحميل.
    • عنوان IP للواجهة الأمامية: حدد عنوان IP للواجهة الأمامية.
    • تجمع الواجهة الخلفية: حدد تجمعا خلفيا.
    • منافذ قابلية الوصول العالية: حدد هذا الخيار.
    • البروتوكول: حدد TCP.
    • Health Probe: إنشاء مسبار صحي بالتفاصيل التالية:
      • البروتوكول: حدد TCP.
      • المنفذ: على سبيل المثال، 625<instance-no.>.
      • الفاصل الزمني: أدخل 5.
      • عتبة الفحص: أدخل 2.
    • مهلة الخمول (بالدقائق): أدخل 30.
    • تمكين IP العائم: حدد هذا الخيار.

إشعار

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

إشعار

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

هام

  • لا تقم بتمكين طوابع TCP الزمنية على Azure VMS خلف موازن التحميل في Azure. سيؤدي تمكين طوابع TCP الزمنية إلى فشل فحوصات السلامة. تعيين المعلمة net.ipv4.tcp_timestamps إلى 0. للحصول على التفاصيل، راجع فحوصات صحة موازن التحميل وملاحظة SAP 2382421.
  • لمنع saptune من تغيير القيمة المعينة net.ipv4.tcp_timestamps يدويا من 0 العودة إلى 1، قم بتحديث إصدار saptune إلى 3.1.1 أو أعلى. لمزيد من التفاصيل، راجع saptune 3.1.1 - هل أحتاج إلى التحديث؟.

توزيع NFS

هناك خياران لنشر Azure native NFS لـ /hana/shared. يمكنك نشر وحدة تخزين NFS على ملفات Azure NetApp أو مشاركة NFS على ملفات Azure. تدعم ملفات Azure بروتوكول NFSv4.1، يدعم NFS على ملفات Azure NetApp كلا من NFSv4.1 وNFSv3.

تصف الأقسام التالية خطوات نشر NFS - ستحتاج إلى تحديد خيار واحد فقط.

تلميح

لقد اخترت توزيع /hana/shared على مشاركة NFS على ملفات Azure أو وحدة تخزين NFS على ملفات Azure NetApp.

نشر البنية الأساسية لـAzure NetApp Files

نشر وحدات تخزين Azure NetApp Files لنظام الملفات /hana/shared . ستحتاج إلى وحدة تخزين منفصلة /hana/shared لكل موقع نسخ متماثل لنظام HANA. لمزيد من المعلومات، راجع إعداد البنية الأساسية لملفات Azure NetApp.

في هذا المثال، تم استخدام وحدات تخزين ملفات Azure NetApp التالية:

  • وحدة التخزين HN1-shared-s1 (nfs://10.23.1.7/HN1-shared-s1)
  • وحدة التخزين HN1-shared-s2 (nfs://10.23.1.7/HN1-shared-s2)

نشر NFS على البنية الأساسية لملفات Azure

نشر مشاركات Azure Files NFS لنظام الملفات /hana/shared. ستحتاج إلى مشاركة NFS منفصلة /hana/shared لملفات Azure لكل موقع نسخ متماثل لنظام HANA. لمزيد من المعلومات، راجع كيفية إنشاء مشاركة NFS.

في هذا المثال، تم استخدام مشاركات Azure Files NFS التالية:

  • share hn1-shared-s1 (sapnfsafs.file.core.windows.net:/sapnfsafs/hn1-shared-s1)
  • share hn1-shared-s2 (sapnfsafs.file.core.windows.net:/sapnfsafs/hn1-shared-s2)

تكوين نظام التشغيل وإعداده

الإرشادات الواردة في الأقسام التالية مسبوقة بأحد الاختصارات التالية:

  • [A]: ينطبق على جميع العقد، بما في ذلك صانع الأغلبية
  • [A]: ينطبق على جميع عقد قاعدة بيانات HANA
  • [M]: ينطبق على عقدة صانع الأغلبية فقط
  • [AH1]: ينطبق على جميع عُقد قاعدة بيانات HANA على SITE 1
  • [AH2]: ينطبق على جميع عُقد قاعدة بيانات HANA على SITE 2
  • [1]: لا ينطبق إلا على عقدة قاعدة بيانات HANA 1، على SITE 1
  • [2]: لا ينطبق إلا على عقدة قاعدة بيانات HANA 1، SITE 2

قم بتكوين نظام التشغيل الخاص بك وإعداده من خلال تنفيذ الخطوات التالية:

  1. [A] الحفاظ على ملفات المضيف على الأجهزة الظاهرية. قم بتضمين إدخالات لجميع الشبكات الفرعية. تمت إضافة الإدخالات التالية إلى /etc/hosts لهذا المثال.

    # Client subnet
    10.23.0.19      hana-s1-db1
    10.23.0.20      hana-s1-db2
    10.23.0.21      hana-s1-db3
    10.23.0.22      hana-s2-db1
    10.23.0.23      hana-s2-db2
    10.23.0.24      hana-s2-db3
    10.23.0.25      hana-s-mm    
    
    # Internode subnet
    10.23.1.132     hana-s1-db1-inter
    10.23.1.133     hana-s1-db2-inter
    10.23.1.134     hana-s1-db3-inter
    10.23.1.135     hana-s2-db1-inter
    10.23.1.136     hana-s2-db2-inter
    10.23.1.137     hana-s2-db3-inter
    
    # HSR subnet
    10.23.1.196     hana-s1-db1-hsr
    10.23.1.197     hana-s1-db2-hsr
    10.23.1.198     hana-s1-db3-hsr
    10.23.1.199     hana-s2-db1-hsr
    10.23.1.200     hana-s2-db2-hsr
    10.23.1.201     hana-s2-db3-hsr
    
  2. [A] أنشئ ملف التكوين /etc/sysctl.d/ms-az.conf باستخدام Microsoft لإعدادات تكوين Azure.

    vi /etc/sysctl.d/ms-az.conf
    
    # Add the following entries in the configuration file
    net.ipv6.conf.all.disable_ipv6 = 1
    net.ipv4.tcp_max_syn_backlog = 16348
    net.ipv4.conf.all.rp_filter = 0
    sunrpc.tcp_slot_table_entries = 128
    vm.swappiness=10
    

    تلميح

    تجنب تعيين net.ipv4.ip_local_port_range net.ipv4.ip_local_reserved_ports بشكل صريح في ملفات تكوين sysctl للسماح ل SAP Host Agent بإدارة نطاقات المنافذ. لمزيد من المعلومات، راجع ملاحظة SAP رقم 2382421.

  3. [A] يسلم SUSE عوامل موارد خاصة ل SAP HANA ويتم تثبيت العوامل الافتراضية لتوسيع نطاق SAP HANA. قم بإلغاء تثبيت الحزم لتوسيع نطاقها، إذا تم تثبيتها وتثبيت الحزم للسيناريو SAP HANA scale-out. يجب تنفيذ الخطوة على جميع الأجهزة الظاهرية لنظام المجموعة، بما في ذلك صانع الأغلبية.

    إشعار

    يجب تثبيت SAPHanaSR-ScaleOut الإصدار 0.181 أو أعلى.

    # Uninstall scale-up packages and patterns
    sudo zypper remove patterns-sap-hana
    sudo zypper remove SAPHanaSR SAPHanaSR-doc yast2-sap-ha
    
    # Install the scale-out packages and patterns
    sudo zypper in SAPHanaSR-ScaleOut SAPHanaSR-ScaleOut-doc 
    sudo zypper in -t pattern ha_sles
    
  4. [AH] إعداد الأجهزة الظاهرية - قم بتطبيق الإعدادات الموصى بها لكل ملاحظة SAP 2205917 لـ SUSE Linux Enterprise Server لتطبيقات SAP.

إعداد أنظمة الملفات

لقد اخترت نشر الدلائل المشتركة لـ SAP على مشاركة NFS على Azure Files أو وحدة تخزين NFS على Azure NetApp Files.

تحميل أنظمة الملفات المشتركة (Azure NetApp Files NFS)

في هذا المثال، يتم نشر أنظمة ملفات HANA المشتركة على ملفات Azure NetApp وتثبيتها عبر NFSv4.1. اتبع الخطوات الواردة في هذا القسم، فقط إذا كنت تستخدم NFS على Azure NetApp Files.

  1. [AH] قم بإعداد نظام التشغيل لتشغيل SAP HANA على أنظمة NetApp باستخدام NFS، كما هو موضح في ملاحظة SAP 3024346 - إعدادات Linux Kernel ل NetApp NFS. أنشئ ملف التكوين/etc/sysctl.d/91-NetApp-HANA.conf لإعدادات تكوين NetApp.

    vi /etc/sysctl.d/91-NetApp-HANA.conf
    
    # Add the following entries in the configuration file
    net.core.rmem_max = 16777216
    net.core.wmem_max = 16777216
    net.ipv4.tcp_rmem = 4096 131072 16777216
    net.ipv4.tcp_wmem = 4096 16384 16777216
    net.core.netdev_max_backlog = 300000
    net.ipv4.tcp_slow_start_after_idle=0
    net.ipv4.tcp_no_metrics_save = 1
    net.ipv4.tcp_moderate_rcvbuf = 1
    net.ipv4.tcp_window_scaling = 1
    net.ipv4.tcp_sack = 1
    
  2. [AH] اضبط إعدادات sunrpc، كما هو موصى به في ملاحظة SAP 3024346 - إعدادات Linux Kernel ل NetApp NFS.

    vi /etc/modprobe.d/sunrpc.conf
    
    # Insert the following line
    options sunrpc tcp_max_slot_table_entries=128
    
  3. [AH] إنشاء نقاط تركيب لوحدات تخزين قاعدة بيانات HANA.

    mkdir -p /hana/shared
    
  4. [AH] تحقق من إعداد نطاق NFS. تأكد من تكوين المجال كمجال Azure NetApp Files الافتراضي، أي defaultv4iddomain.comوتعيين التعيين إلى لا أحد.
    هذه الخطوة مطلوبة فقط، في حالة استخدام Azure NetAppFiles NFSv4.1.

    هام

    تأكد من ضبط مجال NFS على /etc/idmapd.conf في الجهاز الظاهري لمطابقة تكوين المجال الافتراضي على Azure NetApp Files: defaultv4iddomain.com. إذا كان هناك عدم تطابق بين تكوين المجال على عميل NFS (أي الجهاز الظاهري) وخادم NFS، أي تكوين Azure NetApp، عرض أذونات الملفات الموجودة على وحدات تخزين Azure NetApp التي يتم تثبيتها على الأجهزة الظاهرية على أنها nobody.

    sudo cat /etc/idmapd.conf
    # Example
    [General]
    Domain = defaultv4iddomain.com
    [Mapping]
    Nobody-User = nobody
    Nobody-Group = nobody
    
  5. [AH] تحقق من صحة nfs4_disable_idmapping. يجب ضبطه على Y. لإنشاء بنية الدليل حيث nfs4_disable_idmapping يقع، قم بتنفيذ أمر التحميل. لن تتمكن من إنشاء الدليل يدوياً ضمن /sys/modules، لأن الوصول محجوز لـ kernel / drivers.
    هذه الخطوة مطلوبة فقط، في حالة استخدام Azure NetAppFiles NFSv4.1.

    # Check nfs4_disable_idmapping 
    cat /sys/module/nfs/parameters/nfs4_disable_idmapping
    # If you need to set nfs4_disable_idmapping to Y
    mkdir /mnt/tmp
    mount 10.23.1.7:/HN1-share-s1 /mnt/tmp
    umount  /mnt/tmp
    echo "Y" > /sys/module/nfs/parameters/nfs4_disable_idmapping
    # Make the configuration permanent
    echo "options nfs nfs4_disable_idmapping=Y" >> /etc/modprobe.d/nfs.conf
    
  6. [AH1] قم بتركيب وحدات تخزين ملفات Azure NetApp المشتركة على الأجهزة الظاهرية لـ SITE1 HANA DB.

    sudo vi /etc/fstab
    # Add the following entry
    10.23.1.7:/HN1-shared-s1 /hana/shared nfs rw,nfsvers=4.1,hard,timeo=600,rsize=262144,wsize=262144,noatime,lock,_netdev,sec=sys  0  0
    # Mount all volumes
    sudo mount -a 
    
  7. [AH2] تركيب وحدات تخزين Azure NetApp Files المشتركة على الأجهزة الظاهرية لقاعدة بيانات SITE2 HANA.

    sudo vi /etc/fstab
    # Add the following entry
    10.23.1.7:/HN1-shared-s2 /hana/shared nfs rw,nfsvers=4.1,hard,timeo=600,rsize=262144,wsize=262144,noatime,lock,_netdev,sec=sys  0  0
    # Mount the volume
    sudo mount -a 
    
  8. [AH] التحقق من أن أنظمة الملفات المقابلة /hana/shared/ مركّبة على جميع الأجهزة الظاهرية لقاعدة بيانات HANA مع إصدار بروتوكول NFS NFSv4.1.

    sudo nfsstat -m
    # Verify that flag vers is set to 4.1 
    # Example from SITE 1, hana-s1-db1
    /hana/shared from 10.23.1.7:/HN1-shared-s1
     Flags: rw,noatime,vers=4.1,rsize=262144,wsize=262144,namlen=255,hard,proto=tcp,timeo=600,retrans=2,sec=sys,clientaddr=10.23.0.19,local_lock=none,addr=10.23.1.7
    # Example from SITE 2, hana-s2-db1
    /hana/shared from 10.23.1.7:/HN1-shared-s2
     Flags: rw,noatime,vers=4.1,rsize=262144,wsize=262144,namlen=255,hard,proto=tcp,timeo=600,retrans=2,sec=sys,clientaddr=10.23.0.22,local_lock=none,addr=10.23.1.7
    

تحميل أنظمة الملفات المشتركة (Azure Files NFS)

في هذا المثال، يتم نشر أنظمة ملفات HANA المشتركة على NFS على ملفات Azure. اتبع الخطوات الواردة في هذا القسم، فقط إذا كنت تستخدم NFS على Azure Files.

  1. [AH] إنشاء نقاط تركيب لوحدات تخزين قاعدة بيانات HANA.

    mkdir -p /hana/shared
    
  2. [AH1] قم بتركيب وحدات تخزين ملفات Azure NetApp المشتركة على الأجهزة الظاهرية لـ SITE1 HANA DB.

    sudo vi /etc/fstab
    # Add the following entry
    sapnfsafs.file.core.windows.net:/sapnfsafs/hn1-shared-s1 /hana/shared  nfs nfsvers=4.1,sec=sys  0  0
    # Mount all volumes
    sudo mount -a 
    
  3. [AH2] تركيب وحدات تخزين Azure NetApp Files المشتركة على الأجهزة الظاهرية لقاعدة بيانات SITE2 HANA.

    sudo vi /etc/fstab
    # Add the following entries
    sapnfsafs.file.core.windows.net:/sapnfsafs/hn1-shared-s2 /hana/shared  nfs nfsvers=4.1,sec=sys  0  0
    # Mount the volume
    sudo mount -a 
    
  4. [AH] التحقق من أن أنظمة الملفات المقابلة /hana/shared/ مركّبة على جميع الأجهزة الظاهرية لقاعدة بيانات HANA مع إصدار بروتوكول NFS NFSv4.1.

    sudo nfsstat -m
    # Example from SITE 1, hana-s1-db1
    sapnfsafs.file.core.windows.net:/sapnfsafs/hn1-shared-s1
     Flags: rw,relatime,vers=4.1,rsize=1048576,wsize=1048576,namlen=255,hard,proto=tcp,timeo=600,retrans=2,sec=sys,clientaddr=10.23.0.19,local_lock=none,addr=10.23.0.35
    # Example from SITE 2, hana-s2-db1
    sapnfsafs.file.core.windows.net:/sapnfsafs/hn1-shared-s2
     Flags: rw,relatime,vers=4.1,rsize=1048576,wsize=1048576,namlen=255,hard,proto=tcp,timeo=600,retrans=2,sec=sys,clientaddr=10.23.0.22,local_lock=none,addr=10.23.0.35
    

إعداد البيانات وتسجيل أنظمة الملفات المحلية

في التكوين المقدم، يتم نشر أنظمة /hana/data و/hana/log الملفات على القرص المدار ويتم إرفاقها محلياً بكل جهاز قاعدة بيانات HANA ظاهري. ستحتاج إلى تنفيذ الخطوات لإنشاء البيانات المحلية ووحدات تخزين السجل على كل جهاز ظاهري ل HANA DB.

إعداد تخطيط القرص باستخدام Logical Volume Manager (LVM). يفترض المثال التالي أن كل جهاز HANA ظاهري يحتوي على ثلاثة أقراص بيانات مرفقة، والتي يتم استخدامها لإنشاء وحدتي تخزين.

  1. [AH]إعداد قائمة بجميع الأقراص المتوفرة:

    ls /dev/disk/azure/scsi1/lun*
    

    مثال على الإخراج:

    /dev/disk/azure/scsi1/lun0  /dev/disk/azure/scsi1/lun1  /dev/disk/azure/scsi1/lun2 
    
  2. [AH] إنشاء وحدات تخزين فعلية لكافة الأقراص التي تريد استخدامها:

    sudo pvcreate /dev/disk/azure/scsi1/lun0
    sudo pvcreate /dev/disk/azure/scsi1/lun1
    sudo pvcreate /dev/disk/azure/scsi1/lun2
    
  3. [AH]إنشاء مجموعة وحدة تخزين لملفات البيانات. استخدم مجموعة وحدة تخزين واحدة لملفات السجل وواحدة للدليل المشترك ل SAP HANA:\

    sudo vgcreate vg_hana_data_HN1 /dev/disk/azure/scsi1/lun0 /dev/disk/azure/scsi1/lun1
    sudo vgcreate vg_hana_log_HN1 /dev/disk/azure/scsi1/lun2
    
  4. [AH] إنشاء وحدات التخزين المنطقية.

    يتم إنشاء وحدة تخزين خطية عند استخدامlvcreate بدون -iswitch. نقترح عليك إنشاء وحدة تخزين مخططة للحصول على أداء إدخال/إخراج أفضل، ومحاذاة أحجام الشريط مع القيم الموثقة في تكوينات تخزين SAP HANA VM. يجب -iأن تكون الوسيطة هي عدد وحدات التخزين المادية الأساسية والوسيطة -I هي حجم الشريط. في هذه الحالة، تُستخدم وحدتَا تخزين فعليتان لوحدة تخزين البيانات؛ لذلك يتم ضبط نقطة-i switch على 2. حجم الشريط لحجم البيانات هو 256 KiB. يتم استخدام وحدة تخزين فعلية واحدة لوحدة تخزين السجل، لذلك لا يتم استخدام أي -i أو -I رموز تبديل بشكل صريح لأوامر وحدة تخزين السجل.

    هام

    استخدم -i switch ثم اضبطه إلى عدد وحدة التخزين الفعلية الأساسية عند استخدام أكثر من وحدة تخزين فعلية لكل وحدة تخزين فعلية لكل وحدة تخزين بيانات أو سجلات. استخدم switch -I لتحديد حجم الشريط، عند إنشاء وحدة تخزين مخططة.
    راجع تكوينات تخزين الأجهزة الظاهرية لـ SAP HANA لتكوينات التخزين الموصى بها، بما في ذلك أحجام الخطوط وعدد الأقراص.

    sudo lvcreate -i 2 -I 256 -l 100%FREE -n hana_data vg_hana_data_HN1
    sudo lvcreate -l 100%FREE -n hana_log vg_hana_log_HN1
    sudo mkfs.xfs /dev/vg_hana_data_HN1/hana_data
    sudo mkfs.xfs /dev/vg_hana_log_HN1/hana_log
    
  5. [AH] إنشاء الدلائل التركيب ونسخ UUID من جميع وحدات التخزين المنطقية:

    sudo mkdir -p /hana/data/HN1
    sudo mkdir -p /hana/log/HN1
    # Write down the ID of /dev/vg_hana_data_HN1/hana_data and /dev/vg_hana_log_HN1/hana_log
    sudo blkid
    
  6. [AH] إنشاء إدخالات fstab لوحدات التخزين المنطقية وتركيب:

    sudo vi /etc/fstab
    

    إدراج السطر التالي في /etc/fstab الملف:

    /dev/disk/by-uuid/UUID of /dev/mapper/vg_hana_data_HN1-hana_data /hana/data/HN1 xfs  defaults,nofail  0  2
    /dev/disk/by-uuid/UUID of /dev/mapper/vg_hana_log_HN1-hana_log /hana/log/HN1 xfs  defaults,nofail  0  2
    

    تحميل وحدات التخزين الجديدة:

    sudo mount -a
    

إنشاء نظام مجموعة Pacemaker

اتبع الخطوات في إعداد منظم ضربات قلب في هادم مؤسسة SUSE Linux بـ Azure لإنشاء مجموعة Pacemaker لخادم HANA. ضمّن جميع الأجهزة الظاهرية، بما في ذلك صانع الأغلبية في نظام المجموعة.

هام

لا تقم بتعيين quorum expected-votes إلى 2، لأن هذه ليست مجموعة عقدتين.
تأكد من تمكين خاصية نظام المجموعة concurrent-fencing، بحيث يتم إلغاء تسلسل تسييج العقدة.

التثبيت

في هذا المثال لنشر SAP HANA في تكوين قابل للتوسيع باستخدام عقدة الاستعداد معHSR على أجهزة Azure الظاهرية، استخدمنا HANA 2.0 SP5.

الاستعداد لتركيب HANA

  1. [AH] قبل تثبيت HANA، اضبط كلمة مرور الجذر. يمكنك تعطيل كلمة مرور الجذر بعد اكتمال التثبيت. تنفيذ كأمر root passwd.

  2. [1,2] تغيير أذونات الملفات على /hana/shared

    chmod 775 /hana/shared
    
  3. [1] تحقق من أنه يمكنك تسجيل الدخول عبر SSH إلى أجهزة HANA DB الظاهرية في هذا الموقع hana-s1-db2 وhana-s1-db3، دون مطالبتك بكلمة مرور. إذا لم يكن الأمر كذلك، فتبادل مفاتيح ssh كما هو موضح في تمكين وصول SSH عبر المفتاح العام.

    ssh root@hana-s1-db2
    ssh root@hana-s1-db3
    
  4. [2] تحقق من أنه يمكنك تسجيل الدخول عبر SSH إلى أجهزة HANA DB الظاهرية في هذا الموقع hana-s2-db2 وhana-s2-db3، دون مطالبتك بكلمة مرور.
    إذا لم يكن الأمر كذلك، فتبادل مفاتيح ssh.

    ssh root@hana-s2-db2
    ssh root@hana-s2-db3
    
  5. [AH] تثبيت حزم إضافية، وهي مطلوبة لـ HANA 2.0 SP4 وأعلى. لمزيد من المعلومات، راجع ملاحظة SAP 2593824 لإصدار SLES الخاص بك.

    # In this example, using SLES12 SP5
    sudo zypper install libgcc_s1 libstdc++6 libatomic1
    

تثبيت HANA على العقدة الأولى في كل موقع

  1. [1 ] قم بتثبيت SAP HANA باتباع الإرشادات الواردة في دليل التثبيت والتحديث SAP HANA 2.0. في الإرشادات التالية، نعرض التثبيت SAP HANA على العقدة الأولى على SITE 1.

    أ. بدء تشغيل برنامج hdblcm كـ root من دليل برامج تثبيت HANA. استخدم المعلمة internal_network وتجاوز مساحة العنوان للشبكة الفرعية، والتي تستخدم للاتصال الداخلي بين عقد HANA.

    ./hdblcm --internal_network=10.23.1.128/26
    

    ب. في المطالبة، أدخل القيم التالية:

    • لاختيار إجراء: أدخل 1 (للتثبيت)
    • للحصول على مكونات إضافية للتثبيت: أدخل 2، 3
    • لمسار التثبيت: اضغط على Enter (الإعدادات الافتراضية إلى /hana/shared)
    • بالنسبة إلى اسم المضيف المحلي: اضغط على Enter لقبول الإعداد الافتراضي
    • بالنسبة إلى هل تريد إضافة مضيفين إلى النظام؟: أدخل n
    • للحصول على معرف النظام SAP HANA: أدخل HN1
    • بالنسبة إلى رقم المثيل [00]: أدخل 03
    • بالنسبة إلى مجموعة عمال المضيف المحلي [افتراضي]: اضغط على Enter لقبول الإعداد الافتراضي
    • لتحديد استخدام النظام / أدخل الفهرس [4]: أدخل 4 (للمخصص)
    • بالنسبة إلى موقع وحدات تخزين البيانات [/hana/data/HN1]: اضغط على Enter لقبول الإعداد الافتراضي
    • بالنسبة إلى موقع وحدات تخزين السجلات [/hana/log/HN1]: اضغط على Enter لقبول الإعداد الافتراضي
    • بالنسبة إلى تقييد الحد الأقصى لتخصيص الذاكرة؟ [n]: أدخل n
    • بالنسبة إلى اسم مضيف الشهادة للمضيف hana-s1-db1 [hana-s1-db1]: اضغط على Enter لقبول الإعداد الافتراضي
    • بالنسبة إلى كلمة مرور SAP Host Agent User (sapadm): أدخل كلمة المرور
    • بالنسبة إلى تأكيد كلمة مرور SAP Host Agent User (sapadm): أدخل كلمة المرور
    • لكلمة مرور مسؤول النظام (hn1adm): أدخل كلمة المرور
    • بالنسبة إلى الدليل الرئيسي لمسؤول النظام [/ usr / sap / HN1 / home]: اضغط على Enter لقبول الإعداد الافتراضي
    • بالنسبة إلى لتسجيل دخول مسؤول النظامShell [/bin/sh]: اضغط على Enter لقبول الإعداد الافتراضي
    • بالنسبة إلى معرف مستخدم مسؤول النظام [1001]: اضغط على Enter لقبول الإعداد الافتراضي
    • لإدخال معرف مجموعة المستخدمين (sapsys) [79]: اضغط على Enter لقبول الإعداد الافتراضي
    • بالنسبة إلى كلمة مرور مستخدم قاعدة بيانات النظام (النظام): أدخل كلمة مرور النظام
    • لتأكيد كلمة مرور مستخدم قاعدة بيانات النظام (النظام): أدخل كلمة مرور النظام
    • لإعادة تشغيل النظام بعد إعادة تشغيل الجهاز؟ [n]: أدخل n
    • بالنسبة إلى هل تريد المتابعة (y/n): تحقق من صحة الملخص وإذا كان كل شيء يبدو جيداً، فأدخل y
  2. [2] كرر الخطوة السابقة لتثبيت SAP HANA على العقدة الأولى على SITE 2.

  3. [1,2] تحقق من global.ini

    عرض global.ini، وتأكد من أن تكوين الاتصال الداخلي SAP HANA بين العقدة في مكانه. تحقق من قسم الاتصالات. يجب أن يحتوي على مساحة عنوان الشبكة inter الفرعية، ويجب listeninterface تعيينه على .internal. تحقق من قسم internal_hostname_resolution. يجب أن يحتوي على عناوين IP لأجهزة HANA الظاهرية التي تنتمي إلى الشبكة الفرعية inter.

      sudo cat /usr/sap/HN1/SYS/global/hdb/custom/config/global.ini
      # Example from SITE1 
      [communication]
      internal_network = 10.23.1.128/26
      listeninterface = .internal
      [internal_hostname_resolution]
      10.23.1.132 = hana-s1-db1
      10.23.1.133 = hana-s1-db2
      10.23.1.134 = hana-s1-db3
    
  4. [1,2] جهز global.ini للتثبيت في بيئة غير مشتركة، كما هو موضح في ملاحظة SAP 2080991.

     sudo vi /usr/sap/HN1/SYS/global/hdb/custom/config/global.ini
     [persistence]
     basepath_shared = no
    
  5. [1،2] أعد تشغيل SAP Hana لتنشيط التغييرات.

     sudo -u hn1adm /usr/sap/hostctrl/exe/sapcontrol -nr 03 -function StopSystem
     sudo -u hn1adm /usr/sap/hostctrl/exe/sapcontrol -nr 03 -function StartSystem
    
  6. [1,2] تحقق من أن واجهة العميل ستستخدم عناوين IP من client الشبكة الفرعية للاتصال.

    # Execute as hn1adm
    /usr/sap/HN1/HDB03/exe/hdbsql -u SYSTEM -p "password" -i 03 -d SYSTEMDB 'select * from SYS.M_HOST_INFORMATION'|grep net_publicname
    # Expected result - example from SITE 2
    "hana-s2-db1","net_publicname","10.23.0.22"
    

    للحصول على معلومات حول كيفية التحقق من التكوين، راجع SAP Note 2183363 - تكوين SAP HANA الشبكة الداخلية.

  7. [AH] قم بتغيير الأذونات على البيانات وأدلة السجل لتجنب خطأ تثبيت HANA.

     sudo chmod o+w -R /hana/data /hana/log
    
  8. [1] قم بتثبيت عقد HANA الثانوية. الإرشادات النموذجية في هذه الخطوة هي لـ SITE 1.

    أ. ابدأ برنامج hdblcm المقيم كـ root.

     cd /hana/shared/HN1/hdblcm
     ./hdblcm 
    

    ب. في المطالبة، أدخل القيم التالية:

    • لاختيار إجراء: أدخل 2 (لإضافة المضيفين)
    • لإدخال أسماء مضيفين مفصولة بفواصل لإضافتها: hana-s1-db2, hana-s1-db3
    • للحصول على مكونات إضافية للتثبيت: أدخل 2، 3
    • لإدخال اسم المستخدم الجذر [root]: اضغط على Enter لقبول الإعداد الافتراضي
    • لتحديد أدوار المضيف 'hana-s1-db2' [1]: 1 (للعامل)
    • لإدخال مجموعة تجاوز فشل المضيفة للمضيف "hana-s1-db2" [افتراضي]: اضغط على Enter لقبول الإعداد الافتراضي
    • لإدخال قسم التخزين<< للمضيف "hana-s1-db2" [>>assign automatically]: اضغط على Enter لقبول الإعداد الافتراضي
    • لإدخال مجموعة العامل للمضيف "hana-s1-db2" [افتراضي]: اضغط على Enter لقبول الإعداد الافتراضي
    • لتحديد أدوار المضيف 'hana-s1-db3' [1]: 1 (للعامل)
    • لإدخال مجموعة تجاوز فشل المضيفة للمضيف "hana-s1-db3" [افتراضي]: اضغط على Enter لقبول الإعداد الافتراضي
    • لإدخال قسم التخزين<< للمضيف "hana-s1-db3" [>>assign automatically]: اضغط على Enter لقبول الإعداد الافتراضي
    • لإدخال مجموعة العامل للمضيف "hana-s1-db3" [افتراضي]: اضغط على Enter لقبول الإعداد الافتراضي
    • لكلمة مرور مسؤول النظام (hn1adm): أدخل كلمة المرور
    • لإدخال كلمة مرور SAP Host Agent User (sapadm): أدخل كلمة المرور
    • بالنسبة إلى تأكيد كلمة مرور SAP Host Agent User (sapadm): أدخل كلمة المرور
    • بالنسبة إلى اسم مضيف الشهادة للمضيف hana-s1-db2 [hana-s1-db2]: اضغط على Enter لقبول الإعداد الافتراضي
    • بالنسبة إلى اسم مضيف الشهادة للمضيف hana-s1-db3 [hana-s1-db3]: اضغط على Enter لقبول الإعداد الافتراضي
    • بالنسبة إلى هل تريد المتابعة (y/n): تحقق من صحة الملخص وإذا كان كل شيء يبدو جيداً، فأدخل y
  9. [2] كرر الخطوة السابقة لتثبيت عقد SAP HANA الثانوية على SITE 2.

تكوين SAP HANA 2.0 System Replication

  1. [1] تكوين النسخ المتماثل للنظام على SITE 1:

    نسخة احتياطية قواعد البيانات كـ hn1adm:

    hdbsql -d SYSTEMDB -u SYSTEM -p "passwd" -i 03 "BACKUP DATA USING FILE ('initialbackupSYS')"
    hdbsql -d HN1 -u SYSTEM -p "passwd" -i 03 "BACKUP DATA USING FILE ('initialbackupHN1')"
    

    نسخ ملفات PKI النظام إلى الموقع الثانوي:

    scp /usr/sap/HN1/SYS/global/security/rsecssfs/data/SSFS_HN1.DAT hana-s2-db1:/usr/sap/HN1/SYS/global/security/rsecssfs/data/
    scp /usr/sap/HN1/SYS/global/security/rsecssfs/key/SSFS_HN1.KEY  hana-s2-db1:/usr/sap/HN1/SYS/global/security/rsecssfs/key/
    

    إنشاء الموقع الأساسي:

    hdbnsutil -sr_enable --name=HANA_S1
    
  2. [2] تكوين النسخ المتماثل للنظام على SITE 2:

    تسجيل الموقع الثاني لبدء النسخ المتماثل للنظام. يمكنك تشغيل الأمر التالي كـ <hanasid>adm:

    sapcontrol -nr 03 -function StopWait 600 10
    hdbnsutil -sr_register --remoteHost=hana-s1-db1 --remoteInstance=03 --replicationMode=sync --name=HANA_S2
    sapcontrol -nr 03 -function StartSystem
    
  3. [1] تحقق من حالة النسخ المتماثل

    تحقق من حالة النسخ المتماثل وانتظر حتى تتم مزامنة جميع قواعد البيانات.

    sudo su - hn1adm -c "python /usr/sap/HN1/HDB03/exe/python_support/systemReplicationStatus.py"
    
    # | Database | Host          | Port  | Service Name | Volume ID | Site ID | Site Name | Secondary     | Secondary | Secondary | Secondary | Secondary     | Replication | Replication | Replication    |
    # |          |               |       |              |           |         |           | Host          | Port      | Site ID   | Site Name | Active Status | Mode        | Status      | Status Details |
    # | -------- | ------------- | ----- | ------------ | --------- | ------- | --------- | ------------- | --------- | --------- | --------- | ------------- | ----------- | ----------- | -------------- |
    # | HN1      | hana-s1-db3   | 30303 | indexserver  |         5 |       1 | HANA_S1   | hana-s2-db3   |     30303 |         2 | HANA_S2   | YES           | SYNC        | ACTIVE      |                |
    # | SYSTEMDB | hana-s1-db1   | 30301 | nameserver   |         1 |       1 | HANA_S1   | hana-s2-db1   |     30301 |         2 | HANA_S2   | YES           | SYNC        | ACTIVE      |                |
    # | HN1      | hana-s1-db1   | 30307 | xsengine     |         2 |       1 | HANA_S1   | hana-s2-db1   |     30307 |         2 | HANA_S2   | YES           | SYNC        | ACTIVE      |                |
    # | HN1      | hana-s1-db1   | 30303 | indexserver  |         3 |       1 | HANA_S1   | hana-s2-db1   |     30303 |         2 | HANA_S2   | YES           | SYNC        | ACTIVE      |                |
    # | HN1      | hana-s1-db2   | 30303 | indexserver  |         4 |       1 | HANA_S1   | hana-s2-db2   |     30303 |         2 | HANA_S2   | YES           | SYNC        | ACTIVE      |                |
    #
    # status system replication site "2": ACTIVE
    # overall system replication status: ACTIVE
    #
    # Local System Replication State
    #
    # mode: PRIMARY
    # site id: 1
    # site name: HANA_S1
    
  4. [1،2] غيّر تكوين HANA بحيث يتم توجيه الاتصال الخاص بالنسخ المتماثل لنظام HANA من خلال واجهات الشبكة الظاهرية للنسخ المتماثل لنظام HANA.

    • إيقاف HANA على كلا الموقعين

      sudo -u hn1adm /usr/sap/hostctrl/exe/sapcontrol -nr 03 -function StopSystem HDB
      
    • قم بتحرير global.ini لإضافة تعيين المضيف للنسخ المتماثل لنظام HANA: استخدم عناوين IP من شبكة hsr الفرعية.

      sudo vi /usr/sap/HN1/SYS/global/hdb/custom/config/global.ini
      #Add the section
      [system_replication_hostname_resolution]
      10.23.1.196 = hana-s1-db1
      10.23.1.197 = hana-s1-db2
      10.23.1.198 = hana-s1-db3
      10.23.1.199 = hana-s2-db1
      10.23.1.200 = hana-s2-db2
      10.23.1.201 = hana-s2-db3
      
    • بدء تشغيل HANA على كلا الموقعين

      sudo -u hn1adm /usr/sap/hostctrl/exe/sapcontrol -nr 03 -function StartSystem HDB
      

    لمزيد من المعلومات، راجع تحليل اسم المضيف للنسخ المتماثل للنظام.

إنشاء موارد نظام الملفات

قم بإنشاء مورد نظام مجموعة ملفات وهمي، والذي سيراقب حالات الفشل والإبلاغ عنها، في حالة وجود مشكلة في الوصول إلى نظام /hana/sharedالملفات المثبت على NFS . يسمح ذلك للمجموعة بتشغيل تجاوز الفشل، في حالة وجود مشكلة في /hana/sharedالوصول إلى . لمزيد من المعلومات، راجع معالجة مشاركة NFS الفاشلة في مجموعة SUSE HA للنسخ المتماثل لنظام HANA

  1. [1] ضع pacemaker في وضع الصيانة، استعداداً لإنشاء موارد مجموعة HANA.

    crm configure property maintenance-mode=true
    
  2. [1،2] أنشئ الدليل على نظام الملفات المحمل على NFS/hana/shared، والذي سيتم استخدامه في مورد مراقبة نظام الملفات الخاص. يجب إنشاء الدلائل على كلا الموقعين.

    mkdir -p /hana/shared/HN1/check
    
  3. [AH] قم بإنشاء الدليل، والذي سيتم استخدامه لتحميل مورد مراقبة نظام الملفات الخاص. يجب إنشاء الدليل على جميع عقد نظام مجموعة HANA.

    mkdir -p /hana/check
    
  4. [1] إنشاء موارد نظام مجموعة الملفات.

    crm configure primitive fs_HN1_HDB03_fscheck Filesystem \
      params device="/hana/shared/HN1/check" \
      directory="/hana/check" fstype=nfs4 \
      options="bind,defaults,rw,hard,proto=tcp,noatime,nfsvers=4.1,lock" \
      op monitor interval=120 timeout=120 on-fail=fence \
      op_params OCF_CHECK_LEVEL=20 \
      op start interval=0 timeout=120 op stop interval=0 timeout=120
    
    crm configure clone cln_fs_HN1_HDB03_fscheck fs_HN1_HDB03_fscheck \
      meta clone-node-max=1 interleave=true
    
    crm configure location loc_cln_fs_HN1_HDB03_fscheck_not_on_mm \
      cln_fs_HN1_HDB03_fscheck -inf: hana-s-mm    
    

    OCF_CHECK_LEVEL=20 تتم إضافة السمة إلى عملية جهاز العرض، بحيث تقوم عمليات المراقبة بإجراء اختبار قراءة/كتابة على نظام الملفات. بدون هذه السمة، تتحقق عملية تشغيل المراقبة فقط من تحميل نظام الملفات. قد يكون هذا مشكلة لأنه عند فقدان الاتصال، قد يظل نظام الملفات محمولاً، على الرغم من تعذر الوصول إليه.

    on-fail=fence تتم إضافة السمة أيضاً إلى عملية تشغيل المراقبة. باستخدام هذا الخيار، إذا فشلت عملية المراقبة على إحدى العقد، فسيتم تسييج هذه العقدة على الفور.

تنفيذ خطافات HANA HA SAPHanaSrMultiTarget وsusChkSrv

هذه الخطوة المهمة هي تحسين التكامل مع نظام المجموعة والكشف عندما يكون تجاوز فشل نظام المجموعة ممكنا. يوصى بشدة بتكوين SAPHanaSrMultiTarget Python hook. بالنسبة إلى HANA 2.0 SP5 والإصدارات الأحدث، يوصى بتنفيذ كل من خطافات SAPHanaSrMultiTarget وsusChkSrv.

إشعار

يحل موفر SAPHanaSrMultiTarget HA محل SAPHanaSR لتوسيع نطاق HANA. تم وصف SAPHanaSR في الإصدار السابق من هذا المستند.
راجع منشور مدونة SUSE حول التغييرات باستخدام رابط HANA HA الجديد.

الخطوات المتوفرة ل SAPHanaSrMultiTarget hook هي لتثبيت جديد. تتطلب ترقية بيئة موجودة من SAPHanaSR إلى موفر SAPHanaSrMultiTarget عدة تغييرات ولا يتم وصفها في هذا المستند. إذا لم تستخدم البيئة الحالية أي موقع ثالث للتعافي من الكوارث ولم يتم استخدام النسخ المتماثل للنظام متعدد الأهداف HANA، يمكن أن يظل موفر SAPHanaSR HA قيد الاستخدام.

يقوم SusChkSrv بتوسيع وظائف موفر SAPHanaSrMultiTarget HA الرئيسي. يعمل في الحالة التي تتعطل فيها عملية HANA hdbindexserver. إذا تعطل عملية واحدة عادة ما تحاول HANA إعادة تشغيلها. قد تستغرق إعادة تشغيل عملية خادم الفهرس وقتا طويلا، حيث لا تستجيب قاعدة بيانات HANA. مع تنفيذ susChkSrv، يتم تنفيذ إجراء فوري وقابل للتكوين، بدلا من انتظار عملية hdbindexserver لإعادة التشغيل على نفس العقدة. في HANA توسيع نطاق susChkSrv يعمل لكل جهاز ظاهري HANA بشكل مستقل. سيؤدي الإجراء المكون إلى إنهاء HANA أو سياج الجهاز الظاهري المتأثر، والذي يؤدي إلى تجاوز الفشل في فترة المهلة المكونة.

مطلوب SUSE SLES 15 SP1 أو أعلى لتشغيل كل من خطافات HANA HA. يعرض الجدول التالي تبعيات أخرى.

ربط SAP HANA HA إصدار HANA مطلوب SAPHanaSR-ScaleOut مطلوب
SAPHanaSrMultiTarget HANA 2.0 SPS4 أو أعلى 0.180 أو أعلى
susChkSrv HANA 2.0 SPS5 أو أعلى 0.184.1 أو أعلى

خطوات تنفيذ كل من الخطافين:

  1. [1,2] إيقاف HANA على موقعي النسخ المتماثل للنظام. تنفيذ كـ <sid>adm:

    sapcontrol -nr 03 -function StopSystem
    
  2. [1,2] ضبط global.ini على كل موقع نظام مجموعة. إذا لم يتم استيفاء المتطلبات الأساسية ل susChkSrv hook، فلا يجب تكوين الكتلة [ha_dr_provider_suschksrv] بأكملها.
    يمكنك ضبط سلوك susChkSrv مع المعلمة action_on_lost. القيم الصالحة هي [ ignore | stop | kill | fence ].

    # add to global.ini on both sites. Do not copy global.ini between sites.
    [ha_dr_provider_saphanasrmultitarget]
    provider = SAPHanaSrMultiTarget
    path = /usr/share/SAPHanaSR-ScaleOut
    execution_order = 1
    
    [ha_dr_provider_suschksrv]
    provider = susChkSrv
    path = /usr/share/SAPHanaSR-ScaleOut
    execution_order = 3
    action_on_lost = kill
    
    [trace]
    ha_dr_saphanasrmultitarget = info
    

    الموقع الافتراضي لربطات قابلية الوصول العالية كما تم تسليمها بواسطة SUSE هو /usr/share/SAPHanaSR-ScaleOut. استخدام الموقع القياسي يجلب فائدة، أن التعليمة البرمجية ل python hook يتم تحديثها تلقائيا من خلال تحديثات نظام التشغيل أو الحزمة ويتم استخدامها من قبل HANA عند إعادة التشغيل التالية. باستخدام مسار اختياري خاص، مثل /hana/shared/myHooks، يمكنك فصل تحديثات نظام التشغيل عن إصدار hook المستخدم.

  3. [AH] يتطلب نظام المجموعة تكوين sudoers على عقد نظام المجموعة ل <sid>adm. في هذا المثال يتم تحقيق ذلك عن طريق إنشاء ملف جديد. تنفيذ الأوامر كتكيف root مع قيم hn1 مع SID الصحيح ذي الأحرف الصغيرة.

    cat << EOF > /etc/sudoers.d/20-saphana
    # SAPHanaSR-ScaleOut needs for HA/DR hook scripts
    so1adm ALL=(ALL) NOPASSWD: /usr/sbin/crm_attribute -n hana_hn1_site_srHook_*
    so1adm ALL=(ALL) NOPASSWD: /usr/sbin/crm_attribute -n hana_hn1_gsh *
    so1adm ALL=(ALL) NOPASSWD: /usr/sbin/SAPHanaSR-hookHelper --sid=hn1 *
    EOF
    
  4. [1,2] بدء SAP HANA على موقعي النسخ المتماثل. تنفيذ كـ <sid>adm.

    sapcontrol -nr 03 -function StartSystem 
    
  5. [A] تحقق من أن تثبيت hook نشط على جميع عقد نظام المجموعة. تنفيذ كـ <sid>adm.

    cdtrace
    grep HADR.*load.*SAPHanaSrMultiTarget nameserver_*.trc | tail -3
    # Example output
    # nameserver_hana-s1-db1.31001.000.trc:[14162]{-1}[-1/-1] 2023-01-26 12:53:55.728027 i ha_dr_provider   HADRProviderManager.cpp(00083) : loading HA/DR Provider 'SAPHanaSrMultiTarget' from /usr/share/SAPHanaSR-ScaleOut/
    grep SAPHanaSr.*init nameserver_*.trc | tail -3
    # Example output
    # nameserver_hana-s1-db1.31001.000.trc:[17636]{-1}[-1/-1] 2023-01-26 16:30:19.256705 i ha_dr_SAPHanaSrM SAPHanaSrMultiTarget.py(00080) : SAPHanaSrMultiTarget.init() CALLING CRM: <sudo /usr/sbin/crm_attribute -n hana_hn1_gsh -v 2.2  -l reboot> rc=0
    # nameserver_hana-s1-db1.31001.000.trc:[17636]{-1}[-1/-1] 2023-01-26 16:30:19.256739 i ha_dr_SAPHanaSrM SAPHanaSrMultiTarget.py(00081) : SAPHanaSrMultiTarget.init() Running srHookGeneration 2.2, see attribute hana_hn1_gsh too
    

    تحقق من تثبيت ربط susChkSrv. تنفيذ كـ <sid>adm.

    cdtrace
    egrep '(LOST:|STOP:|START:|DOWN:|init|load|fail)' nameserver_suschksrv.trc
    # Example output
    # 2023-01-19 08:23:10.581529  [1674116590-10005] susChkSrv.init() version 0.7.7, parameter info: action_on_lost=fence stop_timeout=20 kill_signal=9
    # 2023-01-19 08:23:31.553566  [1674116611-14022] START: indexserver event looks like graceful tenant start
    # 2023-01-19 08:23:52.834813  [1674116632-15235] START: indexserver event looks like graceful tenant start (indexserver started)
    

إنشاء مجموعة موارد نظام SAP HANA

  1. [1] إنشاء موارد نظام مجموعة HANA. نفذ الأوامر التالية كـ root.

    1. تأكد من أن المجموعة هي بالفعل في وضع الصيانة.

    2. بعد ذلك، قم بإنشاء مورد تخطيط شبكة HANA.

      sudo crm configure primitive rsc_SAPHanaTopology_HN1_HDB03 ocf:suse:SAPHanaTopology \
        op monitor interval="10" timeout="600" \
        op start interval="0" timeout="600" \
        op stop interval="0" timeout="300" \
        params SID="HN1" InstanceNumber="03"
      
      sudo crm configure clone cln_SAPHanaTopology_HN1_HDB03 rsc_SAPHanaTopology_HN1_HDB03 \
       meta clone-node-max="1" target-role="Started" interleave="true"
      
    3. بعد ذلك، قم بإنشاء مورد مثيل HANA.

      إشعار

      تحتوي هذه المقالة على مراجع للمصطلحات التي لم تعد Microsoft تستخدمها. عند إزالة هذه المصطلحات من البرنامج، سنقوم بإزالتها من هذه المقالة.

      sudo crm configure primitive rsc_SAPHana_HN1_HDB03 ocf:suse:SAPHanaController \
        op start interval="0" timeout="3600" \
        op stop interval="0" timeout="3600" \
        op promote interval="0" timeout="3600" \
        op monitor interval="60" role="Master" timeout="700" \
        op monitor interval="61" role="Slave" timeout="700" \
        params SID="HN1" InstanceNumber="03" PREFER_SITE_TAKEOVER="true" \
        DUPLICATE_PRIMARY_TIMEOUT="7200" AUTOMATED_REGISTER="false"
      
      sudo crm configure ms msl_SAPHana_HN1_HDB03 rsc_SAPHana_HN1_HDB03 \
        meta clone-node-max="1" master-max="1" interleave="true"
      

      هام

      نوصي كأفضل ممارسة بتعيين AUTOMATED_REGISTER إلى no فقط، أثناء إجراء اختبارات شاملة لتجاوز الفشل، لمنع المثيل الأساسي الفاشل من التسجيل تلقائياً كمثيل ثانوي. بمجرد اكتمال اختبارات تجاوز الفشل بنجاح، قم بتعيين AUTOMATED_REGISTER إلى yes، بحيث يمكن استئناف النسخ المتماثل للنظام تلقائياً بعد الاستحواذ.

    4. أنشئ عنوان IP افتراضياً والموارد المرتبطة به.

      sudo crm configure primitive rsc_ip_HN1_HDB03 ocf:heartbeat:IPaddr2 \
        op monitor interval="10s" timeout="20s" \
        params ip="10.23.0.27"
      
      sudo crm configure primitive rsc_nc_HN1_HDB03 azure-lb port=62503 \
        op monitor timeout=20s interval=10 \
        meta resource-stickiness=0
      
      sudo crm configure group g_ip_HN1_HDB03 rsc_ip_HN1_HDB03 rsc_nc_HN1_HDB03
      
    5. إنشاء قيود المجموعة

      # Colocate the IP with HANA master
      sudo crm configure colocation col_saphana_ip_HN1_HDB03 4000: g_ip_HN1_HDB03:Started \
        msl_SAPHana_HN1_HDB03:Master  
      
      # Start HANA Topology before HANA  instance
      sudo crm configure order ord_SAPHana_HN1_HDB03 Optional: cln_SAPHanaTopology_HN1_HDB03 \
        msl_SAPHana_HN1_HDB03
      
      # HANA resources don't run on the majority maker node
      sudo crm configure location loc_SAPHanaCon_not_on_majority_maker msl_SAPHana_HN1_HDB03 -inf: hana-s-mm
      sudo crm configure location loc_SAPHanaTop_not_on_majority_maker cln_SAPHanaTopology_HN1_HDB03 -inf: hana-s-mm
      
  2. [1] تكوين خصائص نظام مجموعة إضافية

    sudo crm configure rsc_defaults resource-stickiness=1000
    sudo crm configure rsc_defaults migration-threshold=50
    
  3. [1 ] ضع المجموعة خارج وضع الصيانة. تأكد من أن حالة الكتلة صحيحة وبدء تشغيل كافة الموارد.

    # Cleanup any failed resources - the following command is example 
    crm resource cleanup rsc_SAPHana_HN1_HDB03
    
    # Place the cluster out of maintenance mode
    sudo crm configure property maintenance-mode=false
    
  4. [1] تحقق من الاتصال بين خطاف HANA HA ونظام المجموعة، مع إظهار الحالة SOK ل SID وكل من موقعي النسخ المتماثل بالحالة P(rimary) أو S (econdary).

    sudo /usr/sbin/SAPHanaSR-showAttr
    # Expected result
    # Global cib-time                 maintenance prim  sec sync_state upd
    # ---------------------------------------------------------------------
    # HN1    Fri Jan 27 10:38:46 2023 false       HANA_S1 -   SOK        ok
    # 
    # Sites     lpt        lss mns        srHook srr
    # -----------------------------------------------
    # HANA_S1     1674815869 4   hana-s1-db1 PRIM   P
    # HANA_S2     30         4   hana-s2-db1 SWAIT  S
    

    إشعار

    المهلات في التكوين أعلاه هي مجرد أمثلة وقد تحتاج إلى تكييفها مع إعداد HANA المحدد. على سبيل المثال، قد تحتاج إلى زيادة مهلة البدء، إذا استغرق الأمر وقتا أطول لبدء قاعدة بيانات SAP Hana.

اختبار تجاوز فشل SAP Hana

إشعار

تحتوي هذه المقالة على مراجع للمصطلحات التي لم تعد Microsoft تستخدمها. عند إزالة هذه المصطلحات من البرنامج، سنقوم بإزالتها من هذه المقالة.

  1. قبل بدء الاختبار، تحقق من نظام المجموعة وحالة النسخ المتماثل لنظام SAP Hana.

    أ. تحقق من عدم وجود إجراءات نظام مجموعة فاشلة

    #Verify that there are no failed cluster actions
    crm status
    # Example 
    #7 nodes configured
    #24 resource instances configured
    #
    #Online: [ hana-s-mm hana-s1-db1 hana-s1-db2 hana-s1-db3 hana-s2-db1 hana-s2-db2 hana-s2-db3 ]
    #
    #Full list of resources:
    #
    # stonith-sbd    (stonith:external/sbd): Started hana-s-mm
    # Clone Set: cln_fs_HN1_HDB03_fscheck [fs_HN1_HDB03_fscheck]
    #     Started: [ hana-s1-db1 hana-s1-db2 hana-s1-db3 hana-s2-db1 hana-s2-db2 hana-s2-db3 ]
    #     Stopped: [ hana-s-mm ]
    # Clone Set: cln_SAPHanaTopology_HN1_HDB03 [rsc_SAPHanaTopology_HN1_HDB03]
    #     Started: [ hana-s1-db1 hana-s1-db2 hana-s1-db3 hana-s2-db1 hana-s2-db2 hana-s2-db3 ]
    #     Stopped: [ hana-s-mm ]
    # Master/Slave Set: msl_SAPHana_HN1_HDB03 [rsc_SAPHana_HN1_HDB03]
    #     Masters: [ hana-s1-db1 ]
    #     Slaves: [ hana-s1-db2 hana-s1-db3 hana-s2-db1 hana-s2-db2 hana-s2-db3 ]
    #     Stopped: [ hana-s-mm ]
    # Resource Group: g_ip_HN1_HDB03
    #     rsc_ip_HN1_HDB03   (ocf::heartbeat:IPaddr2):       Started hana-s1-db1
    #     rsc_nc_HN1_HDB03   (ocf::heartbeat:azure-lb):      Started hana-s1-db1
    

    ب. تحقق من مزامنة النسخ المتماثل للنظام SAP HANA

    # Verify HANA HSR is in sync
    sudo su - hn1adm -c "python /usr/sap/HN1/HDB03/exe/python_support/systemReplicationStatus.py"
    #| Database | Host         | Port  | Service Name | Volume ID | Site ID | Site Name | Secondary    | Secondary | Secondary | Secondary | Secondary     | Replication | Replication | Replication    |
    #|          |              |       |              |           |         |           | Host         | Port      | Site ID   | Site Name | Active Status | Mode        | Status      | Status Details |
    #| -------- | ------------ | ----- | ------------ | --------- | ------- | --------- | ------------ | --------- | --------- | --------- | ------------- | ----------- | ----------- | -------------- |
    #| SYSTEMDB | hana-s1-db1  | 30301 | nameserver   |         1 |       1 | HANA_S1   | hana-s2-db1  |     30301 |         2 | HANA_S2   | YES           | SYNC        | ACTIVE      |                |
    #| HN1      | hana-s1-db1  | 30307 | xsengine     |         2 |       1 | HANA_S1   | hana-s2-db1  |     30307 |         2 | HANA_S2   | YES           | SYNC        | ACTIVE      |                |
    #| HN1      | hana-s1-db1  | 30303 | indexserver  |         3 |       1 | HANA_S1   | hana-s2-db1  |     30303 |         2 | HANA_S2   | YES           | SYNC        | ACTIVE      |                |
    #| HN1      | hana-s1-db3  | 30303 | indexserver  |         4 |       1 | HANA_S1   | hana-s2-db3  |     30303 |         2 | HANA_S2   | YES           | SYNC        | ACTIVE      |                |
    #| HN1      | hana-s1-db2  | 30303 | indexserver  |         5 |       1 | HANA_S1   | hana-s2-db2  |     30303 |         2 | HANA_S2   | YES           | SYNC        | ACTIVE      |                |
    #
    #status system replication site "1": ACTIVE
    #overall system replication status: ACTIVE
    #
    #Local System Replication State
    #~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
    #
    #mode: PRIMARY
    #site id: 1
    #site name: HANA_S1
    
  2. نوصي بالتحقق بدقة من تكوين مجموعة SAP HANA، من خلال إجراء الاختبارات، الموثقة في HA SAP HANA على أجهزة Azure الظاهرية على SLES وفي سيناريو الأداء المحسن الموسع لنسخ SLES المتماثل.

  3. تحقق من تكوين نظام المجموعة لسيناريو فشل، عندما تفقد عقدة الوصول إلى مشاركة NFS (/hana/shared).

    تعتمد SAP Hana وكلاء الموارد على الثنائيات المخزنة /hana/shared لتنفيذ العمليات أثناء تجاوز الفشل. يتم تركيب نظام ملفات /hana/shared عبر NFS في التكوين المعروض. الاختبار الذي يمكن إجراؤه، هو إنشاء قاعدة جدار حماية مؤقتة لمنع الوصول إلى نظام الملفات المحمّل على NFS /hana/shared على أحد الأجهزة الظاهرية الخاصة بالموقع الأساسي. يتحقق هذا النهج من أن نظام المجموعة سيفشل في حالة فقدان الوصول إلى /hana/shared موقع النسخ المتماثل للنظام النشط.

    النتيجة المتوقعة: عند حظر الوصول إلى نظام الملفات المحمّل على NFS /hana/shared على أحد الأجهزة الظاهرية الأساسية للموقع، ستفشل عملية المراقبة التي تقوم بإجراء عملية قراءة/كتابة على نظام الملفات، حيث إنها غير قادرة على الوصول إلى نظام الملفات وستقوم بتشغيل تجاوز فشل مورد HANA. من المتوقع الحصول على نفس النتيجة عندما تفقد عقدة HANA الوصول إلى مشاركة NFS.

    يمكنك التحقق من حالة موارد الكتلة عن طريق تنفيذ crm_mon أو crm status. حالة المورد قبل بدء الاختبار:

    # Output of crm_mon
    #7 nodes configured
    #24 resource instances configured
    #
    #Online: [ hana-s-mm hana-s1-db1 hana-s1-db2 hana-s1-db3 hana-s2-db1 hana-s2-db2 hana-s2-db3 ]
    #
    #Active resources:
    #
    #stonith-sbd     (stonith:external/sbd): Started hana-s-mm
    # Clone Set: cln_fs_HN1_HDB03_fscheck [fs_HN1_HDB03_fscheck]
    #     Started: [ hana-s1-db1 hana-s1-db2 hana-s1-db3 hana-s2-db1 hana-s2-db2 hana-s2-db3 ]
    # Clone Set: cln_SAPHanaTopology_HN1_HDB03 [rsc_SAPHanaTopology_HN1_HDB03]
    #     Started: [ hana-s1-db1 hana-s1-db2 hana-s1-db3 hana-s2-db1 hana-s2-db2 hana-s2-db3 ]
    # Master/Slave Set: msl_SAPHana_HN1_HDB03 [rsc_SAPHana_HN1_HDB03]
    #     Masters: [ hana-s1-db1 ]
    #     Slaves: [ hana-s1-db2 hana-s1-db3 hana-s2-db1 hana-s2-db2 hana-s2-db3 ]
    # Resource Group: g_ip_HN1_HDB03
    #     rsc_ip_HN1_HDB03   (ocf::heartbeat:IPaddr2):       Started hana-s2-db1
    #     rsc_nc_HN1_HDB03   (ocf::heartbeat:azure-lb):      Started hana-s2-db1     
    

    لمحاكاة الفشل لـ /hana/shared:

    • إذا كنت تستخدم NFS على Azure NetApp Files، فتأكد أولا من عنوان IP لوحدة /hana/shared تخزين Azure NetApp Files على الموقع الأساسي. يمكنك القيام بذلك عن طريق تشغيل df -kh|grep /hana/shared.
    • إذا كنت تستخدم NFS على Azure Files، فحدد أولًا عنوان IP لنقطة النهاية الخاصة لحساب التخزين الخاص بك.

    ثم قم بإعداد قاعدة جدار حماية مؤقتة لمنع الوصول إلى عنوان IP الخاص بنظام ملفات NFS /hana/shared عن طريق تنفيذ الأمر التالي على أحد الأجهزة الظاهرية الأساسية لموقع النسخ المتماثل لنظام HANA.

    في هذا المثال، تم تنفيذ الأمر على hana-s1-db1 لوحدة تخزين /hana/sharedAzure NetApp Files .

    iptables -A INPUT -s 10.23.1.7 -j DROP; iptables -A OUTPUT -d 10.23.1.7 -j DROP
    

    سيتم ترحيل موارد المجموعة إلى موقع النسخ المتماثل لنظام HANA الآخر.

    إذا قمت بتعيين AUTOMATED_REGISTER="false"، فستحتاج إلى تكوين النسخ المتماثل لنظام SAP HANA على الموقع الثانوي. في هذه الحالة، يمكنك تنفيذ هذه الأوامر لإعادة تكوين SAP HANA كثانوي.

    # Execute on the secondary 
    su - hn1adm
    # Make sure HANA is not running on the secondary site. If it is started, stop HANA
    sapcontrol -nr 03 -function StopWait 600 10
    # Register the HANA secondary site
    hdbnsutil -sr_register --name=HANA_S1 --remoteHost=hana-s2-db1 --remoteInstance=03 --replicationMode=sync
    # Switch back to root and cleanup failed resources
    crm resource cleanup SAPHana_HN1_HDB03
    

    حالة الموارد، بعد الاختبار:

    # Output of crm_mon
    #7 nodes configured
    #24 resource instances configured
    #
    #Online: [ hana-s-mm hana-s1-db1 hana-s1-db2 hana-s1-db3 hana-s2-db1 hana-s2-db2 hana-s2-db3 ]
    #
    #Active resources:
    #
    #stonith-sbd     (stonith:external/sbd): Started hana-s-mm
    # Clone Set: cln_fs_HN1_HDB03_fscheck [fs_HN1_HDB03_fscheck]
    #     Started: [ hana-s1-db1 hana-s1-db2 hana-s1-db3 hana-s2-db1 hana-s2-db2 hana-s2-db3 ]
    # Clone Set: cln_SAPHanaTopology_HN1_HDB03 [rsc_SAPHanaTopology_HN1_HDB03]
    #     Started: [ hana-s1-db1 hana-s1-db2 hana-s1-db3 hana-s2-db1 hana-s2-db2 hana-s2-db3 ]
    # Master/Slave Set: msl_SAPHana_HN1_HDB03 [rsc_SAPHana_HN1_HDB03]
    #     Masters: [ hana-s2-db1 ]
    #     Slaves: [ hana-s1-db1 hana-s1-db2 hana-s1-db3 hana-s2-db2 hana-s2-db3 ]
    # Resource Group: g_ip_HN1_HDB03
    #     rsc_ip_HN1_HDB03   (ocf::heartbeat:IPaddr2):       Started hana-s2-db1
    #     rsc_nc_HN1_HDB03   (ocf::heartbeat:azure-lb):      Started hana-s2-db1
    

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