如何使用kong k8 ingress公开kong管理api



我为我们的kubernetes部署了kong入口控制器,我们正在使用它来路由我们的微服务。

现在我想公开我的管理员API来使用其他功能并获取监控统计信息。请有人帮我一下。

这些文件对我没有任何帮助。

假设我们关注的是:

管理员API

这是Kong公开其管理层API的端口。因此,在生产过程中,该端口应设置防火墙,以防止未经授权的访问。

  • 8001提供了Kong的管理API,您可以使用该API通过HTTP操作Kong。请参阅admin_listen
  • 8444提供相同的Kong管理员API,但使用HTTPS。请参阅admin_listen和ssl后缀

--Docs.konghq.com:2.3.X:配置:管理员监听

从Kubernetes/GKE的角度来看,您可以通过以下任一方式访问这些端口:

  • $ kubectl port-forward deployment/ingress-kong -n kong 8444:8444
    • 此选项允许您从主机查询https://localhost:8444
  • Service
    • 修改孔的Service
    • 修改孔的Deployment

旁注!

您也可以使用Ingress资源公开它,但您需要创建一个指向Admin APIService,修改Deployment并应用指向该ServiceIngress资源


专注于使用Service:公开此API

  • 编辑Service:kong-proxy并添加:
- name: api
protocol: TCP
port: 8444 
targetPort: 8444
  • 编辑Deployment:kong-ingress
- name: KONG_ADMIN_LISTEN
value: 0.0.0.0:8444 ssl # <-- from 127.0.0.1

重要

以上编辑将向外部来源公开您的API(假设与您的最后一个问题与GKE的内部lb无关(。有关这方面的支持,请参阅香港的文件:

  • Docs.konghq.com:Gateway OSS:2.3.X:安全管理api

其他资源:

  • Kubernetes:io:Docs:Tasks:Access应用程序集群:端口转发访问应用程序集群
  • Kubernetes.io:文档:概念:服务网络:服务

相关内容

  • 没有找到相关文章

最新更新