Keine Beschreibung

Tom Denham 77ea67d61e Add iptables binaries vor 8 Jahren
Documentation bc1fcc608e switch kube subnet manager to PATCH vor 8 Jahren
backend befe8799db Fix various little problems found by gometalinter vor 8 Jahren
dist 77ea67d61e Add iptables binaries vor 8 Jahren
logos 170fd5de88 logos: resized for readme vor 9 Jahren
network 1bf4e6b6aa vendor: Make code compatible again vor 8 Jahren
pkg c254deaf7b Correcting format for pkg/ip/ipnet.go vor 8 Jahren
subnet bc1fcc608e switch kube subnet manager to PATCH vor 8 Jahren
vendor 59b138b3cc vendor: remove files not needed for building vor 8 Jahren
version cbac427350 Version embedding for Go 1.4 and 1.5 vor 9 Jahren
.dockerignore a8972ad5cd BUILDS: Overhaul build process vor 8 Jahren
.gitignore 77ea67d61e Add iptables binaries vor 8 Jahren
.travis.yml 56ef07bd0f Makefile: Push tags to flannel-git for all builds vor 8 Jahren
CONTRIBUTING.md c1c060c005 Added boilerplate files vor 10 Jahren
DCO c1c060c005 Added boilerplate files vor 10 Jahren
Dockerfile.amd64 444ef90c71 Makefile: Switch to a new version of kube-cross vor 8 Jahren
Dockerfile.arm 444ef90c71 Makefile: Switch to a new version of kube-cross vor 8 Jahren
Dockerfile.arm64 444ef90c71 Makefile: Switch to a new version of kube-cross vor 8 Jahren
Dockerfile.ppc64le 444ef90c71 Makefile: Switch to a new version of kube-cross vor 8 Jahren
Dockerfile.s390x 444ef90c71 Makefile: Switch to a new version of kube-cross vor 8 Jahren
LICENSE c1c060c005 Added boilerplate files vor 10 Jahren
MAINTAINERS c2171f9dc5 MAINTAINERS: remove steevej vor 8 Jahren
Makefile 75c840f3b4 Merge pull request #687 from heyitsanthony/strip-vendor-tests vor 8 Jahren
NOTICE c1c060c005 Added boilerplate files vor 10 Jahren
README.md bb68236217 Documentation: Split README into multiple files vor 8 Jahren
glide.lock fbf578f0df vendor: Revendor with more sensible pinnings vor 8 Jahren
glide.yaml fbf578f0df vendor: Revendor with more sensible pinnings vor 8 Jahren
license-check.sh a8972ad5cd BUILDS: Overhaul build process vor 8 Jahren
main.go afc5e0d997 subnet: Move etcd files into their own package. vor 8 Jahren
packet-01.png 82195b1cc4 diagram: update to reflect name change vor 10 Jahren

README.md

flannel

flannel Logo

Build Status

flannel is a virtual network that gives a subnet to each host for use with container runtimes.

Platforms like Kubernetes assume that each container (pod) has a unique, routable IP inside the cluster. The advantage of this model is that it reduces the complexity of doing port mapping.

Theory of Operation

flannel runs an agent, flanneld, on each host and is responsible for allocating a subnet lease out of a preconfigured address space. flannel uses etcd to store the network configuration, allocated subnets, and auxiliary data (such as host's IP). The forwarding of packets is achieved using one of several strategies that are known as backends. The simplest backend is udp and uses a TUN device to encapsulate every IP fragment in a UDP packet, forming an overlay network. The following diagram demonstrates the path a packet takes as it traverses the overlay network:

Life of a packet

Documenation