LXC 部署上線期間常見問題彙總

問題一:執行lxc-create時,報錯configuration path '/usr/local/var/lib/lxc' not found,或者lxc-ls無效:java

解決:mkdir –p /usr/local/var/lib/lxcide


問題二:lxc-execute: No such file or directory -failed to open /proc/mounts工具

緣由簡析:掛載cgroup文件系統時,把/proc文件系統玩壞了。不是每次都出現,我的筆記本和實驗節點都未出現此問題,可是上線節點出現了此問題。oop

解決: sudo mount --make-rprivate /ui


問題三:lxc啓動後內部進程PID與宿主機相獨立
this

解決:使用lxc-start命令啓動spa


問題四:lxc-start命令不能以daemon形式啓動進程調試

啓動腳本中最後一個進程不能以daemon形式啓動。例如blog

# loop1.sh進程

my_loop &

my_loop &

my_loop &

不能夠使用lxc-start啓動


# loop2.sh

my_loop &

my_loop &

my_loop

能夠使用lxc-start啓動


雖然腳本內部對daemon&)形式有限制,可是啓動lxc時,能夠使用daemon形式,例如

lxc-start -n my_lxc sh loop2.sh &


問題五:使用lxc-execute後,報錯netstat: no support for `AF UNIX` on this system,/proc文件系統出現異常。

解決:切換到root用戶,系統會進行提示,根據提示,進行以下操做:mount -t proc none /proc,從新掛載/proc文件系統


問題六:lxc與內部進程的耦合關係

基本屬於緊耦合,關閉lxc(lxc-stop)後,內部進程被殺掉;關閉lxc內全部進程後,lxc也自動被關閉。

解決:使用lxc-attach,不過好像須要打內核補丁。本人未實際操做。


問題七:使用普通用戶啓動lxc

解決:lxc自帶命令lxc-setuidroot執行lxc-setuid後,普通用戶便可使用lxc-start lxc-stop等命令。


問題八:lxc-stop暴力關閉lxc。應用方但願關閉lxc時,應用程序能夠不要暴力關閉,能夠收到signum(如15)。這樣應用方能夠先進行結果回收,而後再退出。

解決:使用lxc-kill命令,如使用命令lxc-kill -n lxc1 15,至關於kill -15關閉應用進程。


問題九:使用lxc啓動Java進程後,java調試工具(如jps/jstat)沒法正常使用。

解決:修改代碼clone_newpid,參見另外一篇專門博客《LXC Java調試命令無效與共享PID Namespace》

相關文章
相關標籤/搜索