From e51c240ea12579ea4f8717a07343c26bdf3b8014 Mon Sep 17 00:00:00 2001 From: Matthias Radestock Date: Mon, 22 Jun 2015 22:53:27 +0100 Subject: [PATCH 1/2] fix broken links --- site/features.md | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/site/features.md b/site/features.md index 0abcc392..53dc315f 100644 --- a/site/features.md +++ b/site/features.md @@ -56,7 +56,7 @@ our data centre. ### Manual addressing -The examples so far have leveraged weave's [address allocation](#ipam) +The examples so far have leveraged weave's [address allocation](ipam.html) and [discovery](#dns) features, meaning that we've not had to concern ourselves with IP addresses at all. It is, however, possible to specify address and network explicitly using [CIDR @@ -91,7 +91,7 @@ Similarly, in the container on $HOST2... The IP addresses and netmasks can be anything you like, but make sure they don't conflict with any IP ranges in use on the hosts (including -those delegated to weave's [automatic IP address allocator](#ipam)) or +those delegated to weave's [automatic IP address allocator](ipam.html)) or IP addresses of external services the hosts or containers need to connect to. The same IP range must be used everywhere, and the individual IP addresses must, of course, be unique. From 90b9b3c1bf347e8587de4ef1e43da60e964c4576 Mon Sep 17 00:00:00 2001 From: Matthias Radestock Date: Mon, 22 Jun 2015 22:48:18 +0100 Subject: [PATCH 2/2] 'address allocation' is the feature covering both automatic and manual allocation --- site/features.md | 26 +++++++++++++++++++------- site/ipam.md | 30 ++++++------------------------ 2 files changed, 25 insertions(+), 31 deletions(-) diff --git a/site/features.md b/site/features.md index 53dc315f..75db706d 100644 --- a/site/features.md +++ b/site/features.md @@ -9,7 +9,7 @@ Weave has a few more features beyond those illustrated by the [basic example](https://github.com/weaveworks/weave#example): * [Virtual ethernet switch](#virtual-ethernet-switch) - * [Manual addressing](#manual-addressing) + * [Address allocation](#addressing) * [Application isolation](#application-isolation) * [Dynamic network attachment](#dynamic-network-attachment) * [Security](#security) @@ -54,13 +54,25 @@ now re-use the same tools and techniques when deploying applications as containers as we would have done when deploying them 'on metal' in our data centre. -### Manual addressing +### Address allocation -The examples so far have leveraged weave's [address allocation](ipam.html) -and [discovery](#dns) features, meaning that we've not had to concern -ourselves with IP addresses at all. It is, however, possible to -specify address and network explicitly using [CIDR -notation](http://en.wikipedia.org/wiki/Classless_Inter-Domain_Routing#CIDR_notation) +Containers are automatically allocated an IP address that is unique +across the weave network. You can see which address was allocated with +[`weave ps`](troubleshooting.html#list-attached-containers): + + host1$ weave ps a1 + a7aee7233393 7a:44:d3:11:10:70 10.128.0.2/10 + +Weave detects when a container has exited and releases its +automatically allocated addresses so they can be re-used. + +See the [Automatic IP Address Management](#ipam) documentation for +further details. + +Instead of getting weave to allocate IP addresses automatically, it is +also possible to specify an address and network explicitly, expressed +in +[CIDR notation](http://en.wikipedia.org/wiki/Classless_Inter-Domain_Routing#CIDR_notation) - let's see how the first example would have looked: On $HOST1: diff --git a/site/ipam.md b/site/ipam.md index e1d9c22d..295bbf93 100644 --- a/site/ipam.md +++ b/site/ipam.md @@ -5,10 +5,13 @@ layout: default # Automatic IP Address Management -Weave can automatically assign containers an IP address that is unique -across the network. +Weave automatically assigns containers an IP address that is unique +across the network, and releases that address when a container +exits. This happens for all invocations of the `run`, `start`, +`attach`, `detach`, `expose`, `hide` and `launch-dns` commands, unless +the user explictly specified an address. Weave can also assign +addresses in multiple subnets. - * [Usage](#usage) * [Initialisation](#initialisation) * [Choosing an allocation range](#range) * [Automatic allocation across multiple subnets](#subnets) @@ -16,27 +19,6 @@ across the network. * [Stopping and removing peers](#stop) * [Troubleshooting](#troubleshooting) -## Usage - -Containers are automatically allocated an IP address when none is -specified when the container is started, e.g. - - host1$ weave launch && weave launch-proxy - host1$ eval $(weave proxy-env) - host1$ C=$(docker run -ti ubuntu) - -You can see which address was allocated with -[`weave ps`](troubleshooting.html#list-attached-containers): - - host1$ weave ps $C - a7aff7249393 7a:51:d1:09:21:78 10.128.0.1/10 - -Weave detects when a container has exited and releases its -automatically allocated addresses so they can be re-used. - -Automatic IP address assignment is available for the `run`, `start`, -`attach`, `detach`, `expose`, `hide` and `launch-dns` commands. - ## Initialisation Just once, when the first automatic IP address allocation is requested