原文地址:http://www.cnblogs.com/lisperl/archive/2012/04/15/2450183.html
1.LXC是什么蜗侈?
LXC是Linux containers的簡(jiǎn)稱,是一種基于容器的操作系統(tǒng)層級(jí)的虛擬化技術(shù)。
2.LXC可以做什么赁豆?
LXC可以在操作系統(tǒng)層次上為進(jìn)程提供的虛擬的執(zhí)行環(huán)境,一個(gè)虛擬的執(zhí)行環(huán)境就是一個(gè)容器∑恚可以為容器綁定特定的cpu和memory節(jié)點(diǎn),分配特定比例的cpu時(shí)間屎蜓、IO時(shí)間蚁廓,限制可以使用的內(nèi)存大型怪!(包括內(nèi)存和是swap空間),提供device訪問(wèn)控制,提供獨(dú)立的namespace(網(wǎng)絡(luò)徽鼎、pid、ipc往枷、mnt蝌矛、uts)。
3.LXC如何實(shí)現(xiàn)荐吵?
Sourceforge上有LXC這個(gè)開(kāi)源項(xiàng)目骑冗,但是LXC項(xiàng)目本身只是一個(gè)為用戶提供一個(gè)用戶空間的工具集,用來(lái)使用和管理LXC容器先煎。LXC真正的實(shí)現(xiàn)則是靠Linux內(nèi)核的相關(guān)特性贼涩,LXC項(xiàng)目只是對(duì)此做了整合∈硇基于容器的虛擬化技術(shù)起源于所謂的資源容器和安全容器遥倦。
LXC在資源管理方面依賴與Linux內(nèi)核的cgroups子系統(tǒng),cgroups子系統(tǒng)是Linux內(nèi)核提供的一個(gè)基于進(jìn)程組的資源管理的框架占锯,可以為特定的進(jìn)程組限定可以使用的資源谊迄。LXC在隔離控制方面依賴于Linux內(nèi)核的namespace特性,具體而言就是在clone時(shí)加入相應(yīng)的flag(NEWNS NEWPID等等)烟央。
4.為什么要選擇LXC统诺?
LXC是所謂的操作系統(tǒng)層次的虛擬化技術(shù),與傳統(tǒng)的HAL(硬件抽象層)層次的虛擬化技術(shù)相比有以下優(yōu)勢(shì):
更小的虛擬化開(kāi)銷(LXC的諸多特性基本由內(nèi)核特供疑俭,而內(nèi)核實(shí)現(xiàn)這些特性只有極少的花費(fèi)粮呢,具體分析有時(shí)間再說(shuō))
快速部署。利用LXC來(lái)隔離特定應(yīng)用钞艇,只需要安裝LXC啄寡,即可使用LXC相關(guān)命令來(lái)創(chuàng)建并啟動(dòng)容器來(lái)為應(yīng)用提供虛擬執(zhí)行環(huán)境。傳統(tǒng)的虛擬化技術(shù)則需要先創(chuàng)建虛擬機(jī)哩照,然后安裝系統(tǒng)挺物,再部署應(yīng)用。
LXC跟其他操作系統(tǒng)層次的虛擬化技術(shù)相比飘弧,最大的優(yōu)勢(shì)在于LXC被整合進(jìn)內(nèi)核识藤,不用單獨(dú)為內(nèi)核打補(bǔ)丁砚著。