قابلية وصول عالية لتوسيع نطاق SAP HANA مع Azure NetApp Files على SUSE Enterprise Linux

توضح هذه المقالة كيفية تكوين النسخ المتماثل لنظام SAP HANA في نشر توسيع النطاق عند تحميل أنظمة ملفات HANA عبر NFS باستخدام Azure NetApp Files. في مثال التكوينات وأمر التثبيت، يتم استخدام رقم المثيل 03 وHANA System ID HN1. يتكون النسخ المتماثل SAP HANA من عقدة أساسية واحدة وعقدة ثانوية واحدة على الأقل.

عندما يتم وضع علامة على الخطوات الواردة في هذا المستند بالبادئات التالية، فإنها تعني:

  • [1]: تنطبق الخطوة على كل العقد.
  • [1]: تنطبق الخطوة على node1 فقط.
  • [2]: تنطبق الخطوة على node2 فقط.

اقرأ ملاحظات وأوراق SAP التالية أولا:

إشعار

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

نظرة عامة

تقليديا، في بيئة توسيع النطاق، يتم تحميل جميع أنظمة الملفات ل SAP HANA من التخزين المحلي. يتم نشر إعداد قابلية الوصول العالية للنسخ المتماثل لنظام SAP HANA على SUSE Enterprise Linux في إعداد النسخ المتماثل لنظام SAP HANA على SLES.

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

رسم تخطيطي يوضح زيادة SAP HANA HA على ملفات Azure NetApp.

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

مثبت على node1 (hanadb1):

  • 10.3.1.4:/hanadb1-data-mnt00001 on /hana/data
  • 10.3.1.4:/hanadb1-log-mnt00001 on /hana/log
  • 10.3.1.4:/hanadb1-shared-mnt00001 on /hana/shared

مثبت على node2 (hanadb2):

  • 10.3.1.4:/hanadb2-data-mnt00001 on /hana/data
  • 10.3.1.4:/hanadb2-log-mnt00001 on /hana/log
  • 10.3.1.4:/hanadb2-shared-mnt0001 on /hana/shared

إشعار

لا تتم مشاركة أنظمة الملفات /hana/shared و/hana/data و/hana/log بين العقدتين. تحتوي كل عقدة نظام مجموعة على أنظمة ملفات منفصلة خاصة بها.

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

  • عنوان IP لتكوين الواجهة الأمامية: 10.3.0.50 ل hn1-db
  • منفذ الفحص: 62503

إعداد البنية الأساسية لAzure NetApp Files

قبل متابعة إعداد البنية الأساسية ل Azure NetApp Files، تعرف على وثائق Azure NetApp Files.

لا تتوفر Azure NetApp Files في العديد من مناطق Azure. تحقق لمعرفة ما إذا كانت منطقة Azure المحددة تقدم Azure NetApp Files.

للحصول على معلومات حول توفر Azure NetApp Files بواسطة منطقة Azure، راجع توفر Azure NetApp Files حسب منطقة Azure.

اعتبارات هامة

أثناء إنشاء ملفات Azure NetApp لأنظمة توسيع SAP HANA، كن على دراية بالاعتبارات المهمة الموثقة في وحدات تخزين NFS v4.1 على ملفات Azure NetApp ل SAP HANA.

تحجيم قاعدة بيانات HANA على Azure NetApp Files

الإنتاجية لوحدة تخزين Azure NetApp هي دالة لحجم وحدة التخزين ومستوى الخدمة، كما هو موثق في مستوى الخدمة لملفات Azure NetApp.

أثناء تصميم البنية الأساسية ل SAP HANA على Azure باستخدام Azure NetApp Files، كن على دراية بالتوصيات الواردة في وحدات تخزين NFS v4.1 على Azure NetApp Files ل SAP HANA.

يتم تقديم التكوين في هذه المقالة مع وحدات تخزين Azure NetApp Files البسيطة.

هام

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

يتم عرض كافة الأوامر لتحميل /hana/shared في هذه المقالة لوحدات تخزين NFSv4.1 /hana/shared. إذا قمت بنشر وحدات التخزين /hana/shared كوحدات تخزين NFSv3، فلا تنس ضبط أوامر التحميل ل /hana/shared ل NFSv3.

انشر موارد Azure NetApp Files

تفترض الإرشادات التالية أنك قمت بالفعل بنشر شبكة Azure الظاهرية. يجب نشر موارد Azure NetApp Files والأجهزة الظاهرية، حيث يتم تحميل موارد Azure NetApp Files، في نفس شبكة Azure الظاهرية أو في شبكات Azure الظاهرية النظيرة.

  1. قم بإنشاء حساب NetApp في منطقة Azure المحددة باتباع الإرشادات الواردة في إنشاء حساب NetApp.

  2. قم بإعداد تجمع سعة Azure NetApp Files باتباع الإرشادات الواردة في إعداد تجمع سعة Azure NetApp Files.

    تستخدم بنية HANA المعروضة في هذه المقالة تجمع سعة Azure NetApp Files واحد على مستوى خدمة Ultra. بالنسبة لأحمال عمل HANA على Azure، نوصي باستخدام Azure NetApp Files Ultra أو مستوى الخدمة المتميز.

  3. قم بتفويض شبكة فرعية إلى Azure NetApp Files، كما هو موضح في الإرشادات الواردة في تفويض شبكة فرعية إلى Azure NetApp Files .

  4. نشر وحدات تخزين Azure NetApp Files باتباع الإرشادات الواردة في إنشاء وحدة تخزين NFS لAzure NetApp Files.

    أثناء نشر وحدات التخزين، تأكد من تحديد إصدار NFSv4.1. يمكنك توزيع وحدات التخزين في الشبكة الفرعية لـ Azure NetApp Files المعينة. يتم تعيين عناوين IP الخاصة بوحدات تخزين Azure NetApp Files تلقائيًا.

    يجب أن تكون موارد Azure NetApp Files وأجهزة Azure الظاهرية في نفس شبكة Azure الظاهرية أو في شبكات Azure الظاهرية النظيرة. على سبيل المثال، hanadb1-data-mnt00001 وhanadb1-log-mnt00001 وما إلى ذلك هي أسماء وحدات التخزين، nfs://10.3.1.4/hanadb1-data-mnt00001 nfs://10.3.1.4/hanadb1-log-mnt00001 وما إلى ذلك هي مسارات الملفات لوحدات تخزين Azure NetApp Files.

    على hanadb1:

    • حجم hanadb1-data-mnt00001 (nfs://10.3.1.4:/hanadb1-data-mnt00001)
    • المجلد hanadb1-log-mnt00001 (nfs://10.3.1.4:/hanadb1-log-mnt00001)
    • المجلد hanadb1-shared-mnt00001 (nfs://10.3.1.4:/hanadb1-shared-mnt00001)

    على hanadb2:

    • حجم hanadb2-data-mnt00001 (nfs://10.3.1.4:/hanadb2-data-mnt00001)
    • حجم hanadb2-log-mnt00001 (nfs://10.3.1.4:/hanadb2-log-mnt00001)
    • المجلد hanadb2-shared-mnt00001 (nfs://10.3.1.4:/hanadb2-shared-mnt00001)

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

يتم تضمين عامل المورد لـ SAP HANA في SUSE Linux Enterprise Server لـ SAP Applications. تتوفر صورة ل SUSE Linux Enterprise Server لتطبيقات SAP 12 أو 15 في Azure Marketplace. يمكنك استخدام الصورة لنشر أجهزة ظاهرية جديدة.

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

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

نشر الأجهزة الظاهرية ل SAP HANA. اختر صورة SLES مناسبة مدعومة لنظام HANA. يمكنك نشر جهاز ظاهري في أي من خيارات التوفر: مجموعة مقياس الجهاز الظاهري أو منطقة التوفر أو مجموعة التوفر.

هام

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

تكوين Azure Load Balancer

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

اتبع الخطوات الواردة في إنشاء موازن تحميل لإعداد موازن تحميل قياسي لنظام 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 .

لمزيد من المعلومات حول المنافذ المطلوبة SAP HANA، اقرأ الفصل الاتصالات بقواعد بيانات المستأجر في دليل قواعد بيانات المستأجرين SAP HANA أو ملاحظة SAP رقم 2388694.

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

هام

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

تحميل وحدة تخزين Azure NetApp Files

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

    sudo mkdir -p /hana/data/HN1/mnt00001
    sudo mkdir -p /hana/log/HN1/mnt00001
    sudo mkdir -p /hana/shared/HN1
    
  2. [A] تحقق من إعداد نطاق NFS. تأكد من تكوين المجال كمجال Azure NetApp Files الافتراضي، أي defaultv4iddomain.com وتعيين التعيين إلى لا أحد.

    sudo cat /etc/idmapd.conf
    

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

    [General]
    Domain = defaultv4iddomain.com
    [Mapping]
    Nobody-User = nobody
    Nobody-Group = nobody
    

    هام

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

  3. [A] تحرير /etc/fstab على كلتا العقدتين لتحميل وحدات التخزين ذات الصلة بكل عقدة بشكل دائم. يوضح المثال التالي كيفية تحميل وحدات التخزين بشكل دائم.

    sudo vi /etc/fstab
    

    أضف الإدخالات التالية في /etc/fstab على كلتا العقدتين.

    مثال ل hanadb1:

    10.3.1.4:/hanadb1-data-mnt00001 /hana/data/HN1/mnt00001  nfs   rw,nfsvers=4.1,hard,timeo=600,rsize=262144,wsize=262144,noatime,lock,_netdev,sec=sys  0  0
    10.3.1.4:/hanadb1-log-mnt00001 /hana/log/HN1/mnt00001  nfs   rw,nfsvers=4.1,hard,timeo=600,rsize=262144,wsize=262144,noatime,lock,_netdev,sec=sys  0  0
    10.3.1.4:/hanadb1-shared-mnt00001 /hana/shared/HN1  nfs   rw,nfsvers=4.1,hard,timeo=600,rsize=262144,wsize=262144,noatime,lock,_netdev,sec=sys  0  0
    

    مثال على hanadb2:

    10.3.1.4:/hanadb2-data-mnt00001 /hana/data/HN1/mnt00001  nfs   rw,nfsvers=4.1,hard,timeo=600,rsize=262144,wsize=262144,noatime,lock,_netdev,sec=sys  0  0
    10.3.1.4:/hanadb2-log-mnt00001 /hana/log/HN1/mnt00001  nfs   rw,nfsvers=4.1,hard,timeo=600,rsize=262144,wsize=262144,noatime,lock,_netdev,sec=sys  0  0
    10.3.1.4:/hanadb2-shared-mnt00001 /hana/shared/HN1  nfs   rw,nfsvers=4.1,hard,timeo=600,rsize=262144,wsize=262144,noatime,lock,_netdev,sec=sys  0  0
    

    تحميل جميع وحدات التخزين.

    sudo mount -a
    

    بالنسبة لأحمال العمل التي تتطلب إنتاجية أعلى، ضع في اعتبارك استخدام nconnect خيار التحميل، كما هو موضح في وحدات تخزين NFS v4.1 على Azure NetApp Files ل SAP HANA. تحقق مما إذا كان nconnectمدعوما من قبل Azure NetApp Files على إصدار Linux الخاص بك.

  4. [A] تحقق من أن جميع وحدات تخزين HANA مثبتة باستخدام إصدار بروتوكول NFS NFSv4.

    sudo nfsstat -m
    

    تحقق من تعيين العلامة vers إلى 4.1.

    مثال من hanadb1:

    /hana/log/HN1/mnt00001 from 10.3.1.4:/hanadb1-log-mnt00001
    Flags: rw,noatime,vers=4.1,rsize=262144,wsize=262144,namlen=255,hard,proto=tcp,timeo=600,retrans=2,sec=sys,clientaddr=10.3.0.4,local_lock=none,addr=10.3.1.4
    /hana/data/HN1/mnt00001 from 10.3.1.4:/hanadb1-data-mnt00001
    Flags: rw,noatime,vers=4.1,rsize=262144,wsize=262144,namlen=255,hard,proto=tcp,timeo=600,retrans=2,sec=sys,clientaddr=10.3.0.4,local_lock=none,addr=10.3.1.4
    /hana/shared/HN1 from 10.3.1.4:/hanadb1-shared-mnt00001
    Flags: rw,noatime,vers=4.1,rsize=262144,wsize=262144,namlen=255,hard,proto=tcp,timeo=600,retrans=2,sec=sys,clientaddr=10.3.0.4,local_lock=none,addr=10.3.1.4
    
  5. [A] Verify nfs4_disable_idmapping. يجب تعيينه إلى Y. لإنشاء بنية الدليل حيث يوجد nfs4_disable_idmapping ، قم بتشغيل أمر التحميل. لن تتمكن من إنشاء الدليل يدويا ضمن /sys/modules لأن الوصول محجوز للنواة/برامج التشغيل.

    #Check nfs4_disable_idmapping
    sudo cat /sys/module/nfs/parameters/nfs4_disable_idmapping
    
    #If you need to set nfs4_disable_idmapping to Y
    sudo echo "Y" > /sys/module/nfs/parameters/nfs4_disable_idmapping
    
    #Make the configuration permanent
    sudo echo "options nfs nfs4_disable_idmapping=Y" >> /etc/modprobe.d/nfs.conf
    

تثبيت SAP Hana

  1. [A] إعداد دقة اسم المضيف لجميع المضيفين.

    يمكنك إما استخدام خادم DNS أو تعديل الملف على /etc/hosts جميع العقد. يوضح هذا المثال كيفية استخدام ملف /etc/hosts. استبدل عنوان IP واسم المضيف في الأوامر التالية:

    sudo vi /etc/hosts
    

    إدراج الأسطر التالية في /etc/hosts الملف. غير عنوان IP واسم المضيف لمطابقة بيئتك.

    10.3.0.4   hanadb1
    10.3.0.5   hanadb2
    
  2. [A] إعداد نظام التشغيل لتشغيل SAP HANA على Azure NetApp مع NFS، كما هو موضح في SAP Note 3024346 - Linux Kernel Settings for NetApp NFS. إنشاء ملف /etc/sysctl.d/91-NetApp-HANA.conf التكوين لإعدادات تكوين NetApp.

    sudo vi /etc/sysctl.d/91-NetApp-HANA.conf
    

    أضف الإدخالات التالية في ملف التكوين:

    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
    
  3. [A] إنشاء ملف /etc/sysctl.d/ms-az.conf التكوين مع المزيد من إعدادات التحسين.

    sudo vi /etc/sysctl.d/ms-az.conf
    

    أضف الإدخالات التالية في ملف التكوين:

    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 بإدارة نطاقات المنفذ. لمزيد من المعلومات، راجع 2382421 ملاحظة SAP.

  4. [A] اضبط sunrpc الإعدادات، كما هو موصى به في SAP Note 3024346 - Linux Kernel Settings for NetApp NFS.

    sudo vi /etc/modprobe.d/sunrpc.conf
    

    إدراج السطر التالي:

    options sunrpc tcp_max_slot_table_entries=128
    
  5. [A] تكوين SLES ل HANA.

    تكوين SLES كما هو موضح في ملاحظات SAP التالية استنادا إلى إصدار SLES الخاص بك:

  6. [A] تثبيت SAP HANA.

    بدءا من HANA 2.0 SPS 01، حاويات قاعدة البيانات متعددة المستأجرين (MDC) هو الخيار الافتراضي. عند تثبيت نظام HANA، يتم إنشاء SYSTEMDB ومستأجر بنفس SID معا. في بعض الحالات، لا تريد المستأجر الافتراضي. إذا كنت لا تريد إنشاء المستأجر الأولي مع التثبيت، فاتبع الإرشادات الموجودة في SAP Note 2629711.

    1. ابدأ تشغيل hdblcm البرنامج من دليل برنامج تثبيت HANA.

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

      • لاختيار التثبيت: أدخل 1 (للتثبيت).
      • لتحديد مكونات إضافية للتثبيت: أدخل 1.
      • بالنسبة إلى إدخال مسار التثبيت [/hana/shared]: اضغط على مفتاح الإدخال Enter لقبول الإعداد الافتراضي.
      • بالنسبة إلى إدخال اسم المضيف المحلي [..]: اضغط على مفتاح الإدخال Enter لقبول الإعداد الافتراضي.
      • ضمن هل تريد إضافة مضيفين إضافيين إلى النظام؟ (y/n) [n]: حدد n.
      • بالنسبة إلى إدخال معرف نظام SAP HANA: أدخل HN1.
      • بالنسبة إلى إدخال رقم المثيل [00]: أدخل 03.
      • لتحديد وضع قاعدة البيانات / أدخل الفهرس [1]: اضغط على مفتاح الإدخال Enter لقبول الإعداد الافتراضي.
      • لتحديد استخدام النظام / أدخل الفهرس [4]: أدخل 4 (خصيصا).
      • بالنسبة إلى Enter Location of Data Volumes [/hana/data]: اضغط على Enter لقبول الإعداد الافتراضي.
      • بالنسبة إلى Enter Location of Log Volumes [/hana/log]: اضغط على Enter لقبول الإعداد الافتراضي.
      • لتقييد الحد الأقصى لتخصيص الذاكرة؟ [n]: اضغط على مفتاح الإدخال Enter لقبول الإعداد الافتراضي.
      • بالنسبة إلى إدخال اسم مضيف الشهادة للمضيف '...' [...]: اضغط على مفتاح الإدخال Enter لقبول الإعداد الافتراضي.
      • بالنسبة إلى إدخال كلمة مرور مستخدم عامل مضيف SAP (sapadm): أدخل كلمة مرور مستخدم عامل المضيف.
      • لتأكيد كلمة مرور مستخدم عامل مضيف SAP (sapadm): أدخل كلمة مرور مستخدم العامل المضيف مرة أخرى للتأكيد.
      • لإدخال كلمة مرور مسؤول النظام (hn1adm): أدخل كلمة مرور مسؤول النظام.
      • لتأكيد كلمة مرور مسؤول النظام (hn1adm): أدخل كلمة مرور مسؤول النظام مرة أخرى للتأكيد.
      • بالنسبة إلى Enter System Administrator Home Directory [/usr/sap/HN1/home]: اضغط على Enter لقبول الافتراضي.
      • بالنسبة إلى Enter System Administrator Login Shell [/bin/sh]: اضغط على Enter لقبول الإعداد الافتراضي.
      • بالنسبة إلى Enter System Administrator User ID [1001]: اضغط على Enter لقبول الإعداد الافتراضي.
      • بالنسبة إلى Enter ID of User Group (sapsys) [79]: اضغط على Enter لقبول الإعداد الافتراضي.
      • بالنسبة إلى إدخال كلمة مرور مستخدم قاعدة البيانات (SYSTEM): أدخل كلمة مرور مستخدم قاعدة البيانات.
      • لتأكيد كلمة مرور مستخدم قاعدة البيانات (النظام): أدخل كلمة مرور مستخدم قاعدة البيانات مرة أخرى للتأكيد.
      • لإعادة تشغيل النظام بعد إعادة تشغيل الجهاز؟ [n]: اضغط على مفتاح الإدخال Enter لقبول الإعداد الافتراضي.
      • هل تريد المتابعة؟ (y/n): تحقق من صحة الملخص. أدخلy للمتابعة.
  7. [A] ترقية SAP Host Agent.

    تحميل أحدث أرشيف SAP Host Agent من مركز برامج SAP وتشغيل الأمر التالي لترقية العامل. استبدل المسار إلى الأرشيف للإشارة إلى الملف الذي قمت بتنزيله.

    sudo /usr/sap/hostctrl/exe/saphostexec -upgrade -archive <path to SAP Host Agent SAR>
    

تكوين النسخ المتماثل لنظام SAP Hana

اتبع الخطوات الواردة في النسخ المتماثل لنظام SAP HANA لتكوين النسخ المتماثل لنظام SAP HANA.

تكوين نظام المجموعة

يصف هذا القسم الخطوات الضرورية المطلوبة لنظام المجموعة للعمل بسلاسة عند تثبيت SAP HANA على مشاركات NFS باستخدام Azure NetApp Files.

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

اتبع الخطوات الواردة في إعداد Pacemaker على SUSE Enterprise Linux في Azure لإنشاء نظام مجموعة Pacemaker أساسي لخادم HANA هذا.

تنفيذ خطافات HANA SAPHanaSR وsusChkSrv

تعمل هذه الخطوة المهمة على تحسين التكامل مع نظام المجموعة وتحسين الكشف عند الحاجة إلى تجاوز فشل نظام المجموعة. نوصي بشدة بتكوين كل من خطافات SAPHanaSR وsusChkSrv Python. اتبع الخطوات الواردة في تنفيذ خطافات النسخ المتماثل لنظام Python SAPHanaSR وsusChkSrv.

تكوين موارد نظام المجموعة SAP HANA

يصف هذا القسم الخطوات الضرورية المطلوبة لتكوين موارد نظام مجموعة SAP HANA.

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

اتبع الخطوات الواردة في إنشاء موارد نظام مجموعة SAP HANA لإنشاء موارد نظام المجموعة لخادم HANA. بعد إنشاء الموارد، يجب أن ترى حالة نظام المجموعة مع الأمر التالي:

sudo crm_mon -r

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

# Online: [ hn1-db-0 hn1-db-1 ]
# Full list of resources:
# stonith-sbd     (stonith:external/sbd): Started hn1-db-0
# Clone Set: cln_SAPHanaTopology_HN1_HDB03 [rsc_SAPHanaTopology_HN1_HDB03]
#     Started: [ hn1-db-0 hn1-db-1 ]
# Master/Slave Set: msl_SAPHana_HN1_HDB03 [rsc_SAPHana_HN1_HDB03]
#     Masters: [ hn1-db-0 ]
#     Slaves: [ hn1-db-1 ]
# Resource Group: g_ip_HN1_HDB03
#     rsc_ip_HN1_HDB03   (ocf::heartbeat:IPaddr2):       Started hn1-db-0
#     rsc_nc_HN1_HDB03   (ocf::heartbeat:azure-lb):      Started hn1-db-0

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

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

  1. [A] إنشاء بنية الدليل على كلتا العقدتين.

    sudo mkdir -p /hana/shared/HN1/check
    sudo mkdir -p /hana/shared/check
    
  2. [1] تكوين نظام المجموعة لإضافة بنية الدليل للمراقبة.

    sudo crm configure primitive rsc_fs_check_HN1_HDB03 Filesystem params \
        device="/hana/shared/HN1/check/" \
        directory="/hana/shared/check/" fstype=nfs  \
        options="bind,defaults,rw,hard,rsize=262144,wsize=262144,proto=tcp,noatime,_netdev,nfsvers=4.1,lock,sec=sys" \
        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
    
  3. [1] استنساخ وحدة التخزين المكونة حديثا والتحقق منها في نظام المجموعة.

    sudo crm configure clone cln_fs_check_HN1_HDB03 rsc_fs_check_HN1_HDB03 meta clone-node-max=1 interleave=true
    

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

    sudo crm status
    
    # Cluster Summary:
    # Stack: corosync
    # Current DC: hanadb1 (version 2.0.5+20201202.ba59be712-4.9.1-2.0.5+20201202.ba59be712) - partition with quorum
    # Last updated: Tue Nov  2 17:57:39 2021
    # Last change:  Tue Nov  2 17:57:38 2021 by root via crm_attribute on hanadb1
    # 2 nodes configured
    # 11 resource instances configured
    
    # Node List:
    # Online: [ hanadb1 hanadb2 ]
    
    # Full List of Resources:
    # Clone Set: cln_azure-events [rsc_azure-events]:
    #  Started: [ hanadb1 hanadb2 ]
    # Clone Set: cln_SAPHanaTopology_HN1_HDB03 [rsc_SAPHanaTopology_HN1_HDB03]:
    #  rsc_SAPHanaTopology_HN1_HDB03     (ocf::suse:SAPHanaTopology):     Started hanadb1 (Monitoring)
    #  rsc_SAPHanaTopology_HN1_HDB03     (ocf::suse:SAPHanaTopology):     Started hanadb2 (Monitoring)
    # Clone Set: msl_SAPHana_HN1_HDB03 [rsc_SAPHana_HN1_HDB03] (promotable):
    #  rsc_SAPHana_HN1_HDB03     (ocf::suse:SAPHana):     Master hanadb1 (Monitoring)
    #  Slaves: [ hanadb2 ]
    # Resource Group: g_ip_HN1_HDB03:
    #  rsc_ip_HN1_HDB03  (ocf::heartbeat:IPaddr2):        Started hanadb1
    #  rsc_nc_HN1_HDB03  (ocf::heartbeat:azure-lb):       Started hanadb1
    # rsc_st_azure        (stonith:fence_azure_arm):       Started hanadb2
    # Clone Set: cln_fs_check_HN1_HDB03 [rsc_fs_check_HN1_HDB03]:
    #  Started: [ hanadb1 hanadb2 ]
    

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

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

هام

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

اختبار إعداد نظام الكتل

يوضح هذا القسم كيفية اختبار الإعداد.

  1. قبل بدء الاختبار، تأكد من أن Pacemaker لا يحتوي على أي إجراء فاشل (عبر حالة crm) ومن عدم وجود قيود موقع غير متوقعة (على سبيل المثال، بقايا اختبار الترحيل). تأكد أيضا من أن النسخ المتماثل لنظام HANA في حالة مزامنة، على سبيل المثال، مع systemReplicationStatus.

    sudo su - hn1adm -c "python /usr/sap/HN1/HDB03/exe/python_support/systemReplicationStatus.py"
    
  2. تحقق من حالة موارد HANA باستخدام هذا الأمر:

    SAPHanaSR-showAttr
    
    # You should see something like below
    # hanadb1:~ SAPHanaSR-showAttr
    # Global cib-time                 maintenance
    # --------------------------------------------
    # global Mon Nov  8 22:50:30 2021 false
    # Sites srHook
    # -------------
    # SITE1 PRIM
    # SITE2 SOK
    # Site2 SOK
    # Hosts   clone_state lpa_hn1_lpt node_state op_mode   remoteHost roles                            score site  srmode sync_state version                vhost
    # --------------------------------------------------------------------------------------------------------------------------------------------------------------
    # hanadb1 PROMOTED    1636411810  online     logreplay hanadb2    4:P:master1:master:worker:master 150   SITE1 sync   PRIM       2.00.058.00.1634122452 hanadb1
    # hanadb2 DEMOTED     30          online     logreplay hanadb1    4:S:master1:master:worker:master 100   SITE2 sync   SOK        2.00.058.00.1634122452 hanadb2
    
  3. تحقق من تكوين نظام المجموعة لسيناريو فشل عند إيقاف تشغيل عقدة. يوضح المثال التالي إيقاف تشغيل العقدة 1:

    sudo crm status
    sudo crm resource move msl_SAPHana_HN1_HDB03 hanadb2 force
    sudo crm resource cleanup
    

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

    sudo crm status
    
    #Cluster Summary:
    # Stack: corosync
    # Current DC: hanadb2 (version 2.0.5+20201202.ba59be712-4.9.1-2.0.5+20201202.ba59be712) - partition with quorum
    # Last updated: Mon Nov  8 23:25:36 2021
    # Last change:  Mon Nov  8 23:25:19 2021 by root via crm_attribute on hanadb2
    # 2 nodes configured
    # 11 resource instances configured
    
    # Node List:
    # Online: [ hanadb1 hanadb2 ]
    # Full List of Resources:
    # Clone Set: cln_azure-events [rsc_azure-events]:
    #  Started: [ hanadb1 hanadb2 ]
    # Clone Set: cln_SAPHanaTopology_HN1_HDB03 [rsc_SAPHanaTopology_HN1_HDB03]:
    #  Started: [ hanadb1 hanadb2 ]
    # Clone Set: msl_SAPHana_HN1_HDB03 [rsc_SAPHana_HN1_HDB03] (promotable):
    #  Masters: [ hanadb2 ]
    #  Stopped: [ hanadb1 ]
    # Resource Group: g_ip_HN1_HDB03:
    #  rsc_ip_HN1_HDB03  (ocf::heartbeat:IPaddr2):        Started hanadb2
    #  rsc_nc_HN1_HDB03  (ocf::heartbeat:azure-lb):       Started hanadb2
    # rsc_st_azure        (stonith:fence_azure_arm):       Started hanadb2
    # Clone Set: cln_fs_check_HN1_HDB03 [rsc_fs_check_HN1_HDB03]:
    #  Started: [ hanadb1 hanadb2 ]
    

    إيقاف HANA على Node1:

    sudo su - hn1adm
    sapcontrol -nr 03 -function StopWait 600 10
    

    تسجيل العقدة 1 كعقدة ثانوية والتحقق من الحالة:

    hdbnsutil -sr_register --remoteHost=hanadb2 --remoteInstance=03 --replicationMode=sync --name=SITE1 --operationMode=logreplay
    

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

    #adding site ...
    #nameserver hanadb1:30301 not responding.
    #collecting information ...
    #updating local ini files ...
    #done.
    
    sudo crm status
    
    sudo SAPHanaSR-showAttr
    
  4. تحقق من تكوين نظام المجموعة لسيناريو فشل عندما تفقد عقدة الوصول إلى مشاركة NFS (/hana/shared).

    يعتمد وكلاء موارد SAP HANA على الثنائيات المخزنة على /hana/shared لتنفيذ العمليات أثناء تجاوز الفشل. يتم تحميل نظام الملفات /hana/shared عبر NFS في السيناريو المقدم.

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

    النتيجة المتوقعة: عند إجراء /hana/shared كنظام ملفات للقراءة فقط، OCF_CHECK_LEVEL تفشل سمة المورد hana_shared1، التي تنفذ عمليات القراءة/الكتابة على نظام الملفات. يفشل لأنه لا يمكنه كتابة أي شيء على نظام الملفات وينفذ تجاوز فشل مورد HANA. ومن المتوقع نفس النتيجة عندما تفقد عقدة HANA الخاصة بك الوصول إلى أسهم NFS.

    حالة المورد قبل بدء الاختبار:

    sudo crm  status
    
    #Cluster Summary:
     # Stack: corosync
     # Current DC: hanadb2 (version 2.0.5+20201202.ba59be712-4.9.1-2.0.5+20201202.ba59be712) - partition with quorum
     # Last updated: Mon Nov  8 23:01:27 2021
     # Last change:  Mon Nov  8 23:00:46 2021 by root via crm_attribute on hanadb1
     # 2 nodes configured
     # 11 resource instances configured
    
     #Node List:
     # Online: [ hanadb1 hanadb2 ]
    
     #Full List of Resources:
     # Clone Set: cln_azure-events [rsc_azure-events]:
       # Started: [ hanadb1 hanadb2 ]
     # Clone Set: cln_SAPHanaTopology_HN1_HDB03 [rsc_SAPHanaTopology_HN1_HDB03]:
       # Started: [ hanadb1 hanadb2 ]
     # Clone Set: msl_SAPHana_HN1_HDB03 [rsc_SAPHana_HN1_HDB03] (promotable):
       # Masters: [ hanadb1 ]
       # Slaves: [ hanadb2 ]
     # Resource Group: g_ip_HN1_HDB03:
       # rsc_ip_HN1_HDB03  (ocf::heartbeat:IPaddr2):        Started hanadb1
       # rsc_nc_HN1_HDB03  (ocf::heartbeat:azure-lb):       Started hanadb1
     # rsc_st_azure        (stonith:fence_azure_arm):       Started hanadb2
     # Clone Set: cln_fs_check_HN1_HDB03 [rsc_fs_check_HN1_HDB03]:
       # Started: [ hanadb1 hanadb2 ]
    

    يمكنك وضع /hana/shared في وضع القراءة فقط على عقدة نظام المجموعة النشطة باستخدام هذا الأمر:

    sudo mount -o ro 10.3.1.4:/hanadb1-shared-mnt00001 /hana/sharedb
    

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

    sudo crm status
    
    #Cluster Summary:
     # Stack: corosync
     # Current DC: hanadb2 (version 2.0.5+20201202.ba59be712-4.9.1-2.0.5+20201202.ba59be712) - partition with quorum
     # Last updated: Wed Nov 10 22:00:27 2021
     # Last change:  Wed Nov 10 21:59:47 2021 by root via crm_attribute on hanadb2
     # 2 nodes configured
     # 11 resource instances configured
    
     #Node List:
     # Online: [ hanadb1 hanadb2 ]
    
     #Full List of Resources:
     # Clone Set: cln_azure-events [rsc_azure-events]:
       # Started: [ hanadb1 hanadb2 ]
     # Clone Set: cln_SAPHanaTopology_HN1_HDB03 [rsc_SAPHanaTopology_HN1_HDB03]:
       # Started: [ hanadb1 hanadb2 ]
     # Clone Set: msl_SAPHana_HN1_HDB03 [rsc_SAPHana_HN1_HDB03] (promotable):
       # Masters: [ hanadb2 ]
       # Stopped: [ hanadb1 ]
     # Resource Group: g_ip_HN1_HDB03:
          # rsc_ip_HN1_HDB03  (ocf::heartbeat:IPaddr2):        Started hanadb2
       # rsc_nc_HN1_HDB03  (ocf::heartbeat:azure-lb):       Started hanadb2
     # rsc_st_azure        (stonith:fence_azure_arm):       Started hanadb2
     # Clone Set: cln_fs_check_HN1_HDB03 [rsc_fs_check_HN1_HDB03]:
       # Started: [ hanadb1 hanadb2 ]
    

    نوصي باختبار تكوين مجموعة SAP HANA بدقة عن طريق إجراء الاختبارات الموضحة في النسخ المتماثل لنظام SAP HANA.

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