最近做雲平台,和另一個小伙伴一起,他做php我做java。網站那塊差不多弄好了,現在開始搭建java環境,最初想了很多方案,由於需要沙箱隔離,cpu,內存限制和一些資源共享,最終決定采用lxc,所謂lxc就是系統級別上的隔離,無須再硬件上做任何配置,就可以達到虛擬機的效果,當然在隔離程度上不及vmware之類,不過這樣亦能滿足我的雲平台各種需求。。
step1:安裝lxc
sudo apt-get install lxc
說明:由於在Ubuntu中通過apt-get安裝lxc會自動安裝lxc依賴的其他軟件,debootstrap,lvm2,cgroup-lite等。
step2:lxc宿主主機配置
首先介紹幾個文件夾(默認通過apt-get安裝將自動生成以下文件/文件夾)
/etc/lxc/default.conf
創建容器時若未指定配置文件,則默認使用這個default.conf作為該容器的配置文件
/usr/share/lxc/templates/
該目錄下保存了LXC支持的各種發行版的linux模板,通常有:
/var/lib/lxc/
這個目錄是用來存放容器實例的,默認情況下該文件夾只有管理員才有權限訪問讀寫其中文件
/var/cache/lxc/
第一次創建容器,需要下載一個mini版的容器系統,會花很長時間,創建好後,將會在該目錄下創建緩存,再次創建直接采用緩存無須再網上下載,對於我的需求,我比較喜歡用lxc-clone,所有應用的容器幾乎都是相同的配置,所以克隆不僅節省時間還省去大量配置的繁瑣
step3:檢驗lxc是否已安裝好
lxc-verison
如果顯示 lxc version: x.x.x表示安裝成功。這裡x表示版本號,我安裝的是lxc version:0.9.0
lxc-checkconfig
按理說所有選項都應該是enable,但是User namespace:missing,別捉急,這影響不大。有人說是內核配置的問題,有人說只在ubuntu32位系統出現。下面這段話是一個外國博友寫的: