我想在外面开放我的服务。我决定为此使用 ingress。 但直接通过 IP 而不需要主机名。例如,对于在端口 9090 上运行的应用程序,当我输入 IP:9090 时,它应该转到相应的应用程序。同样9091,8080,7070等
我没有选择使用 NodePort,因为它限制在 30000 到 32767.Dec 之间。
Ingress 我可以用一般规则来解决这个问题吗?或者 Ingress 是一个合适的选择吗?
如果您想直接通过 IP 和端口公开服务而不使用主机名,您应该使用
LoadBalancer
类型的 Kubernetes 服务,而不是 Ingress
。 Ingress
主要设计用于基于主机名的 HTTP/HTTPS 路由,而 LoadBalancer
类型的服务允许您直接通过外部 IP 地址和端口公开服务。
apiVersion: v1
kind: Service
metadata:
name: my-service
spec:
selector:
app: my-app
ports:
- protocol: TCP
port: 9090
targetPort: 9090
type: LoadBalancer