هذه المقالة هي استمرار للمقال السابق - "".
وسيغطي عملية التثبيت والتكوين الأساسيين لمجموعة oVirt 4.3 لاستضافة الأجهزة الافتراضية المتوفرة بدرجة كبيرة، مع الأخذ في الاعتبار حقيقة أن جميع الخطوات الأولية لإعداد البنية التحتية قد تم استكمالها مسبقًا.
بادرة
الغرض الرئيسي من المقالة هو تقديم إرشادات خطوة بخطوة مثل "لتالي -> نعم -> نهاية"كيفية إظهار بعض الميزات عند تثبيته وتكوينه. قد لا تتزامن عملية نشر مجموعتك دائمًا مع تلك الموصوفة فيها، نظرًا لخصائص البنية التحتية والبيئة، ولكن المبادئ العامة ستكون هي نفسها.
من وجهة نظر ذاتية، وتشبه وظائفه الإصدار 5.x من برنامج VMware vSphere، ولكن بالطبع مع ميزات التكوين والتشغيل الخاصة به.
بالنسبة للمهتمين، يمكن العثور على جميع الاختلافات بين RHEV (المعروف أيضًا باسم oVirt) وVMware vSphere على الإنترنت، على سبيل المثال ، لكنني سأظل ألاحظ أحيانًا بعض الاختلافات أو أوجه التشابه بينهما مع تقدم المقالة.
بشكل منفصل، أود أن أقارن قليلا العمل مع شبكات الأجهزة الافتراضية. تطبق oVirt مبدأً مشابهًا لإدارة الشبكة للأجهزة الافتراضية (المشار إليها فيما يلي باسم VMs)، كما هو الحال في VMware vSphere:
- с помощью стандартного Linux bridge (в VMware — معيار vSwitch)، الذي يعمل على مضيفي المحاكاة الافتراضية؛
- باستخدام Open vSwitch (OVS) (في VMware - توزيع vSwitch) عبارة عن محول افتراضي موزع يتكون من مكونين رئيسيين: خادم OVN مركزي ووحدات تحكم OVN على الأجهزة المضيفة المُدارة.
Необходимо отметить, что из-за простоты реализации, в статье будет описана настройка сетей в oVirt’е для ВМ с помощью стандартного Linux bridge, который является стандартным выбором, при использовании гипервизора KVM.
في هذا الصدد، هناك العديد من القواعد الأساسية للعمل مع الشبكة في المجموعة، والتي من الأفضل عدم انتهاكها:
- يجب أن تكون جميع إعدادات الشبكة على الأجهزة المضيفة قبل إضافتها إلى oVirt متطابقة، باستثناء عناوين IP.
- بمجرد وضع المضيف تحت سيطرة oVirt، لا يُنصح بشدة بتغيير أي شيء يدويًا في إعدادات الشبكة دون الثقة الكاملة في تصرفاتك، نظرًا لأن وكيل oVirt سوف يعيدها ببساطة إلى الإعدادات السابقة بعد إعادة تشغيل المضيف أو عامل.
- يجب أن تتم إضافة شبكة جديدة لجهاز افتراضي، بالإضافة إلى العمل معها، فقط من وحدة تحكم إدارة oVirt.
اخر ملاحظة مهمة - بالنسبة لبيئة حرجة للغاية (حساسة للغاية للخسائر النقدية)، لا يزال من المستحسن استخدام الدعم المدفوع والاستخدام . أثناء تشغيل مجموعة oVirt، قد تنشأ بعض المشكلات التي يُنصح بتلقي المساعدة المؤهلة بشأنها في أسرع وقت ممكن، بدلاً من التعامل معها بنفسك.
وأخيرا موصى به قبل نشر مجموعة oVirt، تعرف على ، لكي تكون على دراية بالمفاهيم والتعاريف الأساسية على الأقل، وإلا سيكون من الصعب بعض الشيء قراءة بقية المقال.
من الأساسيات لفهم المقالة ومبادئ تشغيل مجموعة oVirt هذه المستندات الإرشادية:
الحجم ليس كبيرًا جدًا، في غضون ساعة أو ساعتين يمكنك إتقان المبادئ الأساسية تمامًا، ولكن بالنسبة لأولئك الذين يحبون التفاصيل، يوصى بالقراءة — RHEV وoVirt هما في الأساس نفس الشيء.
لذا، إذا اكتملت جميع الإعدادات الأساسية على الأجهزة المضيفة والمحولات وأنظمة التخزين، فإننا ننتقل مباشرةً إلى نشر oVirt.
الجزء 2. تثبيت وتكوين مجموعة oVirt 4.3
ولتسهيل التوجيه، سأدرج الأقسام الرئيسية في هذه المقالة، والتي يجب إكمالها واحدة تلو الأخرى:
- تثبيت خادم إدارة oVirt
- إنشاء مركز بيانات جديد
- إنشاء كتلة جديدة
- تثبيت مضيفين إضافيين في بيئة ذاتية الاستضافة
- إنشاء منطقة تخزين أو مجالات التخزين
- إنشاء وتكوين الشبكات للأجهزة الافتراضية
- إنشاء صورة تثبيت لنشر جهاز افتراضي
- قم بإنشاء آلة افتراضية
تثبيت خادم إدارة oVirt
خادم إدارة oVirt هو العنصر الأكثر أهمية في البنية التحتية لـ oVirt، على شكل جهاز افتراضي أو مضيف أو جهاز افتراضي يدير البنية التحتية لـ oVirt بالكامل.
نظائرها القريبة من عالم المحاكاة الافتراضية هي:
- برنامج VMware vSphere - خادم vCenter
- Microsoft Hyper-V - مدير الجهاز الظاهري لمركز النظام (VMM).
لتثبيت خادم إدارة oVirt، لدينا خياران:
الخيار 1
نشر خادم على شكل جهاز افتراضي أو مضيف متخصص.
يعمل هذا الخيار بشكل جيد، ولكن بشرط أن يعمل هذا الجهاز الافتراضي بشكل مستقل عن المجموعة، أي. لا يعمل على أي مضيف كتلة كجهاز ظاهري عادي يقوم بتشغيل KVM.
لماذا لا يمكن نشر مثل هذا الجهاز الافتراضي على مضيفي المجموعة؟
В самом начале процесса развёртывания управляющего сервера oVirt, у нас имеется дилемма — управляющую ВМ ставить нужно, но самого кластера фактически ещё нет, и поэтому что можно с ходу придумать? Правильно – установить KVM на будущий узел кластера, далее на нём создать виртуальную машину, например, с ОС CentOS и в ней развернуть oVirt engine. Это может делаться обычно из соображений полного контроля над такой ВМ, но это ошибочное намерение, потому что в таком случае, в дальнейшем 100% будут проблемы с такой управляющей ВМ:
- لا يمكن ترحيله في وحدة تحكم oVirt بين مضيفي (عقد) المجموعة؛
- عند الترحيل باستخدام KVM عبر virsh يهاجر، لن يكون هذا الجهاز الافتراضي متاحًا للإدارة من وحدة تحكم oVirt.
- لا يمكن عرض مضيفي المجموعة في وضع الصيانة (وضع الصيانة)، إذا قمت بترحيل هذا الجهاز الافتراضي من مضيف إلى مضيف باستخدام virsh يهاجر.
لذا افعل كل شيء وفقًا للقواعد - استخدم إما مضيفًا منفصلاً لخادم إدارة oVirt، أو جهاز افتراضي مستقل يعمل عليه، أو الأفضل من ذلك، افعل ما هو مكتوب في الخيار الثاني.
الخيار 2
تثبيت oVirt Engine Appliance على مضيف مجموعة تتم إدارته بواسطته.
هذا هو الخيار الذي سيتم اعتباره أكثر صحة وملاءمة في حالتنا.
متطلبات مثل هذا الجهاز الافتراضي موضحة أدناه؛ سأضيف فقط أنه من المستحسن أن يكون لديك مضيفين على الأقل في البنية التحتية التي يمكن تشغيل جهاز التحكم الظاهري عليها من أجل جعلها متسامحة مع الأخطاء. وهنا أود أن أضيف أنه كما كتبت بالفعل في التعليقات في المقالة السابقة، لم أتمكن مطلقًا من الحصول عليها سبليتبرين على مجموعة oVirt المكونة من مضيفين، مع إمكانية تشغيل الأجهزة الافتراضية للمحرك المستضاف عليهما.
تثبيت oVirt Engine Appliance على المضيف الأول للمجموعة
رابط إلى الوثائق الرسمية - ، الفصل "»
تحدد الوثيقة المتطلبات الأساسية التي يجب استيفاؤها قبل نشر جهاز افتراضي للمحرك المستضاف، كما تصف بالتفصيل عملية التثبيت نفسها، لذلك لا فائدة من تكرارها حرفيًا، لذلك سنركز على بعض التفاصيل المهمة.
- قبل بدء جميع الإجراءات، تأكد من تمكين دعم المحاكاة الافتراضية في إعدادات BIOS على المضيف.
- قم بتثبيت الحزمة الخاصة بمثبت المحرك المستضاف على المضيف:
yum -y install http://resources.ovirt.org/pub/yum-repo/ovirt-release43.rpm
yum -y install epel-release
yum install screen ovirt-hosted-engine-setup- نبدأ إجراء نشر محرك oVirt المستضاف في شاشة المضيف (يمكنك الخروج منه عبر Ctrl-A + D، والإغلاق عبر Ctrl-D):
screen
hosted-engine --deployإذا كنت ترغب في ذلك، يمكنك تشغيل التثبيت باستخدام ملف إجابات مُعد مسبقًا:
hosted-engine --deploy --config-append=/var/lib/ovirt-hosted-engine-setup/answers/answers-ohe.conf- عند نشر المحرك المستضاف، نحدد جميع المعلمات الضرورية:
- имя кластера
- количество vCPU и vRAM (рекомендуется 4 vCPU и 16 Гб)
- пароли
- тип хранилища для hosted engine ВМ – в нашем случае FC
- номер LUN для установки hosted engine
- где будет находиться база данных для hosted engine – рекомендую для простоты выбрать Local (это БД PostgreSQL работающая внутри этой ВМ)
и др. параметры. - لتثبيت جهاز افتراضي متاح للغاية مع محرك مستضاف، قمنا مسبقًا بإنشاء LUN خاص على نظام التخزين، بحجم 4 و150 جيجابايت، والذي تم تقديمه بعد ذلك إلى مضيفي المجموعة - راجع .
في السابق، قمنا أيضًا بالتحقق من ظهوره على المضيفين:
multipath -ll
…
3600a098000e4b4b3000003c95d171065 dm-3 DELL , MD38xxf
size=150G features='3 queue_if_no_path pg_init_retries 50' hwhandler='1 rdac' wp=rw
|-+- policy='service-time 0' prio=14 status=active
| `- 15:0:0:4 sdc 8:32 active ready running
`-+- policy='service-time 0' prio=9 status=enabled
`- 18:0:0:4 sdj 8:144 active ready running- عملية نشر المحرك المستضاف في حد ذاتها ليست معقدة؛ في النهاية يجب أن نتلقى شيئًا مثل هذا:
[ INFO ] Generating answer file '/var/lib/ovirt-hosted-engine-setup/answers/answers-20191129131846.conf'
[ INFO ] Generating answer file '/etc/ovirt-hosted-engine/answers.conf'
[ INFO ] Stage: Pre-termination
[ INFO ] Stage: Termination
[ INFO ] Hosted Engine successfully deployedنتحقق من وجود خدمات oVirt على المضيف:

إذا تم كل شيء بشكل صحيح، فبعد اكتمال التثبيت، استخدم متصفح الويب للانتقال إليه من كمبيوتر المسؤول، ثم انقر فوق [بوابة الإدارة].
لقطة شاشة لـ "بوابة الإدارة"

من خلال إدخال معلومات تسجيل الدخول وكلمة المرور (التي تم تعيينها أثناء عملية التثبيت) في النافذة كما في لقطة الشاشة، نصل إلى لوحة التحكم Open Virtualization Manager، حيث يمكنك تنفيذ جميع الإجراءات باستخدام البنية التحتية الافتراضية:
- إضافة مركز البيانات
- إضافة وتكوين مجموعة
- إضافة وإدارة المضيفين
- إضافة مناطق تخزين أو مجالات تخزين لأقراص الأجهزة الافتراضية
- إضافة وتكوين الشبكات للأجهزة الافتراضية
- إضافة وإدارة الأجهزة الافتراضية وصور التثبيت وقوالب VM

سيتم مناقشة كل هذه الإجراءات بمزيد من التفصيل، بعضها في خلايا كبيرة، والبعض الآخر بمزيد من التفصيل ومع الفروق الدقيقة.
ولكن أولا أود أن أوصي بقراءة هذه الإضافة، والتي من المحتمل أن تكون مفيدة للكثيرين.
إضافة
1) من حيث المبدأ، إذا كانت هناك حاجة، فلا شيء يمنعك من تثبيت برنامج Hypervisor KVM على عقد المجموعة مسبقًا باستخدام الحزم libvirt и qemu-kvm (أو كيمو-kvm-ev) من الإصدار المطلوب، على الرغم من أنه عند نشر عقدة نظام المجموعة oVirt، يمكنه القيام بذلك بنفسه.
لكن إذا libvirt и qemu-kvm إذا لم تقم بتثبيت الإصدار الأحدث، فقد تتلقى الخطأ التالي عند نشر محرك مستضاف:
error: unsupported configuration: unknown CPU feature: md-clearأولئك. يجب ان يملك libvirt مع الحماية من ، الذي يدعم هذه السياسة:
<feature policy='require' name='md-clear'/>قم بتثبيت libvirt v.4.5.0-10.el7_6.12، مع دعم md-clear:
yum-config-manager --disable mirror.centos.org_centos-7_7_virt_x86_64_libvirt-latest_
yum install centos-release-qemu-ev
yum update
yum install qemu-kvm qemu-img virt-manager libvirt libvirt-python libvirt-client virt-install virt-viewer libguestfs libguestfs-tools dejavu-lgc-sans-fonts virt-top libvirt libvirt-python libvirt-client
systemctl enable libvirtd
systemctl restart libvirtd && systemctl status libvirtdتحقق من دعم "md-clear":
virsh domcapabilities kvm | grep require
<feature policy='require' name='ss'/>
<feature policy='require' name='hypervisor'/>
<feature policy='require' name='tsc_adjust'/>
<feature policy='require' name='clflushopt'/>
<feature policy='require' name='pku'/>
<feature policy='require' name='md-clear'/>
<feature policy='require' name='stibp'/>
<feature policy='require' name='ssbd'/>
<feature policy='require' name='invtsc'/>بعد ذلك، يمكنك متابعة تثبيت المحرك المستضاف.
2) في oVirt 4.3، وجود واستخدام جدار الحماية firewalld هو شرط إلزامي.
إذا تلقينا الخطأ التالي أثناء نشر جهاز افتراضي للمحرك المستضاف:
[ ERROR ] fatal: [localhost]: FAILED! => {"changed": false, "msg": "firewalld is required to be enabled and active in order to correctly deploy hosted-engine. Please check, fix accordingly and re-deploy.n"}
[ ERROR ] Failed to execute stage 'Closing up': Failed executing ansible-playbook
[https://bugzilla.redhat.com/show_bug.cgi?id=1608467ثم تحتاج إلى إيقاف تشغيل جدار حماية آخر (إذا تم استخدامه)، وتثبيته وتشغيله firewalld:
yum install firewalld
systemctl enable firewalld
systemctl start firewalld
firewall-cmd --state
firewall-cmd --get-default-zone
firewall-cmd --get-active-zones
firewall-cmd --get-zonesلاحقًا، عند تثبيت وكيل ovirt على مضيف جديد للمجموعة، سيقوم بتكوين المنافذ المطلوبة فيه firewalld تلقائيا.
3) إعادة تشغيل مضيف باستخدام جهاز افتراضي يعمل عليه بمحرك مستضاف.
بشكل طبيعي، и إلى الوثائق الحاكمة.
تتم إدارة المحرك VM بالكامل باستخدام الأمر فقط محرك مستضاف على المضيف حيث يعمل، حول فيرش يجب أن ننسى أيضًا حقيقة أنه يمكنك الاتصال بهذا الجهاز الافتراضي عبر SSH وتشغيل الأمر "إغلاق".
الإجراء الخاص بوضع VM في وضع الصيانة:
hosted-engine --set-maintenance --mode=global
hosted-engine --vm-status
!! Cluster is in GLOBAL MAINTENANCE mode !!
--== Host host1.test.local (id: 1) status ==--
conf_on_shared_storage : True
Status up-to-date : True
Hostname : host1.test.local
Host ID : 1
Engine status : {"health": "good", "vm": "up", "detail": "Up"}
Score : 3400
stopped : False
Local maintenance : False
crc32 : dee1a774
local_conf_timestamp : 1821
Host timestamp : 1821
Extra metadata (valid at timestamp):
metadata_parse_version=1
metadata_feature_version=1
timestamp=1821 (Sat Nov 29 14:25:19 2019)
host-id=1
score=3400
vm_conf_refresh_time=1821 (Sat Nov 29 14:25:19 2019)
conf_on_shared_storage=True
maintenance=False
state=GlobalMaintenance
stopped=False
hosted-engine --vm-shutdownنقوم بإعادة تشغيل المضيف باستخدام وكيل المحرك المستضاف ونفعل به ما نحتاج إليه.
بعد إعادة التشغيل، تحقق من حالة الجهاز الافتراضي مع المحرك المستضاف:
hosted-engine --vm-statusإذا لم يبدأ جهازنا الافتراضي مع المحرك المستضاف وإذا رأينا أخطاء مماثلة في سجل الخدمة:
خطأ في سجل الخدمة:
journalctl -u ovirt-ha-agent
...
Jun 29 14:34:44 host1 journal: ovirt-ha-agent ovirt_hosted_engine_ha.agent.hosted_engine.HostedEngine ERROR Failed to start necessary monitors
Jun 29 14:34:44 host1 journal: ovirt-ha-agent ovirt_hosted_engine_ha.agent.agent.Agent ERROR Traceback (most recent call last):#012 File "/usr/lib/python2.7/site-packages/ovirt_hosted_engine_ha/agent/agent.py", line 131, in _run_agent#012 return action(he)#012 File "/usr/lib/python2.7/site-packages/ovirt_hosted_engine_ha/agent/agent.py", line 55, in action_proper#012 return he.start_monitoring()#012 File "/usr/lib/python2.7/site-packages/ovirt_hosted_engine_ha/agent/hosted_engine.py", line 413, in start_monitoring#012 self._initialize_broker()#012 File "/usr/lib/python2.7/site-packages/ovirt_hosted_engine_ha/agent/hosted_engine.py", line 537, in _initialize_broker#012 m.get('options', {}))#012 File "/usr/lib/python2.7/site-packages/ovirt_hosted_engine_ha/lib/brokerlink.py", line 86, in start_monitor#012 ).format(t=type, o=options, e=e)#012RequestError: brokerlink - failed to start monitor via ovirt-ha-broker: [Errno 2] No such file or directory, [monitor: 'ping', options: {'addr': '172.20.32.32'}]
Jun 29 14:34:44 host1 journal: ovirt-ha-agent ovirt_hosted_engine_ha.agent.agent.Agent ERROR Trying to restart agentثم نقوم بتوصيل وحدة التخزين وإعادة تشغيل الوكيل:
hosted-engine --connect-storage
systemctl restart ovirt-ha-agent
systemctl status ovirt-ha-agent
hosted-engine --vm-start
hosted-engine --vm-statusبعد بدء تشغيل الجهاز الافتراضي باستخدام المحرك المستضاف، نقوم بإخراجه من وضع الصيانة:
إجراء إزالة VM من وضع الصيانة:
hosted-engine --check-liveliness
hosted-engine --set-maintenance --mode=none
hosted-engine --vm-status
--== Host host1.test.local (id: 1) status ==--
conf_on_shared_storage : True
Status up-to-date : True
Hostname : host1.test.local
Host ID : 1
Engine status : {"health": "good", "vm": "up", "detail": "Up"}
Score : 3400
stopped : False
Local maintenance : False
crc32 : 6d1eb25f
local_conf_timestamp : 6222296
Host timestamp : 6222296
Extra metadata (valid at timestamp):
metadata_parse_version=1
metadata_feature_version=1
timestamp=6222296 (Fri Jan 17 11:40:43 2020)
host-id=1
score=3400
vm_conf_refresh_time=6222296 (Fri Jan 17 11:40:43 2020)
conf_on_shared_storage=True
maintenance=False
state=EngineUp
stopped=False4) إزالة المحرك المستضاف وكل ما يرتبط به.
في بعض الأحيان يكون من الضروري إزالة محرك مستضاف تم تثبيته مسبقًا بشكل صحيح - إلى وثيقة التوجيه
فقط قم بتشغيل الأمر على المضيف:
/usr/sbin/ovirt-hosted-engine-cleanupبعد ذلك، نقوم بإزالة الحزم غير الضرورية، وإجراء نسخ احتياطي لبعض التكوينات قبل ذلك، إذا لزم الأمر:
yum autoremove ovirt* qemu* virt* libvirt* libguestfs إنشاء مركز بيانات جديد
الوثائق المرجعية - دليل إدارة oVirt.
أولا دعونا نحدد ما هو عليه مركز البيانات (أقتبس من المساعدة) هو كيان منطقي يحدد مجموعة من الموارد المستخدمة في بيئة معينة.
مركز البيانات هو نوع من الحاويات يتكون من:
- الموارد المنطقية في شكل مجموعات ومضيفين
- موارد الشبكة العنقودية في شكل شبكات منطقية ومحولات فعلية على الأجهزة المضيفة،
- موارد التخزين (لأقراص VM والقوالب والصور) في شكل مناطق تخزين (Storage Domains).
يمكن أن يتضمن مركز البيانات مجموعات متعددة تتكون من مضيفين متعددين مع أجهزة افتراضية تعمل عليها، ويمكن أن يحتوي أيضًا على مناطق تخزين متعددة مرتبطة به.
يمكن أن يكون هناك عدة مراكز بيانات، وهي تعمل بشكل مستقل عن بعضها البعض. يتم فصل السلطات في Ovirt حسب الدور، ويمكنك تكوين الأذونات بشكل فردي، سواء على مستوى مركز البيانات أو على عناصره المنطقية الفردية.
تتم إدارة مركز البيانات، أو مراكز البيانات، إذا كان هناك العديد منها، من وحدة تحكم إدارية واحدة أو بوابة واحدة.
لإنشاء مركز بيانات، انتقل إلى البوابة الإدارية وقم بإنشاء مركز بيانات جديد:
إحصاء >> مراكز البيانات >> جديد
وبما أننا نستخدم التخزين المشترك على نظام التخزين، فيجب أن يكون نوع التخزين مشتركًا:
لقطة شاشة لمعالج إنشاء مركز البيانات

عند تثبيت جهاز افتراضي مع محرك مستضاف، يتم إنشاء مركز بيانات افتراضيًا - مركز البيانات 1، وبعد ذلك، إذا لزم الأمر، يمكنك تغيير نوع التخزين الخاص به إلى نوع آخر.
يعد إنشاء مركز بيانات مهمة بسيطة، دون أي فروق دقيقة، وجميع الإجراءات الإضافية الموضحة به في الوثائق. الشيء الوحيد الذي سأشير إليه هو أن المضيفين الفرديين الذين لديهم فقط مساحة تخزين محلية (قرص) للأجهزة الافتراضية لن يتمكنوا من الدخول إلى مركز بيانات باستخدام نوع التخزين - مشترك (لا يمكن إضافتهم هناك)، ولهم تحتاج إلى إنشاء مركز بيانات منفصل - أي. يحتاج كل مضيف فردي لديه مساحة تخزين محلية إلى مركز بيانات منفصل خاص به.
إنشاء كتلة جديدة
رابط إلى الوثائق - دليل إدارة oVirt.
وبدون تفاصيل غير ضرورية تَجَمَّع – هذه مجموعة منطقية من المضيفين الذين لديهم مساحة تخزين مشتركة (على شكل أقراص مشتركة على نظام تخزين، كما في حالتنا). ومن المرغوب أيضًا أن يكون المضيفون في المجموعة متطابقين في الأجهزة ولديهم نفس نوع المعالج (Intel أو AMD). من الأفضل، بالطبع، أن تكون الخوادم الموجودة في المجموعة متطابقة تمامًا.
المجموعة جزء من مركز بيانات (مع نوع محدد من التخزين - محلّي أو المشتركة)، ويجب أن ينتمي جميع المضيفين إلى نوع ما من المجموعات، اعتمادًا على ما إذا كان لديهم مساحة تخزين مشتركة أم لا.
عند تثبيت جهاز افتراضي باستخدام محرك مستضاف على مضيف، يتم إنشاء مركز بيانات افتراضيًا - مركز البيانات 1، جنبا إلى جنب مع الكتلة - الكتلة 1، وفي المستقبل يمكنك تكوين معلماته، وتمكين خيارات إضافية، وإضافة مضيفين إليه، وما إلى ذلك.
كالعادة، للحصول على تفاصيل حول جميع إعدادات المجموعة، يُنصح بالرجوع إلى الوثائق الرسمية. من بين بعض ميزات إعداد المجموعة، سأضيف فقط أنه عند إنشائها، يكفي تكوين المعلمات الأساسية فقط في علامة التبويب General.
سأذكر أهم المعلمات:
- نوع المعالج - يتم تحديده بناءً على المعالجات المثبتة على مضيفي المجموعة، والشركة المصنعة لها، وأي معالج على المضيفين هو الأقدم، بحيث يتم استخدام جميع تعليمات المعالج المتاحة في المجموعة بناءً على ذلك.
- نوع التبديل – у нас в кластере используется только Linux bridge, поэтому его и выбираем.
- نوع جدار الحماية – كل شيء واضح هنا، هذا هو جدار الحماية الذي يجب تمكينه وتكوينه على الأجهزة المضيفة.
لقطة شاشة مع معلمات المجموعة

تثبيت مضيفين إضافيين في بيئة ذاتية الاستضافة
للتوثيق.
تتم إضافة مضيفين إضافيين للبيئة ذاتية الاستضافة بنفس طريقة إضافة مضيف عادي، مع الخطوة الإضافية المتمثلة في نشر جهاز افتراضي مع محرك مستضاف - اختر إجراء نشر المحرك المستضاف >> نشر. نظرًا لأنه يجب أيضًا تقديم رقم LUN للمضيف الإضافي لجهاز افتراضي مزود بمحرك مستضاف، فهذا يعني أنه يمكن استخدام هذا المضيف، إذا لزم الأمر، لاستضافة جهاز افتراضي به محرك مستضاف عليه.
لأغراض التسامح مع الأخطاء، يوصى بشدة بوجود مضيفين على الأقل يمكن وضع VM للمحرك المستضاف عليهما.
على المضيف الإضافي، قم بتعطيل iptables (في حالة تمكينه)، وتمكين جدار الحماية
systemctl stop iptables
systemctl disable iptables
systemctl enable firewalld
systemctl start firewalldقم بتثبيت إصدار KVM المطلوب (إذا لزم الأمر):
yum-config-manager --disable mirror.centos.org_centos-7_7_virt_x86_64_libvirt-latest_
yum install centos-release-qemu-ev
yum update
yum install qemu-kvm qemu-img virt-manager libvirt libvirt-python libvirt-client virt-install virt-viewer libguestfs libguestfs-tools dejavu-lgc-sans-fonts virt-top libvirt libvirt-python libvirt-client
systemctl enable libvirtd
systemctl restart libvirtd && systemctl status libvirtd
virsh domcapabilities kvm | grep md-clearقم بتثبيت المستودعات الضرورية ومثبت المحرك المستضاف:
yum -y install http://resources.ovirt.org/pub/yum-repo/ovirt-release43.rpm
yum -y install epel-release
yum update
yum install screen ovirt-hosted-engine-setupبعد ذلك، انتقل إلى وحدة التحكم افتح مدير المحاكاة الافتراضية، أضف مضيفًا جديدًا، وافعل كل شيء خطوة بخطوة، كما هو مكتوب في .
ونتيجة لذلك، بعد إضافة مضيف إضافي، يجب أن نحصل على شيء مثل الصورة في وحدة التحكم الإدارية، كما في لقطة الشاشة.
لقطة شاشة للبوابة الإدارية - المضيفين

المضيف الذي ينشط عليه المحرك المستضاف حاليًا VM لديه تاج ذهبي ونقش "تشغيل المحرك المستضاف VM"، المضيف الذي يمكن تشغيل هذا الجهاز الافتراضي عليه إذا لزم الأمر - النقش "يمكن تشغيل المحرك VM المستضاف".
في حالة فشل المضيف الذي "تشغيل المحرك المستضاف VM"، سيتم إعادة تشغيله تلقائيًا على المضيف الثاني. يمكن أيضًا ترحيل هذا الجهاز الافتراضي من المضيف النشط إلى المضيف الاحتياطي لصيانته.
إعداد إدارة الطاقة/السياج على مضيفي oVirt
روابط التوثيق:
- ريد هات الافتراضية 4.3 -> المرجع الفني ->
- دليل إدارة oVirt ->
على الرغم من أنه قد يبدو أنك انتهيت من إضافة المضيف وتكوينه، إلا أن هذا ليس صحيحًا تمامًا.
للتشغيل العادي للمضيفين، ولتحديد/حل حالات الفشل مع أي منهم، تكون إعدادات إدارة الطاقة/السياج مطلوبة.
سياج، أو المبارزة، هي عملية استبعاد مضيف معيب أو فاشل مؤقتًا من المجموعة، ويتم خلالها إعادة تشغيل خدمات oVirt الموجودة عليه أو المضيف نفسه.
يتم تقديم جميع التفاصيل المتعلقة بالتعريفات والمعلمات الخاصة بإدارة الطاقة/السياج، كالعادة، في الوثائق؛ وسأقدم فقط مثالاً عن كيفية تكوين هذه المعلمة المهمة، كما هو مطبق على خوادم Dell R640 المزودة بـ iDRAC 9.
- انتقل إلى البوابة الإدارية، انقر فوق إحصاء >> المضيفين حدد مضيفًا.
- انقر تعديل.
- انقر فوق علامة التبويب إدارة الطاقة.
- حدد المربع المجاور للخيار تمكين إدارة الطاقة.
- حدد المربع المجاور للخيار التكامل كدومبلمنع المضيف من الدخول في وضع المبارزة أثناء تسجيل تفريغ تعطل kernel.
ملاحظة.
بعد تمكين تكامل Kdump على مضيف قيد التشغيل بالفعل، يجب إعادة تثبيته وفقًا للإجراء الموضح في دليل إدارة oVirt -> -> إعادة تثبيت المضيفين.
- اختياريًا، يمكنك تحديد المربع تعطيل التحكم في سياسة إدارة الطاقة، إذا كنا لا نريد أن يتم التحكم في إدارة طاقة المضيف من خلال سياسة الجدولة الخاصة بالمجموعة.
- انقر فوق الزر (+) لإضافة جهاز جديد لإدارة الطاقة، سيتم فتح نافذة تحرير خصائص الوكيل.
بالنسبة إلى iDRAC9، املأ الحقول:- العنوان – عنوان iDRAC9
- اسم المستخدم كلمة المرور – تسجيل الدخول وكلمة المرور لتسجيل الدخول إلى iDRAC9، على التوالي
- النوع —drac5
- علامة
- أضف الخيارات التالية: cmd_prompt=>,login_timeout=30
لقطة شاشة تحتوي على معلمات "إدارة الطاقة" في خصائص المضيف

إنشاء منطقة تخزين أو مجالات التخزين
رابط إلى الوثائق - دليل إدارة oVirt، .
مجال التخزين، أو منطقة التخزين، هي موقع مركزي لتخزين أقراص الأجهزة الافتراضية وصور التثبيت والقوالب واللقطات.
يمكن توصيل مناطق التخزين بمركز البيانات باستخدام بروتوكولات مختلفة وأنظمة ملفات المجموعة والشبكة.
يحتوي oVirt على ثلاثة أنواع من مساحات التخزين:
- مجال البيانات – لتخزين كافة البيانات المرتبطة بالأجهزة الافتراضية (الأقراص والقوالب). لا يمكن مشاركة مجال البيانات بين مراكز البيانات المختلفة.
- مجال ايزو (نوع قديم من مساحة التخزين) - لتخزين صور تثبيت نظام التشغيل. يمكن مشاركة مجال ISO بين مراكز البيانات المختلفة.
- مجال التصدير (نوع مساحة التخزين القديم) - للتخزين المؤقت للصور المنقولة بين مراكز البيانات.
في حالتنا الخاصة، تستخدم منطقة التخزين من نوع Data Domain بروتوكول القناة الليفية (FCP) للاتصال بوحدات LUN الموجودة في نظام التخزين.
من وجهة نظر oVirt، عند استخدام أنظمة التخزين (FC أو iSCSI)، فإن كل قرص افتراضي أو لقطة أو قالب هو قرص منطقي.
يتم تجميع أجهزة الكتلة في وحدة واحدة (على مضيفي المجموعة) باستخدام Volume Group ثم يتم تقسيمها باستخدام LVM إلى وحدات تخزين منطقية، والتي يتم استخدامها كأقراص افتراضية للأجهزة الافتراضية.
يمكن رؤية كل هذه المجموعات والعديد من وحدات تخزين LVM على مضيف المجموعة باستخدام الأوامر إلخ и لفس. وبطبيعة الحال، يجب تنفيذ كافة الإجراءات مع هذه الأقراص فقط من وحدة التحكم oVirt، إلا في حالات خاصة.
يمكن أن تكون الأقراص الافتراضية للأجهزة الافتراضية من نوعين - QCOW2 أو RAW. قد تكون الأقراص "نحيف" أو "سميك". يتم إنشاء اللقطات دائمًا كـ "رقيق".
تعد طريقة إدارة مجالات التخزين، أو مناطق التخزين التي يتم الوصول إليها من خلال FC، منطقية تمامًا - لكل قرص افتراضي VM يوجد وحدة تخزين منطقية منفصلة يمكن كتابتها بواسطة مضيف واحد فقط. بالنسبة لاتصالات FC، يستخدم oVirt شيئًا مثل LVM المجمع.
يمكن ترحيل الأجهزة الافتراضية الموجودة في نفس منطقة التخزين بين الأجهزة المضيفة التي تنتمي إلى نفس المجموعة.
كما نرى من الوصف، فإن المجموعة في oVirt، مثل المجموعة في VMware vSphere أو Hyper-V، تعني في الأساس نفس الشيء - إنها مجموعة منطقية من المضيفين، ويفضل أن تكون متطابقة في تكوين الأجهزة، ولديها مساحة تخزين مشتركة للأجهزة الافتراضية أقراص الآلة .
دعنا ننتقل مباشرة إلى إنشاء منطقة تخزين للبيانات (أقراص VM)، لأنه بدونها لن تتم تهيئة مركز البيانات.
اسمحوا لي أن أذكرك أن جميع وحدات LUN المقدمة إلى مضيفي المجموعة على نظام التخزين يجب أن تكون مرئية عليها باستخدام الأمر "متعدد المسارات -ll".
وفق ، اذهب إلى البوابة اذهب إلى التخزين >> المجالات -> مجال جديد واتبع التعليمات الواردة في قسم "إضافة وحدة تخزين FCP".
بعد تشغيل المعالج، املأ الحقول المطلوبة:
- الاسم - تعيين اسم المجموعة
- وظيفة المجال -بيانات
- تخزين - قناة ليفية
- المضيف للاستخدام - حدد المضيف الذي يتوفر عليه رقم LUN الذي نطلبه
في قائمة LUNs، حدد ما نحتاجه، انقر فوق إضافة وبعد ذلك حسنا. إذا لزم الأمر، يمكنك ضبط المعلمات الإضافية لمنطقة التخزين من خلال النقر على معلمات متقدمة.
لقطة شاشة لمعالج إضافة "نطاق التخزين"

بناءً على نتائج المعالج، يجب أن نحصل على منطقة تخزين جديدة، ويجب أن ينتقل مركز البيانات الخاص بنا إلى الحالة UP، أو التهيئة:
لقطات شاشة لمركز البيانات ومناطق التخزين الموجودة به:


إنشاء وتكوين الشبكات للأجهزة الافتراضية
رابط إلى الوثائق - دليل إدارة oVirt،
تعمل الشبكات أو الشبكات على تجميع الشبكات المنطقية المستخدمة في البنية التحتية الافتراضية لـ oVirt.
Для взаимодействия сетевого адаптера на виртуальной машине, с физическим адаптером на хосте, используются логические интерфейсы типа Linux جسر.
لتجميع وتقسيم حركة المرور بين الشبكات، يتم تكوين شبكات VLAN على المحولات.
عند إنشاء شبكة منطقية للأجهزة الافتراضية في oVirt، يجب تعيين معرف يتوافق مع رقم VLAN الموجود على المحول حتى تتمكن الأجهزة الافتراضية من التواصل مع بعضها البعض، حتى لو كانت تعمل على عقد مختلفة من المجموعة.
كان لا بد من إجراء الإعدادات الأولية لمحولات الشبكة على الأجهزة المضيفة لتوصيل الأجهزة الافتراضية - تكوين الواجهة المنطقية bond1، فيجب إجراء جميع إعدادات الشبكة فقط من خلال بوابة oVirt الإدارية.
بعد إنشاء جهاز افتراضي بمحرك مستضاف، بالإضافة إلى الإنشاء التلقائي لمركز البيانات والمجموعة، تم أيضًا إنشاء شبكة منطقية تلقائيًا لإدارة مجموعتنا - ovritmgmt، الذي تم توصيل هذا الجهاز الافتراضي به.
إذا لزم الأمر، يمكنك عرض إعدادات الشبكة المنطقية ovritmgmt وضبطها، ولكن يجب عليك الحذر حتى لا تفقد السيطرة على البنية التحتية لـ oVirt.
إعدادات الشبكة المنطقية ovritmgmt

لإنشاء شبكة منطقية جديدة للأجهزة الافتراضية العادية، انتقل إلى البوابة الإدارية الانرنيت >> شبكات >> جديدوعلى علامة التبويب General أضف شبكة بمعرف VLAN المطلوب، وحدد أيضًا المربع بجوار "شبكة VM"، وهذا يعني أنه يمكن استخدامه للتعيين إلى جهاز افتراضي.
لقطة شاشة للشبكة المنطقية VLAN32 الجديدة

في علامة التبويب كتلة، نعلق هذه الشبكة على مجموعتنا الكتلة 1.
بعد هذا نذهب الى إحصاء >> المضيفين، انتقل إلى كل مضيف بدوره، إلى علامة التبويب واجهات الشبكة، وقم بتشغيل المعالج إعداد الشبكات المضيفة، للربط بمضيفي شبكة منطقية جديدة.
لقطة شاشة لمعالج "إعداد الشبكات المضيفة".

سيقوم وكيل oVirt تلقائيًا بإجراء جميع إعدادات الشبكة الضرورية على المضيف - قم بإنشاء VLAN وBRIDGE.
أمثلة لملفات التكوين للشبكات الجديدة على المضيف:
cat ifcfg-bond1
# Generated by VDSM version 4.30.17.1
DEVICE=bond1
BONDING_OPTS='mode=1 miimon=100'
MACADDR=00:50:56:82:57:52
ONBOOT=yes
MTU=1500
DEFROUTE=no
NM_CONTROLLED=no
IPV6INIT=no
cat ifcfg-bond1.432
# Generated by VDSM version 4.30.17.1
DEVICE=bond1.432
VLAN=yes
BRIDGE=ovirtvm-vlan432
ONBOOT=yes
MTU=1500
DEFROUTE=no
NM_CONTROLLED=no
IPV6INIT=no
cat ifcfg-ovirtvm-vlan432
# Generated by VDSM version 4.30.17.1
DEVICE=ovirtvm-vlan432
TYPE=Bridge
DELAY=0
STP=off
ONBOOT=yes
MTU=1500
DEFROUTE=no
NM_CONTROLLED=no
IPV6INIT=noاسمحوا لي أن أذكركم مرة أخرى بذلك على مضيف المجموعة لا حاجة إنشاء واجهات الشبكة يدويًا مسبقًا ifcfg-bond1.432 и ifcfg-ovirtvm-vlan432.
بعد إضافة شبكة منطقية والتحقق من الاتصال بين المضيف والمحرك المستضاف VM، يمكن استخدامها في الجهاز الظاهري.
إنشاء صورة تثبيت لنشر جهاز افتراضي
رابط إلى الوثائق - دليل إدارة oVirt، ، قسم تحميل الصور إلى مجال تخزين البيانات.
بدون صورة تثبيت نظام التشغيل، لن يكون من الممكن تثبيت جهاز افتراضي، على الرغم من أن هذا بالطبع لا يمثل مشكلة إذا تم تثبيته على الشبكة على سبيل المثال مع الصور التي تم إنشاؤها مسبقا.
في حالتنا، هذا غير ممكن، لذا سيتعين عليك استيراد هذه الصورة إلى oVirt بنفسك. في السابق، كان هذا يتطلب إنشاء مجال ISO، ولكن في الإصدار الجديد من oVirt تم إهماله، وبالتالي يمكنك الآن تحميل الصور مباشرة إلى مجال التخزين من البوابة الإدارية.
في البوابة الإدارية اذهب إلى التخزين >> أقراص >> تحميل >> بالبداية
نضيف صورة نظام التشغيل الخاص بنا كملف ISO، ونملأ جميع الحقول في النموذج، ثم نضغط على الزر "اختبار الاتصال".
لقطة شاشة لمعالج إضافة صورة التثبيت

إذا حصلنا على خطأ مثل هذا:
Unable to upload image to disk d6d8fd10-c1e0-4f2d-af15-90f8e636dadc due to a network error. Ensure that ovirt-imageio-proxy service is installed and configured and that ovirt-engine's CA certificate is registered as a trusted CA in the browser. The certificate can be fetched from https://ovirt.test.local/ovirt-engine/services/pki-resource?resource=ca-certificate&format=X509-PEM-CA`
ثم تحتاج إلى إضافة شهادة oVirt إلى "المراجع المصدقة الجذرية الموثوقة"(Trusted Root CA) على محطة التحكم الخاصة بالمسؤول، حيث نحاول تنزيل الصورة.
بعد إضافة الشهادة إلى Trusted Root CA، انقر مرة أخرى "اختبار الاتصال"، يجب ان تحصل:
Connection to ovirt-imageio-proxy was successful.بعد إكمال إجراء إضافة الشهادة، يمكنك محاولة تحميل صورة ISO إلى مجال التخزين مرة أخرى.
من حيث المبدأ، يمكنك إنشاء مجال تخزين منفصل بنوع البيانات لتخزين الصور والقوالب بشكل منفصل عن أقراص VM، أو حتى تخزينها في مجال تخزين للمحرك المستضاف، ولكن هذا يخضع لتقدير المسؤول.
لقطة شاشة تحتوي على صور ISO في مجال التخزين للمحرك المستضاف

قم بإنشاء آلة افتراضية
رابط التوثيق:
دليل إدارة الآلة الافتراضية oVirt ->
بعد تحميل صورة التثبيت مع نظام التشغيل في oVirt، يمكنك المتابعة مباشرةً لإنشاء جهاز افتراضي. لقد تم إنجاز الكثير من العمل، لكننا بالفعل في المرحلة النهائية، والتي بدأ كل هذا من أجلها - الحصول على بنية تحتية متسامحة مع الأخطاء لاستضافة الأجهزة الافتراضية المتوفرة للغاية. وكل هذا مجاني تمامًا - لم يتم إنفاق فلس واحد على شراء أي تراخيص برامج.
Для создания виртуальной машины с CentOS 7, должен быть загружен установочный образ с ОС.
نذهب إلى البوابة الإدارية، انتقل إلى إحصاء >> الأجهزة الظاهرية، وقم بتشغيل معالج إنشاء VM. املأ جميع المعلمات والحقول وانقر حسنا. كل شيء بسيط للغاية إذا اتبعت الوثائق.
على سبيل المثال، سأقدم الإعدادات الأساسية والإضافية لجهاز افتراضي متاح للغاية، مع قرص تم إنشاؤه، ومتصل بالشبكة، ويتم التشغيل من صورة التثبيت:
لقطات شاشة بإعدادات VM المتوفرة للغاية





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

للاتصال بوحدة التحكم VM، يجب عليك أولاً تكوين وحدة التحكم في خصائص الجهاز الظاهري.
لقطة شاشة لإعدادات VM، علامة التبويب "وحدة التحكم".

للاتصال بوحدة التحكم VM، يمكنك استخدام، على سبيل المثال، .
للاتصال بوحدة التحكم VM مباشرة في نافذة المتصفح، يجب أن تكون إعدادات الاتصال عبر وحدة التحكم كما يلي:

بعد تثبيت نظام التشغيل على الجهاز الافتراضي، يُنصح بتثبيت وكيل الضيف oVirt:
yum -y install epel-release
yum install -y ovirt-guest-agent-common
systemctl enable ovirt-guest-agent.service && systemctl restart ovirt-guest-agent.service
systemctl status ovirt-guest-agent.serviceوبالتالي، نتيجة لإجراءاتنا، سيكون الجهاز الافتراضي الذي تم إنشاؤه متاحًا للغاية، أي. إذا فشلت عقدة المجموعة التي تعمل عليها، فسيقوم oVirt بإعادة تشغيلها تلقائيًا على العقدة الثانية. يمكن أيضًا ترحيل هذا الجهاز الظاهري بين مضيفي المجموعة لصيانتهم أو لأغراض أخرى.
اختتام
آمل أن تكون هذه المقالة قادرة على إيصال أن oVirt هي أداة عادية تمامًا لإدارة البنية التحتية الافتراضية، والتي ليس من الصعب نشرها - الشيء الرئيسي هو اتباع قواعد ومتطلبات معينة موصوفة في المقالة وفي الوثائق.
نظرًا للحجم الكبير للمقالة، لم يكن من الممكن تضمين أشياء كثيرة فيها، مثل التنفيذ خطوة بخطوة للمعالجات المختلفة مع جميع الشروحات التفصيلية ولقطات الشاشة، والاستنتاجات الطويلة لبعض الأوامر، وما إلى ذلك. في الواقع، سيتطلب ذلك كتابة كتاب كامل، وهو أمر ليس له معنى كبير نظرًا للإصدارات الجديدة من البرامج التي تظهر باستمرار مع الابتكارات والتغييرات. الشيء الأكثر أهمية هو فهم مبدأ كيفية عمل كل شيء معًا، والحصول على خوارزمية عامة لإنشاء نظام أساسي متسامح مع الأخطاء لإدارة الأجهزة الافتراضية.
ورغم أننا أنشأنا بنية تحتية افتراضية، فإننا نحتاج الآن إلى تعليمها كيفية التفاعل بين عناصرها الفردية: المضيفين، والأجهزة الافتراضية، والشبكات الداخلية، ومع العالم الخارجي.
تعد هذه العملية إحدى المهام الرئيسية لمسؤول النظام أو الشبكة، والتي سيتم تناولها في المقالة التالية - حول استخدام أجهزة التوجيه الافتراضية VyOS في البنية التحتية المتسامحة مع الأخطاء في مؤسستنا (كما خمنت، ستعمل كأجهزة افتراضية الأجهزة الموجودة على مجموعة oVirt الخاصة بنا).
المصدر: www.habr.com
