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.

Usage

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

Configuration

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 10.1.0.0/16 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

calico-node-image

Default:

rocks.canonical.com:443/cdk/calico/node:v3.10.1

Back to table

calico-policy-image

Default:

rocks.canonical.com:443/cdk/calico/kube-controllers:v3.10.1

Back to table

nagios_context

Description:

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.

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