// Module included in the following assemblies: // // * operators/operator-reference.adoc [id="ingress-operator_{context}"] = Ingress Operator [discrete] == Purpose The Ingress Operator configures and manages the {product-title} router. [discrete] == Project link:https://github.com/openshift/cluster-ingress-operator[openshift-ingress-operator] [discrete] == CRDs * clusteringresses.ingress.openshift.io ** Scope: Namespaced ** CR: clusteringresses ** Validation: No [discrete] == Configuration objects * Cluster config ** Type Name: clusteringresses.ingress.openshift.io ** Instance Name: default ** View Command: + [source,terminal] ---- $ oc get clusteringresses.ingress.openshift.io -n openshift-ingress-operator default -o yaml ---- [discrete] == Notes The Ingress Operator sets up the router in the `openshift-ingress` project and creates the deployment for the router: [source,terminal] ---- $ oc get deployment -n openshift-ingress ---- The Ingress Operator uses the `clusterNetwork[].cidr` from the network/cluster status to determine what mode (IPv4, IPv6, or dual stack) the managed ingress controller (router) should operate in. For example, if `clusterNetwork` contains only a v6 `cidr`, then the ingress controller will operate in v6-only mode. In the following example, ingress controllers managed by the Ingress Operator will run in v4-only mode because only one cluster network exists and the network is a v4 `cidr`: [source,terminal] ---- $ oc get network/cluster -o jsonpath='{.status.clusterNetwork[*]}' ---- .Example output [source,terminal] ---- map[cidr:10.128.0.0/14 hostPrefix:23] ----