gpt4 book ai didi

kubernetes - 为 RStudio 和 Shiny 设置带有 HTTP 负载平衡入口的 Kuberentes 集群会导致错误页面

转载 作者:行者123 更新时间:2023-12-04 14:23:06 25 4
gpt4 key购买 nike

我正在尝试在运行 nginx、RStudio 服务器和两个 Shiny 应用程序的 Google Kubernetes Engine 上创建一个集群,遵循并适应 this guide .

我有 4 个在 UI 中都是绿色的工作负载,通过以下方式部署:

kubectl run nginx --image=nginx --port=80
kubectl run rstudio --image gcr.io/gcer-public/persistent-rstudio:latest --port 8787
kubectl run shiny1 --image gcr.io/gcer-public/shiny-googleauthrdemo:latest --port 3838
kubectl run shiny5 --image=flaviobarros/shiny-wordcloud --port=80

然后通过以下方式将它们全部公开为节点端口:
kubectl expose deployment nginx --target-port=80  --type=NodePort
kubectl expose deployment rstudio --target-port=8787 --type=NodePort
kubectl expose deployment shiny1 --target-port=3838 --type=NodePort
kubectl expose deployment shiny5 --target-port=80 --type=NodePort

..在用户界面中都是绿色的。

然后我部署了这个 Ingress 后端
apiVersion: extensions/v1beta1
kind: Ingress
metadata:
name: r-ingress
spec:
rules:
- http:
paths:
- path: /
backend:
serviceName: nginx
servicePort: 80
- path: /rstudio/
backend:
serviceName: rstudio
servicePort: 8787
- path: /shiny1/
backend:
serviceName: shiny1
servicePort: 3838
- path: /shiny5/
backend:
serviceName: shiny5
servicePort: 80

结果是nginx路由效果很好,我可以从家里看到“欢迎使用nginx”网页,但我得到的其他三个路径:
  • /rstudio/- Input/output error
  • /shiny1/- 页面未找到(Shiny 404 页面)
  • /shiny5/- 页面未找到(Shiny 404 页面)

  • RStudio 和 Shiny 工作负载在通过单个负载均衡器暴露时都可以工作,分别映射到 8787 和 3838。

    谁能指出我哪里出错了?

    问:
  • Dockerfile 是否需要进行调整,以便它们在请求“/”时都在端口 80 上给出 200 状态?我需要更换健康检查器吗?我尝试更改 RStudio 登录页面(如果您未登录,则将 302 更改为/auth-sign-in)但没有成功
  • RStudio 和 Shiny 都需要 websockets - 这会影响这个吗?
  • 是否需要开启 session 关联?我试着用 IP 添加它,但同样的错误。
  • 最佳答案

    您遇到的最可能的问题是,当您使用此入口时,您附加的 URI 与直接访问(/shiny1/vs/)不同,因此您的应用程序丢失并且没有该 uri 的内容。

    使用 Nginx 入口 Controller ,您可以使用 ingress.kubernetes.io/rewrite-target: /注释以减轻这种情况并确保即使在入口路径中有子文件夹时也可以访问/。

    关于kubernetes - 为 RStudio 和 Shiny 设置带有 HTTP 负载平衡入口的 Kuberentes 集群会导致错误页面,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/48452556/

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