【问题标题】:Set environment variable for a single pod in a cluster为集群中的单个 pod 设置环境变量
【发布时间】:2019-05-18 20:31:42
【问题描述】:

我的微服务有 n 个实例作为 kubernetes pod 运行,但由于应用程序代码中有一些调度逻辑,我希望这些 pod 中只有一个来执行代码。

在 Spring 应用程序中,一种常见的方法是仅为实例激活 scheduled 配置文件 -Dspring.profiles.active=scheduled,并为其余实例保持停用状态。我想知道如何在 Kubernetes 中实现这一点。


注意:我熟悉 kubernetes cron 作业可以调用端点以便负载均衡器选择的只有一个实例执行计划代码的方法。但是,我想知道是否可以配置 kubernetes 规范,使得只有一个 pod 设置了环境变量。

【问题讨论】:

    标签: kubernetes environment-variables devops kubernetes-pod devops-services


    【解决方案1】:

    您可以创建具有所需环境变量的 1 个副本的部署,以及具有所需数量的副本的另一个部署,而无需该变量。您还可以在两个部署上设置相同的标签,以便服务可以在需要时对来自两个部署的 pod 之间的流量进行负载平衡。

    【讨论】:

      猜你喜欢
      • 2019-05-02
      • 2019-12-24
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2023-03-24
      • 1970-01-01
      相关资源
      最近更新 更多