婷婷综合国产,91蜜桃婷婷狠狠久久综合9色 ,九九九九九精品,国产综合av

主頁 > 知識庫 > 在Ubuntu系統中使用LXC容器的教程

在Ubuntu系統中使用LXC容器的教程

熱門標簽:2020電銷機器人排行 北京市地圖標注 廳外呼梯系統布線 鹽城客服外呼系統軟件 鄭州營銷外呼系統運營商 焦作人工智能電話機器人軟件 淘寶系統退貨外呼項目考試答案 貴陽語音電銷機器人招商 百度地圖標注陰影動態

使用“容器”來保證主機環境的安全性,這個概念早在十年前就已經存在(例如 FreeBSD 的 jail 虛擬化技術),但是直到最近,隨著部署云架構需求越來越多,像 LXC 和 Docker 這種 Linux 下的容器才成為被關注的焦點。當然,由于主流廠商(云服務商如亞馬遜主推 AWS,微軟主推 Azure;發行版如紅帽、Ubuntu等)組成的強大靠山,Docker 已經被放在媒體的聚光燈下面,其實,Docker 里面所謂的“容器”技術是由 LXC 提供的。

你只是一個普通的 Linux 用戶,那 Docker/LXC 能為你帶來什么好處呢?容器可以將你的應用在不同的 Linux 發行版之間遷移。想像一下這個場景:你正在用的發行版是 Debian,你喜歡它的穩定性,同時你又想玩一款最新的 Ubuntu 游戲,你不需要在電腦上裝雙系統然后重啟進入 Ubuntu,也不需要在 Debian 上跑一個耗資源的 Ubuntu 虛擬機,你只需要簡單地生成一個 Ubuntu 容器就夠了。

拋開 Docker 的好處不談,讓我們聊一下 LXC 容器的好處:我可以使用 libvirt 提供的接口來管理 LXC,這些接口和 Docker 沒有任何關系。如果你有使用基于 libvirt 庫的管理工具(例如 virt-manager 和 virsh),你就可以使用它們來管理 LXC 容器。

在這篇教程中,我只介紹標準 LXC 容器管理工具的命令行操作,來教你如何在 Ubuntu 下創建和管理 LXC 容器。
Ubuntu 下安裝 LXC

使用下面的命令安裝 LXC 在用戶態的工具:

   

復制代碼
代碼如下:
$ sudo apt-get install lxc

然后檢查當前內核是否支持 LXC。如果所有結果都是“enable”,說明內核支持:

   

復制代碼
代碼如下:
$ lxc-checkconfig

 

    安裝完 LXC 工具后,就能看到 LXC 自動創建了一塊橋接網卡(lxcbr0,可以在 /etc/lxc/default.conf 中設置)。
    

    當你創建了 LXC 容器后,它的網口會自動鏈接到這個橋接網卡上,然后這個容器就能和外部世界通信了。
創建 LXC 容器

為了在指定環境下(比如 Debian Wheezy 64位)創建 LXC 容器,你需要一個相應的 LXC 模板。幸運的是 LXC 提供的工具集成了一整套現成的 LXC 模板,你可以在 /usr/share/lxc/templates 目錄下找到它們。

    

復制代碼
代碼如下:
$ ls /usr/share/lxc/templates

     

     一個 LXC 模板實質上就是一個腳本,用于創建指定環境下的容器。當你創建 LXC 容器時,你需要用到它們。

比如你要新建 Ubuntu 容器,使用下面的命令即可:

   

復制代碼
代碼如下:
$ sudo lxc-create -n container-name> -t ubuntu

    

    默認情況下,這個命令會創建一個最小的 Ubuntu 環境,版本號與你的宿主機一致,我這邊是“活潑的蠑螈”(版本號是13.10),64位。

當然你也可以創建任何你喜歡的版本,只要在命令里面加一個版本參數即可。舉個例子,創建 Ubuntu 14.10 的容器:

   

復制代碼
代碼如下:
$ sudo lxc-create -n container-name> -t ubuntu -- --release utopic

這個命令就會下載安裝指定環境下的軟件包,創建新容器。整個過程需要幾分鐘時間,與容器的類型有關,所以,你可能需要耐心等待。

下載安裝完所有軟件包后,LXC 容器鏡像就創建完成了,你可以看到默認的登錄界面。容器被放到 /var/lib/lxc/容器名> 這個目錄下,容器的根文件系統放在 /var/lib/lxc/容器名>/rootfs 目錄下。

創建過程中下載的軟件包保存在 /var/cache/lxc 目錄下面,當你想另外建一個一樣的容器時,可以省去很多下載時間。

用下面的命令看看主機上所有的 LXC 容器:

   

復制代碼
代碼如下:
$ sudo lxc-ls --fancy /p> p> NAME STATE IPV4 IPV6 AUTOSTART
------------------------------------
test-lxc STOPPED - - NO

使用下面的命令啟動容器。參數“-d”將容器作為后臺進程打開。如果沒有指定這個參數,你可以在控制臺界面上直接把容器的運行程序關閉(LCTT譯注:Ctrl+C組合鍵)。

   

復制代碼
代碼如下:
$ sudo lxc-start -n container-name> -d

打開容器后,看看狀態:

  

復制代碼
代碼如下:
$ sudo lxc-ls --fancy /p> p> NAME STATE IPV4 IPV6 AUTOSTART
-----------------------------------------
lxc RUNNING 10.0.3.55 - NO

容器狀態是“運行中”,容器 IP 是10.0.3.55。

你也可以看到容器的網絡接口(比如我這里是 vethJ06SFL)自動與 LXC 內部網橋(lxcbr0)連上了:

  

復制代碼
代碼如下:
$ brctl show lxcbr0

  

    管理 LXC 容器

我們已經學習了怎么創建和啟動 LXC 容器,現在來看看怎么玩一個正在運行著的容器。

第一步:打開容器控制臺:

   

復制代碼
代碼如下:
$ sudo lxc-console -n container-name>

    

    使用“Crtl+a q”組合鍵退出控制臺。

停止、刪除容器:

   

復制代碼
代碼如下:
$ sudo lxc-stop -n container-name>
$ sudo lxc-destroy -n container-name>

復制容器,用下面的命令:

   

復制代碼
代碼如下:
$ sudo lxc-stop -n container-name>
$ sudo lxc-clone -o container-name> -n new-container-name>

常見問題

這個小節主要介紹你們在使用 LXC 過程中碰到過的問題。

    創建 LXC 容器時遇到下面的錯誤:

   

復制代碼
代碼如下:
$ sudo lxc-create -n test-lxc -t ubuntu/p> p> lxc-create: symbol lookup error: /usr/lib/x86_64-linux-gnu/liblxc.so.1: undefined symbol: cgmanager_get_pid_cgroup_abs_sync

錯誤的原因是你運行了最新的 LXC,但是它所依賴的 libcgmanager 版本較老,兩者不兼容。升級下 libcmanager 即可解決問題:

  

復制代碼
代碼如下:
$ sudo apt-get install libcgmanager0

標簽:周口 遼寧 六安 大興安嶺 大慶 樂山 青島 大理

巨人網絡通訊聲明:本文標題《在Ubuntu系統中使用LXC容器的教程》,本文關鍵詞  在,Ubuntu,系統,中,使用,LXC,;如發現本文內容存在版權問題,煩請提供相關信息告之我們,我們將及時溝通與處理。本站內容系統采集于網絡,涉及言論、版權與本站無關。
  • 相關文章
  • 下面列出與本文章《在Ubuntu系統中使用LXC容器的教程》相關的同類信息!
  • 本頁收集關于在Ubuntu系統中使用LXC容器的教程的相關信息資訊供網民參考!
  • 推薦文章
    主站蜘蛛池模板: 和林格尔县| 稷山县| 清涧县| 吉木乃县| 怀化市| 五指山市| 乌拉特中旗| 正阳县| 咸宁市| 五常市| 霸州市| 日照市| 瓮安县| 喀什市| 高雄市| 怀集县| 积石山| 东兰县| 蒙山县| 车险| 偃师市| 巩义市| 汾西县| 安顺市| 定陶县| 宁海县| 台北市| 宜黄县| 临洮县| 清流县| 额尔古纳市| 棋牌| 阜宁县| 濉溪县| 牟定县| 紫阳县| 商都县| 苍梧县| 新安县| 辉南县| 吴江市|