利用 OpenShift 实现 Java EE 应用程序现代化  

使用 Java EE、Open Liberty 和 Node.js 在一个虚构的医疗保健应用中部署基于 Kubernetes 的微服务

Description

本 Code Pattern 展示了如何通过将 Java EE 应用程序转换为基于 Kubernetes 的微服务来实现应用程序现代化。它演示了为一个虚构的医疗保健公司的面向患者的应用程序创建容器镜像,并将其部署到 Red Hat OpenShift on IBM Cloud™ 集群上的步骤。

概览

设想一个典型的成立已久的医疗保健或医疗保险公司。该公司的 SQL 数据库中存有数十万份病历,并且该数据库连接到一个大型机或一个单体 Java 应用程序架构。我们的样本应用程序病历看上去与大部分保险公司的健康记录非常相似。

最近,该公司决定将其面向患者的应用程序现代化,并将其拆分成多个微服务。该团队决定迁移到一个全新的 SQL 数据库,该数据库连接了一个用于处理业务逻辑 Java 平台(运行在 Open Liberty 上的 Java EE 应用程序),同时还连接了一个用于患者用户界面的 Node.js 应用程序。此外,该公司还决定将这些应用程序部署到云端。

使用本 Code Pattern,您将了解如何将传统 Java 应用程序转换为云端的微服务。

  1. 用户调用一个 Java EE 应用程序的 API,该 API 位于 OpenShift 应用程序负载均衡器的背后(未直接公开)。
  2. 负载均衡器将此调用路由至一个在 Kubernetes pod 中运行的 Open Liberty 容器。
  3. Java EE 应用程序查询云中运行的 MySQL 数据库以获取所需数据。
  4. MySQL 数据库将数据发送回 Java EE 应用程序,由后者进行相应的处理。
  5. 数据转换为 JSON 格式,然后返回至 API 和用户。

Instructions

准备好一试了吗?您可以在 GitHub 存储库内的 README.md 文件中找到本 Code Pattern 的详细技术步骤。

  1. 创建一个 Red Hat OpenShift on IBM Cloud 集群。
  2. 配置一个 Compose for MySQL 数据库。
  3. 创建一个 Java EE 应用程序的 Docker 容器镜像。
  4. 将此容器镜像推送至 Docker Hub 存储库。
  5. kubernetes-openshift.yaml 文件中更改镜像密钥。
  6. 为 MySQL 云部署编辑密钥值。
  7. 为 Open Liberty 服务器设置数据库访问参数。
  8. 将应用程序部署至 Red Hat OpenShift on IBM Cloud 集群。
  9. 向互联网公开此应用程序。
  10. 使用合成的患者健康记录填充 MySQL 数据库。

相关博客

相关链接

英文原文

本 Code Pattern 翻译自:Java EE application modernization with OpenShift(2019-08-01)

Red Hat OpenShift on IBM Cloud

更多学习资源,包括文章、教程、博客和 Code Pattern, 帮助您启动并运行 IBM Cloud 上的 Red Hat OpenShift。