我正在尝试使用Ubuntu UEC 10.10来设置一个新的UEC云networking,但是我在节点控制器设置上遇到了一些困难!
我正在使用两台计算机在一个小的设置上工作(目前)。 第一个是CLC,CC,Walrus和SC。 第二台电脑被用作NC。
我正在做一切新鲜和干净的重新安装。
我的问题是,NC安装后没有任何访问互联网的权限。 就好像CC的计算机不会从私人networking转到公共networking一样。 我无法完成设置,我不能更新/升级NC。 我不能apt-get安装ntp。
如果NC不能和互联网交谈,我也会看到同样的问题。 从NC,唯一可以ping的计算机是CC,使用它的私人和公共地址。
为什么CC会阻止NC访问互联网?
请注意,在Ubuntu 10.04(使用相同的硬件)上我没有这些问题,但我确实需要在Ubuntu 10.10上。
假设您的公共IP位于networking12.0.0.0中,并且您的专用交换机正在使用networking192.168.1.0。
您需要使通信在私有地址(从192.168.1.1到192.168.1.254)到所有公有地址(从12.1.1.1到12.254.254.254)之间通过。
在CC上调用以下命令将会这样做:
iptables -t nat -I POSTROUTING -s 192.168.1.0/24 -d 12.0.0.0/8 -j MASQUERADE
可能需要在iptables中添加一个伪装规则,以便于将数据包从私有节点networking转发到WAN / Internet。
假设你有一个单一的云控制器和一个节点控制器; 拓扑结构实现了以下几点:
INTERNET < – > eth0 [CloudController] eth1 < – > [Switch] < – > eth0 [NodeController] ……….. 192.168.1.100 ……….. ……….. 10.0.0.1 ………………… 10.0.0.2
在云端控制器上尝试如下所示:
$ sudo / sbin / iptables -t nat -A POSTROUTING -s 10.0.0.0/24 -o eth0 -j MASQUERADE
这假定您的云控制器面向公众的接口是eth0,云控制器面向私有的接口是节点控制器也是其成员的10.0.0.0networking上的eth1。
如果这样做,使规则永久(你甚至可以简单地把它写到/etc/rc.local)
祝你好运!
SLR-
这里没有其他的答案给予永久性的解决办法。 是的,这确实使节点能够访问您的互联网或其他networking,这可能包括使他们能够访问海象和/或云控制器。
不幸的是,桉树因吹走自然表而重新创造它而臭名昭着,使得你的服务器忘记了MASQ规则。 我发现我必须定期运行iptables MASQ规则,然后才能开始一个新的实例或者节点无法到达我的Walrus下载镜像。