Modificar um projeto para usar um contêiner personalizado - AWS SimSpace Weaver

As traduções são geradas por tradução automática. Em caso de conflito entre o conteúdo da tradução e da versão original em inglês, a versão em inglês prevalecerá.

Modificar um projeto para usar um contêiner personalizado

Essas instruções pressupõem que você já saiba como usar AWS SimSpace Weaver e queira tornar seus fluxos de trabalho de desenvolvimento e armazenamento de aplicativos Nuvem AWS mais eficientes.

Pré-requisitos
  • Você tem um contêiner personalizado no Amazon Elastic Container Registry (Amazon ECR). Para obter mais informações sobre como criar um contêiner personalizado, consulte Criar um contêiner personalizado.

Como modificar seu projeto para usar um contêiner personalizado
  1. Adicione permissões à função do aplicativo de simulação do seu projeto para usar o Amazon ECR.

    1. Se você ainda não tem uma política do IAM com as seguintes permissões, crie a política. Sugerimos o nome simspaceweaver-ecr para a política. Para obter informações sobre como criar políticas, consulte Criar políticas do IAM no Guia do usuário do AWS Identity and Access Management .

      { "Version": "2012-10-17", "Statement": [ { "Sid": "Statement", "Effect": "Allow", "Action": [ "ecr:BatchGetImage", "ecr:GetDownloadUrlForLayer", "ecr:GetAuthorizationToken" ], "Resource": "*" } ] }
    2. Encontre o nome da função do aplicativo de simulação do seu projeto:

      1. Em um editor de texto, abra o AWS CloudFormation modelo:

        sdk-folder\PackagingTools\sample-stack-template.yaml
      2. Encontre a propriedade RoleName abaixo de WeaverAppRole. O valor é o nome da função do aplicativo de simulação do seu projeto.

        AWSTemplateFormatVersion: "2010-09-09" Resources: WeaverAppRole: Type: 'AWS::IAM::Role' Properties: RoleName: 'weaver-MySimulation-app-role' AssumeRolePolicyDocument: Version: "2012-10-17" Statement: - Effect: Allow Principal: Service: - 'simspaceweaver.amazonaws.com'
    3. Anexe a política simspaceweaver-ecr à função do aplicativo de simulação do projeto. Para obter informações sobre como anexar políticas, consulte Adicionar e remover permissões de identidade do IAM no Guia do usuário do AWS Identity and Access Management .

    4. Navegue até o comando a seguir sdk-folder e execute-o para atualizar a SimSpace Weaver pilha de amostras:

      python setup.py --cloudformation
  2. Especifique suas imagens de contêiner no esquema de simulação do projeto.

    • É possível adicionar a propriedade default_image opcional abaixo de simulation_properties para especificar uma imagem de contêiner personalizada padrão para todos os domínios.

    • Adicione a propriedade image em app_config para um domínio no qual você deseja usar uma imagem de contêiner personalizada. Especifique o URI do repositório do Amazon ECR como o valor. É possível especificar uma imagem diferente para cada domínio.

      • Se uma image não for especificada para um domínio e uma default_image for especificada, os aplicativos desse domínio usarão a imagem padrão.

      • Se image não for especificado para um domínio e default_image não for especificado, os aplicativos nesse domínio serão executados em um SimSpace Weaver contêiner padrão.

    exemplo Trecho de esquema que inclui configurações personalizadas de contêiner
    sdk_version: "1.17.0" simulation_properties: log_destination_service: "logs" log_destination_resource_name: "MySimulationLogs" default_entity_index_key_type: "Vector3<f32>" default_image: "111122223333.dkr.ecr.us-west-2.amazonaws.com/my-ecr-repository:latest" # image to use if no image specified for a domain domains: MyCustomDomain: launch_apps_via_start_app_call: {} app_config: package: "s3://weaver-myproject-111122223333-us-west-2/MyViewApp.zip" launch_command: ["MyViewApp"] required_resource_units: compute: 1 endpoint_config: ingress_ports: - 7000 image: "111122223333.dkr.ecr.us-west-2.amazonaws.com/my-ecr-repository:latest" # custom container image to use for this domain MySpatialDomain: launch_apps_by_partitioning_strategy: partitioning_strategy: "MyGridPartitioning" grid_partition: x: 2 y: 2 app_config: package: "s3://weaver-myproject-111122223333-us-west-2/MySpatialApp.zip" launch_command: ["MySpatialApp"] required_resource_units: compute: 1 image: "111122223333.dkr.ecr.us-west-2.amazonaws.com/my-ecr-repository:latest" # custom container image to use for this domain
  3. Crie e carregue o seu projeto normalmente.