Skip to content

zackb/asgard

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

46 Commits
 
 
 
 
 
 
 
 

Repository files navigation

Asgard

This is a terraform definition to install and manage Kubernetes on a cluster of Raspberry Pis. It also optionally installs some useful software.

k3s

Uses k3s and a forked version of xunleii's terraform module to install and manage Kubernetes

Software

Optionally installs some software I like that also runs on the pi's arm7 chips

  • Minio - s3 clone
  • NATS - highly resilient and performant message passing system
  • NATS Streaming - nats append-only-log style data streaming
  • cert-manager - to handle SSL certificates using Let's Encrypt
  • docker-registry - for a custom private docker image registry
  • wintermute - my toy project which uses most of the above (wintermute is the bad AI in the Neuromancer book)

Usage

See the example tfvars file but all that's needed is the pi's name, ip, and ssh private key location.

name = "asgard"
master = {
    name        = "odin"
    host        = "192.168.1.200"
    user        = "root"
    private_key = "~/.ssh/id_rsa"
}

nodes = [
    {
      name        = "thor"
      host        = "192.168.1.201"
      user        = "root"
      private_key = "~/.ssh/id_rsa"
    },
    {
      name        = "fenris"
      host        = "192.168.1.202"
      user        = "root"
      private_key = "~/.ssh/id_rsa"
    }
]

About

Kubernetes on Raspberry Pi with Terraform

Resources

Stars

Watchers

Forks

Releases

No releases published

Sponsor this project

 

Packages

 
 
 

Contributors