تحديث لـ Intel Cloud Hypervisor 0.3 و Amazon Firecracker 0.19 مكتوب بلغة Rust

شركة انتل опубликовала نسخة جديدة من برنامج Hypervisor Cloud Hypervisor 0.3 تحديث. تم إنشاء برنامج Hypervisor حول المكونات
مشروع مشترك الصدأ- VMM، والتي يشارك فيها أيضًا ، بالإضافة إلى Intel و Alibaba و Amazon و Google و Red Hat. تمت كتابة Rust-VMM بلغة Rust ويسمح لك بإنشاء برامج مراقبة خاصة بالمهام. يعد Cloud Hypervisor أحد برامج Hypervisor التي توفر شاشة جهاز افتراضية عالية المستوى (VMM) تعمل أعلى KVM وتم تحسينها لمهام السحابة الأصلية. رمز المشروع متاح مرخص بموجب Apache 2.0.

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

يتم الحفاظ على دعم المحاكاة عند الحد الأدنى ويتم التركيز على paravirtualization. حاليًا ، يتم دعم أنظمة x86_64 فقط ، ولكن دعم AArch64 في الطريق. من بين أنظمة الضيف ، يتم دعم إصدارات Linux 64 بت فقط حاليًا. يتم إجراء إعدادات وحدة المعالجة المركزية والذاكرة و PCI و NVDIMM في مرحلة الإنشاء. من الممكن ترحيل الأجهزة الافتراضية بين الخوادم.

новой версии:

  • استمر العمل على نقل عمليات الإدخال / الإخراج المصغرة إلى عمليات منفصلة. تمت إضافة القدرة على استخدام الخلفيات للتفاعل مع أجهزة الحظر vhost-user-blk. يسمح لك التغيير بتوصيل الأجهزة المحظورة بناءً على وحدة vhost-user بـ Cloud Hypervisor ، مثل SPDK، كخلفية للتخزين شبه الفردي ؛
  • تم تقديمه في الإصدار الأخير ، وهو دعم لنقل عمليات الشبكة إلى الخلفية vhost-user-net، مع واجهة خلفية جديدة تعتمد على برنامج تشغيل شبكة افتراضي TAP. تمت كتابة الواجهة الخلفية بلغة Rust وتُستخدم الآن في Cloud Hypervisor باعتبارها بنية الشبكة الرئيسية المخصصة ؛
  • لزيادة كفاءة وأمن الاتصالات بين البيئة المضيفة ونظام الضيف ، يُقترح تنفيذ هجين للمآخذ مع عنونة AF_VSOCK (مآخذ الشبكة الافتراضية) التي تعمل من خلال Virtio. يعتمد التنفيذ على تطورات المشروع مفرقعة ناريةتم تطويره بواسطة أمازون. يسمح لك VSOCK باستخدام POSIX Sockets API القياسي للتفاعل بين التطبيقات الموجودة على جانب نظام الضيف والمضيف ، مما يجعل من السهل تكييف برامج الشبكة العادية لمثل هذا التفاعل وتنفيذ تفاعل العديد من برامج العملاء مع تطبيق خادم واحد ؛
  • تم توفير الدعم الأولي لواجهة برمجة تطبيقات الإدارة باستخدام بروتوكول HTTP. في المستقبل ، ستسمح واجهة برمجة التطبيقات هذه ببدء عمليات غير متزامنة على أنظمة الضيف ، مثل موارد التوصيل السريع وبيئات الترحيل ؛
  • تمت إضافة طبقة تنفيذ النقل على أساس Virtio MMIO (Virtio MMIO) ، والتي يمكن استخدامها لإنشاء أنظمة ضيف بسيطة لا تتطلب محاكاة ناقل PCI ؛
  • كجزء من مبادرة لتوسيع الدعم لتشغيل أنظمة الضيف المتداخلة في Cloud Hypervisor ، تمت إضافة القدرة على إعادة توجيه أجهزة IOMMU شبه الافتراضية من خلال Virtio ، مما يسمح لك بزيادة أمان إعادة توجيه الجهاز المتداخلة والمباشرة.
  • قدم الدعم لـ Ubuntu 19.10 ؛
  • تمت إضافة القدرة على تشغيل أنظمة الضيف بأكثر من 64 جيجابايت من ذاكرة الوصول العشوائي.

بالإضافة إلى ذلك ، يمكن ملاحظته مشكلة جديدة مجاور متطور مراقبة الآلة الافتراضية مفرقعة نارية، مكتوب أيضًا بلغة Rust ، استنادًا إلى Rust-VMM ويعمل أعلى KVM. Firecracker هو مفترق طرق للمشروع كروس في إمالتي تستخدمها Google لتشغيل التطبيقات لينكس и أندرويد في ChromeOS. يتم تطوير Firecracker بواسطة Amazon Web Services لتحسين أداء وكفاءة منصات AWS Lambda و AWS Fargate.

تم تصميم النظام الأساسي لتشغيل الأجهزة الافتراضية بأقل قدر من النفقات العامة ويوفر أدوات لإنشاء وإدارة البيئات والخدمات المعزولة التي تم إنشاؤها باستخدام نموذج تطوير بدون خادم (يعمل كخدمة). تقدم Firecracker أجهزة افتراضية خفيفة الوزن ، تسمى microVMs ، تستخدم تقنيات المحاكاة الافتراضية للأجهزة لعزلها تمامًا ، مع توفير الأداء والمرونة للحاويات التقليدية. على سبيل المثال ، عند استخدام Firecracker ، لا يتجاوز الوقت من بداية microVM إلى بداية التطبيق 125 مللي ثانية ، مما يسمح لك بإطلاق أجهزة افتراضية جديدة بكثافة تصل إلى 150 بيئة في الثانية.

أضاف الإصدار الجديد من Firecracker وضعًا للتشغيل بدون تشغيل معالج API ("- no-api") ، والذي يقصر البيئة على الإعدادات المشفرة في ملف التكوين فقط. يتم تحديد التكوين الثابت عبر خيار "--config-file" ويتم تعريفه بتنسيق JSON. من بين خيارات سطر الأوامر ، تمت إضافة دعم المحدد "-" أيضًا ، وبعد ذلك يتم تمرير العلامات على طول السلسلة دون معالجة.

مطور الالعاب النارية أمازون أيضا أعلن على رعاية مطوري لغة البرمجة Rust. ويلاحظ أن Rust يستخدم بشكل متزايد في مشاريع الشركة وقد تم بالفعل تنفيذ التطورات عليه في خدمات مثل Lambda و EC2 و S3. زودت أمازون مشروع Rust بالبنية التحتية لتخزين الإصدارات والبنيات في S3 ، وإجراء اختبارات الانحدار على EC2 ، والحفاظ على موقع docs.rs مع وثائق لجميع الحزم من مستودع crates.io.

أمازون أيضًا المقدمة برنامج ائتمان AWS الترويجي، حيث يمكن للمشاريع المفتوحة الوصول مجانًا إلى خدمات AWS التي يمكن استخدامها لتخزين الموارد والبناء والتكامل المستمر والاختبار. من بين المشاريع التي تمت الموافقة عليها بالفعل للمشاركة في البرنامج ، تمت الإشارة إلى Rust و تبنّي OpenJDK و Maven Central و Kubernetes و Prometheus و Envoy و Julia. يتم قبول الطلبات من أي مشاريع مفتوحة المصدر يتم توفيرها بموجب التراخيص المعتمدة من قبل OSI.

المصدر: opennet.ru

إضافة تعليق