我正在尝试编写一个接受以下参数的实用程序-
此实用程序应在此服务的所有Pod上调用终结点。
当前,我通过服务名称获取所有Pod的名称,并遍历所有Pod,并通过运行-满足要求
`kubectl exec $pod -- curl http:\\localhost:8081\actuator\loggers`
尽管它可以工作,但我正在寻找一种无需在pod上执行“ exec”的解决方案,因为我不确定用户是否有权运行此实用程序。有什么方法可以对单个Pod进行http调用?
答案 0 :(得分:1)
我将在kubernetes集群中运行该实用程序,并将该实用程序公开给需要数据的开发人员。这样,您只需要公开此实用程序,而不必公开所有pod来允许http调用。我认为这种方法要简单得多。
有多种方法可以将Kubernetes Pod暴露给集群之外,但我建议使用using Ingress,它使用nginx代理将来自外部的流量路由到您的Pod。