This commit is contained in:
Anita Buehrle authored and Matthias Radestock committed 2016-06-20 03:04:53 +01:00
1 parent ca7220b775
commit 6356fbc882
6 files changed
+173 -138

No files matched your search

@@ -6,7 +6,7 @@ menu_order: 50
A uniform dynamic cluster has the following characteristics:
* Recovers automatically after reboots and partitions.
* All peers have identical configuration.
* Identical configuration for all of its peers.
* Initial cluster peers can make progress from the outset even if
bootstrapping occurs under conditions of partition.
* Once an initial cluster has been bootstrapped, arbitrary numbers of
@@ -14,16 +14,18 @@ A uniform dynamic cluster has the following characteristics:
it ideally suited for use with convergent provisioning tools that
operate across multiple hosts in an asynchronous fashion.
## Bootstrap
## Bootstrapping
On each initial peer N, at boot, via
[systemd](/site/installing-weave/systemd.md):
hostN$ weave launch --no-restart --name ::N --ipalloc-init seed=$SEED $PEERS
Where `$SEED` is a comma separated list of the _names_ of the initial
peers, e.g. `::1,::2,::3` and `$PEERS` is obtained from
`/etc/sysconfig/weave` as described in the linked systemd
Where,
* `$SEED` is a comma separated list of the _names_ of the initial
peers, for example, `::1,::2,::3` and,
* `$PEERS` is obtained from `/etc/sysconfig/weave` as described in the linked systemd
documentation, and includes the complete set of initial peer
_addresses_.
@@ -39,50 +41,51 @@ Where
SEED="::1,::2,::3"
PEERS="host1 host2 host3"
## Add a Peer
## Adding a Peer
On each new peer, at boot, via
[systemd](/site/installing-weave/systemd.md):
hostN$ weave launch --no-restart --name ::N --ipam-seed $SEED $PEERS
* `--no-restart` disables the Docker restart policy as this will be
Where,
* `--no-restart` disables the Docker restart policy, since this will be
handled by systemd.
* `--name` specifies a unique name for this new peer.
* `--ipam-seed` specifies the names of only those peers that were
involved in the initial cluster bootstrap - even if they have been
subsequently removed from the cluster. You can view this as a kind
of 'cluster identity' - peers may only interoperate in the same
of 'cluster identity',where peers may only interoperate in the same
cluster if they share the same seed.
* `$PEERS` is obtained from `/etc/sysconfig/weave` as described in the
linked systemd documentation. For convenience, this may contain the
address of the peer which is being launched, so that you don't have
address of the peer that is being launched, so that you don't have
to compute separate lists of 'other' peers tailored to each peer -
just supply the same complete list of peer addresses to every peer.
Note that unlike [Interactive](/site/operational-guide/interactive.md)
and [Uniform Fixed
Cluster](/site/operational-guide/uniform-fixed-cluster.md) deployments
there is no `weave prime` step; you can add as many new peers in
and [Uniform Fixed Cluster](/site/operational-guide/uniform-fixed-cluster.md) deployments
there is no `weave prime` step. You can add as many new peers in
parallel as you like, even under conditions of partition, and they
will all (eventually) join safely. This is ideal for use in
conjunction with asynchronous provisioning systems such as puppet or
chef.
For maximum robustness, you should then distribute an updated
For maximum robustness, you should distribute an updated
`/etc/sysconfig/weave` file including the new peer to all existing
peers.
### Remove a Peer
### Removing a Peer
On peer to be removed:
On the peer to be removed:
weave reset
You may remove a seed peer, as long as there is at least one other
seed peer left in the network.
Then distribute an updated `/etc/sysconfig/weave` to the remaining
Then, distribute an updated `/etc/sysconfig/weave` to the remaining
peers, omitting the removed peer from `$PEERS`.
On each remaining peer: