简体   繁体   中英

Nginx Ingress: doesn't run services and get 503 service unavailable

I am trying to create an ingress file to route urls into the inside services. but after calling in postman, it just returns 503 error. this is my ingress file config:

apiVersion: networking.k8s.io/v1
kind: Ingress
metadata:
  name: ingress-srv
annotations:
  kubernetes.io/ingress.class: nginx
  nginx.ingress.kubernetes.io/backend-protocol: "HTTP"
spec:
  rules:
   - host: posts.com
     http:
       paths:
         - path: /posts/create
           pathType: Prefix
           backend:
             service:
             name: posts-clusterip-srv
             port: 
              number: 7000

this is my posts deployment file and cluster ip:

apiVersion: apps/v1
kind: Deployment
metadata:
  name: posts-depl
spec:
 replicas: 1
 selector:
   matchLabels:
     app: posts
 template:
   metadata:
     labels:
       app: posts
   spec:
     containers:
        - name: posts
          image: 4765/posts
---
  apiVersion: v1
  kind: Service
  metadata:
     name: posts-clusterip-srv
 spec:
    selector:
       app: posts
    ports:
      - name: posts
        protocol: TCP
        port: 7000
        targetPort: 7000

when in postman I send this request http://posts.com/posts/create just returns 503 service unavailable . I try to curl the cluster Ip curl http://posts-clusterip-srv:7000 but it responses Could not resolve host: posts-clusterip-srv

I don't know what to do?

Does your app server accept request on /?
As path: /posts/create will forward the request to your server which will receive a request on /.
Concerning the curl http://posts-clusterip-srv:7000 it depends of the set up of your cluster:

  • If you are using a local cluster on your computer you should modify your /etc/hosts add your local IP as posts.com then you should be able to curl it.
  • If your cluster is on a server it seems that it is a DNS problem, same way as above you can add the server IP to your hosts file to avoid using the DNS.

The technical post webpages of this site follow the CC BY-SA 4.0 protocol. If you need to reprint, please indicate the site URL or the original address.Any question please contact:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM