Configurar pronto para RES AMIs - Estúdio de Pesquisa e Engenharia

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á.

Configurar pronto para RES AMIs

Com o Amazon Machine Images (AMIs) pronto para RES-ready, você pode pré-instalar dependências RES para instâncias de desktop virtual (VDIs) em suas instâncias personalizadas. AMIs O uso do Res-Ready AMIs melhora os tempos de inicialização das instâncias de VDI usando as imagens pré-criadas. Usando o EC2 Image Builder, você pode criar e registrar suas pilhas de software AMIs como novas. Para obter mais informações sobre o Image Builder, consulte o Guia do usuário do Image Builder.

Antes de começar, você deve implantar a versão mais recente do RES.

Prepare uma função do IAM para acessar o ambiente RES

Para acessar o serviço de ambiente RES a partir do EC2 Image Builder, você deve criar ou modificar uma função do IAM chamada RES- EC2InstanceProfileForImageBuilder. Para obter informações sobre como configurar uma função do IAM para uso no Image Builder, consulte AWS Identity and Access Management (IAM) no Guia do usuário do Image Builder.

Sua função exige:
  • Relacionamentos confiáveis que incluem o EC2 serviço da Amazon.

  • Amazon SSMManaged InstanceCore e EC2 InstanceProfileForImageBuilder políticas.

  • Uma política de RES personalizada com acesso limitado do DynamoDB e do Amazon S3 ao ambiente RES implantado.

    (Essa política pode ser um documento de política gerenciado pelo cliente ou incorporado ao cliente.)

  1. Comece criando uma nova política que será anexada à sua função: IAM -> Políticas -> Criar política

  2. Selecione JSON no editor de políticas.

  3. Copie e cole a política mostrada aqui no editor, substituindo a desejada e {AWS-Region}{AWS-Account-ID}, {RES-EnvironmentName} quando aplicável.

    Política de RES:

    { "Version": "2012-10-17", "Statement": [ { "Sid": "RESDynamoDBAccess", "Effect": "Allow", "Action": "dynamodb:GetItem", "Resource": "arn:aws:dynamodb:{AWS-Region}:{AWS-Account-ID}:table/{RES-EnvironmentName}.cluster-settings", "Condition": { "ForAllValues:StringLike": { "dynamodb:LeadingKeys": [ "global-settings.gpu_settings.*", "global-settings.package_config.*", "cluster-manager.host_modules.*", "identity-provider.cognito.enable_native_user_login" ] } } }, { "Sid": "RESS3Access", "Effect": "Allow", "Action": "s3:GetObject", "Resource": [ "arn:aws:s3:::{RES-EnvironmentName}-cluster-{AWS-Region}-{AWS-Account-ID}/idea/vdc/res-ready-install-script-packages/*", "arn:aws:s3:::research-engineering-studio-{AWS-Region}/host_modules/*" ] } ] }
  4. Escolha Avançar e forneça um nome e uma descrição opcional para concluir a criação da política.

  5. Para criar a função, comece acessando IAM -> Roles -> Create role.

  6. Em Tipo de entidade confiável, selecione "AWS serviço”.

  7. Selecione EC2no menu suspenso Serviço ou caso de uso.

  8. Na seção Caso de uso, selecione e, em seguida EC2, escolha Avançar.

  9. Pesquise e selecione o nome da política que você criou anteriormente.

  10. Escolha Avançar e forneça um nome e uma descrição opcional para concluir a criação da função.

  11. Selecione sua nova função e verifique se a relação de confiança corresponde ao seguinte:

    Entidade de relacionamento confiável:

    { "Version": "2012-10-17", "Statement": [ { "Effect": "Allow", "Principal": { "Service": "ec2.amazonaws.com" }, "Action": "sts:AssumeRole" } ] }

Criar componente EC2 Image Builder

Siga as instruções para Criar um componente usando o console do Image Builder no Guia do usuário do Image Builder.

Insira os detalhes do seu componente:
  1. Em Tipo, escolha Construir.

  2. Para Sistema operacional (SO) de imagem, escolha Linux ou Windows.

  3. Em Nome do componente, insira um nome significativo, comoresearch-and-engineering-studio-vdi-<operating-system>.

  4. Insira o número da versão do seu componente e, opcionalmente, adicione uma descrição.

  5. Para o documento de definição, insira o arquivo de definição a seguir. Se você encontrar algum erro, o arquivo YAML é sensível ao espaço e é a causa mais provável.

    Linux
    # Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved. # # Licensed under the Apache License, Version 2.0 (the "License"). You may not use this file except in compliance # with the License. A copy of the License is located at # # http://www.apache.org/licenses/LICENSE-2.0 # # or in the 'license' file accompanying this file. This file is distributed on an 'AS IS' BASIS, WITHOUT WARRANTIES # OR CONDITIONS OF ANY KIND, express or implied. See the License for the specific language governing permissions # and limitations under the License. name: research-and-engineering-studio-vdi-linux description: An RES EC2 Image Builder component to install required RES software dependencies for Linux VDI. schemaVersion: 1.0 parameters: - AWSAccountID: type: string description: RES Environment AWS Account ID - RESEnvName: type: string description: RES Environment Name - RESEnvRegion: type: string description: RES Environment Region - RESEnvReleaseVersion: type: string description: RES Release Version phases: - name: build steps: - name: PrepareRESBootstrap action: ExecuteBash onFailure: Abort maxAttempts: 3 inputs: commands: - 'mkdir -p /root/bootstrap/logs' - 'mkdir -p /root/bootstrap/latest' - name: DownloadRESLinuxInstallPackage action: S3Download onFailure: Abort maxAttempts: 3 inputs: - source: 's3://{{ RESEnvName }}-cluster-{{ RESEnvRegion }}-{{ AWSAccountID }}/idea/vdc/res-ready-install-script-packages/linux/res_linux_install_{{ RESEnvReleaseVersion }}.tar.gz' destination: '/root/bootstrap/res_linux_install_{{ RESEnvReleaseVersion }}.tar.gz' expectedBucketOwner: '{{ AWSAccountID }}' - name: RunInstallScript action: ExecuteBash onFailure: Abort maxAttempts: 3 inputs: commands: - 'tar -xvf {{ build.DownloadRESLinuxInstallPackage.inputs[0].destination }} -C /root/bootstrap/latest' - '/bin/bash /root/bootstrap/latest/virtual-desktop-host-linux/install.sh -r {{ RESEnvRegion }} -n {{ RESEnvName }} -g NONE' - name: FirstReboot action: Reboot onFailure: Abort maxAttempts: 3 inputs: delaySeconds: 0 - name: RunInstallPostRebootScript action: ExecuteBash onFailure: Abort maxAttempts: 3 inputs: commands: - '/bin/bash /root/bootstrap/latest/virtual-desktop-host-linux/install_post_reboot.sh' - name: SecondReboot action: Reboot onFailure: Abort maxAttempts: 3 inputs: delaySeconds: 0
    Windows
    # Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved. # # Licensed under the Apache License, Version 2.0 (the "License"). You may not use this file except in compliance # with the License. A copy of the License is located at # # http://www.apache.org/licenses/LICENSE-2.0 # # or in the 'license' file accompanying this file. This file is distributed on an 'AS IS' BASIS, WITHOUT WARRANTIES # OR CONDITIONS OF ANY KIND, express or implied. See the License for the specific language governing permissions # and limitations under the License. name: research-and-engineering-studio-vdi-windows description: An RES EC2 Image Builder component to install required RES software dependencies for Windows VDI. schemaVersion: 1.0 parameters: - AWSAccountID: type: string description: RES Environment AWS Account ID - RESEnvName: type: string description: RES Environment Name - RESEnvRegion: type: string description: RES Environment Region - RESEnvReleaseVersion: type: string description: RES Release Version phases: - name: build steps: - name: CreateRESBootstrapFolder action: CreateFolder onFailure: Abort maxAttempts: 3 inputs: - path: 'C:\Users\Administrator\RES\Bootstrap' overwrite: true - name: DownloadRESWindowsInstallPackage action: S3Download onFailure: Abort maxAttempts: 3 inputs: - source: 's3://{{ RESEnvName }}-cluster-{{ RESEnvRegion }}-{{ AWSAccountID }}/idea/vdc/res-ready-install-script-packages/windows/res_windows_install_{{ RESEnvReleaseVersion }}.tar.gz' destination: '{{ build.CreateRESBootstrapFolder.inputs[0].path }}\res_windows_install_{{ RESEnvReleaseVersion }}.tar.gz' expectedBucketOwner: '{{ AWSAccountID }}' - name: RunInstallScript action: ExecutePowerShell onFailure: Abort maxAttempts: 3 inputs: commands: - 'cd {{ build.CreateRESBootstrapFolder.inputs[0].path }}' - 'Tar -xf res_windows_install_{{ RESEnvReleaseVersion }}.tar.gz' - 'Import-Module .\virtual-desktop-host-windows\Install.ps1' - 'Install-WindowsEC2Instance' - name: Reboot action: Reboot onFailure: Abort maxAttempts: 3 inputs: delaySeconds: 0
  6. Crie qualquer tag opcional e escolha Criar componente.

Prepare sua receita do EC2 Image Builder

Uma receita do EC2 Image Builder define a imagem base a ser usada como ponto de partida para criar uma nova imagem, junto com o conjunto de componentes que você adiciona para personalizar sua imagem e verificar se tudo funciona conforme o esperado. Você deve criar ou modificar uma receita para construir a AMI de destino com as dependências de software RES necessárias. Para obter mais informações sobre receitas, consulte Gerenciar receitas.

O RES suporta os seguintes sistemas operacionais de imagem:

  • Amazon Linux 2 (x86 e ARM64)

  • Ubuntu 22.04.3 (x86)

  • RHEL 8 (x86) e 9 (x86)

  • Windows 2019, 2022 (x86)

Create a new recipe
  1. Abra o console do EC2 Image Builder emhttps://console.aws.amazon.com/imagebuilder.

  2. Em Recursos salvos, escolha Receitas de imagens.

  3. Escolha Criar fórmula de imagem.

  4. Insira um nome exclusivo e um número de versão.

  5. Selecione uma imagem base compatível com RES.

  6. Em Configuração da instância, instale um agente SSM se um não vier pré-instalado. Insira as informações em Dados do usuário e quaisquer outros dados necessários do usuário.

  7. Para receitas baseadas em Linux, adicione o componente de aws-cli-version-2-linux compilação gerenciado pela Amazon à receita. Os scripts de instalação do RES usam o AWS CLI para fornecer acesso VDI aos valores de configuração das configurações de cluster do DynamoDB. O Windows não exige esse componente.

  8. Adicione o componente EC2 Image Builder criado para seu ambiente Linux ou Windows e insira os valores de parâmetros necessários. Os seguintes parâmetros são entradas obrigatórias: AWSAccount ID, RESEnv nome, RESEnv região e. RESEnv ReleaseVersion

    Importante

    Para ambientes Linux, você deve adicionar esses componentes em ordem, com o componente de aws-cli-version-2-linux compilação adicionado primeiro.

  9. (Recomendado) Adicione o componente de simple-boot-test-<linux-or-windows> teste gerenciado pela Amazon para verificar se a AMI pode ser iniciada. Essa é uma recomendação mínima. Você pode selecionar outros componentes de teste que atendam às suas necessidades.

  10. Complete todas as seções opcionais, se necessário, adicione outros componentes desejados e escolha Criar receita.

Modify a recipe

Se você tiver uma receita existente do EC2 Image Builder, poderá usá-la adicionando os seguintes componentes:

  1. Para receitas baseadas em Linux, adicione o componente de aws-cli-version-2-linux compilação gerenciado pela Amazon à receita. Os scripts de instalação do RES usam o AWS CLI para fornecer acesso VDI aos valores de configuração das configurações de cluster do DynamoDB. O Windows não exige esse componente.

  2. Adicione o componente EC2 Image Builder criado para seu ambiente Linux ou Windows e insira os valores de parâmetros necessários. Os seguintes parâmetros são entradas obrigatórias: AWSAccount ID, RESEnv nome, RESEnv região e. RESEnv ReleaseVersion

    Importante

    Para ambientes Linux, você deve adicionar esses componentes em ordem, com o componente de aws-cli-version-2-linux compilação adicionado primeiro.

  3. Complete todas as seções opcionais, se necessário, adicione outros componentes desejados e escolha Criar receita.

Configurar a infraestrutura do EC2 Image Builder

Você pode usar configurações de infraestrutura para especificar a EC2 infraestrutura da Amazon que o Image Builder usa para criar e testar sua imagem do Image Builder. Para uso com RES, você pode optar por criar uma nova configuração de infraestrutura ou usar uma existente.

Para configurar sua infraestrutura do Image Builder:
  1. Para a função do IAM, insira a função na qual você configurou anteriormentePrepare uma função do IAM para acessar o ambiente RES.

  2. Em Tipo de instância, escolha um tipo com pelo menos 4 GB de memória e compatível com a arquitetura básica de AMI escolhida. Veja os tipos de EC2 instância da Amazon.

  3. Para VPC, sub-rede e grupos de segurança, você deve permitir o acesso à Internet para baixar pacotes de software. O acesso também deve ser permitido à tabela do cluster-settings DynamoDB e ao bucket do cluster Amazon S3 do ambiente RES.

Configurar o pipeline de imagens do Image Builder

O pipeline de imagens do Image Builder reúne a imagem base, os componentes para construção e teste, a configuração da infraestrutura e as configurações de distribuição. Para configurar um pipeline de imagem pronto para o RES AMIs, você pode optar por criar um novo pipeline ou usar um existente. Para obter mais informações, consulte Criar e atualizar pipelines de imagem da AMI no Guia do usuário do Image Builder.

Create a new Image Builder pipeline
  1. Abra o console do Image Builder emhttps://console.aws.amazon.com/imagebuilder.

  2. No painel de navegação, escolha Pipelines de imagem.

  3. Escolha Criar pipeline de imagens.

  4. Especifique os detalhes do seu funil inserindo um nome exclusivo, uma descrição opcional, uma programação e uma frequência.

  5. Em Escolher receita, escolha Usar receita existente e selecione a receita criada emPrepare sua receita do EC2 Image Builder. Verifique se os detalhes da receita estão corretos.

  6. Em Definir processo de criação de imagem, escolha o fluxo de trabalho padrão ou personalizado, dependendo do caso de uso. Na maioria dos casos, os fluxos de trabalho padrão são suficientes. Para obter mais informações, consulte Configurar fluxos de trabalho de imagem para seu pipeline do EC2 Image Builder.

  7. Em Definir configuração de infraestrutura, escolha Escolher configuração de infraestrutura existente e selecione a configuração de infraestrutura criada emConfigurar a infraestrutura do EC2 Image Builder. Verifique se os detalhes da sua infraestrutura estão corretos.

  8. Em Definir configurações de distribuição, escolha Criar configurações de distribuição usando padrões de serviço. A imagem de saída deve residir no Região da AWS mesmo ambiente do RES. Usando padrões de serviço, a imagem será criada na região em que o Image Builder é usado.

  9. Analise os detalhes do funil e escolha Criar funil.

Modify an existing Image Builder pipeline
  1. Para usar um pipeline existente, modifique os detalhes para usar a receita criada emPrepare sua receita do EC2 Image Builder.

  2. Escolha Salvar alterações.

Execute o pipeline de imagens do Image Builder

Para produzir a imagem de saída configurada, você deve iniciar o pipeline de imagem. O processo de construção pode levar até uma hora, dependendo do número de componentes na receita da imagem.

Para executar o pipeline de imagens:
  1. Em Pipelines de imagem, selecione o pipeline criado emConfigurar o pipeline de imagens do Image Builder.

  2. Em Ações, escolha Executar pipeline.

Registre uma nova pilha de software no RES

  1. Siga as instruções Pilhas de software () AMIs para registrar uma pilha de software.

  2. Em ID da AMI, insira a ID da AMI da imagem de saída incorporadaExecute o pipeline de imagens do Image Builder.