Skip to content
Snippets Groups Projects
Unverified Commit e3189080 authored by Ho Kim's avatar Ho Kim Committed by GitHub
Browse files

Add 'avoid-buggy-ips' support of MetalLB (#9166)

parent 30c77ea4
No related branches found
No related tags found
No related merge requests found
...@@ -19,6 +19,7 @@ You have to explicitly enable the MetalLB extension and set an IP address range ...@@ -19,6 +19,7 @@ You have to explicitly enable the MetalLB extension and set an IP address range
```yaml ```yaml
metallb_enabled: true metallb_enabled: true
metallb_speaker_enabled: true metallb_speaker_enabled: true
metallb_avoid_buggy_ips: true
metallb_ip_range: metallb_ip_range:
- 10.5.0.0/16 - 10.5.0.0/16
``` ```
...@@ -73,6 +74,7 @@ In this scenarion you should disable the MetalLB speaker and configure the `cali ...@@ -73,6 +74,7 @@ In this scenarion you should disable the MetalLB speaker and configure the `cali
```yaml ```yaml
metallb_speaker_enabled: false metallb_speaker_enabled: false
metallb_avoid_buggy_ips: true
metallb_ip_range: metallb_ip_range:
- 10.5.0.0/16 - 10.5.0.0/16
calico_advertise_service_loadbalancer_ips: "{{ metallb_ip_range }}" calico_advertise_service_loadbalancer_ips: "{{ metallb_ip_range }}"
...@@ -90,11 +92,13 @@ metallb_additional_address_pools: ...@@ -90,11 +92,13 @@ metallb_additional_address_pools:
- 10.6.0.0/16 - 10.6.0.0/16
protocol: "bgp" protocol: "bgp"
auto_assign: false auto_assign: false
avoid_buggy_ips: true
kube_service_pool_2: kube_service_pool_2:
ip_range: ip_range:
- 10.10.0.0/16 - 10.10.0.0/16
protocol: "bgp" protocol: "bgp"
auto_assign: false auto_assign: false
avoid_buggy_ips: true
calico_advertise_service_loadbalancer_ips: calico_advertise_service_loadbalancer_ips:
- 10.5.0.0/16 - 10.5.0.0/16
- 10.6.0.0/16 - 10.6.0.0/16
......
...@@ -166,6 +166,7 @@ metallb_speaker_enabled: true ...@@ -166,6 +166,7 @@ metallb_speaker_enabled: true
# - "10.5.0.50-10.5.0.99" # - "10.5.0.50-10.5.0.99"
# metallb_pool_name: "loadbalanced" # metallb_pool_name: "loadbalanced"
# metallb_auto_assign: true # metallb_auto_assign: true
# metallb_avoid_buggy_ips: false
# metallb_speaker_nodeselector: # metallb_speaker_nodeselector:
# kubernetes.io/os: "linux" # kubernetes.io/os: "linux"
# metallb_controller_nodeselector: # metallb_controller_nodeselector:
...@@ -198,6 +199,7 @@ metallb_speaker_enabled: true ...@@ -198,6 +199,7 @@ metallb_speaker_enabled: true
# - "10.5.1.50-10.5.1.99" # - "10.5.1.50-10.5.1.99"
# protocol: "layer2" # protocol: "layer2"
# auto_assign: false # auto_assign: false
# avoid_buggy_ips: false
# metallb_protocol: "bgp" # metallb_protocol: "bgp"
# metallb_peers: # metallb_peers:
# - peer_address: 192.0.2.1 # - peer_address: 192.0.2.1
...@@ -207,7 +209,6 @@ metallb_speaker_enabled: true ...@@ -207,7 +209,6 @@ metallb_speaker_enabled: true
# peer_asn: 64513 # peer_asn: 64513
# my_asn: 4200000000 # my_asn: 4200000000
argocd_enabled: false argocd_enabled: false
# argocd_version: v2.4.7 # argocd_version: v2.4.7
# argocd_namespace: argocd # argocd_namespace: argocd
......
...@@ -20,3 +20,4 @@ metallb_speaker_tolerations: ...@@ -20,3 +20,4 @@ metallb_speaker_tolerations:
metallb_controller_tolerations: [] metallb_controller_tolerations: []
metallb_pool_name: "loadbalanced" metallb_pool_name: "loadbalanced"
metallb_auto_assign: true metallb_auto_assign: true
metallb_avoid_buggy_ips: false
...@@ -34,6 +34,9 @@ data: ...@@ -34,6 +34,9 @@ data:
{% if metallb_auto_assign == false %} {% if metallb_auto_assign == false %}
auto-assign: false auto-assign: false
{% endif %} {% endif %}
{% if metallb_avoid_buggy_ips == true %}
avoid-buggy-ips: true
{% endif %}
{% if metallb_additional_address_pools is defined %}{% for pool in metallb_additional_address_pools %} {% if metallb_additional_address_pools is defined %}{% for pool in metallb_additional_address_pools %}
- name: {{ pool }} - name: {{ pool }}
protocol: {{ metallb_additional_address_pools[pool].protocol }} protocol: {{ metallb_additional_address_pools[pool].protocol }}
...@@ -41,6 +44,11 @@ data: ...@@ -41,6 +44,11 @@ data:
{% for ip_range in metallb_additional_address_pools[pool].ip_range %} {% for ip_range in metallb_additional_address_pools[pool].ip_range %}
- {{ ip_range }} - {{ ip_range }}
{% endfor %} {% endfor %}
{% if metallb_additional_address_pools[pool].auto_assign is defined %}
auto-assign: {{ metallb_additional_address_pools[pool].auto_assign }} auto-assign: {{ metallb_additional_address_pools[pool].auto_assign }}
{% endif %}
{% if metallb_additional_address_pools[pool].avoid_buggy_ips is defined %}
avoid-buggy-ips: {{ metallb_additional_address_pools[pool].avoid_buggy_ips }}
{% endif %}
{% endfor %} {% endfor %}
{% endif %} {% endif %}
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Please register or to comment