K8s 入口 socket.io 503
K8s ingress socket.io 503
我在带有 ELB 的 EKS 上有一个带有 socket.io 应用 运行 的 Nodejs。我已经使用以下 yaml 配置了一个入口。
apiVersion: networking.k8s.io/v1
kind: Ingress
metadata:
annotations:
cert-manager.io/cluster-issuer: letsencrypt-prod
kubernetes.io/ingress.class: nginx
nginx.ingress.kubernetes.io/websocket-services: ws-gateway
nginx.org/websocket-services: ws-gateway
name: web-socket
namespace: default
spec:
defaultBackend:
service:
name: ws-gateway
port:
number: 9090
rules:
- host: ws.example.com
http:
paths:
- backend:
service:
name: ws-gateway
port:
number: 9090
path: /
pathType: Prefix
tls:
- hosts:
- ws.example.com
secretName: ws-tls
但是,在测试时我收到 503 Service Temporarily Unavailable
。域名和服务名及端口正确。请求也未到达应用程序。
配置中是否缺少某些内容?
问题出在服务端。由于与某些其他服务的连接丢失,容器意外重新启动,每次我尝试访问它时都会导致 503。
我在带有 ELB 的 EKS 上有一个带有 socket.io 应用 运行 的 Nodejs。我已经使用以下 yaml 配置了一个入口。
apiVersion: networking.k8s.io/v1
kind: Ingress
metadata:
annotations:
cert-manager.io/cluster-issuer: letsencrypt-prod
kubernetes.io/ingress.class: nginx
nginx.ingress.kubernetes.io/websocket-services: ws-gateway
nginx.org/websocket-services: ws-gateway
name: web-socket
namespace: default
spec:
defaultBackend:
service:
name: ws-gateway
port:
number: 9090
rules:
- host: ws.example.com
http:
paths:
- backend:
service:
name: ws-gateway
port:
number: 9090
path: /
pathType: Prefix
tls:
- hosts:
- ws.example.com
secretName: ws-tls
但是,在测试时我收到 503 Service Temporarily Unavailable
。域名和服务名及端口正确。请求也未到达应用程序。
配置中是否缺少某些内容?
问题出在服务端。由于与某些其他服务的连接丢失,容器意外重新启动,每次我尝试访问它时都会导致 503。