Closed fujitatomoya closed 8 months ago
this requires the physical environment especially for edge IoT resource constrained devices, i can use Raspi4 arm64 platform for this tutorial. this is actually generic feature aside from robotics or ROS application, but this is really useful information to manage the edge device resource in edge.
my interests would be,
(nice to have) can k8s add or remove the resources offered by the node? for example, add one more CPU from the specific node or remove the CPU from it dynamically after the node joins the cluster.
AFAIS, there is no such thing we can do from the api server. the resources Node Allocatable
is exposed by kubelet
, that said we need to update kubelet
systemd service file to change the Node Allocatable
resources.
I believe that typically we can set the available resource for each edge worker node when it joins to the cluster. and resources are dependent on edge system, so this should be find procedure that user needs to set.
Add the following tutorial to conserve the resource for edge IoT devices.
Overview
Once edge devices join to the cluster, in default all resources will be advertised to cluster resource to be managed by Kubernetes. But considering the use case for edge IoT devices, sometimes we would want to reserve the resource to the host system or application running on the host system directly. To support those cases, edge devices should be able to advertise or offer the limited resource to be managed by Kubernetes to that it can reserve the certain resources running on bare metal system.
Feature Information