Linux kapsayıcısı ve Linux hipervizörü nedir?


10

Stackexchange sitesine baktım ama hiçbir şey bulamadım. Linux kapsayıcısındaki wikipedia girişine baktım https://en.wikipedia.org/wiki/LXC ve ayrıca hipervizör https://en.wikipedia.org/wiki/Hypervisor ama ikisine de açıklama yapan bir kişinin ötesinde üzerinde çalışamayacağını anlayacak. Ayrıca http://www.linux.com/news/enterprise/cloud-computing/785769-containers-vs-hypervisors-the-battle-has-just-begun gördüm ama bu da açıklamıyor.

Virtualbox gibi VM'lerle oynadım. Sınırlı anlayışımın başlangıç ​​fikirlerinden biri Sanal Makineler için belki de bir sanal alan ortamında yazılımı test etmek olabilirdi (Makineyi satın alamadığınız / satın alamayacağınız ve hala geliştirdiğiniz yazılım hakkında nasıl bir fikriniz olduğunda bir Solaris kutusuna sahip olmak hedef donanım çalışıyor.) Sınırlı olsa da kullandı. Bu muhtemelen bulut bilişimde de sıçramanın yollarından biridir. Sorular geniştir, bu yüzden bunu nasıl damıtırım -

Bazı insanlar bir hipervizör ve bir * nix konteynerinin ne olduğunu açıklayabilir (mümkünse analojilerle)?
* Nix hipervizörü sanal makine ile aynı mı yoksa fark var mı?

Yanıtlar:


9

Bir Sanal Makine (VM) çok sanallaştırma teknolojileri için oldukça genel bir terimdir.

Sanallaştırma teknolojilerinde birçok varyasyon vardır, ancak başlıcaları şunlardır:

  • Donanım Düzeyinde Sanallaştırma
  • İşletim Sistemi Düzeyinde Sanallaştırma

qemu-kvmve VMWarebirincisinin örnekleridir. Tam bir işletim sisteminin çalıştığı sanal ortamları yönetmek için bir hipervizör kullanırlar. Örneğin, bir qemu-kvmsistemde FreeBSD çalıştıran bir VM, Windows çalıştıran başka bir VM ve Linux çalıştıran başka bir VM'ye sahip olabilirsiniz.

Bu teknolojiler tarafından oluşturulan sanal makineler, konuklara ayrı ayrı bilgisayarlar gibi davranır. Bunlar, konukların orijinal makale olduğuna inandığı sanal bir CPU, RAM, NIC, grafik vb. Bu nedenle, VM'lere birçok farklı işletim sistemi kurulabilir ve hiçbir değişiklik gerekmeden "kutudan çıkar" çalışırlar.

Bu çok uygun olsa da, birçok işletim sisteminin çok fazla çaba sarf etmeden kurması nedeniyle, hiper yöneticinin tüm donanımı simüle etmesi ve bir şeyleri yavaşlatabileceği bir dezavantajı vardır. Bir alternatif, sanal bir ortamda performans için tasarlanmış konuk için yeni bir sanal aygıt ve sürücünün geliştirildiği para-sanallaştırılmış donanımdır. qemu-kvmbunun için virtioçeşitli aygıt ve sürücüler sağlar. Bunun bir dezavantajı konuk işletim sisteminin desteklenmesi gerektiğidir; ancak desteklenirse performans avantajları mükemmeldir.


lxcİşletim Sistemi Düzeyi Sanallaştırma veya kapsayıcılarına bir örnektir. Bu sistem altında, yalnızca bir çekirdek yüklüdür - ana çekirdek. Her kap basitçe kullanıcı alanı işlemlerinin bir izolasyonudur. Örneğin, apachebir konteynere bir web sunucusu (örneğin ) yüklenir. Bu web sunucusu ile ilgili olarak, kurulu tek sunucu kendisidir. Başka bir kapsayıcı bir FTP sunucusu kullanıyor olabilir. Bu FTP sunucusu web sunucusu kurulumunun farkında değil - sadece kendi. Başka bir kapsayıcı, Linux dağıtımının kullanıcı tarafından tam olarak yüklenmesini içerebilir (dağıtım, ana sistemin çekirdeğiyle çalışabildiği sürece).

Ancak, kapları kullanırken ayrı bir işletim sistemi yüklemesi yoktur - yalnızca kullanıcı arazisi hizmetlerinin yalıtılmış örnekleri. Bu nedenle, bir kapsayıcıya farklı platformlar yükleyemezsiniz - Linux'ta Windows yok.

Kaplar genellikle a kullanılarak oluşturulur chroot. Bu /işlemin çalışması için ayrı bir özel kök ( ) oluşturur. Birçok bireysel özel kök oluşturarak, işlemler (web sunucuları veya bir Linux dağıtımı vb.) Kendi yalıtılmış dosya sistemlerinde çalışır. cgroupsAğ ve RAM gibi diğer kaynakları izole edebilir gibi daha gelişmiş teknikler .


Hem en iyi hem de uzun süren tartışmaların artıları ve eksileri vardır.

  • Kaplar daha hafiftir, çünkü her biri için tam bir işletim sistemi yüklenmez; hipervizörler için durum böyledir. Bu nedenle, daha düşük teknik özelliklere sahip donanımlarda çalışabilirler. Ancak, yalnızca Linux konuklarını çalıştırabilirler (Linux ana bilgisayarlarında). Ayrıca, çekirdeği paylaştıkları için, güvenliği ihlal edilmiş bir kabın bir başkasını etkileyebileceği ihtimali vardır.
  • Hiper denetimciler daha güvenlidir ve her bir VM'ye tam bir işletim sistemi yüklendiğinden ve konuklar diğer VM'lerin farkında olmadığından farklı işletim sistemleri çalıştırabilir. Bununla birlikte, bu, ana bilgisayarda nispeten güçlü olması gereken daha fazla kaynak kullanır.

2

Bir kap, kullanıcı alanının daha eksiksiz bir izolasyonunu elde etmesi dışında, bir chot ortamı gibidir . Gerçek bir VM değil, sanal bir işletim sistemi sağlar. VM'ler, her biri gerçek, eksiksiz bir işletim sisteminin çıplak metal gibi çalışabileceği birden fazla makine yanılsaması yaratır. "Komple işletim sistemi" burada bir çekirdek içerir. Bazı VM'ler (örn. QEMU ) farklı türde “çıplak metal” mimarileri uyarmaya bile izin verir.

Kaplar bunun yerine, her biri tam bir kullanıcı arazisi çalıştıran birden çok çekirdek yanılsaması yaratır. Örneğin, Debian'ı bir kapta ve Arch'ı başka bir kapta çalıştırabilirsiniz, böylece kap içindeki perspektif bir VM ile aynıdır. Ancak, yalnızca tek bir gerçek çekirdeğe (bu durumda Linux) uyumlu bir işletim sistemi kullanıcısı çalıştırabilirsiniz. Bu, bağımsız bir çekirdek ve dolayısıyla her türlü işletim sistemini çalıştırabileceğiniz gerçek VM'lerden farklıdır.

Dolayısıyla gerçek VM'ler kapsayıcılardan daha pahalıdır, kaynak bakımından daha pahalıdır; her VM'de farklı çekirdeklere ihtiyacınız yoksa, bir kap da kullanabilirsiniz.

VPS satıcıları tarafından yaygın olarak kullanılan openVZ gibi LXE'ye benzer bir şey yapan başka sanallaştırma sistemleri de vardır . Bir openVZ VPS, ana işletim sisteminin çekirdeğini kullanan bağımsız bir kullanıcı ülkesidir. Bu yüzden bu VPS'ler bir sürü linux aromasıyla gelirler, ancak başka bir şey değildir; ana makine çekirdeğiyle uyumlu olmalıdır.

OpenVZ ve LXC tarzı sanallaştırmaya işletim sistemi düzeyinde sanallaştırma denir .

Bir hiper yönetici gibi sanal makineleri, yöneten bir sistemdir VirtualBox , QEMU veya Xen . Xen gibi bazı hipervizörler çıplak metal üzerinde çalışır ve bir ana bilgisayar işletim sistemi gerektirmez (ancak bir kontrol arayüzü olarak hizmet vermek için bir ana bilgisayar işletim sistemi gerektirebilirler). VirtualBox ve QEMU gibi diğerleri bir ana işletim sisteminde çalışır. QEMU gibi bazıları, farklı makine mimarilerini simüle etmeye izin verir; VirtualBox gibi diğerleri bunu yapmaz (yani, VM mimarisi her zaman gerçek ana bilgisayarla aynıdır). Bir mimariyi simüle etmek, tıpkı gerçek VM'lerin kapsayıcılardan daha fazla kaynak gerektirmesi gibi daha fazla kaynak gerektirir.

Hipervizör tarzı sanallaştırmaya platform düzeyinde sanallaştırma denir .

Sitemizi kullandığınızda şunları okuyup anladığınızı kabul etmiş olursunuz: Çerez Politikası ve Gizlilik Politikası.
Licensed under cc by-sa 3.0 with attribution required.