Sidero Documentation

website·Indexed 32 days ago

https://www.sidero.dev/

Documentation for Sidero (v0.4, v0.5, and v0.6), covering bare-metal provisioning, architecture, and integration with Cluster API (CAPI). Includes guides for bootstrapping, creating workload clusters, resource configuration, and managing Talos machine configurations using tools like kubectl, clusterctl, and talosctl.

Tokens
109.1K
Snippets
470
Records
693
Agent score
60%

What's inside Sidero

  1. Introduction to Sidero Metal

    v0.4

    Sidero Metal provides lightweight, composable tools to create bare-metal Talos Linux and Kubernetes clusters built around the Cluster API (CAPI) project. It consists of two primary components:

    • Metal Controller Manager: Manages the lifecycle of metal machines, iPXE server, metadata service, and gRPC API service.
    • Cluster API Provider Sidero (CAPS): An infrastructure provider that uses the controller manager to spin up Kubernetes clusters.

    To function, Sidero Metal requires the following co-requisites:

    • Cluster API
    • Cluster API Control Plane Provider Talos
    • Cluster API Bootstrap Provider Talos
  2. Overview of Sidero Metal architecture

    v0.5

    Sidero Metal provides lightweight, composable tools to create bare-metal Talos Linux and Kubernetes clusters. It is built around the Cluster API project and consists of two primary components:

    1. Metal Controller Manager: Manages the lifecycle of metal machines, the iPXE server, metadata service, and gRPC API service via custom resources and controllers.
    2. Cluster API Provider Sidero (CAPS): An infrastructure provider that utilizes the Metal Controller Manager to spin up Kubernetes clusters.

    To function, Sidero Metal requires the following co-requisites:

    • Cluster API
    • Cluster API Control Plane Provider Talos
    • Cluster API Bootstrap Provider Talos

    All components are installed using the clusterctl tool.

  3. Overview of Sidero Metal Architecture

    v0.6

    Sidero Metal provides tools to create bare-metal Talos Linux and Kubernetes clusters based on the Cluster API project. It consists of two primary components:

    1. Metal Controller Manager: Manages the lifecycle of metal machines, iPXE server, metadata service, and gRPC API service.
    2. Cluster API Provider Sidero (CAPS): A Cluster API infrastructure provider that utilizes the Metal Controller Manager to spin up clusters.

    To function, Sidero Metal requires the following co-requisites:

    • Cluster API
    • Cluster API Control Plane Provider Talos
    • Cluster API Bootstrap Provider Talos
  4. Overview of Sidero Metal

    v0.5

    Sidero Metal provides lightweight, composable tools to create bare-metal Talos Linux and Kubernetes clusters using the Cluster API (CAPI) project. It consists of two primary components:

    1. Metal Controller Manager: Manages the lifecycle of metal machines, iPXE server, metadata service, and gRPC API service.
    2. Cluster API Provider Sidero (CAPS): A CAPI infrastructure provider that leverages the Metal Controller Manager to spin up clusters.

    Sidero Metal requires the following co-requisites: Cluster API, Cluster API Control Plane Provider Talos, and Cluster API Bootstrap Provider Talos.

  5. Introduction to Sidero Metal

    v0.6

    Sidero Metal provides lightweight, composable tools to create bare-metal Talos Linux and Kubernetes clusters, built around the Cluster API project. It consists of two primary components:

    • Metal Controller Manager: Manages the lifecycle of metal machines, iPXE server, metadata service, and gRPC API service.
    • Cluster API Provider Sidero (CAPS): A Cluster API infrastructure provider that uses the controller manager to spin up clusters.

    To function, Sidero Metal requires Cluster API, the Cluster API Control Plane Provider Talos, and the Cluster API Bootstrap Provider Talos.

  6. Overview of Sidero Metal components

    v0.4

    Sidero Metal provides tools to create bare-metal Talos Linux and Kubernetes clusters based on the Cluster API (CAPI) project. It consists of two primary components:

    1. Metal Controller Manager: Manages the lifecycle of metal machines, including the iPXE server, metadata service, and gRPC API service.
    2. Cluster API Provider Sidero (CAPS): A CAPI infrastructure provider that utilizes the Metal Controller Manager to spin up clusters.

    To function, Sidero Metal requires the following co-requisites:

    • Cluster API
    • Cluster API Control Plane Provider Talos
    • Cluster API Bootstrap Provider Talos
  7. Overview of Sidero Metal and its architecture

    v0.6
    Sidero Metal is a set of lightweight, composable tools used to create bare-metal Talos Linux and Kubernetes clusters. It is built around the Cluster API (CAPI) project. To resolve the 'chicken and egg' problem of needing a cluster to provision other clusters, Sidero Metal requires an initial management plane cluster. While this management cluster can be any Kubernetes distribution, using Talos Linux is recommended for security and stability.
  8. Overview of Sidero Metal Bare Metal Lifecycle Management

    Sidero Metal is an open-source tool used to automate bare metal server provisioning and lifecycle management using Cluster API. It provides a secure Kubernetes deployment by integrating a metadata service, PXE and TFTP servers, and BMC/IPMI management for automation. Sidero Metal installs certified Kubernetes clusters secured with Talos Linux.
  9. Overview of Sidero Metal architecture

    v0.4

    Sidero Metal provides lightweight, composable tools to create bare-metal Talos Linux and Kubernetes clusters. It is built around the Cluster API (CAPI) project and consists of two primary components:

    1. Metal Controller Manager: Manages the lifecycle of metal machines, the iPXE server, metadata service, and gRPC API service via custom resources and controllers.
    2. Cluster API Provider Sidero (CAPS): A CAPI infrastructure provider that utilizes the Metal Controller Manager to provision Kubernetes clusters.

    To function, Sidero Metal requires the following co-requisites:

    • Cluster API
    • Cluster API Control Plane Provider Talos
    • Cluster API Bootstrap Provider Talos

    All components are installed using the clusterctl tool.

  10. Introduction to Sidero Metal

    v0.5
    Sidero Metal provides lightweight, composable tools for creating bare-metal Talos Linux and Kubernetes clusters, built around the Cluster API (CAPI) project. It consists of two primary components: the Metal Controller Manager (managing the lifecycle of metal machines, iPXE server, metadata service, and gRPC API) and the Cluster API Provider Sidero (CAPS). To function, it requires Cluster API, the CAPI Control Plane Provider for Talos, and the CAPI Bootstrap Provider for Talos.
  11. Understand the Sidero server provisioning logic

    v0.5

    The Sidero provisioning flow manages the lifecycle of a server from power-on to environment booting. The logic follows these primary stages:

    1. Power State: Checks if the server is powered on; if not, it triggers a power-on action.
    2. Registration: Checks if the server is registered. If not, it boots the agent environment and registers the server.
    3. Acceptance: Checks if the server has been accepted. If not accepted, the process ends.
    4. Allocation & Cleanup:
      • If the server is allocated, it boots the target environment.
      • If not allocated, it checks if the server is 'clean'. If not clean, it wipes the server and powers it off.
      • If already clean, it simply powers the server off.
    graph TD;
        Start(Start);
        End(End);
    
        IsOn{Is server is powered on?};
        IsRegistered{Is server is registered?};
        IsAccepted{Is server is accepted?};
        IsClean{Is server is clean?};
        IsAllocated{Is server is allocated?};
    
        DoPowerOn[Power server on];
        DoPowerOff[Power server off];
        DoBootAgentEnvironment[Boot agent];
        DoBootEnvironment[Boot environment];
        DoRegister[Register server];
        DoWipe[Wipe server];
    
        Start-->IsOn;
        IsOn--Yes-->End;
        IsOn--No-->DoPowerOn;
        DoPowerOn--->IsRegistered;
        IsRegistered--Yes--->IsAccepted;
        IsRegistered--No--->DoBootAgentEnvironment-->DoRegister;
        DoRegister-->IsRegistered;
        IsAccepted--Yes--->IsAllocated;
        IsAccepted--No--->End;
        IsAllocated--Yes--->DoBootEnvironment;
        IsAllocated--No--->IsClean;
        IsClean--No--->DoWipe-->DoPowerOff;
        IsClean--Yes--->DoPowerOff;
        DoBootEnvironment-->End;
        DoPowerOff-->End;
  12. Sidero Metadata Server Talos compatibility

    v0.6
    The Sidero Metadata Server no longer depends on the specific version of the Talos machinery library it was built with. This allows Sidero to process machine configurations for future versions of Talos without requiring a Metadata Server update.