步骤 8:启动自定义应用程序 - AWS SimSpace Weaver

本文属于机器翻译版本。若本译文内容与英语原文存在差异,则一律以英文原文为准。

步骤 8:启动自定义应用程序

SimSpace Weaver 不管理自定义应用程序的生命周期。您必须启动自定义应用程序。最佳实践是在启动模拟时钟之前启动自定义应用程序,不过,您可以在启动时钟之后启动自定义应用程序。

您可以使用 CLI 帮助程序脚本调用 StartApp API 来启动自定义应用程序。

重要

对于 AWS Command Line Interface (AWS CLI),如果您使用 AWS IAM Identity Center 或命令配置文件,则必须使用 SimSpace Weaver 应用程序 SDK 版本 1.12.1 或更高版本。最新版本是 1.16.0。有关 SimSpace Weaver 版本的信息,请参阅SimSpace Weaver 版本。SimSpace Weaver 应用程序 SDK 脚本使用 AWS CLI。如果您使用 IAM Identity Center,则可以将 AWS CLI 的 IAM Identity Center 配置文件复制到您的 default 配置文件中,也可以使用 --profile cli-profile-name 参数将您的 IAM Identity Center 配置文件名称提供给 SimSpace Weaver 应用程序 SDK 脚本。有关更多信息,请参阅《AWS Command Line Interface 用户指南》中的配置 AWS CLI 以使用 AWS IAM Identity Center,以及《AWS Command Line Interface 用户指南》中的配置和凭证文件设置

Docker
.\weaver-project-name-cli.bat start-app --simulation simulation-name --name app-name --domain domain-name
WSL
重要

为方便起见,我们提供了这些说明。它们可以与 Windows Subsystem for Linux (WSL) 一起使用,但不受支持。有关更多信息,请参阅为 SimSpace Weaver 设置本地环境

./weaver-project-name-cli.sh start-app --simulation simulation-name --name app-name --domain domain-name

StartApp API 调用将使用您提供的名称创建和启动自定义应用程序的新实例。如果您提供已存在的应用程序的名称,则会收到一条错误消息。如果要重新启动特定应用程序(实例),则必须先停止该应用程序并将其删除。

注意

在启动自定义应用程序之前,模拟的状态必须为 STARTED。要查看模拟状态,请参阅步骤 7:获取模拟详细信息

示例应用程序提供了可查看模拟的 ViewApp 自定义应用程序。该应用程序为您提供用于连接模拟客户端的静态 IP 地址和端口号(您将在本教程后面的步骤中执行此操作)。您可以将 domain 看作一类具有相同可执行代码和启动选项的应用程序。app name 标识应用程序的实例。有关 SimSpace Weaver 的重要概念 概念的更多信息,请参阅SimSpace Weaver。

启动自定义应用程序后,您可以使用 DescribeApp API 检查其状态。

Docker
.\weaver-project-name-cli.bat describe-app --simulation simulation-name --app app-name --domain domain-name
WSL
重要

为方便起见,我们提供了这些说明。它们可以与 Windows Subsystem for Linux (WSL) 一起使用,但不受支持。有关更多信息,请参阅为 SimSpace Weaver 设置本地环境

./weaver-project-name-cli.sh describe-app --simulation simulation-name --app app-name --domain domain-name
Docker
启动本教程中的查看应用程序
  1. 如果您没有打开 tools 文件夹,请转到项目和平台的 tools 文件夹。您的 project-folderpath\project-name,它使用您在创建项目时提供的值。

    Windows 命令提示符下,输入:

    cd project-folder\tools\windows
  2. 使用 CLI 帮助程序脚本调用 ViewApp 的 StartApp。

    .\weaver-project-name-cli.bat start-app --simulation simulation-name --name ViewApp --domain MyViewDomain
  3. 调用 DescribeApp 以查看自定义应用程序的状态。

    .\weaver-project-name-cli.bat describe-app --simulation simulation-name --app ViewApp --domain MyViewDomain
WSL
重要

为方便起见,我们提供了这些说明。它们可以与 Windows Subsystem for Linux (WSL) 一起使用,但不受支持。有关更多信息,请参阅为 SimSpace Weaver 设置本地环境

启动本教程中的查看应用程序
  1. 如果您没有打开 tools 文件夹,请转到项目和平台的 tools 文件夹。您的 project-folderpath/project-name,它使用您在创建项目时提供的值。

    Linux Shell 提示符下,输入:

    cd project-folder/tools/linux
  2. 使用 CLI 帮助程序脚本调用 ViewApp 的 StartApp。

    ./weaver-project-name-cli.sh start-app --simulation simulation-name --name ViewApp --domain MyViewDomain
  3. 调用 DescribeApp 以查看自定义应用程序的状态。

    ./weaver-project-name-cli.sh describe-app --simulation simulation-name --app ViewApp --domain MyViewDomain

在自定义应用程序(实例)的状态变成 STARTED 后,DescribeApp 的输出将包括该自定义应用程序(实例)的 IP 地址和端口号。在以下示例输出中,IP 地址是 Address 的值,端口号是 EndpointInfo 数据块中 Actual 的值。


{
    "Status": "STARTED",
    "Domain": "MyViewDomain",
    "TargetStatus": "STARTED",
    "Simulation": "MyProjectSimulation_22-10-04_22_10_15",
    "LaunchOverrides": {
        "LaunchCommands": []
    },
    "EndpointInfo": {
        "IngressPortMappings": [
            {
                "Declared": 7000,
                "Actual": 4321
            }
        ],
        "Address": "198.51.100.135"
    },
    "Name": "ViewApp"
}

注意

Declared 的值是应用程序代码应绑定的端口号。Actual 的值是 SimSpace Weaver 向客户端公开的端口号,用于连接您的应用程序。SimSpace Weaver 将 Declared 端口映射到 Actual 端口。

注意

您可以使用快速入门教程中的过程来获取任何已启动自定义应用程序的 IP 地址和端口号,这与工作流程无关。