ubuntu中安裝lxc、lxd實驗
本文使用vmware workstation pro16,ubuntu 14.04.6
1.確保ubuntu聯網,方法見下:
https://www.cnblogs.com/San-Francisco/p/14898819.html
2.lxc安裝,開啟終端命令列,輸入
sudo apt-get install lxc
命令,如下圖:
注意,如果出現類似於“無法定位軟體包lxc”出現,我在網上沒有找到解決方法,重灌一個ubuntu就解決了
安裝完畢之後,執行lxc-checkconifg工具,檢查當前Linux核心支援LXC的情況。要是一切都已被啟用即全部enabled,說明核心對LXC的支援已準備就緒。
3.lxd安裝配置
1)使用
sudo apt-get install lxd
命令安裝lxd時出現:
緊接著查了資料,如何對LXD進行安裝和配置,參考了:
https://blog.csdn.net/weixin_33836223/article/details/90325244
https://www.cnblogs.com/chengkanghua/p/12530894.html
使用了
sudo apt -t trusty-backports install lxd
命令來安裝,如下圖:
2)接下來使用
sudo lxd init
來初始化lxd,如下圖所示:
注意,第四行不是預設設定,而是設定成yes
緊接著出現了問題:
Do you want to configure the LXD bridge(yes/no)[default=yes]
這個選擇yes後,如下介面:
這裡選擇“是”需要配置一系列東西,先選擇“否”,記錄一下。
緊接著下一個頁面也選擇“否”,如下圖所示:
最後如下圖所示:
3)配置LXD網路
在上一步2)中,沒有配置(圖片上選擇了否),現在使用命令
sudo dpgk-reconfigure -p medium lxd
進行配置。
不瞭解如何進行配置,在網上參考了:
https://www.osetc.com/archives/20176.html
過程如下圖所示:
緊接著使用預設配置配置了ipv6子網,最後如下圖所示:
4)安裝儲存後端ZFS(https://blog.csdn.net/zhengliangs/article/details/104844533)
使用
sudo apt install afsutils-linux
命令安裝ZFS,安裝失敗,如下圖所示:
緊接著參考了以下資料:
https://blog.csdn.net/weixin_33836223/article/details/90325244
https://www.cnblogs.com/chengkanghua/p/12530894.html
(和安裝lxd時參考的網站是一樣的)
使用
sudo apt-add-repository ppa:zfs-native/stable
sudo apt update
sudo apt install ubuntu-zfs
這三條命令來安裝,前兩條命令可以執行,但仍然無法安裝ZFS
如下圖所示:
又參考了
https://blog.csdn.net/qq_15427331/article/details/62041820
發現,原來上面的三條指令是正確的,只不過在執行完第一條指令
sudo apt-add-repository ppa:zfs-native/stable
後,要先按下 ctrl+c 取消新增(如上圖第6行所示),然後再執行第二條
sudo apt update
以及第三條指令。
安裝結束後如圖所示:
緊接著,參考
https://blog.csdn.net/qq_15427331/article/details/62041820
使用
sudo modprobe zfs
命令,載入zfs模組,
然後使用
lsmod | grep zfs命令,確認模組是否被正確載入,如下圖所示:
5)配置LXC映象源
在這裡新增國內清華的映象源,以加速後面建立容器過程。
參考資料:
https://blog.csdn.net/tengxiang136/article/details/103383606
使用命令
lxc remote add tuna-images https://mirrors.tuna.tsinghua.edu.cn/lxc-images/ --protocol=simplestreams --public
便可以將清華映象源新增進來。
使用命令
lxc image list tuna-images:
可以列出清華映象源上所有映象相關資訊。
6)建立並啟動一個新的容器
使用命令
lxc launch tuna-images:centos/7/amd64
命令
出現如下圖所示:
然後參考了
https://www.osetc.com/archives/20176.html
發現命令列前沒有加sudo
這個sudo有點記不清了,網上查了一下,如果不在root許可權下,使用sudo命令,然後輸入密碼,就可以執行一些命令。
也可以剛開始就進入root許可權,這樣就不用每次用sudo命令,再輸入密碼了,參考資料:https://blog.csdn.net/Liyiming_520/article/details/43539647
加上之後執行
sudo lxc launch tuna-images:centos/7/amd64
命令,建立一個基於centos映象的容器,容器名會隨機分配
使用
sudo lxc list
命令檢視已經建立的所有容器
下圖中顯示容器名為:crack-newt
7)檢視建立好的虛擬主機的具體資訊
使用
sudo lxc info crack-newt
檢視該容器的具體資訊:
圖中有ipv6地址,ipv4地址在 3)配置LXD網路 的截圖中。
8)進入容器
使用
sudo lxc exec crack-newt bash
命令可以進入建立的容器的命令列介面:
4.LXC容器宣告週期管理命令
1)啟動
sudo lxc start <container>
如:
sudo lxc start crack-newt
2)停止
sudo lxc stop <container>
3)重啟
sudo lxc restart <container>
4)暫停
sudo lxc pause <container>
5)刪除
sudo lxc delete <container>