繁体   English   中英

在 heat 模板中将浮动 IP 分配给负载均衡器

[英]Assigning a Floating IP to a Load Balancer in a heat template

有谁知道如何在 heat 模板中将浮动 IP 地址与负载均衡器相关联? 我可以在一个实例(或一堆实例,但从很小开始)上创建一个负载均衡器; 并且可以将浮动 IP 地址关联到 Horizo​​n 中的负载均衡器,但我不知道如何通过加热来实现。

我只需要自己找到这个问题的答案。

事实证明, OS::Neutron::Pool资源的vip属性包含的键比此处记录的要多 特别地, vip属性包含一个port_id ,它是与此池关联的 Neutron 端口的地址。

由于我们有一个 Neutron 端口 id,我们可以使用它来关联一个浮动 ip 地址,如下所示:

type: "OS::Neutron::Pool"
  properties:
    protocol: HTTP
    monitors:
      - {get_resource: monitor}
    subnet_id: {get_resource: fixed_subnet}
    lb_method: ROUND_ROBIN
    vip:
      protocol_port: 80

lb_floating:
  type: "OS::Neutron::FloatingIP"
  properties:
    floating_network_id:
      get_param: external_network_id
    port_id:
      get_attr: [pool, vip, port_id]

get_attr调用正在获取pool资源的vip属性的port_id属性。

我对 Octavia 而不是 Neutron 有同样的问题,但 Larsks 的回答确实为我指明了正确的方向。

OS::Octavia::LoadBalancer对象有一个vip_port_id属性,可以通过同样的方式访问:

  port_id:
    get_attr: [lb1, vip_port_id]

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM