From 90b9b3c1bf347e8587de4ef1e43da60e964c4576 Mon Sep 17 00:00:00 2001 From: Matthias Radestock Date: Mon, 22 Jun 2015 22:48:18 +0100 Subject: [PATCH] '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