首页 > 解决方案 > Kubernetes,在接受对 POD 的传入请求之前获取 API 令牌

问题描述

我的应用程序需要通过 REST API 与第三方服务进行通信,为此需要向第三方系统发送POST请求并使用令牌进行响应。/auth然后,该令牌可用于后续调用,并且有效期至12 hours.

目前,/auth呼叫发生在第一个请求到达 POD 时,这需要几秒钟。我正在尝试进行更改,以便 POD 在服务任何请求之前始终获取令牌。

我正在考虑的解决方案是在 Kubernetes 中使用Readiness Probe在 POD 可用之前获取 api 令牌。这是解决问题的理想方式吗?

如果是这样,我怎样才能每 12 小时自动重新创建我的 POD?因为如果我在 12 小时后不删除 pod,令牌就会失效。

标签: kubernetes

解决方案


就绪探针可以阻止流向 pod 的流量,但不会在失败时重新创建它,但是活性探针可以。

如果您有一个就绪探测来检查应用程序是否已正确初始化(获得身份验证令牌)并命中一个仅在有流量时才响应 200 的端点,直到它被初始化后才会发送。

然后,您可以使用 liveness probe 来检查另一个端点(或与启动延迟相同的端点),因为当 liveness probe 失败时,它们将在一定时间后杀死 pod。


推荐阅读