Note
This project is currently under development
Kuboot is a Kubernetes native scheduler capable of targeting edge devices leveraging bootable containers. Kuboot is a solution built to provide a controller for edge devices.
P2CODE has received funding from the European Union under grant agreement No. 101093069.
- Follow the guide to deploy a RabbitMQ instance
- Using the values from the secret generated, populate the environment variables in the kuboot deployment
- Deploy Kuboot
kubectl apply -f deployment/virtual-kubelet - Ensure the kuboot node is deployed
kubectl get nodes - Ensure the kuboot deployment is healthy
kubectl get deployment -n virtual-kubelet
- Create amqp-config.yaml
mv agent/amqp-config.sample.yaml agent/amqp-config.yaml - Populate amqp-config.yaml with the values of the RabbitMQ cluster
- Create login credentials for the device
mv agent/config.sample.toml config.toml - Build the image
sudo podman build -f agent/Dockerfile -t kuboot-agent .mkdir outputsudo podman run --rm -it --privileged --pull=newer --security-opt label=type:unconfined_t -v $(pwd)/config.toml:/config.toml:ro -v $(pwd)/output:/output -v /var/lib/containers/storage:/var/lib/containers/storage quay.io/centos-bootc/bootc-image-builder:latest --local --type raw --rootfs xfs kuboot-agent
- Boot the edge device with the image generated
- Log into the device with the credentials specified
DevConf presentation and demo
