Description

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.

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 canal
juju deploy etcd
juju deploy kubernetes-master
juju deploy kubernetes-worker
juju add-relation canal etcd
juju add-relation canal kubernetes-master
juju add-relation canal kubernetes-worker

Configuration

iface The interface to configure the flannel SDN binding. If this value is
empty string or undefined the code will attempt to find the default network
adapter similar to the following command:

route | grep default | head -n 1 | awk {'print $8'}

cidr The network range to configure the flannel SDN to declare when
establishing networking setup with etcd. Ensure this network range is not active
on the vlan you're deploying to, as it will cause collisions and odd behavior
if care is not taken when selecting a good CIDR range to assign to flannel.

nagios_context 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 The comma-separated list of servicegroups that the
generated Nagios checks will belong to.

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

Configuration

nagios_context
(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.
juju
enable-cgroups
(boolean) Enable GRUB cgroup overrides cgroup_enable=memory swapaccount=1. WARNING changing this option will reboot the host - use with caution on production services
nagios_servicegroups
(string) A comma-separated list of nagios servicegroups. If left empty, the nagios_context will be used as the servicegroup
no_proxy
(string) Comma-separated list of destinations (either domain names or IP addresses) that should be directly accessed, by opposition of going through the proxy defined above. Must be less than 2023 characters long
cuda_repo
(string) The cuda-repo package version to install.
9.1.85-1
http_proxy
(string) URL to use for HTTP_PROXY to be used by Docker. Only useful in closed environments where a proxy is the only option for routing to the registry to pull images
nvidia-docker-package
(string) The pined version of nvidia-docker2 package.
nvidia-docker2=2.0.3+docker17.12.1-1
https_proxy
(string) URL to use for HTTPS_PROXY to be used by Docker. Only useful in closed environments where a proxy is the only option for routing to the registry to pull images
docker_runtime
(string) docker runtime to install valid values are "upstream" (docker PPA), "nvidia" (nvidia PPA), "apt" (ubuntu archive), or "auto" (nvidia PPA or ubuntu archive, based on your hardware)
auto
calico-node-image
(string) The image id to use for calico/node.
quay.io/calico/node:v2.5.1
install_from_upstream
(boolean) Toggle installation from ubuntu archive vs the docker PPA (DEPRECATED please use docker_runtime instead)
docker-opts
(string) Extra options to pass to the docker daemon. e.g. --insecure-registry
calico-policy-image
(string) The image id to use for calico/kube-policy-controller.
quay.io/calico/kube-policy-controller:v0.7.0
cidr
(string) Network CIDR to assign to Flannel
10.1.0.0/16
docker-ce-package
(string) The pined version of docker-ce package installed with nvidia-docker.
docker-ce=17.12.1~ce-0~ubuntu
iface
(string) The interface to bind flannel overlay networking. The default value is the interface bound to the cni endpoint.
nvidia-container-runtime-package
(string) The pined version of nvidia-container-runtime package.
nvidia-container-runtime=2.0.0+docker17.12.1-1