在Azure Kubernetes Service(AKS)上,将雅加达EE 10和MicroproFile 6与IBM Liberty一起在Azure上部署
#云 #java #microservices #cheap

交叉发布到Ed's personal blog

这篇独立的博客文章展示了您如何直接从Azure Portal直接在Azure Kubernetes服务(AKS)上快速,轻松地部署云本机Java微服务。该应用程序通过使用从开放标准的紧密专注的技术选择,使用Jakarta EE 10MicroProfile 6的技术精选,开发人员最大程度地减少了MVP的维护成本和时间,以最大程度地提高MVP并最大程度地提高技能便携性和乐趣。有关更多好处,请参见What are microservices

有关更全面的治疗,请参阅我的同事Brian Benz的这段视频。 YouTube link

部署应用程序

本节中的步骤显示了如何从Azure Portal部署应用程序。

  1. 访问https://aka.ms/publicportal,并用A 足够授权Azure订阅登录。如果您的身份没有这些权力,请吸引您的IT部门获得这些权力或使用您拥有这些权力的订阅。
    1. 部署此优惠的Azure身份必须具有以下两组基于Azure的基于角色的访问控制角色:
      1. 当前订阅的ContributorUser Access Administrator
      2. 当前订阅的Owner
  2. 在搜索框中,输入“ WebSphere Liberty”而无需引号。
  3. Marketplace 搜索结果部分,选择“ IBM WebSphere Liberty和Anzure Kubernete上的开放自由...”。
  4. 选择创建
  5. 资源组框,选择创建新并输入新资源组的名称。这在您的订阅中必须是唯一的。我建议通过将字符串和您的缩写和某种形式的日期前缀为文本01aks来解决歧义。例如,ejb052601aks
  6. 选择接下来:AKS
  7. 离开默认值并选择下一步:负载平衡
  8. 下选择,连接到Azure应用程序网关。将其余值留在其默认值中。
  9. 选择下一步:操作员和应用程序
  10. 探索文本旁边的信息框 IBM支持。 IBM和Microsoft的全力支持可以涵盖此优惠。 Purchase a support contract from IBM此加上您现有的Microsoft支持,作为Azure客户,您会为您提供全面覆盖。
  11. 仔细考虑购买支持的价值后,请记下自己的IT Deparmment,然后选择 no
  12. 部署应用程序?,选择
  13. 部署自己的应用程序或示例应用程序?选择开放的自由示例图像
  14. 选择下一步:评论 +创建
  15. 当您看到验证通过时,选择 create

探索已部署的应用程序

本节中的步骤向您展示如何探索已部署的应用

  1. 根据云天气,您将在大约15分钟内看到此屏幕。如下所示,选择输出Image description
  2. 找到名为appHttpsEndpoint的输出,然后在其旁边选择“复制”图标。
  3. 粘贴该链接在新的浏览器选项卡中,然后转到链接。接受有关自签名证书的警告。报价代表您创建此证书。请勿在生产中使用自签名证书。
  4. 查看应用程序并播放。

验证该应用支持Jakarta EE 10和Microprofile 6

本节中的步骤向您展示了如何验证应用程序支持Jakarta EE 10和Microprofile 6。

如果您在第一段中遵循EE 10和MicroproFile 6链接,则将看到这两个开放标准中包含的技术列表。因为此应用程序是微服务,并且由于Liberty是一个完全模块化的微服务平台,因此示例应用仅包含这两个标准的子集。

  1. 在Azure Portal中,从上一节中返回 outputs
  2. 找到名为cmdToConnectToCluster的输出,然后在其旁边选择“复制”图标。
  3. 仍在Azure门户中,打开Azure云外壳。
    1. 如下所示,在Azure门户网站顶部的工具栏中选择具有>_的图标。 ” Azure Cloud Cloud shell非常有力,并且值得您掌握您的时间投资。有关完整的文档,请参见Overview of Azure Cloud Shell.
  4. 可能会要求您创建存储。如果是这样,说
  5. 在Cloudshell提示中,粘贴了您现在复制的cmdToConnectToCluster的值,然后按Enter。您应该看到类似Merged "cluster26234e-admin" as current context in /home/edward/.kube/config的文本。
  6. 输入alias k=kubectl。这可能以后很有用。
  7. 输入k get pods。复制NAME列中的两个值中的任何一个。
  8. 输入k logs <paste value from preceding step> | grep mpHealth | jq .输出应该看起来像以下内容。
   {
  "type": "liberty_message",
  "host": "app26234e-7bb7bc94f8-7bt7z",
  "ibm_userDir": "/opt/ol/wlp/usr/",
  "ibm_serverName": "defaultServer",
  "message": "CWWKF0012I: The server installed the following features: [cdi-4.0, distributedMap-1.0, jndi-1.0, json-1.0, jsonb-3.0, jsonp-2.1, monitor-1.0, mpConfig-3.0, mpHealth-4.0, mpMetrics-5.0, restfulWS-3.1, restfulWSClient-3.1, ssl-1.0, transportSecurity-1.0].",
  "ibm_threadId": "0000002a",
  "ibm_datetime": "2023-05-25T17:05:50.340+0000",
  "ibm_messageId": "CWWKF0012I",
  "module": "com.ibm.ws.kernel.feature.internal.FeatureManager",
  "loglevel": "AUDIT",
  "ibm_sequence": "1685034350340_0000000000033",
  "ext_thread": "Default Executor-thread-1"
   }

message属性的值是您的证明,表明来自雅加达EE 10和MicroproFile 6的技术子集在应用程序中运行。

呼吁行动:要了解更多信息,请访问https://aka.ms/websphere-on-azure-contactme。如果您希望我们直接与您联系,请选择与我联系按钮,我将直接取得联系。