Files
linuxkit/projects/kubernetes
Ian Campbell bb50dd9781 projects/kubernetes: Allow linuxkit to pick default backend
Drop `hyperkit` from the `linuxkit run` invocation, thus causing the linuxkit
tool to pick the platform's default backend (which is qemu on my Linux system,
which works better than hyperkit in this environment).

Signed-off-by: Ian Campbell <ian.campbell@docker.com>
2017-05-03 09:11:32 +01:00
..
2017-04-16 07:13:38 -05:00
2017-04-16 10:31:11 -05:00
2017-04-16 07:13:38 -05:00
2017-04-16 07:13:38 -05:00
2017-04-18 19:34:06 -05:00
2017-04-12 15:02:03 +01:00

Kubernetes and LinuxKit

This project aims to demonstrate how one can create minimal and immutable Kubernetes OS images with LinuxKit.

Make sure to cd projects/kubernetes first.

Edit kube-master.yml and add your public SSH key to files section.

Build OS images:

make build-vm-images

Boot Kubernetes master OS image using hyperkit on macOS:

./boot-master.sh

Get IP address of the master:

ip addr show dev eth0

Login to the kubelet container:

./ssh_into_kubelet.sh <master-ip>

Manually initialise master with kubeadm:

kubeadm-init.sh

Once kubeadm exits, make sure to copy the kubeadm join arguments, and try kubectl get nodes from within the master.

To boot a node use:

./boot-node.sh <n> [<join_args> ...]

More specifically, to start 3 nodes use 3 separate shells and run this:

shell1> ./boot-node.sh 1 --token bb38c6.117e66eabbbce07d 192.168.65.22:6443
shell2> ./boot-node.sh 2 --token bb38c6.117e66eabbbce07d 192.168.65.22:6443
shell3> ./boot-node.sh 3 --token bb38c6.117e66eabbbce07d 192.168.65.22:6443