<p>I want to create an nginx load balancer in kubernetes.</p>
<pre><code>    apiVersion: networking.k8s.io/v1
    kind: Ingress
    metadata:
      name: ecom-ingress
    spec:
      defaultBackend:
        service:
          name: ecom-ui-service
          port:
            number: 80
      rules:
      - http:
          paths:
          - path: /identity
            pathType: ImplementationSpecific
            backend:
              service:
                name: ecom-identity-service
                port:
                  number: 80
          - path: /catalog
            pathType: ImplementationSpecific
            backend:
              service:
                name: ecom-catalog-service
                port:
                  number: 80
                  
</code></pre>
<p>So I have created services and pods on cluster. And now I want to create an ingress to access my servies using rewrite.</p>
<ul>
<li>http://ip-of-cubernetes    (main mape)</li>
<li>http://ip-of-cubernetes/catalog    (list prodcts)</li>
<li>http://ip-of-cubernetes/catalog/112    (single prodcut)</li>
</ul>
<p>When I send this nginx yml file using kubectl command &quot;kubectl apply -f ingress.yml&quot; it creates a gce load balancer in ingress tab of google page like following. And I can not access the catalog endpoint. It returns nginx 404 page.
<a href="https://i.stack.imgur.com/KuMd2.png" rel="nofollow noreferrer"><img src="https://i.stack.imgur.com/KuMd2.png" alt="enter image description here" /></a></p>
<p>if I use following helm command in google management page console, it creates a loadbalancer in services tab.</p>
<pre><code> helm install nginx-ingress nginx-stable/nginx-ingress --set rbac.create=true 
</code></pre>
<p><a href="https://i.stack.imgur.com/UxfIp.png" rel="nofollow noreferrer"><img src="https://i.stack.imgur.com/UxfIp.png" alt="enter image description here" /></a></p>
<p>So I want to create an nginx loadbalancer in services tab or I want to use rewrite rules in gce loadbalancers.</p>
<p>How can I specify my ingress yml file for this purpose? And I want to use the rewrite for use my services to use query strings etc.</p>

barteloma
<p>In this <a href="https://github.com/GoogleCloudPlatform/gke-networking-recipes/tree/main/ingress/single-cluster/ingress-nginx" rel="nofollow noreferrer">link</a> one of the use case is rewrite request URI before sending it to application.</p>
<p>There is also information about yaml deployment in ingress and in service that you can use as a guidance in your deployment.</p>
