kubeapi load balancer #841

Supports: focal bionic xenial


A round robin Nginx load balancer to distribute traffic for kubernetes apiservers.


Simple NGINX reverse proxy to lend a hand in HA kubernetes-master deployments.

This charm is a component of Charmed Kubernetes. For full information, please visit the official Charmed Kubernetes docs.


Building the charm

make charm


(string) Space separated list of extra deb packages to install.
(string) Space-separated list of extra SAN entries to add to the x509 certificate created for the load balancers.
(string) DNS entry to use with the HA Cluster subordinate charm. Mutually exclusive with ha-cluster-vip.
(string) Virtual IP for the charm to use with the HA Cluster subordinate charm Mutually exclusive with ha-cluster-dns. Multiple virtual IPs are separated by spaces.
(string) listen address
(string) List of signing keys for install_sources package sources, per charmhelpers standard format (a yaml list of strings encoded as a string). The keys should be the full ASCII armoured GPG public keys. While GPG key ids are also supported and looked up on a keyserver, operators should be aware that this mechanism is insecure. null can be used if a standard package signing key is used that will already be installed on the machine, and for PPA sources where the package signing key is securely retrieved from Launchpad.
(string) List of extra apt sources, per charm-helpers standard format (a yaml list of strings encoded as a string). Each source may be either a line that can be added directly to sources.list(5), or in the form ppa:<user>/<ppa-name> for adding Personal Package Archives, or a distribution component to enable.
(string) Space seperated list of IP addresses of loadbalancers in front of control plane. A common case for this is virtual IP addresses that are floated in front of the kubeapi-load-balancer charm. The workers will alternate IP addresses from this list to distribute load. If you have 2 IPs and 4 workers, each IP will be used by 2 workers.
(string) Used by the nrpe subordinate charms. A string that will be prepended to instance name to set the host name in nagios. So for instance the hostname would be something like: juju-myservice-0 If you're running multiple environments with the same services in them this allows you to differentiate between them.
(string) A comma-separated list of nagios servicegroups. If left empty, the nagios_context will be used as the servicegroup
(string) The status of service-affecting packages will be set to this value in the dpkg database. Valid values are "install" and "hold".
(int) The port to run the loadbalancer
(int) Timeout in seconds for reading a response from proxy server.