Browse Source

Permit custom names for API server lb/proxy containers. (#10166)

Signed-off-by: Pat Riehecky <riehecky@fnal.gov>
pull/10204/head
Pat Riehecky 1 year ago
committed by GitHub
parent
commit
f5ee8b71ff
No known key found for this signature in database GPG Key ID: 4AEE18F83AFDEB23
4 changed files with 6 additions and 4 deletions
  1. 5
      docs/ha-mode.md
  2. 1
      roles/kubernetes/node/defaults/main.yml
  3. 2
      roles/kubernetes/node/templates/manifests/haproxy.manifest.j2
  4. 2
      roles/kubernetes/node/templates/manifests/nginx-proxy.manifest.j2

5
docs/ha-mode.md

@ -24,9 +24,10 @@ configured by the variable `loadbalancer_apiserver_localhost` (defaults to
`True`. Or `False`, if there is an external `loadbalancer_apiserver` defined).
You may also define the port the local internal loadbalancer uses by changing,
`loadbalancer_apiserver_port`. This defaults to the value of
`kube_apiserver_port`. It is also important to note that Kubespray will only
`kube_apiserver_port`. It is also important to note that Kubespray will only
configure kubelet and kube-proxy on non-master nodes to use the local internal
loadbalancer.
loadbalancer. If you wish to control the name of the loadbalancer container,
you can set the variable `loadbalancer_apiserver_pod_name`.
If you choose to NOT use the local internal loadbalancer, you will need to
use the [kube-vip](kube-vip.md) ansible role or configure your own loadbalancer to achieve HA. By default, it only configures a non-HA endpoint, which points to the

1
roles/kubernetes/node/defaults/main.yml

@ -92,6 +92,7 @@ loadbalancer_apiserver_memory_requests: 32M
loadbalancer_apiserver_cpu_requests: 25m
loadbalancer_apiserver_keepalive_timeout: 5m
loadbalancer_apiserver_pod_name: "{% if loadbalancer_apiserver_type == 'nginx' %}nginx-proxy{% else %}haproxy{% endif %}"
# Uncomment if you need to enable deprecated runtimes
# kube_api_runtime_config:

2
roles/kubernetes/node/templates/manifests/haproxy.manifest.j2

@ -1,7 +1,7 @@
apiVersion: v1
kind: Pod
metadata:
name: haproxy
name: {{ loadbalancer_apiserver_pod_name }}
namespace: kube-system
labels:
addonmanager.kubernetes.io/mode: Reconcile

2
roles/kubernetes/node/templates/manifests/nginx-proxy.manifest.j2

@ -1,7 +1,7 @@
apiVersion: v1
kind: Pod
metadata:
name: nginx-proxy
name: {{ loadbalancer_apiserver_pod_name }}
namespace: kube-system
labels:
addonmanager.kubernetes.io/mode: Reconcile

Loading…
Cancel
Save