Kubernetes为Spring boot application.properties配置映射

时间:2018-03-24 06:01:44

标签: kubernetes

我有很多春季启动应用程序,我想在Kubernetes集群中部署。我遇到了使用基于文件的配置图的选项。我不清楚这一点。我正在寻找为每个应用程序导入整个application.properties,并且应该能够在相应的服务中引用它。在不同的application.properties中可能存在相同键的机会。不确定如何按应用程序加载完整的application.properties文件,只需从相应的服务中引用。

此外,我如何保护此application.proerties以便只有相应的应用程序可以引用它?

由于

1 个答案:

答案 0 :(得分:0)

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

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

另外,您可以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

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

相关问题