We have a new server! SL

Thanks to your donations, to grants provided by both the Shuttleworth Foundation and the NLnet Foundation, and to LTFE for providing hosting, we have been able to successfully establish a new server, which we named the aggregator. The new server will host the next version of nodewatcher, the modular provisioning, deployment and monitoring platform targeted at community wireless mesh networks worldwide.

In order to make future deployments of nodewatcher as seamless as possible, we have been hard at work to provide a Dockerized version of all components that we use ourselves. For configuring the host and managing all the containers we decided to use Salt, which enables us to document the whole deployment in a single place and to enable that similar new instances can be easily built. To support our need of interconnecting Docker containers via Layer 2 links, we have developed a simple network configuration daemon for Docker, netcfg, which enables dynamic configuration of Layer 2 bridges between containers.

IMG_20140916_103813050.jpg IMG_20140916_104102297.jpg streznik-thinkserver-rd440-a.jpg

We have packaged a number of components as reusable Docker containers. Buildfiles for all the containers are available in our GitHub repository (they usually have the docker prefix in their name) and the pre-built images are also available on the Docker Hub. The following components are available:

  • Olsrd, the L3 routing daemon that wlan slovenija is currently using for mesh routing, packaged as a Docker container for easy reuse.
  • Tunneldigger-client, the client side of our seamless VPN solution, that enables the nodewatcher server to connect into the wlan slovenija mesh. We will also Dockerize the server side for easy provisioning of new VPN servers.
  • OpenWRT-based firmware build system that is used to build all the firmware for our nodes. Making it available through Docker enables new versions to easily become available for nodewatcher's firmware generator module to use for provisioning nodes.

Configuration states that can be used to configure aggregator-like servers are available in our servers-salt-states repository. Pillar files used to configure the concrete aggregator server are private at the moment as they contain some sensitive information about the production server, but when the configuration is finalized a sample configuration that can be deployed on any server will be provided.

Our next steps will be focused on bringing the new nodewatcher platform to production for use in wlan slovenija network and to make it available for anyone who wishes to establish and manage their own community wireless mesh network.