kubernetes jee:地图资源属性文件

时间:2018-12-28 12:23:33

标签: java-ee kubernetes quartz-scheduler

我已将此quartz.properties文件放入src/main/resources文件夹项目中:

org.quartz.jobStore.class = net.joelinn.quartz.jobstore.RedisJobStore
org.quartz.jobStore.host = redisbo

如您所见,我需要根据当前环境更改org.quartz.jobStore.host

我的意思是,根据必须部署我的项目的环境,该值也必须更改。

我所有的环境都在kubernetes / openshift上。

我不太清楚如何创建configmap来映射我的src/main/resources/quartz.properties的此属性。

有什么想法吗?

2 个答案:

答案 0 :(得分:1)

我认为您可以按照以下步骤进行配置。

  • 使用configmap文件创建quartz.properties,如下所示。

        # kubectl create configmap quartz-config --from-file=quartz.properties
    
  • 将卷设置为configmap,如下创建。

    apiVersion: v1
    kind: Pod
    metadata:
      name: test
    spec:
      containers:
        - name: test-container
          image: k8s.gcr.io/busybox
          command: [ "/bin/sh", "-c", "ls /src/main/resources" ]
          volumeMounts:
          - name: config-volume
            mountPath: /src/main/resources
      volumes:
        - name: config-volume
          configMap:
            name: quartz-config
      restartPolicy: Never
    

答案 1 :(得分:0)

我会考虑创建一个外部服务,因此您可以将Redisbo保留在代码中,并使用kubernetes映射到外部dns。我们经常使用这种技术。

本指南非常有用

https://akomljen.com/kubernetes-tips-part-1/