-
Notifications
You must be signed in to change notification settings - Fork 87
/
ipfailover_keepalived.yaml
66 lines (56 loc) · 1.74 KB
/
ipfailover_keepalived.yaml
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
heat_template_version: 2016-10-14
description: >
A template which deploys a IP failover service for the Openshift router
parameters:
fixed_network:
description: >
The name or ID of the admin and public network
type: string
constraints:
- custom_constraint: neutron.network
fixed_subnet:
description: >
The name or ID of the admin and public IPv4 space
type: string
constraints:
- custom_constraint: neutron.subnet
external_network:
description: >
The name of the inbound access network
type: string
constraints:
- custom_constraint: neutron.network
loadbalancer_ip:
type: string
resources:
router_vip_port:
type: OS::Neutron::Port
properties:
network_id: {get_param: fixed_network}
fixed_ips:
- subnet: {get_param: fixed_subnet}
router_floating_ip:
type: OS::Neutron::FloatingIP
properties:
floating_network: {get_param: external_network}
port_id: {get_resource: router_vip_port}
outputs:
router_ip:
description: >
Openshift Router external IP
value: {get_attr: [router_floating_ip, floating_ip_address]}
router_vip:
description: >
Openshift Router virtual private IP
value: {get_attr: [router_vip_port, fixed_ips, 0, ip_address]}
allowed_address_pairs:
description: >
Allowed address pairs to apply on the ports of the nodes
that host the Openshift router
value:
# Openshift IP failover uses Keepalived in multicast mode.
# Therefore, we need to allow the multicast address and the
# forged MAC address for this IP
- ip_address: "224.0.0.18"
mac_address: "01:00:5e:00:00:12"
- ip_address: {get_attr: [router_vip_port, fixed_ips, 0, ip_address]}