lxc on centos

來源:互聯網
上載者:User

標籤:

終於把lxc的網路配通了,也不知道對不對,記一下

一開始都是雷同的地方

yum install libcgroup lxc lxc-templates

安裝lxc cgroup

然後記得

chkconfig --level 345 libcgroup on把cgroup始終啟動

添加一個橋

ifcfg-eth0改成如下

DEVICE="eth0"
ONBOOT="yes"
TYPE=Ethernet
IPV6INIT=no
USERCTL=no
BRIDGE=virbr0
建立一個ifcfg-virbr0,如下內容

DEVICE=virbr0
TYPE=Bridge
BOOTPROTO=static
DNS1=192.168.8.254
GATEWAY=192.168.8.254
IPADDR=192.168.8.50
NETMASK=255.255.255.0
ONBOOT=yes
重啟一下橋就產生了

然後

lxc-create -n testcentos -t centos

建立一個以centos為模板的容器

然後

vi /var/lib/lxc/testcentos/config

lxc.network.type = veth
lxc.network.flags = up
lxc.network.link = virbr0
lxc.network.hwaddr = fe:7c:d6:5a:ed:10
lxc.network.ipv4 = 192.168.8.55/24
lxc.network.ipv4.gateway = 192.168.8.50
lxc.network.name = eth0
lxc.rootfs = /var/lib/lxc/testcentos/rootfs

裝完了以後

cat /var/lib/lxc/testcentos/tmp_root_pass

看一下root密碼

然後

lxc-start -n testcentos -d

啟動容器,並且

lxc-console -n testcentos

登陸容器

登入完了以後問題來了,網路呢?這裡搞了好久

sysctl net.ipv4.ip_forward=1

開啟轉寄

然後 iptables設一條規則

iptables -t nat -A POSTROUTING -o eth0 -s 192.168.8.55 -j MASQUERADE

這條規則有問題,一開始設的有點問題,後來改成

iptables -t nat -A POSTROUTING -o virbr0 -s 192.168.8.55 -j MASQUERADE

就沒問題了,好奇怪。不懂為什麼。但這裡也只是保證了能訪問實驗室外部網路,實驗室內部網路還是不通

最後在容器裡ping實驗室內部地址,再在virbr0上dump icmp包

tcpdump -n -i  virbr0 icmp

發現壓根沒有包通過,然後發現容器裡的路由有問題

Destination     Gateway         Genmask         Flags Metric Ref    Use Iface
192.168.8.0    *               255.255.255.0 UH    0      0        0 eth0
link-local      *               255.255.0.0     U     1002   0        0 eth0
default         192.168.8.50    0.0.0.0         UG    0      0        0 eth0
也就是說所有192.168.8.0網段的ip都不需要轉寄直接能被訪問到。這個不對,最後在

vi /var/lib/lxc/testcentos/config

裡把容器的ip改為lxc.network.ipv4 = 192.168.8.55/32

並且在容器內部的/etc/sysconfig/network-scripts/ifcfg-eth0裡改掉netmask

最後都能訪問了。

幾點疑問,為什麼我在所有文檔上都沒看到類似的做法,大家都是直接重新導向到eth0完事呢?

另外容器內部的ip設定也和別人不一樣。可能別人都是再加一個子網?

無論怎麼樣,這個容器算是能用了,有鑒於他的出色計算效能

lxc on centos

相關文章

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.