تحديث البرنامج

SKOOR 9.0: نظرًا لأن SKOOR 9.0 يقوم بترقية PostgreSQL من الإصدار 13 إلى الإصدار 17، فإن هناك بعض الخطوات الإضافية المطلوبة كما هو موضح هنا.

SKOOR 8.1: يجب التحقق من مهام Selenium باستخدام لغة Python. لتجنب تسرب الموارد، تتم معالجة عملية driver.quit() في جميع الأحوال كما هو موضح هنا

يرجى اتباع أي تعليمات من دعم SKOOR قبل إجراء التحديث. قد تكون هناك خطوات تحضيرية إلزامية قد تؤدي إلى أخطاء إذا تم تجاهلها

بشكل عام، يعد تحديث حزم SKOOR Engine و/أو Collector المثبتة بالفعل من المستودع أمرًا بسيطًا للغاية:

dnf clean all
dnf update skoor-repo
dnf dnf clean all
dnf update eranger'*'

دليل سريع

يمكن استخدام الإجراء التالي كقائمة مرجعية للتحديث القياسي للبرنامج:

  1. مراجعة مستودعات rpm المطلوبة واشتراكات Redhat

  2. تحقق من توفر النسخ الاحتياطية الكاملة ونسخ التكوين. ومع ذلك، من الأفضل دائمًا إجراء نسخ احتياطي كامل قبل التحديث

  3. لاحظ حالة النظام العامة أو التقط لقطة شاشة لشريط الحالة في أسفل واجهة مستخدم محرك SKOOR

  4. قم بتعيين الصيانة العامة على جميع المجمعات المتعلقة بالتحديث (يمكن ترك المجمعات الخارجية دون تغيير أو تحديثها لاحقًا)

  5. على الأنظمة المكررة (الأساسية/الاحتياطية):

    1. تحقق من حالة النسخ المتماثل واتخذ الإجراءات اللازمة إذا كانت الحالة غير جيدة

    2. أوقف النسخ المتماثل

    3. قم بتحديث الخادم الاحتياطي

  6. قم بإجراء تحديث الخادم (الأساسي)

  7. ابدأ النسخ المتماثل إذا لم يكن قيد التشغيل

  8. تحديث المجمعات الخارجية إذا تم تكوينها

  9. تحديث عارض لوحة المعلومات إذا تم تكوينه

  10. التحقق من وجود ملفات تكوين جديدة بامتداد .rpmnew ودمج المحتوى مع الملفات الأصلية إذا لزم الأمر يمكن
    القيام بذلك باستخدام:
    rpmconf -a

  11. التحقق

    1. الحالة العامة للنظام هي نفسها كما كانت من قبل أو يمكن تفسير الاختلافات

    2. النسخ المتماثل يعمل كما كان من قبل

    3. يمكن الوصول إلى لوحات المعلومات / عارض لوحة المعلومات

    4. يتم إرسال التنبيهات (البريد الإلكتروني، الرسائل القصيرة، إلخ)

  12. إنهاء الصيانة

  13. إنشاء نسخة احتياطية كاملة جديدة

تفاصيل الدليل السريع

تنطبق المعلومات التالية على التثبيت القياسي لـ SKOOR. يجب مراعاة الإعدادات المخصصة

المسار القياسي للنسخ الاحتياطية:

/opt/eranger/server/backups

تشغيل النسخ الاحتياطي الكامل:

cd /var/lib/pgsql
sudo -u postgres /opt/eranger/bin/eranger-server-backup.sh full

تعيين الصيانة الشاملة على جميع المجمعات المتعلقة بالتحديث في /root /Collectors

تحقق من حالة النسخ المتماثل وأوقف وضع الاستعداد:

/opt/eranger/bin/eranger-server-replication.pl status
<standby-ip>
<standby-ip> checking ssh for user reranger
<primary-ip> is running
Last read on master(<primary-ip>) 0 seconds ago
/opt/eranger/bin/eranger-server-replication.pl stopstandby

بصمات GPG:

RPM-GPG-KEY-SKOOR:

0C18 95B8 11D4 71E5 D043 EFA3 69E1 147C 2CB4 0F3A

RPM-GPG-KEY-PGDG:

68c9 e2b9 1a37 d136 fe74 d176 1f16 d2e1 442d f0f8

RPM-GPG-KEY-TIMESCALEDB:

1005 fb68 604c e9b8 f687 9cf7 59f1 8edf 47f2 4417

التحديث إلى SKOOR 9.0

يرجى التأكد من عدم وجود روابط من داخل /var/lib/pgsql/13/data إلى مواقع خارج /var/lib/pgsql لأن هذا قد يسبب مشاكل أثناء الترقية. تأكد أيضًا من عدم وجود نقاط تثبيت لأجهزة أخرى داخل /var/lib/pgsql.

  • يلزم وجود إصدار محدث من skoor-repo (9.0).
    قم بتثبيته باستخدام:

    dnf clean all
    dnf update skoor-repo.rpm
  • إذا كان النسخ المتماثل قيد التشغيل، فيجب إيقافه قبل إجراء الترقية

    /opt/eranger/bin/eranger-server-replication.pl stopstandby

قم بترقية النسخة الاحتياطية أولاً (دون تشغيل البرنامج النصي update-postgresql)، ثم قم بترقية النسخة الأساسية وقم بإجراء createstandby.

  • يجب إجراء التحديث باستخدام تحديث كامل، وليس فقط dnf update “eranger-*” أو ما شابه.

    dnf clean all
    dnf update
  • بعد dnf update ، قم بتشغيل /opt/eranger/database-utils/bin/upgrade-postgresql.

    /opt/eranger/database-utils/bin/upgrade-postgresql

يؤدي هذا إلى ترقية مجموعة PostgreSQL 13 إلى مجموعة PostgreSQL 17.

  • بعد /opt/eranger/database-utils/bin/upgrade-postgresql ، يجب تحليل المجموعة الجديدة باستخدام

    su postgres -c "/usr/pgsql-17/bin/vacuumdb --all --analyze-in-stages"

هذه الخطوة مهمة جدًا. لا تتخطاها. يمكن استخدام النظام بالفعل أثناء التشغيل.

  • إذا كان كل شيء يعمل كما هو متوقع، يمكن إزالة المجموعة القديمة باستخدام

     /var/lib/pgsql/delete_old_cluster.sh

التحديث إلى SKOOR 8.1

يجب تكييف مهام Selenium عند استخدام نصوص Python. من المهم أن تتم معالجة عملية driver.quit() في جميع الأحوال. وإلا سيحدث تسرب في الموارد!

يتم توفير حزمة RPM جديدة eranger-python مع هذا الإصدار بشكل أساسي للنصوص البرمجية في SKOOR Studio. يوصى باستخدام بيئة Python هذه أيضًا للنصوص البرمجية القديمة للاستيراد.

التحديث إلى SKOOR 7.2

يستخدم كل مجمع SKOOR دليلًا واحدًا على الأقل لتخزين ملفات القياس المؤقتة. مع SKOOR 7.2، سيتم تنظيف جميع الدلائل المؤقتة للمجمع بانتظام:

  • يتم حذف الملفات التي يزيد عمرها عن 72 ساعة

  • يتم حذف الدلائل الفارغة التي يزيد عمرها عن 24 ساعة

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

استخدم الأمر التالي للحصول على قائمة بالدلائل المؤقتة للمجمع (يتم تشغيله على المجمع المحلي وكذلك على جميع المجمعات الخارجية):

grep -oP "server\\d+_fetch_parse_dir\\s*=\\s*/var/opt/run/eranger/collector/.+" /etc/opt/eranger/eranger-collector.cfg | perl -pe 's/server\d+_fetch_parse_dir\s*=\s*//g'

يرجى التأكد من أنه يمكن مسح جميع الملفات الموجودة في هذه الدلائل بأمان.

التحديث إلى SKOOR 7.0

تم استبدال حزمة RPM sdaas-webservice بالحزمة الجديدة eranger-etl المتوفرة أيضًا في مستودع SKOOR RPM.

يرجى تثبيت eranger-etl بعد الترقية إلى الإصدار 7.0 (يجب السماح بمسح sdaas-webservice لتجنب حدوث تعارض):

yum remove sdaas-webservice && yum install eranger-etl