教程:在 Azure 虚拟机 (VM) 上手动安装 WebSphere Application Server Network Deployment(传统版)

本教程介绍如何安装 IBM WebSphere Application Server (WAS) Network Deployment (ND) 传统版,并在 GNU/Linux 上的 Azure 虚拟机 (VM) 上配置 WAS 群集。

本教程介绍如何执行下列操作:

  • 创建自定义虚拟网络,并在网络中创建 VM。
  • 使用图形界面在 VM 上手动安装 WebSphere Application Server Network Deployment 传统版(V9 或 V8.5)。
  • 使用配置文件管理工具配置 WAS 群集。
  • 在群集中部署并运行 Java Platform Enterprise Edition (Java EE) 应用程序。
  • 通过 Azure 应用程序网关将应用程序公开给公共 Internet。
  • 验证成功配置。

如果希望完全自动化的解决方案直接从 Azure 门户代表 GNU/Linux VM 执行所有这些步骤,请参阅快速入门:在 Azure 虚拟机上部署 WebSphere Application Server Network Deployment 群集。 一种自动化程度较低但仍能加速的选项是,通过使用预先配置的 Red Hat Linux 基础映像,跳过在操作系统上安装 Java 开发工具包 (JDK) 和 WebSphere 的步骤。 你可以通过查询 WebSphere Application Server 映像 9.0.5.x 在 Azure 市场中找到这些产品。

如果你有兴趣与开发 WebSphere on Azure 解决方案的工程团队就迁移方案展开密切合作,请填写这份简短的有关 WebSphere 迁移的调查并提供联系人信息。 项目经理、架构师和工程师团队会及时与你联系,以开展密切合作。

先决条件

  • Azure 订阅。 如果还没有 Azure 订阅,可以在开始前创建一个免费帐户
  • 安装 Azure CLI 2.46.0 或更高版本以运行 Azure CLI 命令。
    • 本文提供了有关在 Windows PowerShell 或 UNIX Bash 上调用 Azure CLI 命令的说明。 无论采用哪种方式,你都必须安装 Azure CLI。
    • 出现提示时,请在首次使用时安装 Azure CLI 扩展。 有关扩展详细信息,请参阅使用和管理 Azure CLI 的扩展
    • 运行 az version 以查找安装的版本和依赖库。 若要升级到最新版本,请运行 az upgrade
  • 你必须具有 IBMid。 如果你没有帐户,请在登录 IBM 时创建 IBM 帐户,然后选择创建 IBMid。 记下 IBMid 密码和电子邮件。
    • 如果你计划使用 IBM WebSphere Application Server Network Deployment 版本 8.5.5,则此 IBMid 必须有权使用该版本的软件。 要了解权利,请让 IBM Passport Advantage 站点的主要或次要联系人授予你访问权限,或按照 IBM eCustomer Care 中的步骤进行操作。

准备环境

在本部分中,你将设置安装 IBM 安装管理器和 WebSphere Application Server Network Deployment 传统版所在的基础结构。

假设

本教程在总共三个 VM 上配置一个包含部署管理器的 WAS 群集和两个托管服务器。 要配置群集,你必须在同一可用性集中创建以下三个 Azure VM:

  • 管理 VM(VM 名称为 adminVM),具有正在运行的部署管理器。
  • 托管 VM(VM 名称为 mspVM1mspVM2),具有两个正在运行的托管服务器。

登录 Azure

如果尚未这样做,请使用 az login 命令登录到 Azure 订阅,并遵照屏幕上的指示操作。

az login

注意

如果多个 Azure 租户与你的 Azure 凭据关联,必须指定要登录到哪个租户。 可使用 --tenant 选项来完成此操作。 例如:az login --tenant contoso.onmicrosoft.com

创建资源组

使用 az group create 创建资源组。 资源组名称在订阅中必须全局唯一。 因此,请考虑在创建的任何必须唯一的名称前面附加唯一标识符。 一种有用的方法是使用首字母缩写,后跟今天的日期(格式为 mmdd)。 此示例在 eastus 位置创建一个名为 abc1110rg 的资源组:

export RESOURCE_GROUP_NAME=abc1110rg
az group create --name $RESOURCE_GROUP_NAME --location eastus

创建虚拟网络

注意

默认情况下,本节中的 Azure CLI 命令遵循 Bash 样式,除非另有说明。

如果在 PowerShell 中运行这些命令,请确保按照前面的命令所示声明环境参数。

要在 PowerShell 中将一行命令行分成多行,你可以在每行末尾使用反撇号字符 (`)。

组成 WebSphere 应用程序服务器群集的资源必须使用虚拟网络相互通信并与公共 Internet 通信。 有关规划虚拟网络的完整指南,请参阅 Azure 的云采用框架指南计划虚拟网络。 有关详细信息,请参阅 Azure 虚拟网络常见问题解答

使用以下步骤创建虚拟网络。 本节中的示例创建了一个地址空间为 192.168.0.0/16 的虚拟网络,并创建了 VM 子网。

  1. 使用 az network vnet create 创建虚拟网络。 以下示例创建一个名为 myVNet 的网络。

    az network vnet create \
        --resource-group $RESOURCE_GROUP_NAME \
        --name myVNet \
        --address-prefixes 192.168.0.0/24
    
  2. 使用 az network vnet subnet create 为 Red Hat JBoss WAS 群集创建子网。 以下示例创建名为 mySubnet 的子网:

    az network vnet subnet create \
        --resource-group $RESOURCE_GROUP_NAME \
        --name mySubnet \
        --vnet-name myVNet \
        --address-prefixes 192.168.0.0/25
    
  3. 使用 az network vnet subnet create 为应用程序网关创建子网。 以下示例创建名为 wasGateway 的子网:

    az network vnet subnet create \
        --resource-group $RESOURCE_GROUP_NAME \
        --name wasGateway \
        --vnet-name myVNet \
        --address-prefixes 192.168.0.128/25
    

创建可用性集

使用 az vm availability-set create 创建可用性集,如以下示例所示。 创建可用性集是可选的,但我们建议执行此操作。 有关详细信息,请参阅 Windows VM 的示例 Azure 基础结构演练

az vm availability-set create \
    --resource-group $RESOURCE_GROUP_NAME \
    --name myAvailabilitySet \
    --platform-fault-domain-count 2 \
    --platform-update-domain-count 2

在 GNU/Linux 上获取或安装 WAS

以下部分介绍在 GNU/Linux 上获取或安装 WAS 的步骤。 你可以根据要求选择操作系统和 WAS 版本,但应按照 IBM WebSphere Application Server Network Deployment 文档验证它们是否可用。

如果您想使用 WAS V9,则说明将使用包含最新支持软件版本的 Azure VM 映像。 IBM 和 Microsoft 将维护此映像。 有关 IBM 和 Microsoft 维护的 WAS 基础映像的完整列表,请参阅 Azure 市场

IBM 和 Microsoft 将维护一个在推荐的 Red Hat Enterprise Linux 版本上预安装了 WAS V9 的 VM 基础映像。 有关此映像的详细信息,请参阅 Azure 门户。 如果你采用此方法,则用于创建 VM 的 Azure 市场映像是 ibm-usa-ny-armonk-hq-6275750-ibmcloud-aiops:2021-04-27-twas-cluster-base-image:2021-04-27-twas-cluster-base-image:latest。 使用以下命令将映像名称保存在环境变量中:

export VM_URN="ibm-usa-ny-armonk-hq-6275750-ibmcloud-aiops:2023-03-27-twas-cluster-base-image:2023-03-27-twas-cluster-base-image:latest"
$Env:VM_URN="ibm-usa-ny-armonk-hq-6275750-ibmcloud-aiops:2023-03-27-twas-cluster-base-image:2023-03-27-twas-cluster-base-image:latest"

创建 Red Hat Enterprise Linux 计算机

使用以下步骤创建基本 VM,确保安装所需的工具,创建其磁盘的快照,并基于该快照创建副本:

  1. 使用 az vm create 创建 VM。 你将在此 VM 上运行部署管理器。

    以下示例使用用户名/密码对创建 Red Hat Enterprise Linux 计算机以进行身份验证。 可以选择改用 TLS/SSL 身份验证,这更安全。

    az vm create \
        --resource-group $RESOURCE_GROUP_NAME \
        --name adminVM \
        --availability-set myAvailabilitySet \
        --image $VM_URN \
        --size Standard_DS1_v2  \
        --admin-username azureuser \
        --admin-password Secret123456 \
        --public-ip-address "" \
        --nsg ""
    
  2. 使用以下命令为 WAS 文件创建并附加新磁盘:

    使用 VM 基础映像时,已为你执行此步骤。

创建 Windows VM 并设置 X 服务器

本教程使用 WAS 的图形界面来完成安装和配置。 你使用 Windows VM 作为 跳转盒,并运行 X 窗口系统服务器,以查看 WAS 群集的三个 VM 上的图形安装程序。

使用以下步骤预配 Windows 10 计算机并安装 X 服务器。 如果你已拥有 Red Hat Enterprise Linux 计算机所在相同网络中的 Windows 计算机,则无需从 Azure 预配新计算机。 你可以直接转到安装 X 服务器的分区。

  1. 从 Azure 门户中使用以下步骤创建 Windows 10 VM:

    1. 在 Azure 门户中打开你之前创建的资源组。
    2. 选择创建以创建资源。
    3. 选择计算,搜索 windows 10,然后选择 Microsoft Windows 10
    4. 选择你想要的计划,然后选择创建
    5. 使用以下值配置 VM:
      • 虚拟机名称myWindowsVM
      • 映像Windows 10 专业版
      • 用户名azureuser
      • 密码Secret123456
    6. 选中许可下面的复选框。
    7. 选择查看 + 创建,然后选择创建

    创建 VM 和支持资源需要几分钟时间。

    部署完成后,安装 X 服务器并使用它通过图形界面在 Linux 计算机上配置应用程序服务器。

  2. 使用以下步骤安装并启动 X 服务器:

    1. 使用远程桌面连接到 myWindowsVM。 有关详细指南,请参阅如何使用远程桌面进行连接并登录到运行 Windows 的 Azure 虚拟机。 你必须对 myWindowsVM 执行本部分中的剩余步骤。
    2. 下载并安装 VcXsrv Windows X Server
    3. 禁用防火墙。 要允许来自 Linux VM 的通信,请使用以下步骤关闭 Windows Defender 防火墙:
      1. 搜索并打开 Windows Defender 防火墙
      2. 找到打开或关闭 Windows Defender 防火墙,然后在专用网络设置中选择关闭。 你可以直接沿用公共网络设置
      3. 选择“确定”
      4. 关闭 Windows Defender 防火墙设置面板。
    4. 从桌面选择 X 启动
    5. 对于显示设置,请将显示编号设置为 -1 以使用多个窗口,然后选择下一步
    6. 对于选择如何启动客户端,请选择不启动客户端,然后选择下一步
    7. 对于其他设置,请选择剪贴板和主要选择本机 opengl禁用访问控制
    8. 选择下一步完成操作。

    此时会显示一个 Windows 安全警报对话框,并显示以下消息:“允许 VcXsrv windows X 服务器在这些网络上通信。选择允许访问

现在,你可以连接到 Red Hat Enterprise Linux 计算机并使用图形界面安装所需的工具。 以下部分指导你安装 IBM 安装管理器和 WebSphere Application Server Network Deployment 传统版。 你可以使用 myWindowsVM 进行安装和配置。

安装依赖项

请使用以下步骤安装所需的依赖项,以允许从 X 服务器进行连接并启用图形安装:

  1. 请使用以下步骤获取 adminVM 的专用 IP 地址:

    1. 在 Azure 门户中选择你之前创建的资源组。
    2. 在资源列表中,选择 adminVM
    3. 在概述窗格上,选择属性
    4. 网络部分中,复制专用 IP 地址的值。 在此示例中,值为 192.168.0.4
  2. myWindowsVM 打开命令提示符,然后使用 ssh 连接到 adminVM,如以下示例所示:

    set ADMINVM_IP="192.168.0.4"
    ssh azureuser@%ADMINVM_IP%
    
  3. 输入密码 Secret123456

  4. 使用以下命令切换为 root 用户。 本教程将安装 root 用户的所有工具。

    sudo su -
    
  5. 使用以下命令安装依赖项:

    # dependencies for X server access
    yum install -y libXtst libSM libXrender
    
    # dependencies for GUI installation
    yum install -y gtk2 libXtst xorg-x11-fonts-Type1 mesa-libGL
    

稍后,你可以继续在 adminVM 上装载数据磁盘,因此请保持此终端处于打开状态。

装载数据磁盘

使用 VM 基础映像时,已为你执行此步骤。

安装 WebSphere Application Server Network Deployment 传统版

使用基础映像时,WebSphere Application Server Network Deployment 已安装在 /datadrive/IBM/WebSphere/ND/V9 目录中。

为托管服务器创建计算机

你在运行部署管理器的 adminVM 上安装了 WebSphere Application Server Network Deployment。 你仍然需要准备计算机来运行这两台托管服务器。 接下来,从 adminVM 的磁盘创建快照,并为托管服务器 mspVM1mspVM2 准备计算机。

本节介绍一种使用 adminVM 的快照准备计算机的方法。 返回到登录到 Azure CLI 的终端,然后执行以下步骤。 此终端不是 Windows 跳转盒。

  1. 使用以下命令停止 adminVM

    # export RESOURCE_GROUP_NAME=abc1110rg
    az vm stop --resource-group $RESOURCE_GROUP_NAME --name adminVM
    
  2. 使用 az snapshot create 创建 adminVM OS 磁盘的快照:

    export ADMIN_OS_DISK_ID=$(az vm show \
        --resource-group $RESOURCE_GROUP_NAME \
        --name adminVM \
        --query storageProfile.osDisk.managedDisk.id \
        --output tsv)
    az snapshot create \
        --resource-group $RESOURCE_GROUP_NAME \
        --name myAdminOSDiskSnapshot \
        --source $ADMIN_OS_DISK_ID
    
  3. 使用 az snapshot create 创建 adminVM 数据磁盘的快照:

    export ADMIN_DATA_DISK_ID=$(az vm show \
        --resource-group $RESOURCE_GROUP_NAME \
        --name adminVM \
        --query 'storageProfile.dataDisks[0].managedDisk.id' \
        --output tsv)
    az snapshot create \
        --resource-group $RESOURCE_GROUP_NAME \
        --name myAdminDataDiskSnapshot \
        --source $ADMIN_DATA_DISK_ID
    
  4. 使用以下命令查询稍后使用的快照 ID:

    # Get the snapshot ID.
    export OS_SNAPSHOT_ID=$(az snapshot show \
        --resource-group $RESOURCE_GROUP_NAME \
        --name myAdminOSDiskSnapshot \
        --query '[id]' \
        --output tsv)
    export DATA_SNAPSHOT_ID=$(az snapshot show \
        --resource-group $RESOURCE_GROUP_NAME \
        --name myAdminDataDiskSnapshot \
        --query '[id]' \
        --output tsv)
    

接下来,创建 mspVM1mspVM2

创建 mspVM1

使用以下步骤创建 mspVM1

  1. 使用 az disk create 创建 mspVM1 的 OS 磁盘:

    # Create a new managed disk by using the OS snapshot ID.
    # Note that the managed disk is created in the same location as the snapshot.
    az disk create \
        --resource-group $RESOURCE_GROUP_NAME \
        --name mspVM1_OsDisk_1 \
        --source $OS_SNAPSHOT_ID
    
  2. 通过附加 OS 磁盘 mspVM1_OsDisk_1,使用以下命令创建 mspVM1 VM:

    # Get the resource ID of the managed disk.
    export MSPVM1_OS_DISK_ID=$(az disk show \
        --resource-group $RESOURCE_GROUP_NAME \
        --name mspVM1_OsDisk_1 \
        --query '[id]' \
        --output tsv)
    
    # Create the VM by attaching the existing managed disk as an OS.
    az vm create \
        --resource-group $RESOURCE_GROUP_NAME \
        --name mspVM1 \
        --attach-os-disk $MSPVM1_OS_DISK_ID \
        --plan-publisher ibm-usa-ny-armonk-hq-6275750-ibmcloud-aiops \
        --plan-product 2023-03-27-twas-cluster-base-image \
        --plan-name 2023-03-27-twas-cluster-base-image \
        --os-type linux \
        --availability-set myAvailabilitySet \
        --public-ip-address "" \
        --nsg ""
    
    # Create the VM by attaching the existing managed disk as an OS.
    # For `public-ip-address` and `nsg`, be sure to wrap the value "" in '' in PowerShell.
    az vm create `
        --resource-group $Env:RESOURCE_GROUP_NAME `
        --name mspVM1 `
        --attach-os-disk $Env:MSPVM1_OS_DISK_ID `
        --plan-publisher ibm-usa-ny-armonk-hq-6275750-ibmcloud-aiops `
        --plan-product 2023-03-27-twas-cluster-base-image `
        --plan-name 2023-03-27-twas-cluster-base-image `
        --os-type linux `
        --availability-set myAvailabilitySet `
        --public-ip-address '""' `
        --nsg '""'
    
  3. 从数据磁盘快照创建托管磁盘并将其附加到 mspVM1

    az disk create \
        --resource-group $RESOURCE_GROUP_NAME \
        --name mspVM1_Data_Disk_1 \
        --source $DATA_SNAPSHOT_ID
    
    export MSPVM1_DATA_DISK_ID=$(az disk show \
        --resource-group $RESOURCE_GROUP_NAME \
        --name mspVM1_Data_Disk_1 \
        --query '[id]' \
        --output tsv)
    
    az vm disk attach \
        --resource-group $RESOURCE_GROUP_NAME \
        --vm-name mspVM1 \
        --name $MSPVM1_DATA_DISK_ID
    
  4. 你改用 WAS 创建了 mspVM1。 由于你从 adminVM 磁盘的快照创建了 VM,因此这两个 VM 具有相同的主机名。 使用 az vm run-command invoke 将主机名更改为值 mspVM1

    az vm run-command invoke \
        --resource-group $RESOURCE_GROUP_NAME \
        --name mspVM1 \
        --command-id RunShellScript \
        --scripts "sudo hostnamectl set-hostname mspVM1"
    

    当命令成功完成时,你将获得类似于以下示例的输出:

    {
        "value": [
            {
            "code": "ProvisioningState/succeeded",
            "displayStatus": "Provisioning succeeded",
            "level": "Info",
            "message": "Enable succeeded: \n[stdout]\n\n[stderr]\n",
            "time": null
            }
        ]
    }
    

创建 mspVM2

使用以下步骤创建 mspVM2

  1. 使用 az disk create 创建 mspVM2 的 OS 磁盘:

    # Create a new managed disk by using the OS snapshot ID.
    # Note that the managed disk is created in the same location as the snapshot.
    az disk create \
        --resource-group $RESOURCE_GROUP_NAME \
        --name mspVM2_OsDisk_1 \
        --source $OS_SNAPSHOT_ID
    
  2. 通过附加 OS 磁盘 mspVM2_OsDisk_1,使用以下命令创建 mspVM2 VM:

    # Get the resource ID of the managed disk.
    export MSPVM2_OS_DISK_ID=$(az disk show \
        --resource-group $RESOURCE_GROUP_NAME \
        --name mspVM2_OsDisk_1 \
        --query '[id]' \
        --output tsv)
    
    # Create the VM by attaching the existing managed disk as an OS.
    az vm create \
        --resource-group $RESOURCE_GROUP_NAME \
        --name mspVM2 \
        --attach-os-disk $MSPVM2_OS_DISK_ID \
        --plan-publisher ibm-usa-ny-armonk-hq-6275750-ibmcloud-aiops \
        --plan-product 2023-03-27-twas-cluster-base-image \
        --plan-name 2023-03-27-twas-cluster-base-image \
        --os-type linux \
        --availability-set myAvailabilitySet \
        --public-ip-address "" \
        --nsg ""
    
    # Create the VM by attaching the existing managed disk as an OS.
    # For `public-ip-address` and `nsg`, be sure to wrap the value "" in '' in PowerShell.
    az vm create `
        --resource-group $Env:RESOURCE_GROUP_NAME `
        --name mspVM2 `
        --attach-os-disk $Env:MSPVM2_OS_DISK_ID `
        --plan-publisher ibm-usa-ny-armonk-hq-6275750-ibmcloud-aiops `
        --plan-product 2023-03-27-twas-cluster-base-image `
        --plan-name 2023-03-27-twas-cluster-base-image `
        --os-type linux `
        --availability-set myAvailabilitySet `
        --public-ip-address '""' `
        --nsg '""'
    
  3. 从数据快照创建托管磁盘并将其附加到 mspVM2

    az disk create \
        --resource-group $RESOURCE_GROUP_NAME \
        --name mspVM2_Data_Disk_1 \
        --source $DATA_SNAPSHOT_ID
    
    export MSPVM2_DATA_DISK_ID=$(az disk show \
        --resource-group $RESOURCE_GROUP_NAME \
        --name mspVM2_Data_Disk_1 \
        --query '[id]' \
        --output tsv)
    
    az vm disk attach \
        --resource-group $RESOURCE_GROUP_NAME \
        --vm-name mspVM2 \
        --name $MSPVM2_DATA_DISK_ID
    
  4. 你改用 WAS 创建了 mspVM2。 由于你从 adminVM 磁盘的快照创建了 VM,因此这两个 VM 具有相同的主机名。 使用 az vm run-command invoke 将主机名更改为值 mspVM2

    az vm run-command invoke \
        --resource-group $RESOURCE_GROUP_NAME \
        --name mspVM2 \
        --command-id RunShellScript \
        --scripts "sudo hostnamectl set-hostname mspVM2"
    

    当命令成功完成时,你将获得类似于以下示例的输出:

    {
        "value": [
            {
            "code": "ProvisioningState/succeeded",
            "displayStatus": "Provisioning succeeded",
            "level": "Info",
            "message": "Enable succeeded: \n[stdout]\n\n[stderr]\n",
            "time": null
            }
        ]
    }
    

请确保对 mspVM1mspVM2 完成了前面的步骤。 然后,通过以下步骤完成计算机准备:

  1. 使用 az vm start 命令启动 adminVM,如以下示例中所示:

    az vm start --resource-group $RESOURCE_GROUP_NAME --name adminVM
    
  2. 使用以下命令获取并显示专用 IP 地址,稍后部分将用到这些地址:

    export ADMINVM_NIC_ID=$(az vm show \
        --resource-group $RESOURCE_GROUP_NAME \
        --name adminVM \
        --query networkProfile.networkInterfaces'[0]'.id \
        --output tsv)
    export ADMINVM_IP=$(az network nic show \
        --ids $ADMINVM_NIC_ID \
        --query ipConfigurations'[0]'.privateIPAddress \
        --output tsv)
    export MSPVM1_NIC_ID=$(az vm show \
        --resource-group $RESOURCE_GROUP_NAME \
        --name mspVM1 \
        --query networkProfile.networkInterfaces'[0]'.id \
        --output tsv)
    export MSPVM1_IP=$(az network nic show \
        --ids $MSPVM1_NIC_ID \
        --query ipConfigurations'[0]'.privateIPAddress \
        --output tsv)
    export MSPVM2_NIC_ID=$(az vm show \
        --resource-group $RESOURCE_GROUP_NAME \
        --name mspVM2 \
        --query networkProfile.networkInterfaces'[0]'.id \
        --output tsv)
    export MSPVM2_IP=$(az network nic show \
        --ids $MSPVM2_NIC_ID \
        --query ipConfigurations'[0]'.privateIPAddress \
        --output tsv)
    echo "Private IP of adminVM: $ADMINVM_IP"
    echo "Private IP of mspVM1: $MSPVM1_IP"
    echo "Private IP of mspVM2: $MSPVM2_IP"
    

现在,三台计算机都已准备就绪。 接下来,你将配置 WAS 群集。

创建 WAS 配置文件和群集

本部分向你介绍如何创建和配置 WAS 群集。 在创建 WAS 配置文件和群集方面,9.x 系列和 8.5.x 系列之间没有显著差异。 本部分中的所有屏幕截图都将 V9 显示为基础。

配置部署管理器配置文件

在本部分中,你将使用 myWindowsVM 上的 X 服务器为部署管理器创建管理配置文件,以使用配置文件管理工具管理部署管理器单元中的服务器。 有关配置文件的详细信息,请参阅配置文件概念。 有关创建部署管理器配置文件的详细信息,请参阅使用部署管理器创建管理配置文件

使用以下步骤创建和配置管理配置文件:

  1. 确保你仍在 Windows 计算机上。 如果没有,请使用以下命令远程连接到 myWindowsVM,然后从命令提示符连接到 adminVM

    set ADMINVM_IP="192.168.0.4"
    ssh azureuser@%ADMINVM_IP%
    
  2. 使用以下命令成为 root 用户并设置 DISPLAY 变量:

    sudo su -
    
    export DISPLAY=<my-windows-vm-private-ip>:0.0
    # export DISPLAY=192.168.0.5:0.0
    
  3. 使用以下命令启动配置文件管理工具:

    cd /datadrive/IBM/WebSphere/ND/V9/bin/ProfileManagement
    ./pmt.sh
    
  4. 一段时间后,将显示配置文件管理工具。 如果你未看到用户界面,请在命令提示符后面检查。 选择创建

    IBM 配置文件管理工具的屏幕截图。

  5. 环境选择窗格中,选择管理,然后选择下一步

    IBM 配置文件管理工具中“环境选择”窗格的屏幕截图。

  6. 服务器类型选择窗格中,选择部署管理器,然后选择下一步

    IBM 配置文件管理工具中“服务器类型选择”窗格的屏幕截图。

  7. 配置文件创建选项窗格中,选择高级配置文件创建,然后选择下一步

    IBM 配置文件管理工具中“配置文件创建选项”窗格的屏幕截图。

  8. 可选应用程序部署窗格中,确保已选择部署管理控制台(推荐),然后选择下一步

    IBM 配置文件管理工具中“可选应用程序部署”窗格的屏幕截图。

  9. 配置文件名称和位置窗格中,输入配置文件的名称和位置。 在本示例中,配置文件名称为 Dmgr01。 位置取决于 WAS 版本:

    • 在 WAS V9 中,位置为 /datadrive/IBM/WebSphere/ND/V9/profiles/Dmgr01
    • 在 WAS V8.5 中,位置为 /datadrive/IBM/WebSphere/ND/V85/profiles/Dmgr01

    完成后,选择下一步

    IBM 配置文件管理工具中“配置文件的名称和位置”窗格的屏幕截图。

  10. 节点、主机和单元名称窗格上,输入节点名称、主机名和单元名称。 主机是 adminVM 的私有 IP 地址。 在此示例中,节点名称为 adminvmCellManager01,主机值为 192.168.0.4,单元名称为 adminvmCell01。 完成后,选择下一步

    IBM 配置文件管理工具中的“节点、主机和单元名称”窗格的屏幕截图。

  11. 管理安全窗格中,输入管理员用户名和密码。 在此示例中,用户名是 websphere,密码是 Secret123456。 记下用户名和密码,以便你可以使用它们登录到 IBM 控制台。 完成后,选择下一步

    IBM 配置文件管理工具中“管理安全”窗格的屏幕截图。

  12. 对于安全证书(第 1 部分),请输入证书(如果有)。 此示例使用默认的自签名证书。 然后,选择下一步

  13. 对于安全证书(第 2 部分),请输入证书(如果有)。 此示例使用默认的自签名证书。 然后,选择下一步

  14. 端口值分配窗格中,保留默认端口,然后选择下一步

    IBM 配置文件管理工具的“端口值分配”窗格的屏幕截图。

  15. Linux 服务定义窗格中,不要选择以 Linux 服务形式运行部署管理器进程。 稍后,你将创建 Linux 服务。 选择下一步

  16. 配置文件创建摘要窗格中,确保信息正确,然后选择创建

    IBM 配置文件管理工具的“配置文件创建摘要”窗格的屏幕截图。

  17. 完成配置文件创建需要一段时间。 出现配置文件创建完成窗格时,选择启动“初始步骤”控制台。 然后选择完成

    IBM 配置文件管理工具的“配置文件创建完成”窗格的屏幕截图。

  18. 此时会显示初始步骤控制台。 选择安装验证

    IBM 配置文件管理工具的“初始步骤”控制台的屏幕截图。

  19. 验证过程开始,并显示类似于以下示例的输出。 如果存在错误,则你必须在继续操作之前解决这些错误。

    IBM 配置文件管理工具的“初始步骤”控制台输出的屏幕截图。

  20. 部署管理器进程开始。 你可以通过关闭输出窗格并选择控制台中的退出来关闭初始步骤控制台。

    你已完成配置文件创建。 你可以关闭 WebSphere 自定义工具箱。

  21. 要访问 IBM 控制台,请使用以下命令打开防火墙端口:

    firewall-cmd --zone=public --add-port=9060/tcp --permanent
    firewall-cmd --zone=public --add-port=9043/tcp --permanent
    firewall-cmd --zone=public --add-port=9809/tcp --permanent
    firewall-cmd --zone=public --add-port=7277/tcp --permanent
    firewall-cmd --zone=public --add-port=9402/tcp --permanent
    firewall-cmd --zone=public --add-port=9403/tcp --permanent
    firewall-cmd --zone=public --add-port=9352/tcp --permanent
    firewall-cmd --zone=public --add-port=9632/tcp --permanent
    firewall-cmd --zone=public --add-port=9100/tcp --permanent
    firewall-cmd --zone=public --add-port=9401/tcp --permanent
    firewall-cmd --zone=public --add-port=8879/tcp --permanent
    firewall-cmd --zone=public --add-port=5555/tcp --permanent
    firewall-cmd --zone=public --add-port=7060/tcp --permanent
    firewall-cmd --zone=public --add-port=11005/udp --permanent
    firewall-cmd --zone=public --add-port=11006/tcp --permanent
    firewall-cmd --zone=public --add-port=9420/tcp --permanent
    
    firewall-cmd --reload
    
  22. 要在启动时自动启动部署管理器,请为该过程创建 Linux 服务。 运行以下命令以创建 Linux 服务:

    export PROFILE_PATH=/datadrive/IBM/WebSphere/ND/V9/profiles/Dmgr01
    
    # Configure SELinux so systemctl has access on server start/stop script files.
    semanage fcontext -a -t bin_t "${PROFILE_PATH}/bin(/.*)?"
    restorecon -r -v ${PROFILE_PATH}/bin
    
    # Add service.
    ${PROFILE_PATH}/bin/wasservice.sh -add adminvmCellManager01 -servername dmgr -profilePath ${PROFILE_PATH}
    
  23. 确认以下输出出现:

    CWSFU0013I: Service [adminvmCellManager01] added successfully.
    

    如果输出没有出现,请在继续操作之前排查和解决该问题。

部署管理器正在 adminVM 上运行。 从跳转盒 Windows VM 中,你可以通过 URL http://<admin-vm-private-ip>:9060/ibm/console/ 访问 IBM 控制台。

配置自定义配置文件

在本部分中,你将使用 myWindowsVM 上的 X 服务器为托管服务器 mspVM1mspVM2. 创建自定义配置文件

确保你仍在 Windows 计算机上。 如果没有,请远程连接到 myWindowsVM

配置 mspVM1 的自定义配置文件

按照以下步骤配置 mspVM1 的自定义配置文件:

  1. 使用以下命令从命令提示符连接到 mspVM1

    set MSPVM1VM_IP="192.168.0.6"
    ssh azureuser@%MSPVM1VM_IP%
    
  2. 使用以下命令成为 root 用户并设置 DISPLAY 变量:

    sudo su -
    
    export DISPLAY=<my-windows-vm-private-ip>:0.0
    # export DISPLAY=192.168.0.5:0.0
    
  3. 要访问 adminVM 上的部署管理器,请使用以下命令打开防火墙端口:

    firewall-cmd --zone=public --add-port=9080/tcp --permanent
    firewall-cmd --zone=public --add-port=9443/tcp --permanent
    firewall-cmd --zone=public --add-port=2809/tcp --permanent
    firewall-cmd --zone=public --add-port=9405/tcp --permanent
    firewall-cmd --zone=public --add-port=9406/tcp --permanent
    firewall-cmd --zone=public --add-port=9353/tcp --permanent
    firewall-cmd --zone=public --add-port=9633/tcp --permanent
    firewall-cmd --zone=public --add-port=5558/tcp --permanent
    firewall-cmd --zone=public --add-port=5578/tcp --permanent
    firewall-cmd --zone=public --add-port=9100/tcp --permanent
    firewall-cmd --zone=public --add-port=9404/tcp --permanent
    firewall-cmd --zone=public --add-port=7276/tcp --permanent
    firewall-cmd --zone=public --add-port=7286/tcp --permanent
    firewall-cmd --zone=public --add-port=5060/tcp --permanent
    firewall-cmd --zone=public --add-port=5061/tcp --permanent
    firewall-cmd --zone=public --add-port=8880/tcp --permanent
    firewall-cmd --zone=public --add-port=11003/udp --permanent
    firewall-cmd --zone=public --add-port=11004/tcp --permanent
    firewall-cmd --zone=public --add-port=2810/tcp --permanent
    firewall-cmd --zone=public --add-port=9201/tcp --permanent
    firewall-cmd --zone=public --add-port=9202/tcp --permanent
    firewall-cmd --zone=public --add-port=9354/tcp --permanent
    firewall-cmd --zone=public --add-port=9626/tcp --permanent
    firewall-cmd --zone=public --add-port=9629/tcp --permanent
    firewall-cmd --zone=public --add-port=7272/tcp --permanent
    firewall-cmd --zone=public --add-port=5001/tcp --permanent
    firewall-cmd --zone=public --add-port=5000/tcp --permanent
    firewall-cmd --zone=public --add-port=9900/tcp --permanent
    firewall-cmd --zone=public --add-port=9901/tcp --permanent
    firewall-cmd --zone=public --add-port=8878/tcp --permanent
    firewall-cmd --zone=public --add-port=7061/tcp --permanent
    firewall-cmd --zone=public --add-port=7062/tcp --permanent
    firewall-cmd --zone=public --add-port=11001/udp --permanent
    firewall-cmd --zone=public --add-port=11002/tcp --permanent
    firewall-cmd --zone=public --add-port=9809/tcp --permanent
    firewall-cmd --zone=public --add-port=9402/tcp --permanent
    firewall-cmd --zone=public --add-port=9403/tcp --permanent
    firewall-cmd --zone=public --add-port=9352/tcp --permanent
    firewall-cmd --zone=public --add-port=9632/tcp --permanent
    firewall-cmd --zone=public --add-port=9401/tcp --permanent
    firewall-cmd --zone=public --add-port=11005/udp --permanent
    firewall-cmd --zone=public --add-port=11006/tcp --permanent
    firewall-cmd --zone=public --add-port=8879/tcp --permanent
    firewall-cmd --zone=public --add-port=9060/tcp --permanent
    firewall-cmd --zone=public --add-port=9043/tcp --permanent
    
    firewall-cmd --reload
    
  4. 使用以下命令启动配置文件管理工具:

    cd /datadrive/IBM/WebSphere/ND/V9/bin/ProfileManagement
    ./pmt.sh
    
  5. 一段时间后,将显示配置文件管理工具。 如果您看不到用户界面,请先进行故障排除并解决问题,然后再继续。 选择创建

  6. 环境选择窗格中,选择自定义配置文件,然后选择下一步

    IBM 配置文件管理工具的“环境选择”窗格的屏幕截图。

  7. 配置文件创建选项窗格中,选择高级配置文件创建,然后选择下一步

    IBM 配置文件管理工具的“配置文件创建选项”窗格的屏幕截图。

  8. 配置文件名称和位置窗格中,输入配置文件的名称和位置。 在本示例中,配置文件名称为 Custom01。 位置取决于 WAS 版本:

    • 在 WAS V9 中,位置为 /datadrive/IBM/WebSphere/ND/V9/profiles/Custom01
    • 在 WAS V8.5 中,位置为 /datadrive/IBM/WebSphere/ND/V85/profiles/Custom01

    完成后,选择下一步

    IBM 配置文件管理工具的“配置文件的名称和位置”窗格的屏幕截图。

  9. 节点和主机名窗格中,输入节点名称和主机。 主机的值是 mspVM1 的专用 IP 地址。 在此示例中,主机是 192.168.0.6,节点名称是 mspvm1Node01。 完成后,选择下一步

    IBM 配置文件管理工具的“节点和主机名”窗格的屏幕截图。

  10. 联合身份验证窗格中,输入部署管理器的主机名和身份验证信息。 对于部署管理器主机名或 IP 地址,该值是 adminVM 的专用 IP 地址,即 192.168.0.4。 对于部署管理器身份验证,在此示例中,用户名为 websphere,密码为 Secret123456。 完成后,选择下一步

    IBM 配置文件管理工具的“联合身份验证”窗格的屏幕截图。

  11. 对于安全证书(第 1 部分),请输入证书(如果有)。 此示例使用默认的自签名证书。 然后,选择下一步

  12. 对于安全证书(第 2 部分),请输入证书(如果有)。 此示例使用默认的自签名证书。 然后,选择下一步

  13. 端口值分配窗格中,保留默认端口,然后选择下一步

    IBM 配置文件管理工具中“端口值分配”窗格的屏幕截图。

  14. 配置文件创建摘要窗格中,确保信息正确,然后选择创建

    IBM 配置文件管理工具中“配置文件创建摘要”窗格的屏幕截图。

  15. 创建自定义配置文件需要一段时间。 在配置文件创建完成窗格中,请清除启动“初始步骤”控制台复选框。 然后,选择完成以完成配置文件创建并关闭配置文件管理工具。

    IBM 配置文件管理工具中“配置文件创建完成”窗格的屏幕截图。

  16. 要在启动时自动启动服务器,请为进程创建 Linux 服务。 以下命令创建 Linux 服务以启动 nodeagent

    export PROFILE_PATH=/datadrive/IBM/WebSphere/ND/V9/profiles/Custom01
    
    # Configure SELinux so systemctl has access on server start/stop script files.
    semanage fcontext -a -t bin_t "${PROFILE_PATH}/bin(/.*)?"
    restorecon -r -v ${PROFILE_PATH}/bin
    
    # Add service to start nodeagent.
    ${PROFILE_PATH}/bin/wasservice.sh -add mspvm1Node01 -servername nodeagent -profilePath ${PROFILE_PATH}
    
  17. 确认以下输出出现:

    CWSFU0013I: Service [mspvm1Node01] added successfully.
    

    如果输出没有出现,请在继续操作之前排查和解决该问题。

你创建了一个自定义配置文件,以及一个在 mspVM1 上运行的 nodeagent。 停止成为 root 用户,并关闭与 mspVM1 的 SSH 连接。

配置 mspVM2 的自定义配置文件

返回到为 mspVM1 配置自定义配置文件部分的开头,并对 mspVM2 执行相同的步骤。 也就是说,无论您在哪里使用了 mspVM1 或类似的东西,请对 mspVM2 执行相同的操作。

节点和主机名窗格中,输入 mspvm2Node01 作为节点名称,输入 192.168.0.7 作为主机名

你为两个托管服务器准备了自定义配置文件:mspVM1mspVM2。 继续创建 WAS 群集。

创建群集并启动服务器

在本部分中,你将使用 IBM 控制台创建 WAS 群集,并使用 myWindowsVM 上的浏览器打开托管服务器。 确保你仍在 Windows 计算机上。 如果没有,请远程连接到 myWindowsVM。 然后,使用以下步骤:

  1. 打开 Microsoft Edge 浏览器并转到 http://<adminvm-private-ip>:9060/ibm/console/。 在本示例中,IBM 控制台 URL 为 http://192.168.0.4:9060/ibm/console/。 查找签名窗格。 使用管理用户名和密码 (websphere/Secret123456) 登录到 IBM 控制台。 你现在可以管理群集和服务器。

    IBM 控制台中欢迎信息的屏幕截图。

  2. 在导航窗格中,选择服务器>群集>WebSphere 应用程序服务器群集。 然后,选择新建,以创建新的群集。

  3. 创建新群集对话框中,对于步骤 1:输入基本群集信息,请输入群集名称。 在本示例中,群集名称为 cluster1。 完成后,选择下一步

    在 IBM 控制台中输入基本群集信息的步骤的屏幕截图。

  4. 对于步骤 2:创建第一个群集成员,输入成员名称,然后选择节点 mspvm1Node01。 在本示例中,成员名称为 msp1。 节点取决于 WAS 版本:

    • 在 WAS V9 中,此节点为 mspvm1Node01 (ND 9.0.5.12)
    • 在 WAS V8.5 中,此节点为 mspvm1Node01 (ND 8.5.5.24)

    完成后,选择下一步

    在 IBM 控制台中创建第一个群集成员的步骤的屏幕截图。

  5. 对于步骤 3:创建其他群集成员,请输入第二个成员名称,然后选择节点 mspvm2Node01。 在本示例中,成员名称为 msp2。 节点取决于 WAS 版本:

    • 在 WAS V9 中,此节点为 mspvm2Node01 (ND 9.0.5.12)
    • 在 WAS V8.5 中,此节点为 mspvm2Node01 (ND 8.5.5.24)
  6. 选择添加成员以添加第二个节点。 该表列出了两个成员。 完成后,选择下一步

    在 IBM 控制台中创建其他群集成员的步骤的屏幕截图。

  7. 对于步骤 4:摘要,请选择完成

    在 IBM 控制台中创建群集的操作摘要的屏幕截图。

    创建群集需要花费一段时间。 创建群集后,cluster1 将显示在表中。

  8. 选择 cluster1,然后选择查看,以查看信息。

    用于查看 IBM 控制台中的变化的链接屏幕截图。

  9. 选择将更改与节点同步,然后选择保存

    用于与 IBM 控制台中的节点同步更改的复选框的屏幕截图。

  10. 创建应完成且不会出现错误。 选择确定以继续。

    显示同步已成功完成的 IBM 控制台屏幕截图。

  11. 在表中选择 cluster1,然后选择开始按钮以启动群集。

    在 IBM 控制台中启动新建群集的选择的屏幕截图。

  12. 启动两个托管服务器需要一段时间。 在状态列中,选择刷新图标(指向彼此的两个箭头)以刷新状态。

    将鼠标悬停在刷新图标上。 工具提示显示已启动时,可以确信群集已形成。 继续定期刷新并检查,直到工具提示显示已启动

  13. 使用以下步骤配置应用程序服务器监视策略设置,以在节点代理启动后自动启动托管服务器。

    使用以下步骤配置 msp1

    1. 在导航窗格中,选择服务器,选择服务器类型,然后选择 WebSphere 应用程序服务器

    2. 为应用程序服务器 msp1 选择超链接。

    3. 服务器基础结构部分中,选择 Java 和进程管理

    4. 选择监视策略

    5. 确保选中自动重启,然后选择正在运行作为节点重启状态。 选择“确定”

      显示监视策略配置的 IBM 控制台的屏幕截图。

    6. 返回到中间件服务窗格。 在消息面板中,选择查看链接,然后选择将更改与节点同步。 选择保存以保存并同步更改。

    7. 此时会出现以下消息:The configuration synchronization complete for cell.选择确定以退出配置。

    使用以下步骤配置 msp2

    1. 在导航窗格中,选择服务器,选择服务器类型,然后选择 WebSphere 应用程序服务器
    2. 为应用程序服务器 msp2 选择超链接。
    3. 服务器基础结构部分中,选择 Java 和进程管理
    4. 选择监视策略
    5. 确保选中自动重启,然后选择正在运行作为节点重启状态。 选择“确定”
    6. 返回到中间件服务窗格。 在消息面板中,选择查看链接,然后选择将更改与节点同步。 选择保存以保存并同步更改。
    7. 此时会出现以下消息:The configuration synchronization complete for cell.选择确定以退出配置。

你使用以下两个托管服务器配置了 cluster1msp1msp2。 群集已启动并正常运行。

部署应用程序

使用以下步骤部署应用程序:

  1. 在之前登录的管理控制台中,选择应用程序>新建应用程序,然后选择新建企业应用程序

  2. 在下一个面板中,选择远程文件系统,然后选择浏览以浏览所安装服务器的文件系统。

  3. 选择以 adminvm 开头的系统。 此时会显示 VM 的文件系统。 在此处选择 V9(或 V85),然后选择 installableApps

  4. 在可供安装的应用程序列表中,选择 DefaultApplication.ear。 然后选择确定

  5. 你将回到面板上以选择应用程序。 选择下一步

    用于指定要上传和安装的模块的 IBM WebSphere 对话框的屏幕截图。

  6. 选择下一步,以完成安装新应用程序工作流中的所有剩余步骤。 然后选择完成

  7. 此时应显示以下消息:Application DefaultApplication.ear installed successfully.。如果未显示此消息,请在继续操作之前排查和解决该问题。

  8. 选择直接保存到主配置链接。

  9. 你需要启动此应用程序。 转到应用程序>所有应用程序。 选中 DefaultApplication.ear 复选框,确保操作设置为开始,然后选择提交操作

  10. 所有应用程序表中的状态列中,选择刷新图标。 以这种方式刷新几次表后,DefaultApplication.ear状态列中应显示一个绿色箭头。

应用程序现在安装在 WAS 群集中。

使用 Azure 应用程序网关公开 WAS

在 GNU/Linux 虚拟机上创建完 WAS 群集后,本部分将指导你完成使用 Azure 应用程序网关向 Internet 公开 WAS 的过程。

创建应用程序网关

使用以下步骤创建数据库网关:

  1. 要向 Internet 公开 WAS,需要一个公共 IP 地址。 在安装了 Azure CLI 的 shell 中,使用 az network public-ip create 创建 IP 地址,如以下示例中所示:

    az network public-ip create \
        --resource-group $RESOURCE_GROUP_NAME \
        --name myAGPublicIPAddress \
        --allocation-method Static \
        --sku Standard
    
    export APPGATEWAY_IP=$(az network public-ip show \
        --resource-group $RESOURCE_GROUP_NAME \
        --name myAGPublicIPAddress \
        --query '[ipAddress]' \
        --output tsv)
    
  2. 创建与 IP 地址关联的应用程序网关。 以下示例在默认后端池中使用 WebSphere 托管服务器创建应用程序网关:

    az network application-gateway create \
        --resource-group $RESOURCE_GROUP_NAME \
        --name myAppGateway \
        --public-ip-address myAGPublicIPAddress \
        --location eastus \
        --capacity 2 \
        --http-settings-port 80 \
        --http-settings-protocol Http \
        --frontend-port 80 \
        --sku Standard_V2 \
        --subnet wasGateway \
        --vnet-name myVNet \
        --priority 1001 \
        --servers ${MSPVM1_IP} ${MSPVM2_IP}
    
  3. 托管服务器使用端口 9080 公开其工作负载。 通过指定后端端口 9080 并为其创建探测,使用以下命令更新 appGatewayBackendHttpSettings

    az network application-gateway probe create \
        --resource-group $RESOURCE_GROUP_NAME \
        --gateway-name myAppGateway \
        --name clusterProbe \
        --protocol http \
        --host-name-from-http-settings true \
        --match-status-codes 404 \
        --path "/"
    
    az network application-gateway http-settings update \
        --resource-group $RESOURCE_GROUP_NAME \
        --gateway-name myAppGateway \
        --name appGatewayBackendHttpSettings \
        --host-name-from-backend-pool true \
        --port 9080 \
        --probe clusterProbe
    
  4. 使用以下命令为重定向预配重写规则:

    # Create a rewrite rule set.
    az network application-gateway rewrite-rule set create \
        --resource-group $RESOURCE_GROUP_NAME \
        --gateway-name myAppGateway \
        --name myRewriteRuleSet
    
    # Associated routing rules.
    az network application-gateway rule update \
        --resource-group $RESOURCE_GROUP_NAME \
        --gateway-name myAppGateway \
        --name rule1 \
        --rewrite-rule-set myRewriteRuleSet
    
    # Create a rewrite rule 1.
    az network application-gateway rewrite-rule create \
        --resource-group $RESOURCE_GROUP_NAME \
        --gateway-name myAppGateway \
        --rule-set-name myRewriteRuleSet \
        --name myRewriteRule01 \
        --sequence 100 \
        --response-headers Location=http://${APPGATEWAY_IP}{http_resp_Location_2}
    
    # Create a rewrite rule condition.
    az network application-gateway rewrite-rule condition create \
        --resource-group $RESOURCE_GROUP_NAME \
        --gateway-name myAppGateway \
        --rule-name myRewriteRule01 \
        --rule-set-name myRewriteRuleSet \
        --variable "http_resp_Location" \
        --ignore-case true \
        --negate false \
        --pattern "(https?):\/\/192.168.0.6:9080(.*)$"
    
    # Create a rewrite rule 2.
    az network application-gateway rewrite-rule create \
        --resource-group $RESOURCE_GROUP_NAME \
        --gateway-name myAppGateway \
        --rule-set-name myRewriteRuleSet \
        --name myRewriteRule02 \
        --sequence 100 \
        --response-headers Location=http://${APPGATEWAY_IP}{http_resp_Location_2}
    
    # Create a rewrite rule condition.
    az network application-gateway rewrite-rule condition create \
        --resource-group $RESOURCE_GROUP_NAME \
        --gateway-name myAppGateway \
        --rule-name myRewriteRule02 \
        --rule-set-name myRewriteRuleSet \
        --variable "http_resp_Location" \
        --ignore-case true \
        --negate false \
        --pattern "(https?):\/\/192.168.0.7:9080(.*)$"
    

现在,您可以使用以下命令生成的 URL 来访问应用程序:

echo "http://${APPGATEWAY_IP}/snoop/"

注意

此示例使用 HTTP 设置对 WAS 服务器的简单访问。 如果需要安全访问,请按照应用程序网关的端到端 TLS 中的说明配置 TLS/SSL 终止。

此示例并不通过应用程序网关公开 IBM 控制台。 要访问 IBM 控制台,你可以使用 Windows 计算机 myWindowsVM,或向 adminVM 分配公共 IP 地址。

如果不想使用跳转框 myWindowsVM 访问 IBM 控制台,但想要将其公开到公共网络,请使用以下命令将公共 IP 地址分配给 adminVM

# Create a public IP address.
az network public-ip create \
    --resource-group $RESOURCE_GROUP_NAME \
    --name myAdminVMPublicIPAddress \
    --allocation-method Static \
    --sku Standard

# Create a network security group.
az network nsg create \
    --resource-group $RESOURCE_GROUP_NAME \
    --name adminnsg

# Create an inbound rule for the network security group.
az network nsg rule create \
    --resource-group $RESOURCE_GROUP_NAME \
    --nsg-name adminnsg \
    --name ALLOW_IBM_CONSOLE \
    --access Allow \
    --direction Inbound \
    --source-address-prefixes '["*"]' \
    --destination-port-ranges 9043 \
    --protocol Tcp \
    --priority 500

# Update the network adapter with the network security group.
az network nic update \
    --resource-group $RESOURCE_GROUP_NAME \
    --name adminVMVMNic \
    --network-security-group adminnsg

# Update the network adapter with the public IP address.
az network nic ip-config update \
    --resource-group $RESOURCE_GROUP_NAME \
    --name ipconfigadminVM \
    --nic-name adminVMVMNic \
    --public-ip-address myAdminVMPublicIPAddress

export ADMIN_PUBLIC_IP=$(az network public-ip show \
    --resource-group $RESOURCE_GROUP_NAME \
    --name myAdminVMPublicIPAddress \
    --query '[ipAddress]' \
    --output tsv)

echo "IBM Console public URL: https://${ADMIN_PUBLIC_IP}:9043/ibm/console/"

测试 WAS 群集配置

你已完成 WAS 集群的配置以及将 Java EE 应用程序部署到该集群的操作。 使用以下步骤访问应用程序,以验证所有设置:

  1. 打开 Web 浏览器。
  2. 使用 URL http://<gateway-public-ip-address>/snoop/ 转到应用程序。
  3. 当你不断刷新浏览器时,应用会循环访问服务器实例。 查看主机请求标头的值,并注意它在多次重新加载后会发生变化。

清理资源

你已完成 WAS 群集配置。 以下各节介绍如何删除您创建的资源。

清理 Windows 计算机

你可以使用以下命令删除 Windows 计算机 myWindowsVM。 或者,你可以关闭 Windows 计算机并继续将其用作正在进行的群集维护任务的跳转盒。

export WINDOWSVM_NIC_ID=$(az vm show \
    --resource-group ${RESOURCE_GROUP_NAME} \
    --name myWindowsVM \
    --query networkProfile.networkInterfaces[0].id \
    --output tsv)
export WINDOWSVM_NSG_ID=$(az network nic show \
    --ids ${WINDOWSVM_NIC_ID} \
    --query networkSecurityGroup.id \
    --output tsv)
export WINDOWSVM_DISK_ID=$(az vm show \
    --resource-group ${RESOURCE_GROUP_NAME} \
    --name myWindowsVM \
    --query storageProfile.osDisk.managedDisk.id \
    --output tsv)
export WINDOWSVM_PUBLIC_IP=$(az network public-ip list \
    -g ${RESOURCE_GROUP_NAME} --query [0].id \
    --output tsv)

echo "deleting myWindowsVM"
az vm delete --resource-group ${RESOURCE_GROUP_NAME} --name myWindowsVM --yes
echo "deleting nic ${WINDOWSVM_NIC_ID}"
az network nic delete --ids ${WINDOWSVM_NIC_ID}
echo "deleting public-ip ${WINDOWSVM_PUBLIC_IP}"
az network public-ip delete --ids ${WINDOWSVM_PUBLIC_IP}
echo "deleting disk ${WINDOWSVM_DISK_ID}"
az disk delete --yes --ids ${WINDOWSVM_DISK_ID}
echo "deleting nsg ${WINDOWSVM_NSG_ID}"
az network nsg delete --ids ${WINDOWSVM_NSG_ID}

清理所有资源

使用以下命令删除 abc1110rg

az group delete --name $RESOURCE_GROUP_NAME --yes --no-wait

后续步骤

要了解在 Azure 上运行 WebSphere 产品的选项,请参阅在 Azure 上运行 WebSphere 系列产品的解决方案有哪些?