【问题标题】:Kubernetes config map for Spring boot application.propertiesSpring boot application.properties 的 Kubernetes 配置映射
【发布时间】:2018-03-26 19:50:03
【问题描述】:

我有许多想在 Kubernetes 集群中部署的 Spring Boot 应用程序。我遇到了一个使用基于文件的配置映射的选项。我不清楚这一点。我正在寻找为每个应用程序导入整个 application.properties 并且应该能够在相应的服务中引用它。在不同的 application.properties 中可能有相同的键。不知道如何通过应用程序加载完整的 application.properties 文件,只是从相应的服务中引用。

另外,我怎样才能保护这个 application.proerties 以便只有相应的应用程序可以引用这个?

谢谢

【问题讨论】:

标签: kubernetes


【解决方案1】:

Kubernetes 为此类数据提供了一个特殊的位置 - Secret

这种类型的对象仅在创建它的命名空间中可见,因此您可以在不同的命名空间中运行应用程序,并且每个应用程序将只能使用其命名空间中的机密。

你也可以encrypt your secrets

因此,首先,您需要为您的数据创建一个秘密:

kubectl create secret generic <secret-name> --from-file=<file-you-want-to-create-as-a-secret>

您还可以将多个文件包含在一个密钥中。在documentation 中,您可以找到一个示例。

现在,您可以mount your secrets 将 Spark 应用程序发送给执行程序,如果需要,还可以发送给驱动程序:

--conf spark.kubernetes.driver.secrets.<secret-name>=<path/in/container>
--conf spark.kubernetes.executor.secrets.<secret-name>=/etc/secrets

之后,您可以将应用程序中的机密用作常规文件。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2021-06-26
    • 2020-03-02
    • 1970-01-01
    • 2017-01-29
    • 1970-01-01
    • 2018-11-26
    • 2014-09-01
    相关资源
    最近更新 更多