openstack HEAT を使用してスタックを作成しようとしています。VM の 1 つ ( NOVA::Server
) には2 つのネットワーク インターフェイスが必要です。
私のホットなテンプレートでは、2 つのポートを作成し、それらを に関連付けて、NOVA::Server
そのうちの 1 つにフローティング IP を割り当てます。gw_float_port
....
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
、VM 内で実行すると、次のようになります。
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 をマッピングし、どの NIC がフローティング IP を取得するかを制御する方法です。
テンプレート内 (スタックの作成中に自動的に作成され、作成後の手動操作ではありません)
事前に助けてくれてありがとう。