Criar um pool compartilhado de Máquinas Virtuais de Ciência de Dados
Neste artigo, você aprenderá como criar um pool compartilhado de Máquinas Virtuais de Ciência de Dados (DSVMs) para uma equipe. A utilização de uma piscina partilhada oferece vantagens importantes:
- Melhor utilização dos recursos
- Partilha e colaboração mais fáceis
- Gestão mais eficaz dos recursos DSVM
Você pode usar muitos métodos e tecnologias para criar um pool de DSVMs. Este artigo se concentra em pools para máquinas virtuais (VMs) interativas. Uma infraestrutura de computação gerenciada alternativa envolve o Azure Machine Learning Compute. Para obter mais informações, visite Criar cluster de computação.
Pool interativo de VMs
Um pool de VM interativa, compartilhado por toda uma equipe de IA/ciência de dados, oferece aos usuários uma maneira de entrar em uma instância DSVM disponível, em vez de ter uma instância dedicada para cada conjunto de usuários. Esta abordagem proporciona uma melhor disponibilidade e uma utilização mais eficaz dos recursos.
Use a tecnologia de conjuntos de dimensionamento de máquina virtual do Azure para criar um pool de VM interativo. Use conjuntos de escala para criar e gerenciar um grupo de VMs idênticas, com balanceamento de carga e dimensionamento automático.
O usuário efetua login no endereço IP ou DNS do pool principal. O conjunto de escala roteia automaticamente a sessão para uma DSVM disponível no conjunto de escalas. Como os usuários desejam um ambiente consistente e familiar, independentemente da VM em que entrarem, todas as instâncias da VM no conjunto de escala montam uma unidade de rede compartilhada. Isso é semelhante a um compartilhamento de Arquivos do Azure ou um compartilhamento de Sistema de Arquivos de Rede (NFS). O espaço de trabalho compartilhado do usuário normalmente é mantido no armazenamento de arquivos compartilhados montado em cada uma das instâncias.
Você pode encontrar um modelo de exemplo do Azure Resource Manager que cria um conjunto de escala com instâncias DSVM do Ubuntu no GitHub. O mesmo local hospeda uma amostra do arquivo de parâmetro para o modelo do Azure Resource Manager.
Especifique valores para o arquivo de parâmetro na CLI do Azure para criar o conjunto de escala a partir do modelo do Azure Resource Manager:
az group create --name [[NAME OF RESOURCE GROUP]] --location [[ Data center. For eg: "West US 2"]
az deployment group create --resource-group [[NAME OF RESOURCE GROUP ABOVE]] --template-uri https://raw.githubusercontent.com/Azure/DataScienceVM/master/Scripts/CreateDSVM/Ubuntu/dsvm-vmss-cluster.json --parameters @[[PARAMETER JSON FILE]]
Esses comandos pressupõem que você tenha:
- Uma cópia do arquivo de parâmetros com os valores especificados para sua instância do conjunto de escala
- O número de instâncias de VM
- Ponteiros para o compartilhamento de Arquivos do Azure
- Credenciais para a conta de armazenamento que será montada em cada VM
Os comandos localmente fazem referência ao arquivo de parâmetros. Você também pode passar parâmetros embutidos ou solicitá-los em seu script.
O modelo anterior habilita o SSH e a porta JupyterHub da escala de front-end definida para o pool de back-end de DSVMs do Ubuntu. Como usuário, você entraria na VM em um Secure Shell (SSH) ou no JupyterHub da maneira normal. Como as instâncias de VM podem ser dimensionadas para cima ou para baixo dinamicamente, qualquer estado deve ser salvo no compartilhamento de Arquivos do Azure montado. Você pode usar a mesma abordagem para criar um pool de DSVMs do Windows.
O script que monta o compartilhamento de Arquivos do Azure também está disponível no repositório do Azure DataScienceVM no GitHub. O script monta o compartilhamento de Arquivos do Azure no ponto de montagem especificado no arquivo de parâmetro. O script também cria soft links para a unidade montada no diretório inicial do usuário inicial. Um diretório de bloco de anotações específico do usuário no compartilhamento Arquivos do Azure é vinculado suavemente ao diretório, para $HOME/notebooks/remote
que os usuários possam acessar, executar e salvar seus blocos de anotações Jupyter. Você pode usar a mesma convenção ao criar mais usuários na VM para apontar o espaço de trabalho Jupyter de cada usuário para o compartilhamento Arquivos do Azure.
Os conjuntos de dimensionamento de máquinas virtuais suportam dimensionamento automático. Você pode definir regras sobre quando criar mais instâncias e quando reduzir instâncias. Por exemplo, você pode reduzir para zero instâncias para economizar nos custos de uso de hardware na nuvem quando as VMs não são usadas. As páginas de documentação dos conjuntos de dimensionamento de máquinas virtuais fornecem etapas detalhadas para o dimensionamento automático.