如何将浮动IP与Heat的特定接口相关联



我正在尝试使用openstack HEAT创建一个堆栈,其中一个VM(NOVA::Server(需要有2个网络接口

因此,在我的热模板中,我创建了2个端口,并将它们与NOVA::Server关联,并为其中一个gw_float_port提供浮动IP

....
gw_instance:
type: "OS::Nova::Server"
properties:
key_name: { get_param: key_name }
image: { get_param: image_id }
flavor: { get_param: instance_type }          
user_data:"#!/bin/sh necho "Starting the OVS setup!""
user_data_format: RAW
networks:
- port: {get_resource: gw_float_port}
- port: {get_resource: gw_ovs_port }
gw_float_port:
type: "OS::Neutron::Port"
properties:
network_id: {get_resource: "private_net"}
gw_ovs_port:
type: "OS::Neutron::Port"
properties:
network_id: {get_resource: "private_net"}
floating_ip:
type: "OS::Neutron::FloatingIP"
properties:
floating_network_id: {get_param: "public_network"}
port_id: {get_resource: "gw_float_port"}
....

当我在虚拟机中执行ifconfig时,我会得到以下内容:

ens3      Link encap:Ethernet  HWaddr fa:16:3e:76:98:82
inet addr:10.4.0.47  Bcast:10.4.0.255  Mask:255.255.255.0
....
ens4      Link encap:Ethernet  HWaddr fa:16:3e:11:9f:ed
BROADCAST MULTICAST  MTU:1500  Metric:1
....
lo        Link encap:Local Loopback
inet addr:127.0.0.1  Mask:255.0.0.0
....

我想知道的是如何将ifconfig中的NIC与模板中的NIC进行映射,并控制哪一个获得浮动IP?

在模板内(创建堆栈时自动,创建后无需手动操作(

谢谢你事先的帮助。

浮动IP设置为gw_float_port(NIC(端口

您之所以知道这一点,是因为您在FloatingIP资源上设置了port_id

floating_ip:
type: "OS::Neutron::FloatingIP"
properties:
floating_network_id: {get_param: "public_network"}
port_id: {get_resource: "gw_float_port"}

这是执行关联的行

port_id: {get_resource: "gw_float_port"}

相关内容

  • 没有找到相关文章

最新更新