Handles DHCP requests, hands out IPs, and serves up iPXE. It also uses the Tinkerbell client to pull and push hardware data. boots will only respond to a predefined set of MAC addresses so it can be deployed in an existing network without interfering with existing DHCP infrastructure.


Metadata service used by Tinkerbell and Osie during provisioning. It collects data from Tinkerbell and transforms it into a JSON format to be consumed as metadata.


Installs operating systems and handles deprovisioning.


Communicates with BMCs to control power and boot settings.


Service responsible for processing workflows. It is comprised of a server and a CLI, which communicate over gRPC. The CLI is used to create a workflow along with its building blocks, i.e., a template and targeted hardware.


We use PostgreSQL, also known as Postgres, as our data store. Postgres is a free and open-source relational database management system that emphasizes extensibility and technical standards compliance. It is designed to handle a range of workloads, from single machines to data warehouses or Web services with many concurrent users.

Image Repository

Depending on your use case, you can choose to use Quay or DockerHub as the registry to store component images. You can use the same registry to store all of the action images used for a workflow.

On the other hand, if you want to keep things local, you can also setup a secure private Docker registry to hold all your images locally.

Fluent Bit

Fluent Bit is an open source and multi-platform Log Processor and Forwarder. It allows you to collect data/logs from different sources, unify and send them to multiple destinations. The components write their logs to stdout and these logs are then collected by Fluent Bit and pushed to Elasticsearch.


Elasticsearch is a distributed, open source search and analytics engine for all types of data, including textual, numerical, geospatial, structured, and unstructured. Fluent Bit collects the logs from each component and pushes them into Elasticsearch for storage and analysis purposes.


Kibana lets you visualize your Elasticsearch data and navigate the Elastic Stack so you can do anything from tracking query load to understanding the way requests flow through your apps.


NGINX is a web server which can also be used as a reverse proxy, load balancer, mail proxy and HTTP cache. Tinkerbell uses NGINX to serve the required boot files during a workflow execution.