[筆記] 如何搬移比較複雜的 LXD 容器
這次要帶大家一起動手搬移設定了 idmap
等功能的 LXD Conainer 喔!
圖片:Container Ship – Freighter. Photog of the cargo ship in the Baltic Sea in Poland.(來源,Public Domain)
先前在『使用 LXD 的一些小技巧』一文中,介紹了一些額外的功能,讓 LXD 可以有更多的應用。
當然也要來補充一下如何遷移(migrate)他們囉!
Host 環境:
- OS: Ubuntu 20.04.1 LTS
- Kernel: 5.4.0-58-generic
- LXD: lxd 4.8 (snap)
- Storage Pool: zfs-0.8.3-1ubuntu12.5
測試各種 LXD 設定:
一、資料夾分享
-
名稱:
dir-map
-
資料夾
/share
–>~/share
lxc config device add dir-map myshare disk path=/share source=/home/使用者/share
-
id
1000 1000
–>1000 1000
lxc config set dir-map raw.idmap 'both 1000 1000'
先 export
並 scp
到另一部主機:
lxc export dir-map dir-map.tar.bz2 --compression bzip2
scp dir-map.tar.bz2 192.168.1.17:/home/play_pc/
使用 import
匯入:
lxc import dir-map.tar.bz2
這邊要注意原本的分享資料夾要先建立起來,否則會出現以下錯誤訊息
Error: Internal import request: Create instance: Invalid devices: Device validation failed for "myshare": Missing source "/home/play_pc/share" for disk "myshare"
另外,若是原本有使用自訂的 idmap
,也要記得在主機設定好,不然會出問題(lxc 裡面看是對的,外面看卻不是):
echo "root:1000:1" | sudo tee -a /etc/subuid
echo "root:1000:1" | sudo tee -a /etc/subgid
二、網路橋接
- 名稱:
bridged
- profile:
bridge0
(詳見先前的文章)
先 export
並 scp
到另一部主機:
lxc export bridged bridged.tar.bz2 --compression bzip2
scp bridged.tar.bz2 192.168.1.17:/home/play_pc/
使用 import
匯入:
lxc import bridged.tar.bz2
如果沒有事先設好 profile 的話,會出現以下訊息:
Error: Internal import request: Create instance: Requested profile 'bridge0' doesn't exist
三、使用 OpenVPN
- 名稱:
openVPN
- 額外裝置:
/dev/net/tun
(詳見先前的文章)
先 export
並 scp
到另一部主機:
lxc export openVPN openVPN.tar.bz2 --compression bzip2
scp openVPN.tar.bz2 192.168.1.17:/home/play_pc/
使用 import
匯入:
lxc import openVPN.tar.bz2
無須額外設定,連線正常:
root@openVPN:~# ip a
...
2: tun0: <POINTOPOINT,MULTICAST,NOARP,UP,LOWER_UP> mtu 1500 qdisc fq_codel state UNKNOWN group default qlen 500
link/none
inet 10.17.112.93/24 brd 10.17.112.255 scope global tun0
valid_lft forever preferred_lft forever
inet6 fe80::67e3:1b2f:d8d2:6be6/64 scope link stable-privacy
valid_lft forever preferred_lft forever
...
後記
其實這篇文章沒什麼特別的用意,只是我「又」把自己的 Server 玩炸了,順便筆記一下其中一小段修復過程的心得 Orz
總之,謝謝收看!