All Projects → lucasteligioridis → Raspbernetes

lucasteligioridis / Raspbernetes

Licence: gpl-3.0
Raspberry Pi Kubernetes Cluster

Programming Languages

shell
77523 projects

Projects that are alternatives of or similar to Raspbernetes

Rak8s
Stand up a Raspberry Pi based Kubernetes cluster with Ansible
Stars: ✭ 354 (+567.92%)
Mutual labels:  raspberry-pi, kubernetes-cluster, kubernetes-setup
kubernetes-workshop
Kubernetes Workshop
Stars: ✭ 35 (-33.96%)
Mutual labels:  kubernetes-cluster, kubernetes-setup
rak8s
Stand up a Raspberry Pi based Kubernetes cluster with Ansible
Stars: ✭ 362 (+583.02%)
Mutual labels:  kubernetes-cluster, kubernetes-setup
Kubernetes Under The Hood
This tutorial is someone planning to install a Kubernetes cluster and wants to understand how everything fits together.
Stars: ✭ 279 (+426.42%)
Mutual labels:  kubernetes-cluster, kubernetes-setup
aksctl
An easy to use CLI for AKS cluster
Stars: ✭ 46 (-13.21%)
Mutual labels:  kubernetes-cluster, kubernetes-setup
GPU-Kubernetes-Guide
How to setup a production-grade Kubernetes GPU cluster on Paperspace in 10 minutes for $10
Stars: ✭ 34 (-35.85%)
Mutual labels:  kubernetes-cluster, kubernetes-setup
Kube Vip
Kubernetes Control Plane Virtual IP and Load-Balancer
Stars: ✭ 262 (+394.34%)
Mutual labels:  raspberry-pi, kubernetes-cluster
K8s-Cluster-Provisioner-GCP-Terrafrom
This repo will seamlessly setup self managed Kubernetes cluster in GCP using Terraform and Kubespray.
Stars: ✭ 17 (-67.92%)
Mutual labels:  kubernetes-cluster, kubernetes-setup
Kube Cluster Osx
Local development multi node Kubernetes Cluster for macOS made very simple
Stars: ✭ 294 (+454.72%)
Mutual labels:  kubernetes-cluster, kubernetes-setup
K3sup
bootstrap Kubernetes with k3s over SSH < 1 min 🚀
Stars: ✭ 4,012 (+7469.81%)
Mutual labels:  raspberry-pi, kubernetes-cluster
aws-kubernetes
Kubernetes cluster setup in AWS using Terraform and kubeadm
Stars: ✭ 32 (-39.62%)
Mutual labels:  kubernetes-cluster, kubernetes-setup
Kubernetes Gpu Guide
This guide should help fellow researchers and hobbyists to easily automate and accelerate there deep leaning training with their own Kubernetes GPU cluster.
Stars: ✭ 740 (+1296.23%)
Mutual labels:  kubernetes-cluster, kubernetes-setup
kubernetes the easy way
Automating Kubernetes the hard way with Vagrant and scripts
Stars: ✭ 22 (-58.49%)
Mutual labels:  kubernetes-cluster, kubernetes-setup
kubernetes-ami
A simple AMI and CloudFormation for launching Kubernetes on AWS
Stars: ✭ 41 (-22.64%)
Mutual labels:  kubernetes-cluster, kubernetes-setup
kubernetes-cluster
Vagrant As Automation Script
Stars: ✭ 34 (-35.85%)
Mutual labels:  kubernetes-cluster, kubernetes-setup
k8s-install.sh
k8s国内安装脚本: 不整那么复杂, 复制-粘贴-敲回车就好了.
Stars: ✭ 16 (-69.81%)
Mutual labels:  kubernetes-cluster, kubernetes-setup
icp-ce-on-linux-containers
Multi node IBM Cloud Private Community Edition 3.2.x w/ Kubernetes 1.13.5 in a Box. Terraform, Packer and BASH based Infrastructure as Code script sets up a multi node LXD cluster, installs ICP-CE and clis on a metal or VM Ubuntu 18.04 host.
Stars: ✭ 52 (-1.89%)
Mutual labels:  kubernetes-cluster, kubernetes-setup
kainstall-offline
kainstall tools offline file
Stars: ✭ 31 (-41.51%)
Mutual labels:  kubernetes-cluster, kubernetes-setup
Eksctl
The official CLI for Amazon EKS
Stars: ✭ 3,550 (+6598.11%)
Mutual labels:  kubernetes-cluster, kubernetes-setup
Kubernix
Single dependency Kubernetes clusters for local testing, experimenting and development
Stars: ✭ 545 (+928.3%)
Mutual labels:  kubernetes-cluster, kubernetes-setup

Raspbernetes

Automated and repeatable method of deploying a headless Kubernetes stack onto a cluster of Raspberry Pis. Completely hands off experience from power on.

Detailed blog and guide posted onto my medium account:

Prerequisites

The following tools and pre-requisites must be available on the machine being used to build the SD cards:

  • Linux - Because of filesystem requirements
  • bash - 4.0+
  • make - 4.1+
  • kubectl - 1.16.1
  • 4 Raspberry Pis (3 Masters and 1 Worker)

Applications

This stack is an opinionated way to deploy a home cluster with a HA design using haproxy and keepalived for cluster management.

See below for a list of the versions and applications used:

Configuration

A short explanation of each environment variable that can be overridden.

Environment Settings

Mount device configuration:

  • MNT_DEVICE - Device name of SD slot on your local machine. (default: /dev/mmcblk0)

Raspberry Pi network and hostname configuration:

  • RPI_NETWORK_TYPE - Network option of choice. Either eth0 or wlan0. (default: wlan0)
  • RPI_HOSTNAME - Hostname for specific Raspberry Pi. (default: rpi-kube-master-01)
  • RPI_IP - Static IP to set. (default: 192.168.1.101)
  • RPI_GATEWAY - Generally your router ip. (default: 192.168.1.1)
  • RPI_DNS - Usually the same as your router unless you run a separate DNS (default: RPI_GATEWAY)
  • RPI_TIMEZONE - Local timezone. (default: Australia/Melbourne)

Kubernetes specific configuration:

  • KUBE_NODE_TYPE - Type of Kubernetes node. Either master or worker. (default: master)
  • KUBE_MASTER_VIP - Floating virtual IP (VIP) to use in keepalived. (default: 192.168.1.100)
  • KUBE_MASTER_IP_01 - IP of 1st master node to use in haproxy. (default: 192.168.1.101)
  • KUBE_MASTER_IP_02 - IP of 2nd master node to use in haproxy. (default: 192.168.1.102)
  • KUBE_MASTER_IP_03 - IP of 3rd master node to use in haproxy. (default: 192.168.1.103)

Network configuration if using Wifi. Accompanied with RPI_NETWORK_TYPE of wlan0:

  • WIFI_SSID - Local SSID to connect Wifi to. (default: n/a)
  • WIFI_PASSWORD - Password of above SSID to connect to Wifi using wpa_supplicant. (default: n/a)

Run

Be mindful of an SSH key that gets generated with this build that is stored in the output/ssh/ directory. This is not committed to git and should be treated safe like a normal private key. If you lose this key you will no longer be able to manage your stack. This is crucial for inter-cluster communication and remoting for management.

Build

Once appropriate above environment variables have been exported to suit your specific local environment, the below command will build an SD card with all automation scripts:

make build

Help

The help target is set as the default target, so display the above brief descriptions. Use the below command as is to print to the terminal:

make
Note that the project description data, including the texts, logos, images, and/or trademarks, for each open source project belongs to its rightful owner. If you wish to add or remove any projects, please contact us at [email protected].