Forge Home

weave

Module for installing and configuring Weave for Docker

10,766 downloads

10,766 latest version

3.1 quality score

We run a couple of automated
scans to help you access a
module's quality. Each module is
given a score based on how well
the author has formatted their
code and documentation and
modules are also checked for
malware using VirusTotal.

Please note, the information below
is for guidance only and neither of
these methods should be considered
an endorsement by Puppet.

Version information

  • 0.1.0 (latest)
released Feb 26th 2015
This version is compatible with:
  • Puppet Enterprise 3.x
  • Puppet 3.x
  • , , ,

Start using this module

  • r10k or Code Manager
  • Bolt
  • Manual installation
  • Direct download

Add this module to your Puppetfile:

mod 'tayzlor-weave', '0.1.0'
Learn more about managing modules with a Puppetfile

Add this module to your Bolt project:

bolt module add tayzlor-weave
Learn more about using this module with an existing project

Manually install this module globally with Puppet module tool:

puppet module install tayzlor-weave --version 0.1.0

Direct download is not typically how you would use a Puppet module to manage your infrastructure, but you may want to download the module in order to inspect the code.

Download
Tags: docker, weave

Documentation

tayzlor/weave — version 0.1.0 Feb 26th 2015

Build
Status

Puppet module for installing, and configuring Weave, the virtual network that connects Docker containers deployed across multiple hosts.

Requirements

If you install this from the git repository rather than from the forge, dependencies must be managed manually. This module requires:

In order to run Weave a kernel version after 3.5 is required, the newer the better.

Usage

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 can also be used in conjunction with create_bridge:

class { 'weave':
  expose        => '10.0.1.102/24',
  create_bridge => true,
}

This will end up running -

/usr/local/bin/weave expose 10.0.1.102/24
/usr/local/bin/weave create-bridge

Limitations

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