<p>I am having below questions related to Ingress resource in Kubernetes</p>
<ol>
<li>Can a single Ingress controller (ex: NginxIngress Controller) be mapped to multiple Ingress resources?</li>
<li>If the Ingress resources are mapped to single namespace, how to requested be routed in case of multiple ingress resources?</li>
<li>Is the Ingress resource mapped to unique hostname?</li>
<li>Is the ingress controller (ex: Nginx Ingress controller) bound to a namespace or is it a cluster level resource?</li>
</ol>

<ol>
<li>Yes, it's possible, you can have a look here: <a href="https://stackoverflow.com/questions/65171303/is-it-possible-to-have-multiple-ingress-resources-with-a-single-gke-ingress-cont">Is it possible to have multiple ingress resources with a single GKE ingress controller</a></li>
<li>Considering ingress resources are ingress rules:</li>
</ol>
<blockquote>
<p>If you create an Ingress resource without any hosts defined in the
rules, then any web traffic to the IP address of your Ingress
controller can be matched without a name based virtual host being
required.</p>
<p>For example, the following Ingress routes traffic requested for
first.bar.com to service1, second.bar.com to service2, and any traffic
to the IP address without a hostname defined in request (that is,
without a request header being presented) to service3.</p>
</blockquote>
<p><a href="https://kubernetes.io/docs/concepts/services-networking/ingress/#name-based-virtual-hosting" rel="nofollow noreferrer">Name based virtual hosting</a></p>
<p>3.</p>
<blockquote>
<p>An optional host. In this example, no host is specified, so the rule
applies to all inbound HTTP traffic through the IP address specified.
If a host is provided (for example, foo.bar.com), the rules apply to
that host.</p>
</blockquote>
<p><a href="https://kubernetes.io/docs/concepts/services-networking/ingress/#ingress-rules" rel="nofollow noreferrer">Ingress rules</a></p>
<p>4.</p>
<blockquote>
<p>Parameters field has a scope and namespace field that can be used to
reference a namespace-specific resource for configuration of an
Ingress class. Scope field defaults to Cluster, meaning, the default
is cluster-scoped resource. Setting Scope to Namespace and setting the
Namespace field will reference a parameters resource in a specific
namespace:</p>
<p>Namespace-scoped parameters avoid the need for a cluster-scoped
CustomResourceDefinition for a parameters resource. This further
avoids RBAC-related resources that would otherwise be required to
grant permissions to cluster-scoped resources.</p>
</blockquote>
<p><a href="https://kubernetes.io/docs/concepts/services-networking/ingress/#namespace-scoped-parameters" rel="nofollow noreferrer">Namespace-scoped parameters</a></p>
