Red Hat Camel K is no longer supported.
As of June 30, 2025, Red Hat build of Camel K has reached End of Life. The suggested replacements is Red Hat build of Apache Camel. For details about moving, see the Camel K to Camel Quarkus migration guide.3.8. 导入现有 Camel 应用程序
您已在集群中运行了 Camel 应用程序,并且您已通过手动部署、CICD 或已有的任何其他部署机制创建它。由于 Camel K 操作器旨在在其中操作任何 Camel 应用程序,因此您可以使用类似的 Camel K 受管集成 方式导入它并监控。
此功能默认为禁用。要启用它,您必须使用环境变量 CAMEL_K_SYNTHETIC_INTEGRATIONS 运行 Operator 部署,设置为 true。
您只能监控 synthetic Integrations。Camel K 不会更改非受管集成(即,重建原始应用程序)的生命周期。
Operator 不会更改原始应用程序的任何字段,以避免破坏任何已存在的部署流程。由于它不能对应用程序的构建和部署方式做出任何假设,因此只能监控它所发生的任何更改。
3.8.1. 在外部部署,通过 Camel K Operator 监控 复制链接链接已复制到粘贴板!
导入的集成称为 synthetic Integration。您可以导入部署为 Deployment、CronJob 或 Knative Service 的任何 Camel 应用程序。我们通过一个标签(camel.apache.org/integration)来控制用户必须应用到 Camel 应用程序(手动或引入部署过程中,即通过 CICD)。
以下示例使用 CronJob 和 Knative Service 的类似方法工作。
例如,我们演示了如何导入使用 Deployment kind 部署的 Camel 应用程序。让我们假定这名为 my-deploy。
oc label deploy my-camel-sb-svc camel.apache.org/integration=my-it
$ oc label deploy my-camel-sb-svc camel.apache.org/integration=my-it
Operator 会立即创建一个合成集成。
oc get it
$ oc get it
NAMESPACE NAME PHASE RUNTIME PROVIDER RUNTIME VERSION KIT REPLICAS
test-79c385c3-d58e-4c28-826d-b14b6245f908 my-it Running
您可以看到,它处于 Running 状态。但是,在检查条件后,您现在可以看到集成还没有完全监控。这是正常的,因为 Camel K operator 监控 Pod 的方式。它要求生成的 Pod 继承应用到 Deployment 的相同标签。因此,除了标记 Deployment 外,我们还必须在 Deployment 模板中添加一个标签。
oc patch deployment my-camel-sb-svc --patch '{"spec": {"template": {"metadata": {"labels": {"camel.apache.org/integration": "my-it"}}}}}'
$ oc patch deployment my-camel-sb-svc --patch '{"spec": {"template": {"metadata": {"labels": {"camel.apache.org/integration": "my-it"}}}}}'
此操作也可以在部署过程中手动执行或自动执行。现在,我们可以看到操作器能够监控 Pod 的状态。
oc get it
$ oc get it
NAMESPACE NAME PHASE RUNTIME PROVIDER RUNTIME VERSION KIT REPLICAS
test-79c385c3-d58e-4c28-826d-b14b6245f908 my-it Running 1
现在,您可以在与受管集成相关的类似方法中监控 synthetic Integration 的状态。例如,如果您的 Deployment 扩展或缩减,您会看到此信息会相应反映。
oc scale deployment my-camel-sb-svc --replicas 2 oc get it
$ oc scale deployment my-camel-sb-svc --replicas 2
$ oc get it
NAMESPACE NAME PHASE RUNTIME PROVIDER RUNTIME VERSION KIT REPLICAS
test-79c385c3-d58e-4c28-826d-b14b6245f908 my-it Running 2