Sanalama
Nested virtualisation nedir?
Nested virtualisation lets a virtual machine itself run virtual machines, by exposing the processor virtualisation extensions to the guest. It is required for Proxmox VE, VM-based CI jobs and some Docker configurations. Many providers disable it, which is the usual reason those workloads fail elsewhere.
Nested virtualisation neden önemlidir
Proxmox VE, VM tabanlı CI işleri ve bazı Docker yapılandırmaları için gereklidir. Birçok sağlayıcı bunu devre dışı bırakır; bu iş yüklerinin başka yerlerde başarısız olmasının olağan nedeni budur.
Nested virtualisation pratikte
İç içe sanallaştırma çalıştırdığınızda, bir KVM misafirinin içinde bir hiper yönetici başlatır ve ana bilgisayar CPU'sunun sanallaştırma uzantılarını geçirirsiniz. Misafirde /proc/cpuinfo dosyasında svm veya vmx bayraklarını kontrol edersiniz. Bunlar yoksa, iç hiper yöneticiniz yazılım öykünmesine geri döner ve bu da performansı bir büyüklük sırası kadar düşürebilir. Bu bayrakları almak için genel bir model yerine 'host' CPU tipini etkinleştirmeniz gerekebilir. Yanlış yaparsanız Proxmox veya CI iş yükünüz ağır aksar.
Nested virtualisation hakkında insanların yanıldığı şeyler
İnsanlar iç içe sanallaştırmanın yalnızca Windows gibi tam işletim sistemlerini bir VM'de çalıştırmak için önemli olduğunu varsayar. Düzeltme: ayrıca Docker'ın varsayılan overlay ağını ve belirli çekirdek modüllerini de bozar, çünkü bunlar misafir içindeki sanallaştırma özelliklerine bağlıdır. Bu nedenle, hiçbir zaman bir VM çalıştırmayı planlamasanız bile, iç içe geçmeyi devre dışı bırakan bir sağlayıcıda konteyner iş yükü başarısız olabilir.
Nested virtualisation — yaygın sorular
İç içe bir VM içinde Docker çalıştırabilir miyim?
Evet ve bu, insanların iç içe sanallaştırmaya ihtiyaç duymasının en yaygın nedenidir. Docker'ın varsayılan köprü ağı, CPU sanallaştırma uzantıları açığa çıkarılmadan farklı davranabilen iptables ve çekirdek modüllerini kullanır. KVM planlarımız iç içe sanallaştırmayı içerir, böylece Docker konteynerleriniz beklendiği gibi çalışır.
İç içe sanallaştırmanın etkin olup olmadığını nasıl kontrol ederim?
VM'inizin içinde grep -E '(svm|vmx)' /proc/cpuinfo komutunu çalıştırın. Bayrakları görürseniz, iç içe geçme mevcuttur. Görmüyorsanız, hiper yönetici bunları açığa çıkarmıyor demektir; bu genellikle sağlayıcının devre dışı bıraktığı anlamına gelir.
Nested virtualisation nerede geçer
- VPS'te iç içe sanallaştırma çalıştırabilir miyim? Evet. İç içe sanallaştırma her OnionVPS örneğinde etkindir, böylece örneğinizin içinde KVM konukları çalıştırabilir, Proxmox VE kurabilir veya Docker-in-Do…
- Gerçekten kullanılabilir en ucuz VPS hangisidir? Yaklaşık 4 $ ayda, gerçek KVM sanallaştırmada 1 vCPU, 1 GB RAM ve 20 GB NVMe satın alır. Bu, bir WireGuard VPN, DNS çözümleyici, Tor aktarıcısı, küçük bir …
- KVM sanallaştırma nedir? KVM (Çekirdek Tabanlı Sanal Makine), Linux çekirdeğine yerleşik, her konuğu kendi çekirdeği ve donanım tarafından zorlanan yalıtımıyla çalıştırmak için işl…
- KVM vs OpenVZ: sanallaştırma türü neden önemlidir KVM tam donanım sanallaştırmasıdır: örneğiniz kendi çekirdeğini çalıştırır ve ana bilgisayarı göremez. OpenVZ ve LXC, ana bilgisayar çekirdeğini paylaşan k…
sanalama kategorisinden daha fazlası
- KVM
- KVM, Linux çekirdeğine yerleşik tam donanım sanallaştırmasıdır ve her konuğa kendi çekirdeğini ve diğer kiracılardan donanım tarafından zorlanan izolasyonu verir.
- OpenVZ
- OpenVZ, her örneğin ana çekirdeği paylaştığı kapsayıcı tabanlı sanallaştırmadır; bu nedenle konuklar çekirdek modülleri yükleyemez veya farklı bir işletim sistemi çalıştıramaz.
- LXC
- LXC, ana çekirdeği paylaşırken süreçleri ad alanları ve cgroups ile izole eden Linux yerel kapsayıcılaştırmasıdır.
- Hipervizör
- Hipervizör, fiziksel CPU, bellek ve G/Ç'yi aralarında tahsis ederek sanal makineleri oluşturan ve çalıştıran yazılım katmanıdır.
- Sanal CPU
- vCPU, fiziksel bir çekirdek veya iş parçacığı üzerindeki zamanlama ile desteklenen, konuğa sunulan sanal bir işlemcidir.
- cloud-init
- cloud-init, platform tarafından sağlanan meta verileri kullanarak bir sanal makineyi ilk açılışta yapılandırmak için standart mekanizmadır.