Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
1 change: 0 additions & 1 deletion docs/.vitepress/config.mts
Original file line number Diff line number Diff line change
Expand Up @@ -125,7 +125,6 @@ export default withMermaid({
{ text: 'Overview', link: '/baremetal/architecture' },
{ text: 'Discovery', link: '/baremetal/architecture/discovery' },
{ text: 'Provisioning', link: '/baremetal/architecture/provisioning' },
{ text: 'Maintenance', link: '/baremetal/architecture/maintenance' },
],
},
{
Expand Down
6 changes: 3 additions & 3 deletions docs/baremetal/kubernetes/capi.md
Original file line number Diff line number Diff line change
@@ -1,8 +1,8 @@
# Cluster API (CAPI) for IronCore Bare Metal

The Cluster API (CAPI) for IronCore bare metal is a project that provides a declarative way to manage bare metal
Kubernetes clusters using the Cluster API framework. It maps the CAPI concepts to the IronCore's `metal-operator`
API types.
The [Cluster API (CAPI) for IronCore bare metal](https://github.com/ironcore-dev/cluster-api-provider-ironcore-metal)
is a project that provides a declarative way to manage bare metal Kubernetes clusters using the Cluster API framework.
It maps the CAPI concepts to the IronCore's `metal-operator` API types.

The diagram below illustrates the architecture of the Cluster API for IronCore bare metal:

Expand Down
27 changes: 27 additions & 0 deletions docs/baremetal/kubernetes/gardener.md
Original file line number Diff line number Diff line change
@@ -1 +1,28 @@
# Gardener Integration with IronCore Bare Metal

Apart from the [Cluster API Provider for Bare Metal](/baremetal/kubernetes/capi), IronCore is also integrated with
[Gardener](https://gardener.cloud), a Kubernetes-native project for managing Kubernetes clusters at scale.

There are two main components in the Gardener integration with IronCore:
- **Machine Controller Manager (MCM)**: This component is responsible for managing the lifecycle of machines in a
Kubernetes cluster. It uses the `metal-operator` API types to provision and manage bare metal servers.
- **Gardener Extension Provider**: This component provides the necessary integration points for Gardener to manage bare
metal clusters.

## Machine Controller Manager (MCM)

The `[machine-controller-manager-provider-ironcore](https://github.com/ironcore-dev/machine-controller-manager-provider-ironcore-metal)`
is responsible for managing the lifecycle of `Nodes` in a Kubernetes cluster. Here the MCM in essence is translating
Gardener `Machine` resource to `ServerClaims` and wrapping the `user-data` coming from the Gardner OS extensions into
an Ignition `Secret`.

## Gardener Extension Provider

The [`gardener-extension-provider-ironcore-metal`](https://github.com/ironcore-dev/gardener-extension-provider-ironcore-metal)
is responsible for providing the necessary integration points for Gardener to manage bare metal clusters.

Those integration points include:
- Configure and the [Cloud Controller Manager](/baremetal/kubernetes/cloud-controller-manager) to handle the `Node` lifecycle
and topology information.
- Configure the [metal-load-balancer-controller](/baremetal/kubernetes/metal-loadbalancer-controller) to handle `Service` of type `LoadBalancer`.
- Configure the [Machine Controller Manager (MCM)](#machine-controller-manager-mcm) to manage the creation of `Nodes` in the cluster.
Loading