المدرب: عندما يحين
وقت تثبيت أجهزتك الافتراضية وتكوينها
عند استخدام المحاكاة الافتراضية،
فمن المهم فهم متطلبات
الموارد المختلفة الموجودة.
عندما يتعلق الأمر بمتطلبات الموارد،
فإننا نركز حقًا على أربعة مجالات رئيسية.
وحدة المعالجة المركزية وملحقاتها الافتراضية
وذاكرة النظام والتخزين والشبكات.
دعونا نلقي نظرة على كل من هذه.
أولاً، لدينا وحدة المعالجة المركزية وملحقاتها الافتراضية.
الآن، عندما نتحدث عن وحدات المعالجة
المركزية (CPU)، تستخدم كل شركة مصنعة، مثل Intel
وAMD، تقنية مختلفة للمحاكاة الافتراضية.
إذا كنت تستخدم شرائح تعتمد
على Intel، فسوف تبحث عن VT-x، وهي تقنية
المحاكاة الافتراضية الخاصة
بها، والتي تعني VT.
إذا كنت تستخدم معالج AMD، فإنهم
يطلقون على ملحق المحاكاة الافتراضية الخاص بهم AMD-V
للمحاكاة الافتراضية لـ AMD.
الآن، سواء كنت تستخدم برنامج Hypervisor
مستضافًا أو برنامج Hypervisor المعدني،
سيحصل كلاهما على مكاسب كبيرة في الأداء إذا كان لديك وحدة
معالجة مركزية تدعم المحاكاة الافتراضية.
الآن، لا تتطلب بعض برامج المحاكاة الافتراضية
تمكين وحدة المعالجة المركزية (CPU)
لدعم المحاكاة الافتراضية حتى تتمكن من استخدام
المحاكاة الافتراضية.
ولكن إذا لم تقم بتمكين المحاكاة الافتراضية
كامتداد للمعالج، فسيؤدي
ذلك إلى إبطاء أدائك بشكل كبير.
وسيكون لديك جهاز افتراضي غير قابل للاستخدام على الإطلاق
عندما يتعلق الأمر ببعض أعمال الإنتاج الحقيقية.
الآن، إذا كان المعالج الخاص بك يدعم المحاكاة
الافتراضية ومعظم المعالجات الحديثة
تدعم ذلك، فسيتعين عليك الانتقال إلى BIOS
أو UEFI لتتمكن من تمكين امتدادات المحاكاة الافتراضية هذه.
عادةً، إذا حاولت تثبيت
جهاز افتراضي في شيء
مثل VirtualBox أو VMware، ولم
يكتشف أن هناك تمكينًا
للمحاكاة الافتراضية،
فسوف يعطيك رسالة خطأ
تخبرك أنك بحاجة إلى تمكين VT-x أو AMD-V.
الآن، بالإضافة إلى
هذين الامتدادين لتقنية المحاكاة
الافتراضية، هناك امتداد آخر يسمى SLAT، والذي
يرمز إلى ترجمة عناوين المستوى الثاني.
وهذه ميزة معالج في الكثير
من المعالجات الحديثة التي
ستساعد في تحسين أداء
الذاكرة الافتراضية عند تشغيل
أجهزة افتراضية متعددة
على مضيف فعلي واحد.
الآن، إذا كنت تستخدم معالج
Intel، فإنهم يطلقون على SLAT اسم EPT، وهو
جدول الصفحات الممتد.
إذا كنت تستخدم معالج AMD،
فإنهم يطلقون على SLAT اسم RVI، وهو عبارة
عن فهرسة افتراضية سريعة.
في كلتا الحالتين، إذا رأيت المصطلح SLAT أو EPT أو RVI، فأنت تتحدث حقًا عن القدرة على الوصول
إلى الذاكرة الافتراضية
بطريقة أسرع، وتكون قادرًا على الحصول على أداء
أفضل من وحدة المعالجة المركزية
الخاصة بك.
وهو شيء يجب أن يدعمه المعالج
الخاص بك حتى تتمكن من استخدام
هذه الامتدادات.
الآن، بالإضافة إلى الحديث
عن امتدادات المحاكاة الافتراضية
داخل معالجاتنا ووحدات المعالجة المركزية لدينا،
نريد أيضًا التحدث عن وحدة المعالجة المركزية نفسها.
إذا كنت ترغب في الحصول على جهاز عالي
الأداء للغاية عند التعامل مع
المحاكاة الافتراضية،
فستحتاج إلى البحث عن معالج يدعم تقنية Hyperthing
متعددة النواة أو معالجات فعلية متعددة على نظامك
المحدد.
من خلال توفر مراكز إضافية، فهذا
يعني أن لديك قدرة معالجة إضافية.
إذا كان لديك معالجات متعددة،
فهذا يعني أن لديك معالجين فعليين أو أكثر
مثبتين على تلك اللوحة الأم.
الآن، يعد هذا أمرًا نادرًا
إلى حد ما، إلا إذا كنت تستخدم تقنية تعتمد على الخادم ولكن
في سطح المكتب في المنزل أو الكمبيوتر المحمول الخاص
بك، فمن المرجح أن تجد إما
خيوط متعددة النواة أو مفرطة التشعب على
المعالج الخاص بك لتمنحك نوى افتراضية.
وبهذه الطريقة تمنحك قدرة إضافية
على تعيين معالجات لأجهزتك الافتراضية الفردية التي تقوم بتشغيل
أنظمة التشغيل الضيف هذه ومنحها
المزيد من الموارد المخصصة التي من
شأنها زيادة أدائها.
الآن، ملاحظة جانبية أخرى
عندما يتعلق الأمر بوحدات
المعالجة المركزية، تذكر أن وحدات المعالجة
المركزية تأتي بالفعل في ثلاث آليات
مختلفة ستجدها في السوق هذه الأيام.
الأول هو المدرسة القديمة x86.
الآن، عندما نتحدث عن المعالجات المستندة
إلى x86، فإننا نتحدث حقًا عن معالج 32 بت.
وهذا يعني أنك ستكون محدودًا بشكل كبير
في قدرة نظامك على استخدام أشياء أخرى.
لأنه عندما تتعامل
مع نظام تشغيل 32 بت، يمكنك فقط الوصول
إلى أربعة غيغابايت من ذاكرة الوصول العشوائي (RAM)،
وهو مبلغ صغير جدًا عندما تريد
التعامل مع استضافة أجهزة
افتراضية متعددة على خادم
فعلي واحد.
بدلاً من ذلك، من الأفضل تشغيل معالج أساسي x64، والذي يمنحك إمكانية
الوصول إلى ما يصل إلى 16 إكسابايت من ذاكرة الوصول
العشوائي لنظامك المحدد، اعتمادًا على
ما إذا كان نظام التشغيل المضيف الأساسي
الخاص بك سيدعم ذلك أم لا.
تعني هذه الـ 16 إكسابايت مقارنة
بأربعة غيغابايت أن لدينا
ذاكرة وصول عشوائي أكثر بـ 4 مليارات مرة إذا كنا نستخدم
معالجًا أساسيًا x64.
الآن، إذا كنت تقوم بتشغيل معالج 64
بت، فلا يزال بإمكانك تشغيل برامج 32
بت وأنظمة تشغيل 32 بت كأنظمة
تشغيل ضيف على هذا الخادم الفعلي إذا كنت
ترغب في ذلك.
لكن القيد الحقيقي
هو أنه إذا كان لديك معالج 32 بت،
فلن تتمكن من تشغيل تطبيقات 64 بت
أو أنظمة تشغيل 64 بت كأجهزة افتراضية
في نظام تشغيل ضيف.
لذا مرة أخرى، من الأفضل
استخدام معالج يستند إلى x64 بدلاً من ذلك.
الآن النوع الثالث من المعالجات
الذي قد تصادفه هو ما يعرف بـ ARM.
ويتم تقليل ARM من خلال مجموعة التعليمات
الخاصة بهندسة الكمبيوتر لمعالج
الكمبيوتر الخاص بك.
الآن، أين ستصادف معالجات
ARM في الحقول هذه الأيام؟
حسنًا، إذا كنت تستخدم أي جهاز Mac حديث،
فكلهم يستخدمون معالجات ARM.
وهذا مهم لأنه إذا كنت تقوم بتشغيل
أحد الأنظمة الحديثة، مثل MacBook Pro أو
أحد أجهزة iMAC الجديدة
التي تعمل بأحد معالجات M1 أو M2، فهذه كلها تعتمد
على ARM.
ولأنها تعتمد على ARM،
فلا يمكنها استضافة أنظمة تشغيل ضيف
لا تعمل على ARM.
لأنه يجب أن تكون هناك ترجمة تحدث.
لذلك، على سبيل المثال، إذا قمت بشراء جهاز Mac
أو MacBook Pro يستخدم معالج M1 أو M1 Pro، فهذا
معالج يستند إلى ARM.
وإذا حاولت تثبيت Windows 11
أو Windows 10 في نظام تشغيل ضيف، وكانت
هذه إصدارات نظام التشغيل المستندة إلى x86 أو x64، فلن يتم
تشغيلها وستحصل على أخطاء.
لذلك، إذا كنت تستخدم معالجًا يستند
إلى ARM على نظامك الفعلي
والذي ستستضيف عليه أجهزتك
الافتراضية المختلفة، فسيؤدي
ذلك إلى الحد بشكل كبير من اختياراتك
لأنظمة التشغيل الضيف لأنه ليس كل أنظمة
التشغيل بها ARM- النسخة القائمة.
في وقت هذا التصوير،
يقوم Windows 11 حاليًا بإنشاء
إصدار للمعالجات المستندة إلى ARM
والتي ستعمل على شرائح ARM تلك.
وهناك أيضًا إصدارات Linux التي
تعتمد على ARM والتي يمكنك تشغيلها
على جهاز MacBook أو أي معالج آخر يعتمد على ARM.
لكني أردت فقط أن أشير
إليك بهذا لأنه من القيود
التي ستواجهها.
الآن، المجال الثاني
الذي نحتاج للحديث عنه فيما يتعلق بالموارد
هو ذاكرة النظام لديك.
عندما نتحدث عن ذاكرة
النظام، فإننا نتحدث حقًا
عن مقدار الذاكرة الفعلية المثبتة
في الخادم الفعلي أو محطة العمل التي
تعمل كنظام التشغيل المضيف.
لذلك، على سبيل المثال، إذا كان لدي ثمانية غيغابايت أو 16
غيغابايت أو 32 غيغابايت أكثر يكون ذلك أفضل دائمًا عندما يتعلق الأمر
باستضافة الأجهزة الافتراضية،
لأنه إذا كان لدي فقط ثمانية
غيغابايت من ذاكرة الوصول العشوائي على جهاز الكمبيوتر
المحمول الخاص بي، على سبيل المثال، وأريد تشغيل
أربعة أجهزة مختلفة أنظمة التشغيل الضيف، حسنًا، إذا كان كل واحد
منها يستهلك 2 غيغابايت من ذاكرة الوصول العشوائي (RAM)، فقد استنفدت بالفعل كل
ذاكرتي الفعلية ولم يترك ذلك أيًا منها
لنظام التشغيل المضيف الأساسي.
فقط لوضع هذا في الاعتبار،
إذا كنت تقوم بتشغيل شيء مثل نظام التشغيل Mac OS،
فإن هذا يستغرق حوالي ثمانية غيغابايت من الذاكرة فقط
لتشغيل نظام Mac والقدرة
على القيام بما يلزم القيام به.
إذا كنت تستخدم جهازًا يعمل بنظام
Windows، فسيستغرق الأمر عمومًا حوالي أربعة غيغابايت
لتتمكن من تشغيل Windows بشكل كافٍ كنظام
تشغيل مضيف.
لذا، إذا كان لديك ثمانية غيغابايت
وترغب في تشغيل Windows
11 كضيف داخل مضيف Windows 10، فسيستغرق ذلك
أربعة زائد أربعة أو ثمانية
غيغابايت من ذاكرتك.
لذلك مرة أخرى، عندما تتحدث عن مواردك، فإنك
تريد حقًا أن تنظر
إلى مقدار الذاكرة التي يمكنك تخصيصها
لأنظمة التشغيل الضيف تلك، وكلما
زادت الذاكرة الفعلية لديك، زادت
قدرتك على القيام بذلك.
الاعتبار التالي للموارد هو تخزيننا.
ونحن نتحدث عن المكان الذي ستقوم بتخزين
كل صور الآلة الافتراضية هذه فيه.
تذكر أن جميع هذه الأجهزة الافتراضية
التي نقوم بإنشائها باستخدام أنظمة التشغيل الضيف
الخاصة بها ستشغل مساحة على القرص على خادمك الفعلي.
لذلك، إذا كان لديك جهاز كمبيوتر
محمول تبلغ مساحته 256 غيغابايت فقط، وترغب
في تثبيت نظام تشغيل Windows
10 Guest على هذا النظام، فمن المحتمل أن
يستغرق ذلك حوالي
50 غيغابايت من المساحة.
لقد استخدمت للتو خمس إجمالي
محرك الأقراص الثابتة
لديك على صورة الجهاز الظاهري هذه.
الآن، إذا كان لديك ثلاث أو أربع نسخ مختلفة
منها، فقد استهلكت الآن ثلاثة أو
أربعة أضعاف 50، وهو ما يعادل
الآن 150 إلى 200 غيغابايت، وهو ما يمثل محرك
الأقراص بأكمله تقريبًا.
وهكذا يصبح التخزين كبير السعة
شيئًا يجب عليك أن تكون على دراية به.
عادةً، عندما تقوم بتثبيت Windows، سيستغرق
تثبيت Windows المجرد حوالي 20
غيغابايت من المساحة، لكنك تريد استخدام
40 أو 50 غيغابايت على الأرجح لأنك تحتاج إلى مساحة
إضافية عندما تريد تخزين الملفات
هناك، قم بتثبيت التطبيقات
وأشياء من هذا القبيل.
إذا كنت تستخدم Linux، بشكل عام،
فهي أخف وزنًا بكثير ويمكنك
أن تجد أن معظم التوزيعات سيتم تثبيتها
في حوالي أربعة إلى ثمانية غيغابايت من المساحة،
وهو أقل بكثير من Windows.
إذا كنت تتعامل مع بيئة Mac
كنظام تشغيل ضيف، فهذا،
مرة أخرى، يستغرق عادةً
مساحة تتراوح بين 20 إلى 40 جيجابايت.
لذا ضع ذلك في الاعتبار،
وإذا كان لديك مقدار محدود جدًا
من مساحة القرص على جهازك الفعلي، فقد ترغب
في ترقية ذلك وزيادة مقدار
مساحة التخزين لديك.
وبهذه الطريقة يمكنك استضافة المزيد من أنظمة
التشغيل الضيف على نفس الخادم الفعلي.
والمجال الأخير الذي نحتاج إلى مراعاته هو التواصل.
وذلك لأن برنامج Hypervisor الذي
يعمل على نظام التشغيل المضيف سيقوم بإنشاء
بيئة شبكة افتراضية لجميع الأجهزة الافتراضية
الأخرى التي تتم استضافتها على
هذا النظام للتواصل من خلالها.
ولكن إذا كانوا جميعًا يريدون الوصول إلى
الإنترنت أو إلى الشبكة المحلية لديك لتنزيل الملفات،
فإنهم جميعًا يفعلون
ذلك من خلال نفس بطاقة واجهة الشبكة الموجودة
على الجهاز الفعلي.
لذا، إذا كنت تستخدم بطاقة شبكة قديمة
تعمل فقط بسرعة مائة ميجابت في الثانية وتقوم
بتشغيل خمسة أجهزة افتراضية على ذلك الخادم، فإن
كل جهاز يحصل فعليًا على
20 ميجابت في الثانية فقط.
في هذه الحالة، ستحتاج
بالتأكيد إلى ترقية بطاقة واجهة
الشبكة الخاصة بك
على الخادم الفعلي
الذي يستضيف هؤلاء الضيوف ووضع بطاقة
شبكة جيجابت أو حتى بطاقة شبكة 10 جيجابت إذا
كنت تستضيف أجهزة افتراضية متعددة.
سيسمح لك هذا بالحصول على إنتاجية ونطاق
ترددي إضافي لتتمكن من استضافة جميع
هذه الأجهزة الافتراضية دون
أن تصبح الشبكة بطيئة لديك.
بالإضافة إلى ذلك، كما ستتعلم
في دراسات الشبكات الخاصة بك
لاحقًا، يمكنك أيضًا وضع بطاقات واجهة شبكة
متعددة ووضعها في ما
يعرف بتكوين الفريق.
وهذا يسمح لعدة بطاقات بالعمل معًا جنبًا
إلى جنب لتمنحك سرعات أعلى.
لذلك، إذا كان لديك بطاقتي شبكة بسعة 1 جيجابت
ويعملان ضمن فريق، فلديك
الآن 2 جيجابت من الإنتاجية التي
يمكنك استخدامها للاتصال
بالشبكة.
في كثير من الأحيان، إذا كنت
تعمل على خادم يستضيف الكثير من الأجهزة
الافتراضية في بيئة شركة أو مؤسسة، فسترى
أنها ستحتوي على ما يصل
إلى أربع بطاقات واجهة شبكة، وجميعها
تعمل في فريق حتى تتمكن من
الحصول على ما يصل إلى أربعة جيجابت لكل ثانية أو
حتى ما يصل إلى 40 جيجابت في الثانية.
إذا كانوا يستخدمون بطاقات واجهة شبكة بسرعة
10 جيجابت في الثانية على هذا الخادم المحدد.
لذا تذكر أنه عندما يتعلق الأمر بمتطلبات الموارد، فمن المهم
مراعاة وحدة المعالجة المركزية والمعالج وقدراته، بالإضافة
إلى مقدار الذاكرة المتوفرة لديك ومقدار مساحة التخزين المتوفرة
لديك ومقدار الشبكة المتوفرة لديك.
هذه المجالات الأربعة هي جميع المجالات التي تريد النظر فيها.
أثناء قيامك بتحديد عدد الأجهزة الافتراضية
التي يمكنك استضافتها على خادم أو محطة عمل معينة،
بالإضافة إلى كيفية زيادة أداء أنظمة
التشغيل الضيف التي يتم تشغيلها داخل أجهزتك الافتراضية
على برنامج Hypervisor المحدد.