oVirt في ساعتين. الجزء 4. العمليات الأساسية

نلقي نظرة اليوم على عدد من العمليات الأساسية التي سيحتاج مسؤول البيئة الافتراضية إلى تنفيذها بانتظام. هذه المادة هي استمرار لسلسلة oVirt: جزء 1 ، جزء 2 و جزء 3 :

المحتوى




مقالات


  1. المقدمة
  2. تركيب مدير (محرك ovirt) و hypervisors (المضيفين)
  3. إعدادات إضافية
  4. العمليات الأساسية - نحن هنا

تقليديا ، للحصول على تفاصيل حول المهام الإدارية ، مرحبا بكم في الوثائق .

عند دخول oVirt ، سترى بوابتين:

  • بوابة الإدارة
  • بوابة VM

الأول مخصص للمشرف والمهام الإدارية ، والثاني - لعملاء الأجهزة ، ولكن يمكن أيضًا استخدامه بواسطة المسؤول - بعض الوظائف أكثر ملاءمة هناك.

يوجد في أعلى نافذة كل مجموعة من كائنات oVirt مربع بحث قوي ، مع مطالبات سياقية.

كمثال ، يؤدي تحديد مضيفي المشكلة في لوحة التحكم في الواقع إلى التصفية:

status = unassigned or status = maintenance or status = installing or status = reboot or status = preparingformaintenance or status = pendingapproval or status = connecting or status = installingos or status = kdumping


إنشاء VM والقالب


أعتقد أنك أنشأت بالفعل VM بسيطًا بالفعل في الجزء 2 ، والآن سنتعرف على كيانات oVirt الأخرى التي ترتبط مباشرة بالأجهزة الافتراضية - الأجهزة الافتراضية نفسها والقوالب والمجمعات.

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

التجمع هو مجموعة من الآلات المتطابقة التي تم إنشاؤها من قالب واحد. ملائم لـ VDI (البنية الأساسية لسطح المكتب الافتراضي) ، عندما يحتاج العشرات أو المئات من المستخدمين إلى توفير بيئة عمل متطابقة ويتم ذلك حرفياً في لحظات. اقرأ المزيد حول التجمعات في الوثائق .

لنقم بإنشاء قالب يمكننا من خلاله استنساخ جهاز تم إنشاؤه سابقًا ، ولكن للتوضيح سنذهب في الاتجاه الآخر - استيراد قالب من المجموعة الخارجية Glance Images: Storage -> Domains -> ovirt-image-repository (1)، Import (2):


Fig. 1 - استيراد صورة Fedora 32.

نضع علامة على "استيراد كقالب" (3 ، استيراد كقالب) ، ونعطي القالب اسمًا (4). يوصى بشدة بإعطاء القرص اسم مألوف (5 ، Disk Alias).

يتم مراقبة تقدم المهام بشكل ملائم في قسم المهام .


تين. 2 - التقدم في استكمال المهام في oVirt.

بعد نجاح التحميل ، تتم إضافة القالب إلى القائمة.


تين. 3 - القوالب.

بناء على القالب المحمّل ، قم بإنشاء تجمع:


الشكل. 4 - إنشاء بركة.

انتقل إلى Compute -> Pools (1)، New (2)، حدد نموذج Fedora32 (3)، الإصدار - latests (4) ، وقم بتعيين الاسم "myPoolA- ؟؟" (5). نحن لا نلمس عدد حقول VM و VM Prestarted حتى الآن ، وسوف نعود إليها في الخطوة التالية. بعد ذلك ، قم بتشغيل الإعدادات المتقدمة (6) وانتقل إلى إعداد التشغيل الأولي.


تين. 4 - تكوين بدء التشغيل الأولي.

لان من Glance Images ، قمنا بتنزيل Cloud Image ، نحتاج إلى تكوين المصادقة. تحقق من تمكين "استخدام Cloud-Init / Sysprep" (1) ، افتح المصادقة (2) ، حدد اسم المستخدم ، على سبيل المثال ، الجذر أو المستخدم (3). لإنشاء كلمة مرور فريدة للتجمع ، قم بتعطيل "استخدام كلمة المرور المكونة بالفعل" (4) وأدخل كلمة المرور الخاصة بك (5). انقر فوق "موافق" - تم إنشاء التجمع ، ظهرت آلات متطابقة في Compute -> Virtual Machines (انتبه إلى رمزها ، فهي مختلفة عن جهاز يعمل بشكل منفصل).

ملاحظة حول اسم التجمع. كما لاحظت ، في النهاية هو "- ؟؟". يتضمن هذا الترقيم "المعدل" للآلات (مكمل بالأصفار - 01 ، 02 ، ... ، 09 ، 10 ، إلخ.) وإلا ، فإن الترقيم سيكون أرقامًا طبيعية بدون محاذاة (1 ، 2 ، ... ، 9 ، 10 ، ...)
قبل المتابعة ، دعنا نعود إلى إعدادات التجمع. لاحظ أن حقل "عدد الأجهزة الافتراضية" قد تغير إلى "زيادة عدد الأجهزة الافتراضية في التجمع بمقدار". نحدد 31 هنا ويصبح عدد الأجهزة الموجودة في التجمع على الفور تقريبًا 32. الآن في حقل "Prestarted VM" ندخل 16 - وهذا سيجبر oVirt على إبقاء العدد المحدد من الأجهزة قيد التشغيل مسبقًا وجاهزًا للاتصال بالمستخدمين. هذا هو المكان الذي سننتهي فيه من الآلات والقوالب والمجمعات وننتقل إلى الترحيل.

رموز VM الرئيسية:

  • وحدة حامل - خادم
  • شاشة - سطح المكتب ؛
  • 3 أبراج - خادم من حوض السباحة ؛
  • 3 مراقبين - سطح المكتب من حمام السباحة ؛
  • الترجيع (الترجيع) - عديم الحالة (تقوم الآلة بإعادة تعيين حالتها إلى حالتها الأصلية بعد إيقاف التشغيل ؛ يتم إرجاع جميع التغييرات) ؛
  • مثلث في الشاشة البرتقالية - يتطلب تغيير التكوين المطلوب إعادة تشغيل.


ترحيل VM (الترحيل المباشر)


يعد ترحيل حالة الجهاز الذي تم تشغيله أمرًا بسيطًا - انقر بزر الماوس الأيمن فوق جهاز أو مجموعة من الأجهزة. الإجراء مشابه لإجراء vMotion في vSphere.


تين. 5 - ابدأ الترحيل.

Compute -> Virtual Machine ، حدد جهازًا واحدًا أو أكثر ، Migrate.


تين. 6 - يمكن ملاحظة عملية الترحيل في المضيفين (Compute -> Hosts).

في وقت واحد ، لا تتحرك أكثر من سيارتين.

ترحيل التخزين


لكن هذا الإجراء قد يبدو غير عادي لمستخدم VMware vSphere ، لأنه تختلف طرق تخزين كل من صور القرص وتكوينات الماكينة في الأنظمة.
لنقل تخزين الجهاز الظاهري ، انتقل إلى الأقراص (التخزين -> الأقراص) أو المجالات (التخزين -> المجالات -> {اسم النطاق} -> الأقراص). حدد محرك (محركات) الأقراص واضغط على Move . هذا كل شيء ، يتم إرسال محرك (محركات) الأقراص إلى وحدة تخزين أخرى.

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

إعادة تسمية VM والقرص


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

من الممكن أيضًا إعادة تسمية القرص ، ولكن المسار أطول من
e: Compute -> Virtual Machine -> {VM Name} -> Disks -> {VM Disk Alias} -> Edit، Alias.
معرفات الكائنات الداخلية مبنية على UUIDs. عند إعادة التسمية ، نقوم بالفعل بتغيير الأسماء المستعارة.

يتعامل القسم مع التحديث ، وهو التحديث (طفيف) ، وليس الترقية (رئيسي) ، عندما يتغير رقم الإصدار (هذا إجراء أكثر تعقيدًا وليس جزءًا من المهام اليومية).

تحديث oVirt-Host (برنامج مراقبة الأجهزة الافتراضية)


تحديثات المضيف أبسط من vSphere ، مدير التحديث في oVirt مدمج عضوياً في النظام الأساسي ولا يتطلب أي إعدادات. وثائق التحديث الرسمية .


تين. 7 - في حالة وجود تحديثات ، سيقوم المدير بالإبلاغ عنها برمز قرص مضغوط.


تين. 8 - قبل بدء التحديث ، تحتاج إلى تمكين وضع الصيانة (الإدارة -> الصيانة) ، سيبدأ تلقائيًا ترحيل VM إلى مضيفين آخرين (انظر الشكل 6) والتحضير للتحديث.


تين. 9 - يشير رمز مفتاح الربط إلى أن المضيف جاهز للخدمة.


تين. 10 - التثبيت -> تبدأ الترقية عملية الترقية.


تين. 11 - يمكننا أن نطلب من المدير إعطاء الأمر للمضيف بإعادة التشغيل بعد اكتمال التحديث ، حتى يصبح ساري المفعول.


تين. 12 - بعد إعادة التشغيل ، نقوم بإخراج برنامج Hypervisor من وضع الخدمة (الإدارة -> تنشيط).

نمر عبر جميع المضيفين وتحديثها.

تحديث oVirt-Engine (مدير)


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

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

    $ sudo engine-upgrade-check
    $ sudo update ovirt\*setup\*
  3. يتم تنفيذ الجزء الرئيسي من التحديث بواسطة برنامج إعداد المحرك. ستطرح عددًا من أسئلة التكوين ، ثم توقف خدمة محرك ovirt ، وتنزيل وتثبيت الحزم المحدثة ، وإنشاء أرشيف وتحديث قاعدة البيانات ، وتطبيق التكوين المحدث ، وبدء خدمة محرك ovirt.

    $ sudo engine-setup

    عند التحديث الناجح ، سوف نتلقى الرسالة:

    Execution of setup completed successfully

    مثال على الإخراج من البرنامج النصي لإعداد المحرك
    $ sudo engine-setup

    [ INFO  ] Stage: Initializing
    [ INFO  ] Stage: Environment setup
              Configuration files: ['/etc/ovirt-engine-setup.conf.d/10-packaging-jboss.conf', '/etc/ovirt-engine-setup.conf.d/10-packaging.conf', '/etc/ovirt-engine-setup.conf.d/20-setup-ovirt-post.conf']
              Log file: /var/log/ovirt-engine/setup/ovirt-engine-setup-20200522232449-o97vyx.log
              Version: otopi-1.8.2 (otopi-1.8.2-1.el7)
    [ INFO  ] Stage: Environment packages setup
    [ INFO  ] Stage: Programs detection
    [ INFO  ] Stage: Environment setup (late)
    [ INFO  ] Stage: Environment customization
             
              --== PRODUCT OPTIONS ==--
             
             
              --== PACKAGES ==--
             
    [ INFO  ] Checking for product updates...
              Setup needs to install or update the following packages:
              [updated] ovirt-engine-4.3.5.5-1.el7.noarch will be updated
    ...
              [update] ovirt-engine-wildfly-overlay-17.0.1-1.el7.noarch is an update
              Replying "No" will abort Setup. You can pass the option "--offline" to prevent installing or updating packages.
              Do you wish to update them now? (Yes, No) [Yes]: 
    [ INFO  ] Checking for an update for Setup...
             
              --== NETWORK CONFIGURATION ==--
             
              Setup can automatically configure the firewall on this system.
              Note: automatic configuration of the firewall may overwrite current settings.
              NOTICE: iptables is deprecated and will be removed in future releases
              Do you want Setup to configure the firewall? (Yes, No) [Yes]: 
    [ INFO  ] firewalld will be configured as firewall manager.
             
              --== DATABASE CONFIGURATION ==--
             
              The detected DWH database size is 439 MB.
              Setup can backup the existing database. The time and space required for the database backup depend on its size. This process takes time, and in some cases (for instance, when the size is few GBs) may take several hours to complete.
              If you choose to not back up the database, and Setup later fails for some reason, it will not be able to restore the database and all DWH data will be lost.
              Would you like to backup the existing database before upgrading it? (Yes, No) [Yes]: 
              Perform full vacuum on the oVirt engine history
              database ovirt_engine_history@localhost?
              This operation may take a while depending on this setup health and the
              configuration of the db vacuum process.
              See https://www.postgresql.org/docs/10/sql-vacuum.html
              (Yes, No) [No]: 
             
              --== OVIRT ENGINE CONFIGURATION ==--
             
              Perform full vacuum on the engine database engine@localhost?
              This operation may take a while depending on this setup health and the
              configuration of the db vacuum process.
              See https://www.postgresql.org/docs/10/sql-vacuum.html
              (Yes, No) [No]: 
             
              --== STORAGE CONFIGURATION ==--
             
             
              --== PKI CONFIGURATION ==--
             
             
              --== APACHE CONFIGURATION ==--
             
             
              --== SYSTEM CONFIGURATION ==--
             
             
              --== MISC CONFIGURATION ==--
             
             
              --== END OF CONFIGURATION ==--
             
    [ INFO  ] Stage: Setup validation
              During execution engine service will be stopped (OK, Cancel) [OK]: 
    [ INFO  ] Cleaning stale zombie tasks and commands
             
              --== CONFIGURATION PREVIEW ==--
             
              Default SAN wipe after delete           : False
              Firewall manager                        : firewalld
              Update Firewall                         : True
              Host FQDN                               : ovirt.example.com
              Upgrade packages                        : True
              Set up Cinderlib integration            : False
              Engine database secured connection      : False
              Engine database user name               : engine
              Engine database name                    : engine
              Engine database host                    : localhost
              Engine database port                    : 5432
              Engine database host name validation    : False
              Engine installation                     : True
              PKI organization                        : JSC Open Lab
              Set up ovirt-provider-ovn               : False
              Configure WebSocket Proxy               : True
              DWH installation                        : True
              DWH database secured connection         : False
              DWH database host                       : localhost
              DWH database user name                  : ovirt_engine_history
              DWH database name                       : ovirt_engine_history
              Backup DWH database                     : True
              DWH database port                       : 5432
              DWH database host name validation       : False
              Configure Image I/O Proxy               : True
              Configure VMConsole Proxy               : True
             
              Please confirm installation settings (OK, Cancel) [OK]: 
    [ INFO  ] Cleaning async tasks and compensations
    [ INFO  ] Unlocking existing entities
    [ INFO  ] Checking the Engine database consistency
    [ INFO  ] Stage: Transaction setup
    [ INFO  ] Stopping engine service
    [ INFO  ] Stopping ovirt-fence-kdump-listener service
    [ INFO  ] Stopping dwh service
    [ INFO  ] Stopping Image I/O Proxy service
    [ INFO  ] Stopping vmconsole-proxy service
    [ INFO  ] Stopping websocket-proxy service
    [ INFO  ] Stage: Misc configuration (early)
    [ INFO  ] Stage: Package installation
    [ INFO  ] Yum Status: Downloading Packages
    ...
    [ INFO  ] Stage: Misc configuration
    [ INFO  ] Upgrading CA
    [ INFO  ] Not rewriting /etc/ovirt-imageio-proxy/ovirt-imageio-proxy.conf because it was changed manually. You might want to compare it with /etc/ovirt-imageio-proxy/ovirt-imageio-proxy.conf.new and edit as needed.
    [ INFO  ] Backing up database localhost:ovirt_engine_history to '/var/lib/ovirt-engine-dwh/backups/dwh-20200522233531.6LDItj.dump'.
    [ INFO  ] Creating/refreshing DWH database schema
    [ INFO  ] Configuring Image I/O Proxy
    [ INFO  ] Configuring WebSocket Proxy
    [ INFO  ] Backing up database localhost:engine to '/var/lib/ovirt-engine/backups/engine-20200522233538.LZCwME.dump'.
    [ INFO  ] Creating/refreshing Engine database schema
    [ INFO  ] Creating/refreshing Engine 'internal' domain database schema
              Unregistering existing client registration info.
    [ INFO  ] Generating post install configuration file '/etc/ovirt-engine-setup.conf.d/20-setup-ovirt-post.conf'
    [ INFO  ] Stage: Transaction commit
    [ INFO  ] Stage: Closing up
    [ INFO  ] Starting engine service
    [ INFO  ] Starting dwh service
    [ INFO  ] Restarting ovirt-vmconsole proxy service
             
              --== SUMMARY ==--
             
    [ INFO  ] Restarting httpd
              Web access is enabled at:
                  http://ovirt.example.com:80/ovirt-engine
                  https://ovirt.example.com:443/ovirt-engine
              SSH fingerprint: SHA256:JvilhbwRuMjBCJEjQVPlFQgk0aLaKz7Od0WzsZtx4j4
              Did not update /etc/ovirt-imageio-proxy/ovirt-imageio-proxy.conf because it was changed manually. You might want to compare it with /etc/ovirt-imageio-proxy/ovirt-imageio-proxy.conf.new and edit as needed.
             
              --== END OF SUMMARY ==--
             
    [ INFO  ] Stage: Clean up
              Log file is located at /var/log/ovirt-engine/setup/ovirt-engine-setup-20200522232449-o97vyx.log
    [ INFO  ] Generating answer file '/var/lib/ovirt-engine/setup/answers/20200522233608-setup.conf'
    [ INFO  ] Stage: Pre-termination
    [ INFO  ] Stage: Termination
    [ INFO  ] Execution of setup completed successfully

  4. نقوم بتحديث نظام التشغيل والحزم الإضافية الأخرى:
    $ sudo yum update

    إذا لزم الأمر (تحديث النواة أو مكوناتها) فإننا نعيد تشغيل الجهاز.


استيراد VM


يمكنك الاستيراد من VMware و Export Domain (كيان خاص oVirt لتبادل الصور بين مركز البيانات) والأجهزة الافتراضية (OVA) و XEN و KVM. جميع الخيارات المدعومة رسميًا:

  1. يعمل استيراد VM من VMware ESXi / VSPHERE على مصادقة المضيف + للمضيف حيث يعمل ESXi / VSPHERE على
  2. استيراد KVM / Xen VM من Libvirt: يحدد المستخدم مصادقة URL + للمضيف حيث يتم تشغيل Libvirt
  3. استيراد KVM / Xen VM من مسار معين: يحدد المستخدم مسار nfs / posix لتكوين وأقراص VM
  4. استيراد VM الذي تم تصديره من VMware: حدد المستخدم مسار nfs / posix إلى ملف ova
  5. تحميل KVM / Xen VM: يحدد المستخدم ملفات التكوين والأقراص
  6. تحميل VM الذي تم تصديره من VMware: يحدد المستخدم ملف ova
  7. استيراد VM من المجلد: يحدد المستخدم المسار إلى المجلد الذي يحتوي على KVM / Xen VMs أو VM المصدرة من VMware

دعنا نتناول خيارين - استيراد من vSphere وآلة قائمة بذاتها مع KVM. لبدء عملية الاستيراد في Compute -> Virtual Machines ، انقر فوق الزر للحصول على عناصر قائمة إضافية (3 نقاط رأسية ، انظر الشكل 13). يجب إيقاف تشغيل الجهاز المصدر.

استيراد الآلات من vCenter


في المعالج:

  • مصدر البيانات: VMware؛
  • الموفر الخارجي: في الإدارة -> الموفرون يمكنك تكوين قالب للعمليات المتكررة ؛
  • vCenter: اسم أو عنوان خادم vCenter ؛
  • ESXi: من أي مراقب مراقبة سوف نلتقط السيارة ؛
  • مقياس البيانات: المسار الكامل إلى الكتلة ؛
  • العنقود: يحتوي على عناقيد.
  • اسم المستخدم / كلمة المرور: اسم المستخدم وكلمة المرور للاتصال بـ vCenter ؛
  • تحقق من شهادة SSL الخاصة بالخادم: عند استخدام الشهادات الموقعة ذاتيًا ، سيتعين عليك تعطيل التحقق منها.


تين. 13 - استيراد VMs من VMware vSphere.

استيراد ماكينات من KVM


تفاصيل حول الاستيراد من KVM في الوثائق .

أولاً ، يجب تمكين الاتصال بـ KVM من الخارج ، إذا لم يتم تكوين ذلك من قبل.

إذن لتصدير الآلات إلى KVM
, . ! , , , . , ., ArchLinux.

, libvirtd

$ sudo vim /etc/sysconfig/libvirtd



LIBVIRTD_ARGS="--listen"



$ sudo cp /etc/libvirt/libvirtd.conf /etc/libvirt/libvirtd.conf.`date +%F`
$ sudo vim /etc/libvirt/libvirtd.conf

:

listen_tls = 0
listen_tcp = 1
listen_addr = "0.0.0.0"
auth_tcp = "none"



log_outputs="3:syslog:libvirtd"

libvirtd. , libvirtd > 0.6 ( libvirtd --version), .

$ sudo service libvirtd restart

tcp:16509.

CentOS 7 ( permanent):

$ sudo firewall-cmd --add-rich-rule='rule family="ipv4" source address="172.17.71.32/30" port port="16509" protocol="tcp" accept'

:

$ virsh -r -c 'qemu+tcp://mgmt@kvm46.example.com/system' list --all


علاوة على ذلك ، فإن الاستيراد نفسه بسيط للغاية:

Compute -> Virtual Machines ->: (قائمة إضافية ، 3 نقاط رأسية) -> Import -> Source (KVM via libvirt) -> URI (qemu + tcp: //kvm46.example.com / system) -> طلب المصادقة (تعطيل) -> تحميل.

نحتفل بالآلات اللازمة ، حدد سياسة التخصيص (سياسة التخصيص).

سياسة التخصيص - يفضل Preallocated لوحدات التخزين ذات الكشف الصفري للأجهزة ، وبالنسبة للأحجام ذات الإدخال / الإخراج العالي ، والأحجام ذات الإشغال العالي ، وما إلى ذلك ، يمكن أن يكون مخصصًا بخلاف ذلك. على أي حال ، ننظر إلى الوضع ونحلله.

علامات "استنساخ" المحددة ، لكنها لا تنسخ السيارة. على سبيل المثال ، سيتم تعيين عنوان MAC جديد لواجهة الشبكة.

في علامة التبويب عام ، من المهم تحديد نوع نظام التشغيل الصحيح ، وعلى علامة التبويب واجهات الشبكة ، يمكنك تحديد الشبكة المطلوبة. بعد ذلك ، "استيراد" ، واعتمادًا على سرعة المعدات ، نحصل على الماكينة المستوردة. بعد الاستيراد (أو قبل) ، لا تنس تثبيت وكيل ovirt-guest-agent.


ادارة المهام


عندما تتجمد المهام ، تبدأ "الرقصات" الصعبة ، وسأحاول أن أتطرق إلى بعضها. مع السلوك المنتظم ، يمكن للمرء أن يلاحظها في الشكل. 2.

إذا تم تنفيذ المهمة بشكل أو بآخر ، تكون الأدوات العادية كافية. مع البيمرات والصور يمكنك أن ترى هنا .

يتم تنفيذ المهام على oVirt-host.

[mgmt@ovirt-nodeNN] $ sudo vdsm-client Host getAllTasksInfo
[mgmt@ovirt-nodeNN] $ sudo vdsm-client Task getStatus taskID=<TASKID>
[mgmt@ovirt-nodeNN] $ sudo vdsm-client Task stop taskID=<TaskID>
[mgmt@ovirt-nodeNN] $ sudo vdsm-client Task clear taskID=<TaskID>
[mgmt@ovirt-nodeNN] $ sudo vdsm-client Host getAllTasksInfo

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

$ sudo vdsm-client Task -h

...
طرق المهام:
الأسلوب [arg = value]
getStatus الحصول على معلومات حالة المهمة.
إعادة التراجع عن مهمة لاستعادة حالة النظام السابقة.
مسح تجاهل المعلومات حول مهمة منتهية.
getInfo احصل على معلومات حول مهمة.
إيقاف إيقاف مهمة قيد التشغيل حاليًا.

ومع ذلك ، تصبح الحركات أكثر تعقيدًا إذا تعذر إيقاف المهمة باستخدام الطرق القياسية.
رسميًا ، يتم استخدام أداة تنظيف المهام لهذا:

[mgmt@ovirt-engine] $ sudo /usr/share/ovirt-engine/setup/dbutils/taskcleaner.sh --help

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

لذا ، نقوم بتوصيل مجموعة البرامج

[mgmt@ovirt-engine] $ sudo scl enable rh-postgresql10 "psql -d engine -U postgres"

بعد ذلك ، اتصل بقاعدة البيانات

su postgres
psql -d engine -U postgres
select * from job order by start_time desc;

والإزالة المباشرة - تشغيل إجراء DeleteJob للمهمة الإشكالية:

select DeleteJob('UUID_HERE');

مثال:

select DeleteJob('ed0127c7-b052-4ec2-a67c-8b3a65d55e19');

هذا كل شيء لهذا اليوم ، وآمل ألا تحتاج أبدًا إلى تعديل قاعدة بيانات يدويًا!

All Articles