You are viewing documentation for the Kairos release v3.1.3. For the latest release, click here.
Architecture
Kairos internal architecture
This section contains refrences to how Kairos works internally.
Setup process
kairos node at first boot will start the kairos-agent service, you can always check what’s happening by running journalctl -fu kairos-agent.
This service will setup k3s and edgevpn dynamically on first-boot, once it configures the machine it does not run on boot anymore, unless /usr/local/.kairos/deployed is removed..
Those are the steps executed in sequence by the kairos-agent service:
- Will create a
edgevpn@kairosservice and enabled on start. The configuration for the connection is stored in/etc/systemd/system.conf.d/edgevpn-kairos.envand depends on the cloud-init configuration file provided during installation time - Automatic role negotiation starts, nodes will co-ordinate for an IP and a role
- Once roles are defined a node will either set the
k3sork3s-agentservice. Configuration for each service is stored in/etc/sysconfig/k3sand/etc/sysconfig/k3s-agentrespectively
Paths
The following paths are relevant for Kairos:
| Path | Description |
|---|---|
| /usr/local/.kairos/deployed | Sentinel file written after bootstrapping is complete. Remove to retrigger automatic bootstrap |
| /usr/local/.kairos/lease | IP Lease of the node in the network. Delete to change IP address of the node |