Amazon, Firecracker 1.0 sanallaştırma sistemini yayınladı

Amazon, sanal makineleri minimum düzeyde ek yük ile çalıştırmak üzere tasarlanan Virtual Machine Monitor (VMM) Firecracker 1.0.0'ın önemli bir sürümünü yayınladı. Firecracker, Google tarafından ChromeOS'ta Linux ve Android uygulamalarını çalıştırmak için kullanılan CrosVM projesinin bir çatalıdır. Firecracker, AWS Lambda ve AWS Fargate platformlarının performansını ve verimliliğini artırmak için Amazon Web Services tarafından geliştirilmektedir. Firecracker kodu Rust'ta yazılmıştır ve Apache 2.0 lisansı altında lisanslanmıştır.

Firecracker, microVM adı verilen hafif sanal makineler sunar. Tam mikroVM izolasyonu için KVM hipervizörünü temel alan donanım sanallaştırma teknolojileri kullanılır, ancak aynı zamanda geleneksel konteynerler düzeyinde performans ve esneklik de sağlanır. Sistem x86_64 ve ARM64 mimarileri için mevcuttur ve Intel Skylake, Intel Cascade Lake, AMD Zen2 ve ARM64 Neoverse N1 ailesinden CPU'lar üzerinde test edilmiştir. Firecracker'ı Kata Containers, Weaveworks Ignite ve Containerd (çalışma zamanı Firecracker-containerd tarafından sağlanır) gibi çalışma zamanı konteyner muhafaza sistemlerine entegre etmek için araçlar sağlanmıştır.

Amazon, Firecracker 1.0 sanallaştırma sistemini yayınladı

Sanal makinelerin içinde çalışan yazılım ortamı sadeleştirilmiştir ve yalnızca minimum sayıda bileşen içerir. Bellekten tasarruf etmek, başlatma süresini kısaltmak ve ortamlarda güvenliği artırmak için, azaltılmış işlevsellik ve kaldırılan aygıt desteği de dahil olmak üzere gereksiz her şeyin hariç tutulduğu sadeleştirilmiş bir Linux çekirdeği başlatılır (4.14 ve 5.10 çekirdekleri desteklenir).

Sadeleştirilmiş bir çekirdekle çalışırken, konteynere kıyasla ek bellek tüketimi 5 MB'tan azdır. microVM'nin başlatıldığı andan uygulamanın yürütülmesinin başlangıcına kadar geçen gecikmenin 6 ila 60 ms (ortalama 12 ms) arasında olduğu belirtiliyor; bu, bir ana bilgisayarda saniyede 180 ortama kadar yoğunluğa sahip yeni sanal makinelerin oluşturulmasına olanak tanıyor 36 CPU çekirdeği ile.

Kullanıcı alanındaki sanal ortamları yönetmek için, mikroVM'yi yapılandırma, başlatma ve durdurma, CPU şablonlarını seçme (C3 veya T2), sanal işlemcilerin (vCPU) sayısını belirleme gibi işlevleri uygulayan bir RESTful API sağlayan Virtual Machine Manager arka plan işlemi çalıştırılır. ve bellek boyutu, ağ arayüzleri ve disk bölümleri ekleme, işlem hacmi ve işlem yoğunluğuna sınırlamalar koyma, kaynakların yetersiz olması durumunda ek bellek ve CPU gücü sağlama.

Firecracker, konteynerler için daha derin bir izolasyon katmanı olarak kullanılmasının yanı sıra, geliştirmenin bir dizi küçük bireysel veri kümesi hazırlama aşamasında gerçekleştirildiği sunucusuz bir bilgi işlem modeli sunan FaaS (Hizmet Olarak İşlev) sistemlerine güç sağlamak için de uygundur. Her biri belirli bir olayı işleyen ve çevreye referans olmadan yalıtılmış işlem için tasarlanmış işlevler (durumsuz, sonuç, dosya sisteminin önceki durumuna ve içeriğine bağlı değildir). Fonksiyonlar ancak ihtiyaç duyulduğunda devreye girer ve olay işlendikten hemen sonra işlerini tamamlarlar. FaaS platformunun kendisi hazırlanmış işlevleri barındırır, yönetimi organize eder ve hazırlanan işlevleri yürütmek için gereken ortamların ölçeklendirilmesini sağlar.

Ek olarak, Intel'in yanı sıra Alibaba, Amazon, Google ve Red Hat'in de katıldığı ortak Rust-VMM projesinin bileşenleri temelinde oluşturulan Cloud Hypervisor 21.0 hipervizörünün Intel tarafından yayınlandığını not edebiliriz. Rust-VMM, Rust dilinde yazılmıştır ve göreve özel hipervizörler oluşturmanıza olanak tanır. Cloud Hypervisor, KVM üzerinde çalışan ve bulutta yerel görevler için optimize edilmiş yüksek düzeyde bir sanal makine monitörü (VMM) sağlayan böyle bir hipervizördür. Proje kodu Apache 2.0 lisansı kapsamında mevcuttur.

Cloud Hypervisor, sanal tabanlı paravirtualized cihazları kullanarak modern Linux dağıtımlarını çalıştırmaya odaklanmıştır. Bahsedilen temel hedefler arasında şunlar yer almaktadır: yüksek yanıt verme, düşük bellek tüketimi, yüksek performans, basitleştirilmiş yapılandırma ve olası saldırı vektörlerinin azaltılması. Emülasyon desteği minimumda tutulur ve paravirtualizasyona odaklanılır. x86_64 ve AArch64 mimarileri desteklenir. Konuk sistemler için şu anda yalnızca 64 bit Linux yapıları desteklenmektedir. CPU, bellek, PCI ve NVDIMM, montaj aşamasında yapılandırılır. Sanal makinelerin sunucular arasında taşınması mümkündür.

Cloud Hypervisor'ın yeni sürümü, ortamları anında güncellemek için kullanılabilecek verimli yerel canlı geçiş gerçekleştirme yeteneğini içerir (Canlı Yükseltme). Yeni mod, kaynak ve hedef ortamların bellek karşılaştırmasının devre dışı bırakılmasıyla ayırt edilir; bu, anında güncelleme işleminin süresini 3 saniyeden 50 ms'ye düşürür. Önerilen Linux çekirdeği 5.15'tir (5.14'ün virtio-net ile sorunları vardır).

Kaynak: opennet.ru

Yorum ekle