第 1 章 概述


Camel K 设置为弃用,而是使用统一的 Camel 方法进行 OpenShift。以 Red Hat Build of Camel for Quarkus 为目标,我们的目标是为现有客户提供迁移路径,以转换其 Camel K 集成。这种方法可确保无缝迁移到 Apache Camel for Quarkus 的红帽构建,在考虑 Camel K 支持的功能和红帽构建的 Apache Camel for Quarkus 时,需要最少的工作。

您必须了解构建、配置、部署和运行应用程序的 Quarkus 方法。

1.1. 假设

  • 要迁移所需的源文件位于 java、xml 或 yaml 中。
  • 要部署的目标系统是一个 OpenShift Cluster 4.15+。
  • Camel K 版本为 1.10.7。
  • 迁移是红帽构建的 Apache Camel for Quarkus。

Camel K 操作使用 Kamel CLI 运行集成,而 Camel K Operator 则管理并部署为运行的 pod 以及各种 Kubernetes 对象,包括 Deployment、Service、Route、ConfigMap、Secret 和 Knative。

注意

运行的 java 程序是 Camel on Quarkus 应用程序。

当使用红帽构建的 Apache Camel for Quarkus 时,起点是一个 Maven 项目,其中包含构建和运行集成所需的所有工件。此项目将包括 Deployment、Service、ConfigMap 和其他资源,虽然它们的配置可能与 Camel K 中的配置不同。例如,属性可能会存储在 application.properties 文件中,并且 Knative 配置可能需要单独的文件。主要目标是确保集成路由已在 OpenShift 集群中部署并运行。

1.1.1. 要求

要执行迁移,需要遵循一组工具和配置。

探索有关红帽构建的 Apache Camel 支持的配置组件详情

1.1.2. 超出范围

  • 使用 Camel Spring Boot (CSB)作为目标。迁移路径类似,但应该针对 CSB 和 JKube 进行定制。有关 许多示例 请参阅文档
  • OpenShift 管理.
  • 自定义 maven 项目.

1.1.3. 使用案例

Camel K 集成可能会有所不同,通常由几个与集成路由和配置对应的文件组成。集成路由可以在 Java、XML 或 YAML 中定义,而配置可以在属性文件或 kamel run 命令中指定。此迁移文档解决 ConfigMap 中涉及 KameletBinding、Kamelet、Knative 和属性的用例。

1.1.4. 版本

注意

Camel K 1.10.7 使用红帽构建的 Apache Camel for Quarkus 的不同 Camel 和 Quarkus 版本。

表 1.1. Camel K
工件Camel KRed Hat build of Apache Camel for Quarkus

JDK

11

21 (首选)、17 (支持)

Camel

3.18.6.redhat-00009

4.4.0.redhat-00025

Camel for Quarkus

2.13.3.redhat-00011

3.8.0.redhat-00006

Quarkus 平台

2.13.9.SP2-redhat-00003

3.8.5.redhat-00003

kamelet Catalog

1.10.7

2.3.x

从 Camel K 迁移到 Apache Camel for Quarkus 构建同时更新多个库。因此,由于底层库的不同,在构建或运行 Apache Camel for Quarkus 中的集成时可能会遇到一些错误。

1.1.5. 项目和机构

Camel K 集成路由源自 java、yaml 或 xml 中的单个文件。没有项目的概念来组织依赖项和构建。结束时,每个 kamel run <my app&gt; 都会产生一个正在运行的 pod。

红帽构建的 Apache Camel 需要一个 maven 项目。使用 camel export <many files& gt; 来生成 maven 项目。在构建项目时,容器镜像包含项目中定义的所有集成路由。

如果需要每个集成路由有一个 pod,您必须为每个集成路由创建一个 maven 项目。虽然有许多复杂方法,使用带有多个集成路由和自定义构建的单一 maven 项目来生成容器镜像来启动 pod,但这超出了此迁移指南的范围。

返回顶部
Red Hat logoGithubredditYoutubeTwitter

学习

尝试、购买和销售

社区

关于红帽文档

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

让开源更具包容性

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

關於紅帽

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

Theme

© 2025 Red Hat, Inc.