دليل عارض لوحة القيادة SKOOR

مقدمة

يغطي هذا الدليل تثبيت عارض SKOOR Dashboard Viewer. لتثبيت SKOOR Engine أو Redhat، يرجى الرجوع إلى دليل تثبيت SKOOR Engine. للحصول على معلومات حول بنية مكونات لوحة التحكم، يرجى زيارة صفحة المكونات في قسم البنية في هذا الدليل.

المتطلبات الأساسية

الأجهزة

نظام عارض لوحة التحكم

تعمل خدمة العارض على جهاز صغير. يكفي 2 جيجابايت من ذاكرة الوصول العشوائي و2 نواة وحدة معالجة مركزية.

نظام موفر لوحة التحكم

عادةً ما يتم تثبيت خدمة موفر لوحة المعلومات على جهاز خادم SKOOR Engine. إذا كان حجم هذا الجهاز مع بعض المساحة الرأسية، فيجب أن يعمل هذا المكون بشكل جيد على نفس النظام. أيضًا، في معظم الحالات يكون هناك مكوّن Dashboards مثبت بالفعل وله نفس المتطلبات الأساسية.

البرمجيات

نظام عارض لوحة المعلومات

يتطلب عارض لوحة المعلومات خادم apache httpd مع mod_ssl. يرجى تثبيت RPMs المعنية من المستودعات وبدء تشغيل الخادم:

$ sudo yum install httpd mod_ssl
$ sudo /sbin/service httpd start

تكوين httpd لبدء التشغيل أثناء تمهيد النظام:

$ sudo systemctl enable httpd

تكوين Firewalld:

$ sudo firewall-cmd --add-port=443/tcp --permanent
$ sudo firewall-cmd --reload

قبل تثبيت مكونات SKOOR، يجب تعطيل SELINUX:

# vi /etc/selinux/config
SELINUX=permissive

# setenforce 0
#
# sestatus
...
Current mode:                 permissive
...

أخيرًا، يحتاج عارض لوحة التحكم إلى موفر لوحة التحكم الذي يغذيها بالبيانات من خدمة SKOOR Webservice.

نظام موفر لوحة المعلومات

يجب تثبيت مكونات SKOOR التالية على النظام حيث سيتم تثبيت مزود لوحة التحكم:

وبالطبع، بالطبع، يجب أن يتوفر مثيل لمحرك SKOOR.

التثبيت

نظام عارض لوحات المعلومات

التثبيت من مستودع SKOOR RPM باستخدام yum:

sudo yum install eranger-nodejs eranger-dashboard-viewer-service eranger-doc

لتهيئة عارض لوحةالتحكم، افتح الملف /etc/opt/eranger/eranger-dashboard-viewer-service.json.

مثال:

{
  "port": 8092,
  "presharedKey": "1234567890",
  "logLevel": "debug",
  "defaultUsername": "dashboard-user",
  "defaultPassword": "dashboard-user"
}


المعلمة

الوصف

port

منفذ tcp حيث يمكن الوصول إلى الخدمة محلياً من قبل خادم الويب

presharedKey

يجب مشاركة هذا المفتاح بين موفر لوحة المعلومات وخدمة عارض لوحة المعلومات. هذا لأسباب أمنية، لذا يجب تغييره إلى قيمة فريدة.

logLevel

قم بتعيين هذه المعلمة على أي من القيم التالية: تصحيح، معلومات، تحذير، خطأ

defaultUsername

يمكن عرض لوحات المعلومات مع أو بدون تسجيل دخول المستخدم. يجب تعيين مستخدم وكلمة مرور للوحة المعلومات الافتراضية. يجب تكوين هذا مع مستخدم SKOOR Engine للقراءة فقط.

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

defaultPassword

تُستخدم كلمة المرور هذه، إلى جانب اسم المستخدم الافتراضي، لمصادقة المستخدم الذي تم تكوينه باستخدام اسم المستخدم الافتراضي


تحقق من حالة عارض لوحة التحكم عن طريق طلب عنوان URL التالي باستخدام متصفح:

https://<اسم خادم العارض>/skoor-dashboard-viewer-viewer-service/status

يجب أن يبدو الإخراج كما يلي:

{"status":"ok"}


بافتراض أن عارض لوحة التحكم يجب أن يكون قابلاً للوصول إليه تحت رقم FQDN المخصص له، على سبيل المثال hostname.domain.com، ويجب أن يخدم المحتوى باستخدام اتصال مشفر فقط، قم بتكوين خادم الويب لإعادة التوجيه التلقائي (HTTP → HTTPS) وإعادة التوجيه إلى الصفحة الرئيسية لعارض لوحة التحكم، عن طريق إضافة ملف تكوين apache التالي (قم بتحرير اسم الخادم باستخدام رقم FQDN الخاص به والمعلمات التي تصف المسار إلى ملفات شهادة SSL):

ServerName hostname.domain.com
LoadModule ssl_module modules/mod_ssl.so
Listen 443

<VirtualHost *:80>
    # Rewrite http -> https
    RewriteEngine On
    RewriteCond %{HTTPS} !=on
    RewriteRule ^/?(.*) https://%{SERVER_NAME}/$1 [R,L]
</VirtualHost>

<VirtualHost *:443>
    DocumentRoot "/srv/eranger/html"
    ErrorLog logs/ssl_error_log
    TransferLog logs/ssl_access_log
    LogLevel warn

    # Rewrite only / without anything else to /skoor-dashboard-viewer/
    RewriteEngine On
    RewriteRule ^/$ https://%{SERVER_NAME}/skoor-dashboard-viewer/ [R,L]

    # Valid HTTP protocol requests Only
    RewriteCond %{THE_REQUEST} !^[A-Z]{3,9}\ .+\ HTTP/(0\.9|1\.0|1\.1) [NC]
    RewriteRule .* - [F,NS,L]

    # Safe request methods only
    RewriteCond %{REQUEST_METHOD} !^(GET|HEAD|POST|PROPFIND|OPTIONS)$ [NC]
    RewriteRule .* - [F,NS,L]

    SSLEngine on
    SSLProtocol all -SSLv2 -SSLv3
    SSLCipherSuite ALL:!ADH:!EXPORT:!SSLv2:RC4+RSA:+HIGH:+MEDIUM:+LOW
    SSLCertificateFile /etc/pki/tls/certs/hostname.domain.com.crt
    SSLCertificateKeyFile /etc/pki/tls/private/hostname.domain.com.key
    SSLCertificateChainFile /etc/pki/tls/certs/intercerts.domain.com.crt
    
    <Files ~ "\.(cgi|shtml|phtml|php3?)$">
        SSLOptions +StdEnvVars
    </Files>

    SetEnvIf User-Agent ".*MSIE.*" \
        nokeepalive ssl-unclean-shutdown \
        downgrade-1.0 force-response-1.0

    CustomLog logs/ssl_request_log \
        "%t %h %{SSL_PROTOCOL}x %{SSL_CIPHER}x \"%r\" %b"
</VirtualHost>

يمكن حفظ الملف باسم /etc/httpd/conf.d/eranger-dashboard-viewer.conf.

يمكن تعطيل ملفات تكوين apache الافتراضية الموجودة مسبقًا عادةً ssl.conf و welcome.conf عن طريق إعادة تسميتها إلى ssl.conf_ و welcome.conf_ على سبيل المثال. اترك ملفي تكوين Apache eranger-dashboards.conf و eranger-dashboard-viewer-service.conf دون تغيير.

لكي يعمل هذا التكوين، يجب أن يكون دليل DocumentRoot موجودًا. قم بإنشائه، ثم أعد تشغيل خادم الويب باستخدام الأوامر التالية:

$ sudo mkdir -p /srv/eranger/html
$ sudo systemctl restart httpd

نظام موفر لوحة التحكم

قم بتثبيت حزمة nodejs وحزمة مزود عارض لوحة المعلومات:

$ sudo yum install eranger-dashboard-viewer-provider

قم بتهيئة موفر عارض لوحة القيادة عن طريق تعديل الملف /etc/opt/per/eranger/eranger-dashboard-viewer-provider.json. فيما يلي وصف موجز للخصائص المتاحة:

المعلمة

الوصف

logLevel

اختر أحد المستويات التالية: تصحيح، معلومات، تحذير، خطأ، خطأ

webserviceUrl

خدمة الويب للحصول على البيانات من

tenantId

تحديد مستأجرين مختلفين إذا كان هناك أكثر من مستأجرين يغذون نفس عارض لوحة البيانات. القيمة التي تم تكوينها مسبقاً هي "افتراضي". تسجيل الدخول إلى المستأجر "الافتراضي" لا يتطلب بادئة tenandId. يمكن تسجيل دخول المستأجرين الآخرين عن طريق إضافة "<tenantname>/" قبل اسم المستخدم

viewerServices

تُستخدم هذه المعلمة لتهيئة عارض واحد أو أكثر باسم وعنوان url الخاص به والمفتاح المشترك المسبق.

  • يجب أن تكون معلمة المفتاح المشترك المسبق متطابقة على جميع الموفرين الذين يغذون نفس خدمة العارض

  • يمكن أن تشير معلمة url مباشرةً إلى خدمة الموفر إذا كان العارض مثبتًا على المضيف المحلي:

    "url": "http://localhost:8092"
  • إذا كان العارض مثبتًا في منطقة منزوعة السلاح، يجب أن يشير عنوان url إلى المنفذ 443 الذي يخدمه apache httpd:

    "url": "https://<viewer server name or ip>/skoor-dashboard-viewer-service"

presharedKey

يجب مشاركة هذا المفتاح بين موفر لوحة المعلومات وخدمة عارض لوحة المعلومات. هذا لأسباب أمنية، لذا يجب تغييره إلى قيمة فريدة.

مثال :

{
  "logLevel": "debug",
  "webserviceUrl": "http://localhost:8090",
  "authUrl": "http://localhost:8094",
  "tenantId": "default",
  "viewerServices": {
    "dashboard-viewer": {
      "url": "https://<viewer server name or ip>/skoor-dashboard-viewer-service",
      "presharedKey": "1234567890"
    }
  }
}


أعد تشغيل خدمة الموفر الآن:

sudo systemctl restart eranger-dashboard-viewer-provider.service

تحديث

قم بتحديث أي حزمة SKOOR باستخدام تحديث yum:

$ sudo yum update eranger-dashboards-*.rpm

اختبار الدخان

افتح عنوان URL https:// https://<<اسم خادم العارض>/skoor-dashboard-viewer في متصفح الويب. يجب عرض لوحة تحكم مرئية للمستخدم الافتراضي الذي تم تكوينه دون الحاجة إلى تسجيل الدخول أولاً. إذا كان ذلك متاحًا، يمكن التبديل إلى مستأجر مختلف عن طريق إضافة معلمة عنوان URLtenantId إلى عنوان URL: https: //<<اسمخادم العارض>>/skoor-dashoor-dashboard-viewer?tenantId=someTenant

في قائمة المستخدم، يسمح رابط تسجيل الدخول بتسجيل الدخول باستخدام مستخدم مختلف، وعادةً ما يسمح بعرض معلومات مميزة لا ينبغي أن تكون مرئية للمستخدم الافتراضي:

انقر فوق تسجيل الدخول وقدّم بيانات الاعتماد، واختيارياً باستخدام مستأجر مختلف قبل اسم تسجيل الدخول:

يجب أن تكون لوحات المعلومات الخاصة مرئية الآن.