diff --git a/site/cni-plugin.md b/site/cni-plugin.md index ee8cad84..05a4c6f1 100644 --- a/site/cni-plugin.md +++ b/site/cni-plugin.md @@ -1,6 +1,5 @@ --- title: Integrating Kubernetes via the CNI Plugin -layout: default menu_order: 65 --- diff --git a/site/how-it-works.md b/site/how-it-works.md index c3eacaa4..8afce3ce 100644 --- a/site/how-it-works.md +++ b/site/how-it-works.md @@ -1,6 +1,5 @@ --- title: Understanding how Weave Net Works -layout: default menu_order: 90 --- diff --git a/site/how-it-works/encryption-implementation.md b/site/how-it-works/encryption-implementation.md index 3ee989d4..88fafc25 100644 --- a/site/how-it-works/encryption-implementation.md +++ b/site/how-it-works/encryption-implementation.md @@ -1,6 +1,5 @@ --- title: How Weave Net Implements Encryption -layout: default menu_order: 70 --- diff --git a/site/installing-weave.md b/site/installing-weave.md index 69b5551a..7626f29f 100644 --- a/site/installing-weave.md +++ b/site/installing-weave.md @@ -24,8 +24,8 @@ With Weave Net downloaded onto your VMs or hosts, you are ready to launch a Weav ###Quick Start Screencast - - + + Click to watch the screencast ###Guides for specific platforms diff --git a/site/plugin/plug-in-command-line.md b/site/plugin/plug-in-command-line.md index 14a7dc51..6c9f2449 100644 --- a/site/plugin/plug-in-command-line.md +++ b/site/plugin/plug-in-command-line.md @@ -1,6 +1,6 @@ --- title: Plugin Command-line Arguments -layout: default +menu_order: 10 --- @@ -15,7 +15,7 @@ The plugin command-line arguments are: * `--log-level=debug|info|warning|error` --tells the plugin how much information to emit for debugging. - * `--mesh-network-name=` -- set to blank to disable creation + * `--mesh-network-name=` -- set `` to blank to disable creation of a default network, or include a name of your own choice. * `--no-multicast-route` -- stops weave from adding a static IP route for multicast traffic onto its interface diff --git a/site/plugin/plugin-how-it-works.md b/site/plugin/plugin-how-it-works.md index 081fc352..6b5d8b96 100644 --- a/site/plugin/plugin-how-it-works.md +++ b/site/plugin/plugin-how-it-works.md @@ -1,6 +1,6 @@ --- title: How the Weave Net Docker Network Plugin Works -layout: default +menu_order: 20 --- diff --git a/site/weave-docker-api/ipam-proxy.md b/site/weave-docker-api/ipam-proxy.md index 73860a76..b0b96116 100644 --- a/site/weave-docker-api/ipam-proxy.md +++ b/site/weave-docker-api/ipam-proxy.md @@ -1,6 +1,6 @@ --- title: Automatic IP Allocation and the Weave Proxy -layout: default +menu_order: 25 --- diff --git a/site/weave-docker-api/name-resolution-proxy.md b/site/weave-docker-api/name-resolution-proxy.md index 39e0e96d..4ad46a17 100644 --- a/site/weave-docker-api/name-resolution-proxy.md +++ b/site/weave-docker-api/name-resolution-proxy.md @@ -17,7 +17,7 @@ returns the Weave Net IP address. This is required for many cluster-aware applications to work. - unqualified names get resolved via DNS, for example typically via weaveDNS to Weave Net IP addresses. This is required so that in a typical setup -one can simply "ping ", i.e. without having to +one can simply "ping ``", i.e. without having to specify a `.weave.local` suffix. If you prefer to keep `/etc/hosts` under Docker's control (for diff --git a/site/weavedns/weavedns-design.md b/site/weavedns/weavedns-design.md deleted file mode 100644 index dea9a6a0..00000000 --- a/site/weavedns/weavedns-design.md +++ /dev/null @@ -1,83 +0,0 @@ ---- -title: WeaveDNS (service discovery) Design Notes -layout: default ---- - -# WeaveDNS (service discovery) Design Notes - -The model is that each host has a service that is notified of -hostnames and weave addresses for containers on the host. Like IPAM, -this service is embedded within the router. It binds to -the host bridge to answer DNS queries from local containers; for -anything it can't answer, it uses the information in the host's -/etc/resolv.conf to query an 'fallback' server. - -The service is comprised of a DNS server, which answers all DNS queries -from containers, and a in-memory database of hostnames and IPs. The -database on each node contains a complete copy of the hostnames and IPs -for every containers in the cluster. - -For hostname queries in the local domain (default weave.local), the DNS -server will consult the in-memory database. For reverse queries, we -first consult the local database, and if not found we query the -upstream server. For all other queries, we consult the upstream -server. - -Updates to the in-memory database are broadcast to other DNS servers -within the cluster. The in-memory database only contains entries from -connected DNS servers; if a DNS server becomes partitioned from the -cluster, entries belonging to that server are removed from each node in -the cluster. When the partitioned DNS server reconnects, the entries -are re-broadcast around the cluster. - -The DNS server also listens to the Docker event stream, and removes -entries for containers when they die. Entries removed in this way are -tombstoned, and the tombstone lazily broadcast around the cluster. -After a short timeout the tombstones are independently removed from -each host. - - -## DNS server API - -The DNS server accepts HTTP requests on the following URL (patterns) -and methods: - -`PUT /name//` - -Put a record for an IP, bound to a host-scoped identifier (e.g., a -container ID), in the DNS database. The request body must contain -a `fqdn=foo.weave.local` key pair. - -`DELETE /name//` - -Remove a specific record for an IP and host-scoped identifier. The request -body can optionally contain a `fqdn=foo.weave.local` key pair. - -`DELETE /name/` - -Remove all records for the host-scoped identifier. - -`GET /name/` - -List of all IPs (in JSON format) for givne FQDN. - -## DNS updater - -The updater component uses the Docker remote API to monitor containers -coming and going, and tells the DNS server to update its records via -its HTTP interface. It does not need to be attached to the weave -network. - -The updater starts by subscribing to the events, and getting a list of -the current containers. Any containers given a domain ending with -".weave" are considered for inclusion in the name database. - -When it sees a container start or stop, the updater checks the weave -network attachment of the container, and updates the DNS server. - -> How does it check the network attachment from within a container? - -> Will it need to delay slightly so that `attach` has a chance to run? -> Perhaps it could put containers on a watch list when it's noticed -> them. -