我在Fedora笔记本电脑上运行OpenStack。 Openstack讨厌由NetworkManager管理的网络接口,因此我设置了一个虚拟接口,用作br-ex接口的端口,OpenStack允许实例与外部世界进行通信。我可以很好地连接浮动ips,但它们无法通过br-ex所拥有的子网。我希望他们能够到达笔记本电脑外部的地址。我怀疑需要一些iptables nat / masquerading magic。有没有人有任何想法?
答案 0 :(得分:0)
对于具有3个节点的Centos7 OpenStack,您应该使用网络:
只需安装网络工具并禁用NetworkManager:
yum install net-tools -y;
systemctl disable NetworkManager.service
systemctl stop NetworkManager.service
chkconfig network on
此外,你需要IP表没有firewalld。
yum install -y iptables-services
systemctl enable iptables.service
systemctl disable firewalld.service
systemctl stop firewalld.service
对于控制器节点有一个网卡
对于网络和计算节点,有2个NIC
编辑所有节点上的接口:
设置iptables,如:
iptables -A INPUT -m state --state RELATED,ESTABLISHED -j ACCEPT
iptables -A INPUT -i lo -j ACCEPT
iptables -A POSTROUTING -o eth0-j MASQUERADE
iptables -A FORWARD -i eth1 -o eth0-j ACCEPT
iptables -A FORWARD -i eth0-o eth1 -m state --state RELATED,ESTABLISHED -j ACCEPT
service iptables save
还启用转发功能。在文件中:/etc/sysctkl.conf添加行:
net.ipv4.ip_forward = 1
执行命令:
sysctl –p
应该工作。