The OpenShift Controller Manager (OCM) is comprised of multiple controllers, many of which correspond to a top-level OpenShift API object, watching for changes and acting accordingly. The controllers are generally organized by API group:
apps.openshift.io
- OpenShift-specific workloads, likeDeploymentConfig
.build.openshift.io
- OpenShiftBuilds
andBuildConfigs
.image.openshift.io
-ImageStreams
andImages
.project.openshift.io
- Projects, OpenShift's wrapper forNamespaces
.template.openshift.io
- OpenShiftTemplates
- a simple way to deploy applications.
There are additional controllers which add OpenShift-specific capabilities to the cluster:
authorization
- provides default service account role bindings for OpenShift projects.serviceaccounts
- manages secrets that allow images to be pulled and pushed from the OpenShift image registry.unidling
- manages unidling of applications when inbound network traffic is detected. See the OpenShift docs for more information.
Many of the controllers expose metrics which are visible in the default OpenShift monitoring system (Prometheus). See metrics for a detailed list of exposed metrics for each API group.