[Subtítulo para SEO]
Esta Orientação ajuda você a configurar um ambiente completo de produção de jogos para a Unreal Engine que seja altamente disponível e entregue com latência reduzida aos usuários. Ela também acelera tarefas de computação pesada distribuindo o trabalho para outras máquinas sob demanda por meio de uma estação de trabalho virtual de alta performance e um sistema centralizado de controle de versão. O código de exemplo mostra como configurar esse ambiente de produção de jogos para sua equipe.
Observação: [Isenção de responsabilidade]
Diagrama de arquitetura
[Descrição do diagrama de arquitetura]
Etapa 1
O cliente remoto NICE DCV conecta-se à instância da estação de trabalho virtual hospedada no Amazon Elastic Compute Cloud (Amazon EC2) fornecendo o endereço IP público da instância e as credenciais de autenticação.
Etapa 2
A estação de trabalho virtual baseada em GPU hospeda um servidor NICE DCV, fornecendo segurança de ponta a ponta entre o cliente remoto e a instância do EC2. A estação de trabalho virtual pode acessar recursos privados, como o sistema de controle de versão Perforce Helix Core, por meio da Amazon Virtual Private Cloud (Amazon VPC).
Etapa 3
O gateway NAT permite que recursos na sub-rede privada acessem recursos pela internet pública, como serviços de licença e atualização.
Etapa 4
O coordenador do Unreal Engine Swarm, responsável pela distribuição das tarefas de criação, é um recurso privado, disponível somente para recursos na Amazon VPC. O coordenador do Swarm tem sua própria instância do EC2, isolando-a de qualquer tempo de inatividade em outras instâncias e criando um ambiente de microsserviços.
Etapa 5
Os agentes do Unreal Engine Swarm são responsáveis por usar os recursos do sistema para concluir os trabalhos atribuídos pelo coordenador do Swarm. As instâncias que hospedam os agentes são colocadas em um grupo do Amazon EC2 Auto Scaling, o que permite que agentes do Swarm sejam adicionados ou removidos conforme as demandas da workload mudam.
Etapa 6
O sistema de controle de versão (Perforce) está em sua própria instância, seguindo o padrão de microsserviço. Isso o isola de qualquer tempo de inatividade em outras instâncias e facilita estruturas de repositório mais complexas, se necessário.
Pilares do Well-Architected
O AWS Well-Architected Framework ajuda a entender as vantagens e as desvantagens das decisões tomadas durante a criação de sistemas na nuvem. Os seis pilares do Framework permitem que você aprenda as melhores práticas de arquitetura, a fim de projetar e operar sistemas confiáveis, seguros, eficientes, econômicos e sustentáveis. Com a Ferramenta AWS Well-Architected, disponível gratuitamente no Console de Gerenciamento da AWS, você pode avaliar suas workloads em relação às práticas recomendadas ao responder a uma série de questões para cada pilar.
O diagrama de arquitetura acima exemplifica a criação de uma solução pautada nas melhores práticas do Well-Architected. Para ser totalmente Well-Architected, é preciso respeitar a maior quantidade possível das melhores práticas desse framework.
-
Excelência operacional
O AWS Cloud Development Kit (AWS CDK) permite implantações consistentes e reproduzíveis dos elementos do ambiente de desenvolvimento. Isso remove as fontes de erro durante a implantação, o que melhora a segurança e a confiabilidade e reduz os custos. O Amazon CloudWatch fornece métricas operacionais e registros para recursos do ambiente de desenvolvimento. Implantações automatizadas, consistentes e reproduzíveis por meio do registro em log do AWS CDK com o CloudWatch permitem que os componentes de aplicações do ambiente de desenvolvimento tenham um único local para registrar, independentemente de quantos recursos tenham tido a escala aumentada verticalmente. As métricas operacionais e de integridade também são escaláveis e estão ativadas por padrão para todos os serviços desta Orientação.
-
Segurança
O NICE DCV protege as entradas de pixels e de usuário final usando a criptografia AES-256 completa entre o cliente e o servidor. Ele também exige uma autenticação do cliente antes de permitir uma conexão. Como a estação de trabalho está em uma sub-rede pública, é importante que a comunicação entre o serviço remoto da estação de trabalho e o cliente seja segura e que os clientes sem credenciais de autenticação não consigam acessar a estação de trabalho.
A Amazon VPC permite a separação de tópicos. Sua política “privada por padrão” adiciona segurança aos recursos que não precisam ser expostos à internet pública. A maioria dos recursos no ambiente de desenvolvimento não precisa ser exposta à internet pública, e eles são colocados em sub-redes privadas na Amazon VPC que só podem ser acessadas por outros recursos na Amazon VPC.
-
Confiabilidade
O Amazon Elastic Block Store (Amazon EBS) separa o armazenamento da instância. O Amazon EC2 permite a implantação em várias zonas de disponibilidade isoladas dentro de uma região da AWS, o que maximiza a disponibilidade da aplicação e fornece uma recuperação robusta de desastres. O Amazon EBS permite que as instâncias do coordenador do Unreal Swarm, do espaço de trabalho e do Perforce falhem, preservando os dados e permitindo snapshots fáceis para backups.
-
Eficiência de performance
O Amazon EC2 Auto Scaling permite criar recursos no ambiente de desenvolvimento para aumentar a escala horizontalmente sob demanda. Especificamente, os agentes do Unreal Engine Swarm e Incredibuild podem aumentar a escala verticalmente quando há grandes tarefas de criação ou um grande número de tarefas de criação, diminuindo, assim, os tempos de criação e aumentando os tempos de iteração. O Amazon EC2 permite que você implante em regiões da AWS ou zonas locais da AWS que estão geograficamente próximas aos usuários, ajudando a reduzir a latência entre clientes locais e servidores remotos e a otimizar a experiência da estação de trabalho virtual. O NICE DCV fornece protocolos otimizados para minimizar a quantidade de dados que precisam ser transferidos entre o cliente e o servidor, permitindo maior renderização de quadros por segundo e latência menos perceptível entre as entradas e a exibição.
-
Otimização de custos
O Amazon EC2 permite que você escolha uma variedade de tipos de instâncias e formas de pagamento para otimizar os custos de suas workloads específicas. Isso ajuda você a conciliar workloads com opções de menor custo. Além disso, as instâncias sob demanda minimizam a necessidade de pagar por servidores que não estão em uso.
-
Sustentabilidade
Os tipos de instância do Amazon EC2 Auto Scaling e do Amazon EC2 ajudam você a provisionar os recursos mínimos necessários para atender às necessidades das workloads. Minimizar os recursos para se adequar às workloads, por meio do ajuste de escala ou da escolha de tipos de instância, permite que você crie serviços eficientes que minimizem o impacto ambiental de sua workload.
Recursos de implementação
O código de amostra é um ponto de partida. Ele é validado para o setor, é prescritivo, mas não definitivo, e mostra o que há por trás de tudo para ajudar você a começar.
Conteúdo relacionado
[Título]
Aviso de isenção de responsabilidade
O código de exemplo, as bibliotecas de software, as ferramentas de linha de comando, as provas de conceito, os modelos ou outra tecnologia relacionada (incluindo qualquer uma das anteriores fornecidas por nossa equipe) são fornecidos a você como Conteúdo da AWS nos termos do Contrato de Cliente da AWS ou o contrato por escrito pertinente entre você e a AWS (o que for aplicável). Você não deve usar esse Conteúdo da AWS em suas contas de produção, na produção ou em outros dados essenciais. Você é responsável por testar, proteger e otimizar o Conteúdo da AWS, como código de exemplo, conforme apropriado para uso em nível de produção com base em suas práticas e padrões específicos de controle de qualidade. A implantação de Conteúdo da AWS pode gerar cobranças da AWS para criar ou usar recursos cobráveis, como executar instâncias do Amazon EC2 ou usar armazenamento do Amazon S3.
As referências a serviços ou organizações terceirizadas nesta orientação não implicam em endosso, patrocínio ou afiliação entre a Amazon ou a AWS e terceiros. A orientação da AWS é um ponto de partida técnico, e você pode personalizar sua integração com serviços de terceiros ao implantar a arquitetura.