Timberland

Github Link

Contribution

Individual Contributor

  • Memory Oversubscription
  • Unified Cluster Health-checks
  • Improved remote actor discovery
  • Several QOL improvements

Abstract

Timberland is a self-bootstrapping Kubernetes alternative with package management capabilities based on Hashicorp software. Originally developed by Radix Bio Labs.

It encompasses our infrastructure layer and is responsible for delivering a developer experience to Radix’s internal dev team that is capable of unifying deployment across multiple operating systems, complex customer networks (firewalls, NAT’s), and healing when something goes wrong. To do this, it relys heavily on the Hashicorp stack, with the tools of terraform, nomad, consul, and vault being key cornerstones to implement Timberland.

How it works

  1. Using the included scripts, Timberland and its dependencies can be installed easily
  2. Utilize the included timberland <command> features to operate the system

Requirements

  • Bazel
  • Terraform
  • Consul
  • Vault
  • Nomad

Typical use case

Timberland is typical used for:

  • Bootstrap a cluster and configuration store
  • Start up the Radix Backend
  • Bootstrap ACL tokens
  • Bootstrap SSL
  • Provide a SDN layer to traverse corporate networks
  • Elect leaders when nodes fail / come back online via raft
  • Provide healthchecks
  • Nominally address services (rather than IP:port) in order to not worry about DHCP
  • When new nodes come online, fingerprint them to possibly roll out drivers if they are attached
  • Run our databases
  • Update and version deployments
  • Provide a centralized management plane
  • Provide a module system to easily add new components without having to be Radix
  • Interact uniformly with Firecracker VM’s, QEMU/KVM VM’s, Docker containers, Chroot binaries, and binaries running un-isolated

Tech Stack

  • Bazel
  • Scala
  • Python
  • Terraform
  • Consul
  • Vault
  • Nomad