frontend_port: <integer> # ex: 8080
monitor_port: <integer> # ex: 1967, used by haproxy for load balancer status
virtual_interface_networks: [ ... ] # optional: list of CIDR networks
+ first_virtual_router_id: <integer> # optional: default 50
ssl_cert: | # optional: SSL certificate and key
-----BEGIN CERTIFICATE-----
...
By default, cephadm will configure keepalived to use the same interface where the VIPs are
for VRRP communication. If another interface is needed, it can be set via ``vrrp_interface_network``
with a network to identify which ethernet interface to use.
+* ``first_virtual_router_id``
+ Default is 50. When deploying more than 1 ingress, this parameter can be used to ensure each
+ keepalived will have different virtual_router_id. In the case of using ``virtual_ips_list``,
+ each IP will create its own virtual router. So the first one will have ``first_virtual_router_id``,
+ second one will have ``first_virtual_router_id`` + 1, etc. Valid values go from 1 to 255.
.. _ingress-virtual-ip:
'interface': interface,
'vrrp_interface': vrrp_interface,
'virtual_ips': virtual_ips,
+ 'first_virtual_router_id': spec.first_virtual_router_id,
'states': states,
'priorities': priorities,
'other_ips': other_ips,
virtual_interface_networks: Optional[List[str]] = [],
use_keepalived_multicast: Optional[bool] = False,
vrrp_interface_network: Optional[str] = None,
+ first_virtual_router_id: Optional[int] = 50,
unmanaged: bool = False,
ssl: bool = False,
keepalive_only: bool = False,
self.virtual_interface_networks = virtual_interface_networks or []
self.use_keepalived_multicast = use_keepalived_multicast
self.vrrp_interface_network = vrrp_interface_network
+ self.first_virtual_router_id = first_virtual_router_id
self.unmanaged = unmanaged
self.ssl = ssl
self.keepalive_only = keepalive_only