LXC 網絡配置實例(Redhat)


LXC為容器提供了獨立的網絡空間,這意味着我們可以為容器配置IP地址,MAC地址,route表等等,並通過LXC提供的幾種方式連接到宿主進而連到互聯網。下面介紹兩種采用網橋方式連接到宿主機的配置情況。

情況一:

采用靜態IP地址,即宿主本身的IP地址是由系統管理員手動配置的,容器的IP地址也是靜態指定。

宿主機的配置:

vim /etc/sysconfig/network-scripts/ifcfg-eth0

DEVICE=eth0

ONBOOT=yes

BOOTPROTO=none

USERCTL=no

BRIDGE=br0

vim /etc/sysconfig/network-scripts/ifcfg-br0

DEVICE=br0

TYPE=Bridge

BOOTPROTO=none

ONBOOT=yes

DELAY=0

IPADDR=10.20.153.21

NETMASK=255.255.255.0

GATWAY=10.20.153.254

然后重啟網絡

service network restart

下面來配置LXC容器

vim net.conf

lxc.network.type=veth

lxc.network.flags=up

lxc.network.link=br0

lxc.network.ipv4=10.20.153.234/24

lxc.network.hwaddr=4a:49:43:49:79:bd

然后創建LXC容器

lxc-create -n net -f net.conf

最后就可使用LXC容器來啟動應用了

lxc-execute -n net ping 10.20.153.20

情況二:

采用Dhcp+NAT的方式,即宿主機的IP地址由dhcp協議自動獲取,LXC容器的IP地址也通過dhcp協議獲取

宿主機配置:

yum install libvirt

這時機器上會多出一個virbr0的網橋,通過ifconfig就可以看到

LXC容器的配置:

lxc.network.type=veth

lxc.network.flags=up

lxc.network.link=virbr0

lxc.network.hwaddr=4a:49:43:49:79:bd

然后創建LXC容器

lxc-create -n net -f net.conf

最后使用容器啟動應用,注意此時不能直接啟動應用,需要先一步使用dhcp獲得IP地址,可以寫一個腳本來替代。比如:

vim net.sh

dhclient eth0

ping xx.xx.xx.xx

再啟動容器:

chmod +x net.sh

lxc-execute -n net ./net.sh

注:如果是ubuntu系統,通過apt-get 安裝的lxc,不用再安裝libvirt,安裝好lxc后,系統會多一個lxcbr0,功能與virbr0類似

 

 


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM