gpt4 book ai didi

kubernetes - Ingress 无法在谷歌 kubernetes 引擎中用于多项服务(Spring Boot)

转载 作者:行者123 更新时间:2023-12-02 11:35:40 26 4
gpt4 key购买 nike

我在谷歌云的集群中部署了两个服务。

当我运行:kubectl get services 我得到->

NAME           TYPE        CLUSTER-IP     EXTERNAL-IP   PORT(S)          AGE
hello-java-1 NodePort 10.7.254.204 <none> 8080:31848/TCP 21m
hello-java-2 NodePort 10.7.246.52 <none> 8080:30624/TCP 19m
kubernetes ClusterIP 10.7.240.1 <none> 443/TCP 23m

现在,我按照谷歌云文档进行了跟踪:Ingress并将扇出入口配置为:

apiVersion: extensions/v1beta1
kind: Ingress
metadata:
name: fanout-ingress
spec:
rules:
- http:
paths:
- path: /product/*
backend:
serviceName: hello-java-1
servicePort: 8080
- path: /list/*
backend:
serviceName: hello-java-2
servicePort: 8080

现在:

$kubectl get ingress fanout-ingress
NAME HOSTS ADDRESS PORTS AGE
fanout-ingress * 35.190.55.204 80 17m

我得到了这些结果。

我检查了命令:kubectl describe ingress fanout-ingress

输出是:

  *
/product/* hello-java-1:8080 (<none>)
/list/* hello-java-2:8080 (<none>)
Annotations:
ingress.kubernetes.io/backends: {"k8s-be-30624--e761000d52fd1c80":"HEALTHY","k8s-be-31726--e761000d52fd1c80":"HEALTHY","k8s-be-31848--e761000d52fd1c80":"HEALTHY"}
ingress.kubernetes.io/forwarding-rule: k8s-fw-default-fanout-ingress--e761000d52fd1c80
ingress.kubernetes.io/target-proxy: k8s-tp-default-fanout-ingress--e761000d52fd1c80
ingress.kubernetes.io/url-map: k8s-um-default-fanout-ingress--e761000d52fd1c80
Events:
Type Reason Age From Message
---- ------ ---- ---- -------
Normal ADD 18m loadbalancer-controller default/fanout-ingress
Normal CREATE 17m loadbalancer-controller ip: 35.190.55.204
Normal Service 8m (x4 over 17m) loadbalancer-controller no user specified default backend, using system default

现在,当我访问 http://35.190.55.204/product/home 时,出现了 spring whitelabel 错误。但是\home 是在应用程序中定义的!为什么会这样?

最佳答案

我明白了!对于/product/*路径,我们第一个服务的所有URL映射 spring应用中的Requestpath应该以/product/开头/p>

ex: /product/list, /product/add, /product/delete etc

对于 Ingress 路径规则/list/*,我们第二个服务中的所有 URL 映射 spring 应用程序中的 Requestpath 应该以 /list/ 开头

ex: /list/sort, /list/add, /list/delete etc

关于kubernetes - Ingress 无法在谷歌 kubernetes 引擎中用于多项服务(Spring Boot),我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/53045830/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com