第 6 章 OpenShift 中的 Fuse 入门

OpenShift 上的 Fuse (自 7.0 起的 Fuse 集成服务的名称)可让您在 OpenShift Container Platform 上部署 Fuse 应用程序。

重要

对于 Fuse 集成项目(Fuse on OpenShift 项目),Fuse 工具需要安装 Red Hat Container Development Kit (CDK) v3。具体步骤请查看 入门指南。除本指南中指定的先决条件外,如果还没有红帽帐户,则需要建立红帽帐户。需要您的红帽用户名和密码来启动 Red Hat Container Development Kit 中提供的虚拟 OpenShift 实例。

您可以通过在 红帽客户门户上 注册,轻松获得帐户。点击白色标语右上角的 Account ,然后点击 Login to Your Red Hat Account 页面的 RH acctRegBut

Fuse 工具可让您使用 s2i 二进制工作流开发和部署 Fuse 集成项目。在此工作流中,工具在本地构建您的项目,将其编译成镜像流,然后将镜像流推送到 OpenShift,在其中构建 Docker 容器。Docker 容器构建后,OpenShift 会在 pod 中部署它。

重要

Fuse 工具只适用于 S2I 二进制文件的工作流,且只适用于基于 Spring Boot 框架的项目。

注意

虽然 Fuse 工具可以部署使用远程 OpenShift 服务器创建 Fuse 集成项目,但本章介绍了使用 Red Hat Container Development Kit (CDK) v3 在本地安装的 Fuse 集成项目。

以下小节介绍了如何创建和部署第一个 Fuse 集成项目:

注意

您还可以将 Fuse 集成项目作为本地 Camel 上下文运行,请参阅 第 5.1 节 “将路由作为本地 Camel 上下文运行”,然后在 JMX Navigator 视图中连接它,您可以在其中监控并测试路由上下文。您还可以在 Fuse Integration 项目(第 II 部分 “调试路由上下文”)上运行 Camel 调试器,以公开并修复路由上下文中的所有逻辑错误。

6.1. 添加 Red Hat Container Development Kit 服务器

将 Red Hat Container Development Kit 添加到 服务器 视图中:

  1. 如有必要,通过选择 WindowPerspectiveOpen PerspectiveFuse Integration,切换到 Fuse Integration 视角。

    注意

    如果没有打开此过程中描述的视图,您可以选择 WindowShow ViewOther,然后选择要打开的视图的名称。

  2. Servers 视图中,点链接 No servers are available.点击此链接创建新 server…​ 以打开 Define a New Server 向导。只有 Servers 视图不包含服务器条目时,才会显示此链接。

    否则,在 Servers 视图中右键单击以打开上下文菜单,然后选择 NewServer 以打开 Define a New Server 向导。

    DefNewSrvCDK
  3. 选择 Red Hat JBoss MiddlewareRed Hat Container Development Kit 3.2+

    接受以下的默认值:

    • 服务器的主机名 PlacementBinding - localhost
    • 服务器名称 TOKEN- Container Development 环境
  4. 点击 Next 以打开 Red Hat Container Development Environment 页面。
  5. MiniShift Binary 旁边,点 Browse,进入安装 Red Hat Container Development Kit 3.x 的位置,然后点 Open
  6. Username 旁边,单击 Add 以打开 Add a Credential 页面。
  7. 以这种方式设置凭证:

    • 用户名 RoleBinding-EnterEnter 用于登录到红帽帐户的名称。
    • 总是提示密码 TOKEN-LeaLeave 为 (禁用)。
    • 密码 Curve-EnterEnter 用于登录到红帽帐户的密码。
  8. 点击 OK 返回 Red Hat Container Development Environment 页面,该页面现已填充。例如:

    CDEdefUserFolder3
  9. FinishContainer Development Environment 3.2+ [Stopped, Synchronized] 会出现在 Servers 视图中。当您添加 CDK 3.x 服务器时,容器开发环境 3.2+ 是默认的服务器名称。