<p>Is it possible to create multiple ingress objects with similar rules referencing the same backend service on the same port?</p>
<pre><code>apiVersion: extensions/v1beta1
kind: Ingress
metadata:
  name: ingress1
spec:
  rules:
  - host: green.com
    http:
      paths:
      - path: /
        backend:
          serviceName: red-svc
          servicePort: 80

apiVersion: extensions/v1beta1
kind: Ingress
metadata:
  name: ingress2
spec:
  rules:
  - host: pink.com
    http:
      paths:
      - path: /
        backend:
          serviceName: red-svc
          servicePort: 80
</code></pre>

<p>It depends on the implementation of the ingress controller you are using. For nginx below rules apply while building the <a href="https://kubernetes.github.io/ingress-nginx/how-it-works/#building-the-nginx-model" rel="nofollow noreferrer">nginx model</a></p>
<ol>
<li>If the same path for the same host is defined in more than one Ingress, the oldest rule wins.</li>
<li>f multiple Ingresses define different paths for the same host, the ingress controller will merge the definitions</li>
</ol>
<p>Since you have different host none of the above apply and it should fine i.e both
<code>green.com</code> and <code>pink.com</code> should route traffic to the same backend <code>red-svc</code> on port <code>80</code></p>
