kubernetes kong admin-api未启用,但“kong manager”尝试使用8444访问“/services”

ni65a41a  于 2024-01-07  发布在  Kubernetes
关注(0)|答案(1)|浏览(204)

我有EKS 1.27并试图通过Helm Chart 2.31.0安装Kong。我需要网关和管理器,不需要其他任何东西。外部Postgres启用。管理器入口和代理入口启用。SSL卸载ALB级别;所以“证书:“未启用。

  1. helm upgrade --install kong -n kong . \
  2. --set env.database="postgres" \
  3. --set env.pg_host="****" \
  4. --set env.pg_port="5432" \
  5. --set env.pg_user="****" \
  6. --set env.pg_password="****" \
  7. --set env.pg_database="****" \
  8. --set env.pg_ssl="on" \
  9. --set env.pg_ssl_verify="off"

字符串
安装后,我看到kong pod正在运行,迁移已经成功完成。
在管理器UI上只能访问默认页面(概述);问题是无法访问/services/routes/consumers等。
x1c 0d1x的数据
当我检查页面时,我看到Manager正在尝试使用8444访问/services。



我的values.yaml文件是here
问题不是admin-api的存在;问题是Kong Manager中的一个元素通过不存在的端口将浏览器连接重定向到后端。
相关的入口如下:

  1. apiVersion: networking.k8s.io/v1
  2. kind: Ingress
  3. metadata:
  4. annotations:
  5. meta.helm.sh/release-name: kong
  6. meta.helm.sh/release-namespace: kong
  7. generation: 1
  8. labels:
  9. app.kubernetes.io/instance: kong
  10. app.kubernetes.io/managed-by: Helm
  11. app.kubernetes.io/name: kong
  12. app.kubernetes.io/version: "3.4"
  13. helm.sh/chart: kong-2.31.0
  14. name: kong-kong-manager
  15. namespace: kong
  16. spec:
  17. ingressClassName: nginx
  18. rules:
  19. - host: kong.myawesomedomain.com
  20. http:
  21. paths:
  22. - backend:
  23. service:
  24. name: kong-kong-manager
  25. port:
  26. number: 8002
  27. path: /
  28. pathType: ImplementationSpecific
  29. status:
  30. loadBalancer:
  31. ingress:
  32. - ip: 172.54.54.54


admin-api是一个不同的api,在需要的情况下,它有自己的入口。
我希望“Kong Manager Dashboard”仅访问现有的后端服务(而不是不存在的服务),仅访问其入口配置中定义的端口。
您能告诉我8444是从哪里来的,尽管管理API没有启用?为什么Kong Manager试图通过使用8444访问“/services”?请建议一个解决方案,并指出我缺少什么.
Thanks & Regards

qrjkbowd

qrjkbowd1#

解决方案是admin API必须通过ingress; here公开。Manager使用admin API ingress地址。
如果管理API未通过ingress暴露,则管理器尝试使用8444访问管理API,这是没有意义的。

相关问题