Como integrar com segurança o Azure Machine Learning e o Azure Synapse

Neste artigo, saiba como integrar com segurança o Azure Machine Learning por meio do Azure Synapse. Essa integração permite que você use o Azure Machine Learning por meio de notebooks no seu workspace do Azure Synapse. A comunicação entre os dois workspaces é protegida por uma Rede Virtual do Azure.

Pré-requisitos

  • Uma assinatura do Azure.

  • Um workspace do Azure Machine Learning com uma conexão de ponto de extremidade privado com uma rede virtual. Os seguintes serviços de dependência de workspace também precisam ter uma conexão de ponto de extremidade privado com a rede virtual:

    • Conta de Armazenamento do Azure

      Dica

      Para a conta de armazenamento, há três pontos de extremidade privados separados: um para blob, outro para arquivo e o último para DFS.

    • Cofre de Chave do Azure

    • Registro de Contêiner do Azure

    Uma maneira rápida e fácil de construir essa configuração é usar um modelo Bicep ou modelo Terraform.

  • Um workspace do Azure Synapse em uma rede virtual gerenciada, usando um ponto de extremidade privado gerenciado. Para saber mais, confira Rede Virtual Gerenciada do Azure Synapse Analytics.

    Aviso

    Atualmente, não há suporte à integração do Azure Machine Learning em workspaces do Azure Synapse com a proteção contra exfiltração dos dados. Ao configurar seu workspace do Azure Synapse, não habilite a proteção contra exfiltração de dados. Para saber mais, confira Rede Virtual Gerenciada do Azure Synapse Analytics.

    Observação

    As etapas deste artigo fazem as seguintes suposições:

    • O workspace do Azure Synapse está em um grupo de recursos diferente do workspace do Azure Machine Learning.
    • O workspace do Azure Synapse usa uma rede virtual gerenciada. A rede virtual gerenciada garante a conectividade entre o Azure Synapse e o Azure Machine Learning. Ela não restringe o acesso ao workspace do Azure Synapse. Você acessará o workspace pela Internet pública.

Noções básicas sobre a comunicação de rede

Nessa configuração, o Azure Synapse usa um ponto de extremidade privado gerenciado e uma rede virtual. A rede virtual gerenciada e o ponto de extremidade privado protegem as comunicações internas do Azure Synapse com o Azure Machine Learning restringindo o tráfego de rede para a rede virtual. Ela não restringe a comunicação entre o cliente e o workspace do Azure Synapse.

O Azure Machine Learning não fornece pontos de extremidade privados gerenciados nem redes virtuais e, em vez disso, usa um ponto de extremidade privado gerenciado pelo usuário e uma rede virtual. Nessa configuração, a comunicação interna e de cliente/serviço é restrita à rede virtual. Por exemplo, se você desejar acessar diretamente o Estúdio do Azure Machine Learning fora da rede virtual, use uma das seguintes opções:

  • Crie uma máquina virtual do Azure dentro da rede virtual e use o Azure Bastion para se conectar a ela. Em seguida, conecte-se ao Azure Machine Learning por meio da VM.
  • Crie um gateway de VPN ou use o ExpressRoute para conectar clientes à rede virtual.

Como o workspace do Azure Synapse é acessível publicamente, você pode se conectar a ele sem precisar criar recursos como um gateway de VPN. O workspace do Azure Synapse se conecta com segurança ao Azure Machine Learning pela rede virtual. O Azure Machine Learning e os respectivos recursos são protegidos dentro da rede virtual.

Ao adicionar fontes de dados, você também pode proteger aqueles por trás da rede virtual. Por exemplo, conectando-se com segurança a uma conta do Armazenamento do Azure ou ao Data Lake Store Gen2 pela rede virtual.

Para obter mais informações, consulte os seguintes artigos:

Configurar o Azure Synapse

Importante

Antes de seguir estas etapas, você precisa ter um workspace do Azure Synapse configurado para usar uma rede virtual gerenciada. Para saber mais, confira Rede Virtual Gerenciada do Azure Synapse Analytics.

  1. No Azure Synapse Studio, crie um serviço vinculado do Azure Machine Learning.

  2. Depois de criar e publicar o serviço vinculado, selecione Gerenciar, Pontos de extremidade privados gerenciados e + Novo no Azure Synapse Studio.

    Captura de tela da caixa de diálogo Pontos de extremidade privados gerenciados.

  3. Na página Novo ponto de extremidade privado gerenciado, pesquise Azure Machine Learning e selecione o bloco.

    Captura de tela de como selecionar o Azure Machine Learning.

  4. Quando precisar selecionar o workspace do Azure Machine Learning, use a assinatura do Azure e o workspace do Azure Machine Learning que você já adicionou como um serviço vinculado. Escolha Criar para criar o ponto de extremidade.

    Captura de tela da nova caixa de diálogo Ponto de extremidade privado.

  5. O ponto de extremidade será listado como Provisionando até que ele seja criado. Depois que ele for criado, a coluna Aprovação listará o status Pendente. Você aprovará o ponto de extremidade na seção Configurar o Azure Machine Learning.

    Observação

    Na captura de tela a seguir, um ponto de extremidade privado gerenciado foi criado para o Azure Data Lake Storage Gen2 associado a esse workspace do Azure Synapse. Para obter informações sobre como criar um Azure Data Lake Storage Gen2 e habilitar um ponto de extremidade privado para ele, confira Provisionar e proteger um serviço vinculado com a VNet Gerenciada.

    Captura de tela da lista de pontos de extremidade privados gerenciados.

Criar um pool do Spark

Para verificar se a integração entre o Azure Synapse e o Azure Machine Learning está funcionando, você usará um pool do Apache Spark. Para obter informações sobre como criar um, confira Criar um Pool do Spark.

Configurar o Azure Machine Learning

  1. No portal do Azure, selecione seu workspace do Azure Machine Learning e escolha Rede.

  2. Selecione Pontos de extremidade privados e escolha o ponto de extremidade que você criou nas etapas anteriores. Ele terá o status Pendente. Selecione Aprovar para aprovar a conexão de ponto de extremidade.

    Captura de tela da aprovação do ponto de extremidade privado.

  3. No lado esquerdo da página, selecione Controle de acesso (IAM). Escolha + Adicionar e selecione Atribuição de função.

    Captura de tela da atribuição de função.

  4. Selecione Funções de administrador com privilégios, Colaborador e Avançar.

    Captura de tela de como selecionar o colaborador.

  5. Escolha Usuário, grupo ou entidade de serviço e + Selecionar membros. Insira o nome da identidade já criada, selecione-a e use o botão Selecionar.

    Captura de tela de como atribuir a função.

  6. Escolha Examinar + atribuir, verifique as informações e selecione o botão Examinar + atribuir.

    Dica

    Podem ser necessários vários minutos para que o workspace do Azure Machine Learning atualize o cache de credenciais. Até que ele tenha sido atualizado, você poderá receber erros ao tentar acessar o workspace do Azure Machine Learning no Azure Synapse.

Verificar conectividade

  1. No Azure Synapse Studio, selecione Desenvolver e + Notebook.

    Captura de tela de como adicionar um notebook.

  2. No campo Anexar a, selecione o Pool do Apache Spark para seu workspace do Azure Synapse e insira o seguinte código na primeira célula:

    from notebookutils.mssparkutils import azureML
    
    # getWorkspace() takes the linked service name,
    # not the Azure Machine Learning workspace name.
    ws = azureML.getWorkspace("AzureMLService1")
    
    print(ws.name)
    

    Importante

    Esse snippet de código se conecta ao workspace vinculado usando o SDK v1 e imprime as informações do workspace. Na saída impressa, o valor exibido é o nome do workspace do Azure Machine Learning, não o nome do serviço vinculado usado na chamada getWorkspace(). Para obter mais informações sobre como usar o objeto ws, confira a referência da classe Workspace.

Próximas etapas