rest - kubernetes - 通过 REST-Call 列出所有命名空间的入口
问题描述
我想为每个命名空间列出 kubernets 集群上的所有入口 URL。
我知道有可能:
- kubectl -> kubectl 获取入口
- 众多客户端,例如 python:https ://github.com/kubernetes-client/python/blob/master/kubernetes/docs/ExtensionsV1beta1Api.md#list_ingress_for_all_namespaces
对于我目前的情况,一个简单的 REST-Call 将是最好的解决方案,但我找不到任何指向正确方向的文档。是否有 REST-Endpoint 可以访问 kubernets 集群上的上述信息?
提前致谢。
解决方案
是的,您可以调用 API 服务器检索所有入口规则:https://kubernetes/apis/extensions/v1beta1/ingresses
此 url 可以在您的集群环境中使用。从外部调用它时,将其替换为一些公共 IP/域。
您将需要使用承载令牌进行身份验证。该令牌通常安装在您的 Pod 中/var/run/secrets/kubernetes.io/serviceaccount/token
(也有一些例外,例如 terraform kubernetes 后端默认不安装此令牌)。要获取令牌以供外部使用,您可以使用以下命令将其导出:
TOKEN=$(kubectl describe secret $(kubectl get secrets \
| grep ^default | cut -f1 -d ' ') | grep -E '^token' | cut -f2 -d':' | tr -d " ")
这里有更多信息(不是关于入口,而是其他 REST API 调用):https ://stackoverflow.com/a/50797128/9423721
推荐阅读
- c# - 从包控制台管理器更新数据库时收到此错误值不能为空。(参数“连接字符串”)
- java - 如何在 Android API 28 及更高版本上打开“前置摄像头”投掷 ACTION_CAPTURE?
- postgresql - Debezium:检查 postgres initial_only 的快照是否完整
- javascript - 使用 javascript Promise 的多个 onload 事件
- sql - 通过行聚合和新列创建转换表
- jsp - HTTP 状态 500 - 处理 JSP 页面时发生异常 //在获取值时
- php - 函数返回后在php中重置全局变量
- python - postgresql 更新功能耗时太长
- android - 如何在片段上绘制加密货币的指数移动平均数据?
- sql - 如何旋转然后计算数据?