Developing Cloud Controller Manager

    The cloud-controller-manager is a Kubernetes control plane component that embeds cloud-specific control logic. The cloud controller manager lets you link your cluster into your cloud provider’s API, and separates out the components that interact with that cloud platform from components that only interact with your cluster.

    Since cloud providers develop and release at a different pace compared to the Kubernetes project, abstracting the provider-specific code to the cloud-controller-manager binary allows cloud vendors to evolve independently from the core Kubernetes code.

    Developing

    To build an out-of-tree cloud-controller-manager for your cloud:

    1. Create a go package with an implementation that satisfies cloudprovider.Interface.
    2. Import your cloud package in , ensure your package has an init block to run .

    In tree

    For in-tree cloud providers, you can run the in-tree cloud controller manager as a in your cluster. See Cloud Controller Manager Administration for more details.