Differences
This shows you the differences between two versions of the page.
Next revision | Previous revision | ||
technical:raspberry_pi_computing_cluster [2020/05/13 20:13] – created bob | technical:raspberry_pi_computing_cluster [2020/05/16 16:16] (current) – [Docker] bob | ||
---|---|---|---|
Line 3: | Line 3: | ||
===== Some Background ===== | ===== Some Background ===== | ||
- | [[https://blog.hypriot.com/post/setup-kubernetes-raspberry-pi-cluster/|Setup Kubernetes on a Raspberry Pi Cluster]] | + | There are a number of approaches to parallel cluster processing. |
+ | |||
+ | * [[https://kubernetes.io/ | ||
+ | * [[https:// | ||
+ | * [[https:// | ||
+ | * [[https:// | ||
+ | * [[https:// | ||
+ | * [[https:// | ||
===== Setup ===== | ===== Setup ===== | ||
- | On a fresh RPi here are the pieces | + | On a fresh RPi here are the steps |
+ | |||
+ | * Install Python 3, remove Python 2 | ||
+ | * Install Docker | ||
+ | * Install Kubernetes | ||
+ | * [[https:// | ||
+ | * [[https:// | ||
+ | |||
+ | ==== Docker ==== | ||
+ | |||
+ | [[https:// | ||
+ | |||
+ | An automated script maintained by the Docker project will create a systemd service file and copy the relevant Docker binaries into / | ||
+ | |||
+ | sudo curl -sSL https:// | ||
+ | |||
+ | Set Docker to auto-start: | ||
+ | |||
+ | sudo systemctl enable docker | ||
+ | |||
+ | Or start Docker manually: | ||
+ | |||
+ | sudo systemctl start docker | ||
+ | |||
+ | The Docker client can only be used by root or members of the docker group. Add pi or your equivalent user to the docker group: | ||
+ | |||
+ | sudo usermod -aG docker pi | ||
+ | |||
+ | Test the Docker | ||
+ | |||
+ | docker run -ti arm32v6/ | ||
+ | |||
+ | Note that Docker creates a new docker0 network interface. | ||
+ | |||
+ | ==== Kubernetes ==== | ||
+ | |||
+ | [[https:// | ||
+ | |||
+ | First, trust the kubernetes APT key and add the official APT Kubernetes repository on every node: | ||
+ | |||
+ | curl -s https:// | ||
+ | sudo apt-key add apt-key.gpg | ||
+ | echo "deb http:// | ||
- | Kubernetes | + | Install kubeadm on every node: |
- | Docker | + | apt-get update |
+ | apt-get install -y kubeadm | ||
- | Python 3, remove Python 2 | ||