Skip to content

Cloud Controller Manager (Bare Metal)

Cloud-Controller-Manager (CCM) is the bridge between Kubernetes and a cloud-provider. CCM uses the cloud-provider (IronCore Bare Metal API in this case) API to manage these resources. We have implemented the cloud provider interface in the cloud-provider-metal repository. Here's a more detail on how these APIs are implemented in the IronCore bare metal cloud-provider for different objects.

Node lifecycle

InstanceExists

InstanceExists checks if a node with the given name exists in the cloud provider. In IronCore bare metal a Node is represented by a ServerClaim object. The InstanceExists method checks if a ServerClaim with the given name exists.

InstanceShutdown

InstanceShutdown checks if a node with the given name is shutdown in the cloud provider. Here, the instane controller checks if the ServerClaim and the claimed Server object are in the PowerOff state.

InstanceMetadata

InstanceMetadata retrieves the metadata of a node with the given name. In IronCore bare metal, this method retrieves the topology labels from a Server object which is claimed by the ServerClaim of the node. Additional labels of the Server object are also added to the node object.