Visão geral da arquitetura do Microsoft Dev Box
Neste artigo, você aprenderá sobre a arquitetura e os principais conceitos do Microsoft Dev Box. O Microsoft Dev Box oferece aos desenvolvedores acesso de autoatendimento a estações de trabalho baseadas em nuvem pré-configuradas e prontas para codificar. Você pode configurar o serviço para atender à sua equipe de desenvolvimento e estrutura de projeto e gerenciar configurações de segurança e rede para acessar recursos com segurança.
O Microsoft Dev Box baseia-se nas mesmas bases que os Ambientes de Implantação do Azure. Os Ambientes de Implantação fornecem aos desenvolvedores ambientes baseados em nuvem pré-configurados para o desenvolvimento de aplicativos. Ambos os serviços são complementares e compartilham certos componentes arquitetônicos, como um centro de desenvolvimento ou projeto.
Como funciona o Microsoft Dev Box?
Antes que os desenvolvedores possam criar caixas de desenvolvimento no portal do desenvolvedor, você configura um centro de desenvolvimento e um projeto no Microsoft Dev Box. O diagrama a seguir fornece uma visão geral da relação entre os diferentes componentes no Microsoft Dev Box.
Um centro de desenvolvimento é o recurso de nível superior para o Microsoft Dev Box. Um centro de desenvolvimento contém a coleção de projetos e os recursos compartilhados para esses projetos, como definições de caixa de desenvolvimento e conexões de rede. Não há limite para o número de centros de desenvolvimento que você pode criar, mas a maioria das organizações precisa de apenas um.
Um projeto de caixa de desenvolvimento é o ponto de acesso para as equipes de desenvolvimento. Você atribui a um desenvolvedor a função Usuário da Caixa de Desenvolvimento a um projeto para conceder permissões ao desenvolvedor para criar caixas de desenvolvimento. Você pode criar um ou mais projetos em um centro de desenvolvimento.
Uma definição de caixa de desenvolvimento especifica a configuração das caixas de desenvolvimento, como a imagem da máquina virtual e os recursos de computação para a caixa de desenvolvimento. Você pode escolher uma imagem de VM do Azure Marketplace ou usar uma galeria de computação do Azure para usar imagens de VM personalizadas.
Um projeto contém a coleção de pools de caixa de desenvolvimento. Um pool de caixas de desenvolvimento especifica a configuração para caixas de desenvolvimento, como a definição da caixa de desenvolvimento, a conexão de rede e outras configurações. Todas as caixas de desenvolvimento criadas a partir de um pool de caixas de desenvolvimento compartilham a mesma configuração.
A conexão de rede associada a um pool de caixas de desenvolvimento determina onde a caixa de desenvolvimento está hospedada. Você pode usar uma conexão de rede hospedada pela Microsoft ou trazer sua própria conexão de rede do Azure. Você pode usar uma conexão de rede do Azure se precisar de controle sobre a rede virtual, se precisar de acesso a recursos corporativos ou para autenticar em uma caixa de desenvolvimento com uma conta do Ative Directory.
Os desenvolvedores podem criar uma caixa de desenvolvimento a partir de um pool de caixas de desenvolvimento usando o portal do desenvolvedor. Eles podem escolher entre um pool específico com base na imagem da VM, nos recursos de computação ou no local onde a caixa de desenvolvimento está hospedada.
Quando a caixa de desenvolvimento estiver em execução, os usuários da caixa de desenvolvimento poderão se conectar remotamente a ela usando um cliente de Área de Trabalho Remota, como o Windows App, ou diretamente do navegador. Os usuários da caixa de desenvolvimento têm controle total sobre as caixas de desenvolvimento que criaram e podem gerenciá-las a partir do portal do desenvolvedor.
Arquitetura do Microsoft Dev Box
O hospedado em nome da arquitetura permite que os serviços da Microsoft, depois que lhes forem delegadas permissões apropriadas e com escopo a uma rede virtual por um proprietário de assinatura, anexem serviços hospedados do Azure a uma assinatura de cliente. Esse modelo de conectividade permite que um serviço da Microsoft forneça software como serviço e serviços licenciados pelo usuário, em vez de serviços baseados no consumo padrão.
O Microsoft Dev Box usa a arquitetura hospedada em nome, o que significa que as caixas de desenvolvimento existem em uma assinatura de propriedade da Microsoft. Portanto, a Microsoft incorre nos custos de execução e gerenciamento dessa infraestrutura. As caixas de desenvolvimento são implantadas em uma assinatura gerenciada pela Microsoft e conectadas à rede virtual do cliente.
O Microsoft Dev Box gerencia a capacidade e a disponibilidade na região nas assinaturas do Microsoft Dev Box. O Microsoft Dev Box determina a região do Azure para hospedar suas caixas de desenvolvimento com base na conexão de rede selecionada ao criar um pool de caixas de desenvolvimento.
Para proteger seus dados, o Microsoft Dev Box criptografa o disco por padrão usando uma chave gerenciada pela plataforma. Você não precisa habilitar o BitLocker e isso pode impedir que você acesse sua caixa de desenvolvimento.
Para obter mais informações sobre armazenamento e proteção de dados nos serviços do Azure, consulte: Proteção de dados do cliente do Azure.
Para a conexão de rede, você também pode escolher entre uma conexão de rede hospedada pela Microsoft e uma conexão de rede do Azure que você cria em sua própria assinatura.
Os diagramas a seguir mostram a arquitetura lógica do Microsoft Dev Box.
Conectividade de rede
As conexões de rede controlam onde as caixas de desenvolvimento são criadas e hospedadas e permitem que você se conecte a outros recursos do Azure ou corporativos. Dependendo do seu nível de controle, você pode usar conexões de rede hospedadas pela Microsoft ou trazer suas próprias conexões de rede do Azure.
As conexões de rede hospedadas pela Microsoft fornecem conectividade de rede de maneira SaaS. A Microsoft gerencia a infraestrutura de rede e os serviços relacionados para suas caixas de desenvolvimento. As redes hospedadas pela Microsoft são uma implantação somente na nuvem com suporte para ingresso no Microsoft Entra. Esta opção não é compatível com o modelo de associação híbrida do Microsoft Entra.
Você também pode usar conexões de rede do Azure (traga sua própria rede) para se conectar a redes virtuais do Azure e, opcionalmente, conectar-se a recursos corporativos. Com as conexões de rede do Azure, você gerencia e controla toda a instalação e configuração da rede. Você pode usar as opções de associação híbrida do Microsoft Entra ou do Microsoft Entra com conexões de rede do Azure, permitindo que você se conecte aos Serviços de Domínio Ative Directory do Azure locais.
Se você usar sua própria rede virtual do Azure, o Microsoft Dev Box permitirá que você use recursos de segurança e roteamento da Rede Virtual, incluindo:
- Grupos de Segurança de Rede do Azure
- Roteamento definido pelo usuário
- Azure Firewall
- Aplicações virtuais de rede (NVAs)
No Microsoft Dev Box, você associa uma conexão de rede a um pool de caixa de desenvolvimento em seu projeto. Todas as caixas de desenvolvimento que são criadas neste pool de caixas de desenvolvimento são hospedadas na região do Azure da conexão de rede. Se você usar conexões de rede do Azure, primeiro adicionará as conexões de rede a um centro de desenvolvimento e, em seguida, associará a conexão a um pool de caixas de desenvolvimento.
Para determinar a melhor região para hospedar as caixas de desenvolvimento, você pode permitir que os usuários da caixa de desenvolvimento aproveitem a ferramenta Estimador de Experiência de Área de Trabalho Virtual do Azure para estimar o tempo de ida e volta da conexão a partir de seu local. Em seguida, você pode configurar o pool de caixas de desenvolvimento e a conexão de rede para otimizar a latência para desenvolvedores nessa região geográfica.
Integração com o Microsoft Intune
O Microsoft Intune é usado para gerenciar suas caixas de desenvolvimento. Cada usuário do Dev Box precisa de uma licença do Microsoft Intune e pode criar várias caixas de desenvolvimento. Depois que uma caixa de desenvolvimento é provisionada, você pode gerenciá-la como qualquer outro dispositivo Windows no Microsoft Intune. Por exemplo, você pode criar perfis de configuração de dispositivo para ativar e desativar diferentes configurações no Windows ou enviar aplicativos e atualizações por push para as caixas de desenvolvimento dos usuários.
O Microsoft Intune e os componentes associados do Windows têm vários pontos de extremidade de rede que devem ser permitidos por meio da Rede Virtual. Os terminais Apple e Android podem ser ignorados com segurança se não utilizar o Microsoft Intune para gerir esses tipos de dispositivos.
Serviços de identidade
O Microsoft Dev Box usa o Microsoft Entra ID e, opcionalmente, os Serviços de Domínio Ative Directory (AD DS) locais. O Microsoft Entra ID fornece:
- Autenticação de usuário para o portal do desenvolvedor do Microsoft Dev Box.
- Serviços de identidade de dispositivo para o Microsoft Intune através da associação híbrida do Microsoft Entra ou da associação do Microsoft Entra.
Quando você configura caixas de desenvolvimento para usar a associação híbrida do Microsoft Entra, o AD DS fornece:
- Ingresso de domínio local para as caixas de desenvolvimento.
- Autenticação de usuário para as conexões RDP (Remote Desktop Protocol).
Quando você configura caixas de desenvolvimento para usar a associação do Microsoft Entra, a ID do Microsoft Entra fornece:
- O mecanismo de associação de domínio para as caixas de desenvolvimento.
- Autenticação de usuário para conexões RDP.
Nota
O Microsoft Dev Box suporta contas corporativas e de estudante. Não suporta a utilização de contas de convidado ou contas pessoais.
Conectividade do usuário
Quando uma caixa de desenvolvimento está em execução, os desenvolvedores podem se conectar à caixa de desenvolvimento usando um cliente de Área de Trabalho Remota, como o Windows App, ou diretamente do navegador.
A conectividade da caixa de desenvolvimento é fornecida pela Área de Trabalho Virtual do Azure. Nenhuma conexão de entrada direta da Internet é feita para a caixa de desenvolvimento. Em vez disso, as seguintes conexões são feitas:
- Da caixa de desenvolvimento para os pontos de extremidade da Área de Trabalho Virtual do Azure
- Dos clientes de Área de Trabalho Remota para os pontos de extremidade da Área de Trabalho Virtual do Azure.
Para obter mais informações sobre esses pontos de extremidade, consulte Lista de URL necessária da Área de Trabalho Virtual do Azure. Para facilitar a configuração dos controles de segurança de rede, use as Tags de Serviço para a Área de Trabalho Virtual do Azure para identificar esses pontos de extremidade. Para obter mais informações sobre as Tags de Serviço do Azure, consulte Visão geral das marcas de serviço do Azure.
Não há nenhum requisito para configurar suas caixas de desenvolvimento para fazer essas conexões. O Microsoft Dev Box integra perfeitamente os componentes de conectividade da Área de Trabalho Virtual do Azure na galeria ou em imagens personalizadas.
Para obter mais informações sobre a arquitetura de rede da Área de Trabalho Virtual do Azure, consulte Noções básicas sobre a conectividade de rede da Área de Trabalho Virtual do Azure.
O Microsoft Dev Box não suporta agentes de conexão de terceiros.