Notes from Config Management Camp 2016

Config Management Camp is becoming a great addition to the post-FOSDEM crowd. Short train ride away from Brussels to Ghent, lots of good content for an overnighter in a hotel (2d/1n). It routinely sells out (the cost is unbeatable, free ;)), so go early. Some quick notes:

Jonathan Boulle – CoreOS – etcd @baronboulle

  • /etc but distributed with a clustered key-value store with GET/SET operations
  • Support SkyDNS, Kubernetes, etc.
  • CoreOS mission is to “secure the internet” and they like to provide automatic updates. Updates = rebooting. They didn’t like ZooKeeper so much.
  • etcd: strong consistency guarantees, simple/fast HTTP API, OSS
  • Uses the Raft consensus algorithm (replicated log to model a state machine; append only log). Concepts: leaders, elections, terms
  • Written in Go, statically linked – etcd daemon and etcdctl cli

Service discovery using SmartStack – John Billings – billings@yelp.com

  • http://nerds.airbnb.com/smartstack-service-discovery-cloud/
  • Load balancing was done via something called create-lb-config and it was a lot of manual stuff which was deployed via puppet. Very labour intensive.
  • They created something called PaasTa as a Paas (https://github.com/Yelp/paasta). And they found out about AirBnB’s SmartStack
  • HAProxy allows you to re-dispatch on connection failures and easy to add connection logging as well. Each HAProxy instance also has a status page
  • http://engineeringblog.yelp.com/2015/04/true-zero-downtime-haproxy-reloads.html
  • Originally Nerve & Synapse made a Zookeper connection per service so it would make Zookeeper slow. Modify Nerve/Synapse to multiplex all operations over a single Zookeeper connection
  • Use Zookeeper + AWS without issue for service discovery
  • etcd would probably also work and supported by SmartStack but they already know Zookeper. SmartStack is conceptually similar to consul/consul-template

Platform Orchestration with Kubernetes and Docker

  • Julian Strobl – julian@endocode.com – experts in linux/OSS dev, trainers, consultants located in berlin
  • They have a 4-node Raspberry Pi cluster that one of them made
  • There used to be a Master/Minion relationship, but now its a Master/Worker relationship when you are dealing in the Kubernetes world
  • https://github.com/saturnism/gcp-live-k8s-visualizer

How CoreOS is built, modified and updated – Brian “redbeard” Harrington, Principal Architect, CoreOS

  • @brianredbeard / brianredbeard.com
  • repo sync – allows for managing many git repos at once
  • cros sdk is used to build Chromium OS, but its truly an SDK (lots of bash scripts that do things the way you want them)
  • OMAHA protocol created by Google to handle updates to desktop applications (eg. ChromeOS, Browser, etc.). There are OSS bindings provided by CoreOS in Go.

i