Puppet module for installing, and configuring Weave, the virtual network that connects Docker containers deployed across multiple hosts.
If you install this from the git repository rather than from the forge, dependencies must be managed manually. This module requires:
- garethr/docker - Required for acceptance tests. If not using this module (to install Docker) a working Docker installation is required for Weave to run on top of.
- puppetlabs/stdlib
- nanliu/staging - Only required if using 'url' install method.
In order to run Weave a kernel version after 3.5 is required, the newer the better.
This module includes a single class:
include 'weave'
By default this downloads the Weave binary from Github and installs it under /usr/local/bin/weave.
If you want to install via a package management system:
class { 'weave':
install_method => 'package',
package_name => 'weave',
package_ensure => 'present',
}
If you are using this in conjunction with garethr/docker module.
class { 'weave':
require => Service['docker'],
}
Service['docker'] -> Service['weave']
By default this will run weave launch (on install) without connecting to any cluster peers. If you want weave to launch with other peers in the cluster:
class { 'weave':
peers => ['168.0.0.1', '168.0.0.2'],
}
This will end up as weave launch 168.0.0.1 168.0.0.2
If you want weave to expose a subnet you can also specify the expose parameter:
class { 'weave':
expose => '10.0.1.102/24',
}
This will end up running -
/usr/local/bin/weave expose 10.0.1.102/24
Using Hiera (e.g. common/weave.yml):
weave::version: '0.9.0'
weave::peers: [ '10.0.1.1', '10.0.1.2', '10.0.1.3' ]
weave::expose: "10.0.1.102/24"
It is possible to run this on Centos 6.5, but you will required a patched/upgraded kernel version (as Weave requires Kernel 3.5 or greater). You might also be required to update the iptables package.
If you want some information around how to install kernel 3.10 on Centos 6.5 check out this link