How Does it Work?
Tinkerbell has a few core components: a DHCP server (Smee), a metadata service (Hegel), an in-memory operating system installation environment (HookOS) and a workflow engine (Tink Server/Worker).
The workflow engine is comprised of a controller, server and worker. The server and agent communicate over gRPC.
kubectl
is used to create workflows along with hardware and template objects.
There are also a few optional components: 2 Power and Boot services (PBnJ and Rufio) that communicate with BMCs. A Cluster API provider (CAPT) for provisioning and managing Kubernetes clusters.