How container networking works at Platform.sh

Click for: original source

We’ll take a look at how we wire (most of) it up. In particular, we’ll go over the role of the Platform.sh edge layer, and describe in detail how we network hosts and containers together. From the networking perspective, our job is to make sure that a request directed towards your web server reaches the right container, and that container is able to communicate with other containers that your hosted application depends upon, all while making sure that someone else’s container cannot talk to one of your containers. By Mohammed Ajmal Siddiqui.

The article deals with:

  • What Platform.sh looks like
  • Overlay networks
  • Our ARP rig
  • The Platform.sh ARP Daemon

To sum up, Platform.sh encode the IP of the physical host housing the container within the container IP, and run their own ARP daemon that computes the grid host IP based on the container IP on demand in order to serve the ARP cache of the kernel. Interesting read!

[Read More]

Tags containers kubernetes web-development app-development docker