// Module included in the following assemblies:
//
// * operators/operator-reference.adoc

ifeval::["{context}" == "cluster-operators-ref"]
:operators:
endif::[]
ifeval::["{context}" == "cluster-capabilities"]
:cluster-caps:
endif::[]

[id="cluster-cloud-controller-manager-operator_{context}"]
ifdef::operators[= Cloud Controller Manager Operator]
ifdef::cluster-caps[= Cloud controller manager capability]

[discrete]
== Purpose

ifdef::cluster-caps[]
The Cloud Controller Manager Operator provides features for the `CloudControllerManager` capability.

[NOTE]
====
Currently, disabling the `CloudControllerManager` capability is not supported on all platforms.
====

You can determine if your cluster supports disabling the `CloudControllerManager` capability by checking values in the installation configuration (`install-config.yaml`) file for your cluster.

In the `install-config.yaml` file, locate the `platform` parameter.

* If the value of the `platform` parameter is `Baremetal` or `None`, you can disable the `CloudControllerManager` capability on your cluster.

* If the value of the `platform` parameter is `External`, locate the `platform.external.cloudControllerManager` parameter.
If the value of the `platform.external.cloudControllerManager` parameter is `None`, you can disable the `CloudControllerManager` capability on your cluster.

[IMPORTANT]
====
If these parameters contain any other values than those listed, you cannot disable the `CloudControllerManager` capability on your cluster.
====
endif::cluster-caps[]

[NOTE]
====
The status of this Operator is General Availability for {aws-first}, {gcp-first}, {ibm-cloud-name}, global {azure-full}, Microsoft Azure Stack Hub, Nutanix, {rh-openstack-first}, and {vmw-full}.

The Operator is available as a link:https://access.redhat.com/support/offerings/techpreview[Technology Preview] for {ibm-power-server-name}.
====

The Cloud Controller Manager Operator manages and updates the cloud controller managers deployed on top of {product-title}. The Operator is based on the Kubebuilder framework and `controller-runtime` libraries. It is installed via the Cluster Version Operator (CVO).

It contains the following components:

* Operator
* Cloud configuration observer

By default, the Operator exposes Prometheus metrics through the `metrics` service.

ifdef::operators[]
[discrete]
== Project

link:https://github.com/openshift/cluster-cloud-controller-manager-operator[cluster-cloud-controller-manager-operator]
endif::operators[]

ifeval::["{context}" == "cluster-operators-ref"]
:!operators:
endif::[]
ifeval::["{context}" == "cluster-capabilities"]
:!cluster-caps:
endif::[]