代码之家  ›  专栏  ›  技术社区  ›  user584018

在使用nginxingress时,我可以通过POD IP地址(而不是主机地址)获得curl的响应吗

  •  0
  • user584018  · 技术社区  · 2 年前

    我正在使用 nginx ingress controller 以下是2个服务的入口规则文件:

    apiVersion: networking.k8s.io/v1
    kind: Ingress
    metadata:
      name: my-ingress
      namespace: kube-system
      annotations:
        kubernetes.io/ingress.class: nginx
        kubernetes.io/ingress.allow-http: "false"
        nginx.ingress.kubernetes.io/ssl-redirect: "false"
        nginx.ingress.kubernetes.io/use-regex: "true"
        nginx.ingress.kubernetes.io/rewrite-target: /$1
    spec:
      tls:
      - hosts:
        - rewrite.bar.com.com
        secretName: ingress-tls
      rules:
      - host: rewrite.bar.com.com
      - http:
          paths:
          - path: /my-service-1/(.*)
            pathType: Prefix
            backend:
              service:
                name: my-service-1
                port:
                  number: 36995
          - path: /my-service-2/(.*)
            pathType: Prefix
            backend:
              service:
                name: my-service-2
                port:
                  number: 32243
    

    现在,通过service-2的shell使用下面的命令,我可以卷曲到service-1api端点,这里我需要传递主机('wire.com'),它也启用了TLS,

    curl --resolve wire.com:443:10.22.148.179 https://wire.com:32243/GetData
    

    以上curl使用主机地址成功给我回复,这里没有问题!

    现在我使用POD的IP地址而不是主机地址,但这不会给我响应,它总是给出错误,比如 curl: (52) Empty reply from server 在这里 10.22.148.179 是我的入口公共IP地址,并且 10.2.0.58 是我的POD IP地址。

    curl --resolve enabledservices-dev-aks.honeywell.com:443:10.22.148.179 http//10.2.0.58:32243/GetData
    

    我的目标是通过IP地址到达POD/服务api的终点,这在集成了Ingress的上下文的情况下可能吗?

    0 回复  |  直到 2 年前
        1
  •  1
  •   moonkotte    2 年前

    将此从评论转移到回答。


    问题是服务器通过HTTPS提供服务时使用的curl请求和HTTP协议。这是的原因 (52) Empty reply from server 错误

    curl的请求应该通过指定如下协议来完成:

    curl https://test.example.com:8888
    

    Ingress 用作集群的单个入口点,因此所有内部服务都可以在集群中使用 cluster-ip 服务类型-请参阅 kubernetes service types .

    如果需要从集群内部测试任何内部服务/pod,则应该从集群执行请求,以便能够命中 集群ip 自从 集群ip 只能在群集中访问。

    推荐文章