Partilhar via


Usar a Instância Gerenciada SQL do Azure com o SQL Server Integration Services (SSIS) no Azure Data Factory ou no Azure Synapse Analytics

APLICA-SE A: Azure Data Factory Azure Synapse Analytics

Gorjeta

Experimente o Data Factory no Microsoft Fabric, uma solução de análise tudo-em-um para empresas. O Microsoft Fabric abrange tudo, desde a movimentação de dados até ciência de dados, análises em tempo real, business intelligence e relatórios. Saiba como iniciar uma nova avaliação gratuitamente!

Agora, pode mover os projetos, pacotes e cargas de trabalho do SQL Server Integration Services (SSIS) para a cloud do Azure. Implante, execute e gerencie projetos e pacotes do SSIS no Banco de Dados SQL do Azure ou na Instância Gerenciada do SQL com ferramentas familiares, como o SQL Server Management Studio (SSMS). Este artigo destaca as seguintes áreas específicas ao usar a Instância Gerenciada SQL do Azure com o tempo de execução de integração (IR) do Azure-SSIS:

Provisionar o IR do Azure-SSIS com o SSISDB hospedado pela Instância Gerenciada SQL do Azure

Pré-requisitos

  1. Habilite a ID do Microsoft Entra na Instância Gerenciada SQL do Azure ao escolher a autenticação do Microsoft Entra.

  2. Escolha como conectar a Instância Gerenciada SQL, sobre ponto de extremidade privado ou sobre ponto de extremidade público:

    • Sobre o ponto final privado (preferencial)

      1. Escolha a rede virtual para o IR do Azure-SSIS participar:

        • Dentro da mesma rede virtual da instância gerenciada, com sub-rede diferente.
        • Dentro de uma rede virtual diferente da instância gerenciada, por meio do emparelhamento de rede virtual (que é limitado à mesma região devido a restrições de emparelhamento de rede VNet global) ou uma conexão de rede virtual para rede virtual.

        Para saber mais sobre a conectividade da Instância Gerenciada SQL, veja Conectar seu aplicativo à Instância Gerenciada SQL do Azure.

      2. Configure a rede virtual.

    • Ponto final público

      As Instâncias Gerenciadas SQL do Azure podem fornecer conectividade sobre pontos de extremidade públicos. Os requisitos de entrada e saída precisam ser atendidos para permitir o tráfego entre a Instância Gerenciada do SQL e o IR do Azure-SSIS:

      • quando o IR do Azure-SSIS não estiver dentro de uma rede virtual (preferencial)

        Requisito de entrada da Instância Gerenciada do SQL, para permitir o tráfego de entrada do IR do Azure-SSIS.

        Protocolo de transporte Origem Intervalo de portas de origem Destino Intervalo de portas de destino
        TCP Tag de serviço do Azure Cloud * VirtualNetwork 3342

        Para obter mais informações, consulte Permitir tráfego de ponto de extremidade público no grupo de segurança de rede.

      • quando Azure-SSIS IR dentro de uma rede virtual

        Há um cenário especial quando a Instância Gerenciada do SQL está em uma região que o IR do Azure-SSIS não suporta, o IR do Azure-SSIS está dentro de uma rede virtual sem emparelhamento de VNet devido à limitação de emparelhamento de VNet Global. Nesse cenário, o IR do Azure-SSIS dentro de uma rede virtual conecta a Instância Gerenciada do SQL pelo ponto de extremidade público. Use abaixo as regras do NSG (Grupo de Segurança de Rede) para permitir o tráfego entre a Instância Gerenciada do SQL e o IR do Azure-SSIS:

        1. Requisito de entrada da Instância Gerenciada do SQL, para permitir o tráfego de entrada do IR do Azure-SSIS.

          Protocolo de transporte Origem Intervalo de portas de origem Destino Intervalo de portas de destino
          TCP Endereço IP estático do IR do Azure-SSIS
          Para obter detalhes, consulte Bring Your Own Public IP for Azure-SSIS IR.
          * VirtualNetwork 3342
        2. Requisito de saída do IR do Azure-SSIS, para permitir o tráfego de saída para a Instância Gerenciada do SQL.

          Protocolo de transporte Origem Intervalo de portas de origem Destino Intervalo de portas de destino
          TCP VirtualNetwork * Endereço IP do ponto de extremidade público da Instância Gerenciada SQL 3342

Configurar uma rede virtual

  1. Permissão de usuário. O usuário que cria o IR do Azure-SSIS deve ter a atribuição de função pelo menos no recurso do Azure Data Factory com uma das opções abaixo:

    • Use a função interna de Colaborador de Rede. Essa função vem com a permissão Microsoft.Network/*, que tem um escopo muito maior do que o necessário.
    • Crie uma função personalizada que inclua apenas a permissão necessária Microsoft.Network/virtualNetworks/*/join/action . Se você também quiser trazer seus próprios endereços IP públicos para o IR do Azure-SSIS ao associá-lo a uma rede virtual do Azure Resource Manager, inclua também a permissão Microsoft.Network/publicIPAddresses/*/join/action na função.
  2. Rede virtual.

    1. Certifique-se de que o grupo de recursos da rede virtual pode criar e excluir determinados recursos de rede do Azure.

      O IR do Azure-SSIS precisa criar determinados recursos de rede no mesmo grupo de recursos que a rede virtual. Esses recursos incluem:

      • Um balanceador de carga do Azure, com o nome <Guid-azurebatch-cloudserviceloadbalancer>
      • Um grupo de segurança de rede, com o nome *<Guid-azurebatch-cloudservicenetworksecuritygroup>
      • Um endereço IP público do Azure, com o nome -azurebatch-cloudservicepublicip

      Esses recursos serão criados quando o IR do Azure-SSIS for iniciado. Eles serão excluídos quando o IR do Azure-SSIS parar. Para evitar bloquear a interrupção do IR do Azure-SSIS, não reutilize esses recursos de rede em seus outros recursos.

    2. Certifique-se de que não tem bloqueio de recursos no grupo de recursos/subscrição a que pertence a rede virtual. Se você configurar um bloqueio somente leitura/exclusão, iniciar e parar seu IR do Azure-SSIS falhará ou ele deixará de responder.

    3. Certifique-se de que não tem uma definição de Política do Azure que impeça a criação dos seguintes recursos no grupo/subscrição de recursos a que a rede virtual pertence:

      • Microsoft.Network/LoadBalancers
      • Microsoft.Network/NetworkSecurityGroups
    4. Permitir tráfego na regra NSG (Grupo de Segurança de Rede), para permitir o tráfego entre a Instância Gerenciada do SQL e o IR do Azure-SSIS e o tráfego necessário para o IR do Azure-SSIS.

      1. Requisito de entrada da Instância Gerenciada do SQL, para permitir o tráfego de entrada do IR do Azure-SSIS.

        Protocolo de transporte Origem Intervalo de portas de origem Destino Intervalo de portas de destino Comentários
        TCP VirtualNetwork * VirtualNetwork 1433, 11000-11999 Se a política de conexão do servidor do Banco de dados SQL estiver definida como Proxy em vez de Redirecionar, apenas a porta 1433 será necessária.
      2. Requisito de saída do IR do Azure-SSIS, para permitir o tráfego de saída para a Instância Gerenciada do SQL e outro tráfego necessário para o IR do Azure-SSIS.

        Protocolo de transporte Origem Intervalo de portas de origem Destino Intervalo de portas de destino Comentários
        TCP VirtualNetwork * VirtualNetwork 1433, 11000-11999 Permitir tráfego de saída para a Instância Gerenciada SQL. Se a política de conexão estiver definida como Proxy em vez de Redirect, apenas a porta 1433 será necessária.
        TCP VirtualNetwork * AzureCloud 443 Os nós do seu IR do Azure-SSIS na rede virtual usam essa porta para acessar os serviços do Azure, como o Armazenamento do Azure e os Hubs de Eventos do Azure.
        TCP VirtualNetwork * Internet 80 (Opcional) Os nós do seu IR do Azure-SSIS na rede virtual usam essa porta para baixar uma lista de revogação de certificados da Internet. Se você bloquear esse tráfego, poderá fazer downgrade de desempenho ao iniciar o IR e perder a capacidade de verificar a lista de revogação de certificados quanto ao uso do certificado. Se você quiser restringir ainda mais o destino a determinados FQDNs, consulte Configurar rotas definidas pelo usuário (UDRs).
        TCP VirtualNetwork * Armazenamento 445 (Opcional) Esta regra só é necessária quando você deseja executar o pacote SSIS armazenado nos Arquivos do Azure.
      3. Requisito de entrada do IR do Azure-SSIS, para permitir o tráfego necessário para o IR do Azure-SSIS.

        Protocolo de transporte Origem Intervalo de portas de origem Destino Intervalo de portas de destino Comentários
        TCP BatchNodeManagement * VirtualNetwork 29876, 29877 (se você unir o RI a uma rede virtual do Resource Manager)

        10100, 20100, 30100 (se você unir o IR a uma rede virtual clássica)
        O serviço Data Factory usa essas portas para se comunicar com os nós do seu IR do Azure-SSIS na rede virtual.

        Quer você crie ou não um NSG de nível de sub-rede, o Data Factory sempre configura um NSG no nível das placas de interface de rede (NICs) conectadas às máquinas virtuais que hospedam o IR do Azure-SSIS. Somente o tráfego de entrada de endereços IP do Data Factory nas portas especificadas é permitido por esse NSG de nível NIC. Mesmo se você abrir essas portas para o tráfego da Internet no nível da sub-rede, o tráfego de endereços IP que não são endereços IP do Data Factory será bloqueado no nível da NIC.
        TCP CorpNetSaw * VirtualNetwork 3389 (Opcional) Esta regra só é necessária quando o suporte da Microsoft pede ao cliente para abrir para solução de problemas avançada e pode ser fechada logo após a solução de problemas. A etiqueta de serviço CorpNetSaw permite que apenas estações de trabalho de acesso seguro na rede corporativa da Microsoft usem a área de trabalho remota. E essa marca de serviço não pode ser selecionada no portal e só está disponível por meio do Azure PowerShell ou da CLI do Azure.

        No nível de NIC NSG, a porta 3389 é aberta por padrão e permitimos que você controle a porta 3389 no nível de sub-rede NSG, enquanto o Azure-SSIS IR não permitiu a saída da porta 3389 por padrão na regra de firewall do Windows em cada nó IR para proteção.
    5. Consulte a configuração de rede virtual para obter mais informações:

      • Se você trouxer seus próprios endereços IP públicos para o IR do Azure-SSIS
      • Se utilizar o seu próprio servidor DNS (Sistema de Nomes de Domínio)
      • Se você usar o Azure ExpressRoute ou uma rota definida pelo usuário (UDR)
      • Se você usar o Azure-SSIS IR personalizado

Provisionar o tempo de execução da integração Azure-SSIS

  1. Selecione Ponto de extremidade privado ou ponto de extremidade público da Instância Gerenciada SQL.

    Ao provisionar o IR do Azure-SSIS no portal do Azure/aplicativo ADF, na página Configurações do SQL, use o ponto de extremidade privado ou ponto de extremidade público da Instância Gerenciada do SQL ao criar o catálogo do SSIS (SSISDB).

    O nome do host do ponto de extremidade público vem no formato <mi_name.public>.<dns_zone.database.windows.net> e que a porta usada para a conexão é 3342.

    A captura de tela mostra a configuração do tempo de execução da integração com o catálogo Create S S I S selecionado e o ponto de extremidade do servidor de banco de dados do catálogo inserido.

  2. Selecione Autenticação Microsoft Entra quando aplicável.

    catalog-public-endpoint

    Para saber mais sobre como habilitar a autenticação do Microsoft Entra, veja Habilitar a ID do Microsoft Entra na Instância Gerenciada SQL do Azure.

  3. Junte o IR do Azure-SSIS à rede virtual quando aplicável.

    Na página de configuração avançada, selecione a Rede Virtual e a sub-rede para participar.

    Quando estiver dentro da mesma rede virtual que a Instância Gerenciada SQL, escolha uma sub-rede diferente da Instância Gerenciada SQL.

    Para obter mais informações sobre como unir o IR do Azure-SSIS em uma rede virtual, consulte Ingressar em um tempo de execução de integração do Azure-SSIS a uma rede virtual.

    A captura de tela mostra as configurações avançadas de configuração do tempo de execução de integração, onde você pode selecionar uma rede virtual para ingressar no tempo de execução.

Para obter mais informações sobre como criar um IR do Azure-SSIS, consulte Criar um tempo de execução de integração do Azure-SSIS no Azure Data Factory.

Limpar logs do SSISDB

A política de retenção de logs do SSISDB é definida pelas propriedades abaixo em catalog.catalog_properties:

  • OPERATION_CLEANUP_ENABLED

    Quando o valor é TRUE, os detalhes da operação e as mensagens da operação anteriores a RETENTION_WINDOW (dias) são excluídos do catálogo. Quando o valor é FALSE, todos os detalhes da operação e mensagens da operação são armazenados no catálogo. Nota: um trabalho do SQL Server executa a limpeza da operação.

  • RETENTION_WINDOW

    O número de dias em que os detalhes da operação e as mensagens da operação são armazenados no catálogo. Quando o valor é -1, a janela de retenção é infinita. Nota: Se nenhuma limpeza for desejada, defina OPERATION_CLEANUP_ENABLED como FALSE.

Para remover logs SSISDB que estão fora da janela de retenção definida pelo administrador, você pode acionar o procedimento [internal].[cleanup_server_retention_window_exclusive]armazenado . Opcionalmente, você pode agendar a execução do trabalho do agente da Instância Gerenciada SQL para disparar o procedimento armazenado.