Multi-host Container
Networking
Alfonso Acosta
Software Engineer at Weaveworks
Outline
1.Problem statement
2.What's Weave?
3.VM<->VM Demo
4.Weave+ECS Demo
Problem statement
? ? ? ? ?
Solution space
What's Weaveworks
Founded in 2014
Goals:
connect, observe and control containers
simple to use
developer friendly
Weave passes Mårten Mickos' 15 min test
- Adrian Cockroft
Not only a SDN
Weave Net: Overlay container network
Not only a SDN
Weave Run: IPAM, LB, SD (weaveDNS) ...
Not only a SDN
Weave Scope: Container visualization
Weave Demo
Data producer
while true; do
# Get IP
IP=`hostname -i | awk '{ print $1 }'`
# Offer data on port 4540
echo "Hi, this is the data producer in $IP" | nc -
q 0 -l -p 4540
done
"HTTP" Server
while true; do
# Get a message from a data producer
DATA_PRODUCER_MESSAGE=`nc dataproducer 4540`
# Render message
HTML="… <h1>Chosen data producer message:</h1>
<h2>${DATA_PRODUCER_MESSAGE}</h2> … "
echo "$HTML" | nc -q 0 -l -p 80
done
Weave+ECS Demo
Questions?
@2opremio
help@weave.works

Multi host container networking

Editor's Notes

  • #2 Introduce yourself
  • #3 Survey: ask the audience who has used … 1. Docker, 2. Weave, 3. ECS.
  • #7 Insist on the fact that we are developer oriented, there are other solutions out there but they are not that developer-friendly
  • #8 Cloud agnostic (bare metal support), Open source,supports network topologies which are not fully connected
  • #9 Talk about weaveDNS (container name -> A record, Random A-record order, Gossip) how it scales better than Consul (agent->master, starts to bottleneck on 250 nodes and requries DNSmask/caching)