Your submission was sent successfully! Close

You have successfully unsubscribed! Close

Canal charm

Canal is a community-driven initiative that aims to allow users to easily deploy Calico and flannel networking together as a unified networking solution - combining Calico's industry-leading network policy enforcement with the rich superset of Calico and flannel overlay and non-overlay network connectivity options.

This charm will deploy flannel and calico as background services, and configure CNI to use them, on any principal charm that implements the kubernetes-cni interface.


The canal charm is a subordinate. This charm will require a principal charm that implements the kubernetes-cni interface in order to properly deploy.

juju deploy cs:~containers/canal
juju deploy cs:~containers/etcd
juju deploy cs:~containers/kubernetes-master
juju deploy cs:~containers/kubernetes-worker
juju add-relation canal etcd
juju add-relation canal kubernetes-master
juju add-relation canal kubernetes-worker


name type Default Description
calico-node-image string See notes The image id to use for calico/node.
calico-policy-image string See notes The image id to use for calico/kube-controllers.
cidr string Network CIDR to assign to Flannel
iface string The interface to bind flannel overlay networking. The default value is the interface bound to the cni endpoint.
nagios_context string juju See notes
nagios_servicegroups string A comma-separated list of nagios servicegroups. If left empty, the nagios_context will be used as the servicegroup



Back to table



Back to table



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:


If you're running multiple environments with the same services in them this allows you to differentiate between them.

Back to table

Known Limitations

This subordinate does not support being co-located with other deployments of the canal subordinate (to gain 2 vlans on a single application). If you require this support please file a bug.

This subordinate also leverages juju-resources, so it is currently only available on juju 2.0+ controllers.

Further information