4.2.2.5. 过滤从 ConfigMap 或 Secret 获取的配置值


ConfigMap 和 Secret 可以容纳多个源。例如,以下命令从两个源创建一个 secret (my-sec-multi):

oc create secret generic my-sec-multi --from-literal=my-secret-key="very top secret" --from-literal=my-secret-key-2="even more secret"

您可以使用 --config configmap--config secret 选项后,使用 /key 表示法限制集成检索的信息数量。

前提条件

流程

  1. 创建使用 ConfigMap 或 Secret 中其中一个源的配置值的集成。

    例如,以下集成(ConfigSecretKeyRoute.java)使用来自 my-sec-multi 机密中的一个源的 属性。

    import org.apache.camel.builder.RouteBuilder;
    
    public class ConfigSecretKeyRoute extends RouteBuilder {
      @Override
      public void configure() throws Exception {
    
        from("timer:secret")
          .setBody()
              .simple("resource:classpath:my-secret-key-2")
          .log("secret content is: ${body}");
      }
    }
  2. 使用 --config secret 选项和 /key 表示法运行集成。

    例如:

    kamel run --config secret:my-sec-multi/my-secret-key-2 ConfigSecretKeyRoute.java --dev
  3. 检查集成 pod,以验证是否只挂载指定源(如 my-secret-key-2)。

    例如,运行以下命令来列出 pod 的所有卷:

    oc set volume pod/<pod-name> --all
Red Hat logoGithubRedditYoutubeTwitter

学习

尝试、购买和销售

社区

关于红帽文档

通过我们的产品和服务,以及可以信赖的内容,帮助红帽用户创新并实现他们的目标。 了解我们当前的更新.

让开源更具包容性

红帽致力于替换我们的代码、文档和 Web 属性中存在问题的语言。欲了解更多详情,请参阅红帽博客.

關於紅帽

我们提供强化的解决方案,使企业能够更轻松地跨平台和环境(从核心数据中心到网络边缘)工作。

© 2024 Red Hat, Inc.