CNI with flannel

Flannel is a simple, lightweight layer 3 fabric for Kubernetes. Flannel manages an IPv4 network between multiple nodes in a cluster. It does not control how containers are networked to the host, only how the traffic is transported between hosts. For more complicated scenarios, see also Calico and Canal.

Deploying Charmed Kubernetes with Flannel

To deploy a cluster with Flannel, deploy the charmed-kubernetes bundle with the flannel overlay:

juju deploy charmed-kubernetes --overlay flannel-overlay.yaml

You can apply any additional customisation overlays that would apply to charmed-kubernetes to this deployment as well.

Flannel options

Name Type Default value Description
cidr string 10.1.0.0/16 Network CIDR to assign to Flannel
iface string see description> The interface to bind flannel overlay networking. The default value is the interface bound to the CNI endpoint.
nagios_context string juju A string that will be prepended to instance name to set the host name in nagios. If you’re running multiple environments with the same services in them this allows you to differentiate between them. Used by the nrpe subordinate charm.
nagios_servicegroups string (empty) A comma-separated list of nagios servicegroups. If left empty, the nagios_context will be used as the servicegroup

Checking the current configuration

To check the current configuration settings for Flannel, run the command:

juju config flannel

Setting a config option

To set an option, simply run the config command with an additional <key>=<value> argument. For example, to set a specific network CIDR:

juju config flannel cidr="10.5.0.0/16"

Troubleshooting

If there is an issue with connectivity, it can be useful to inspect the Juju logs. To see a complete set of logs for flannel:

juju debug-log --replay --include=flannel

For additional troubleshooting pointers, please see the dedicated troubleshooting page.

We appreciate your feedback on the documentation. You can edit this page or file a bug here.