Resolver problemas de gestão de Integration Runtime do SSIS

APLICA-SE A: Azure Data Factory Azure Synapse Analytics

Dica

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

Este artigo fornece orientações de resolução de problemas de gestão no Integration Runtime (IR) do Azure-SQL Server Integration Services (SSIS), também conhecido como SSIS IR.

Descrição Geral

Se tiver algum problema ao aprovisionar ou desaprovisionar o SSIS IR, verá uma mensagem de erro no portal do Microsoft Azure Data Factory ou um erro devolvido a partir de um cmdlet do PowerShell. O erro aparece sempre no formato de um código de erro com uma mensagem de erro detalhada.

Se o código de erro for InternalServerError, o serviço tem problemas transitórios e deverá repetir a operação mais tarde. Se uma repetição não ajudar, contacte a equipa de suporte do Azure Data Factory.

Caso contrário, três grandes dependências externas podem causar erros: SQL do Azure Base de Dados ou Azure SQL Managed Instance, um script de configuração personalizado e uma configuração de rede virtual.

Base de Dados SQL ou problemas de SQL Managed Instance

Base de Dados SQL ou SQL Managed Instance é necessário se estiver a aprovisionar o SSIS IR com uma base de dados de catálogo do SSIS. O SSIS IR tem de conseguir aceder a Base de Dados SQL ou SQL Managed Instance. Além disso, a conta de início de sessão para Base de Dados SQL ou SQL Managed Instance tem de ter permissão para criar uma base de dados de catálogo SSIS (SSISDB). Se ocorrer algum erro, será apresentado um código de erro com uma mensagem de exceção SQL detalhada no portal do Data Factory. Utilize as informações na lista a seguir para resolver problemas de códigos de erro.

AzureSqlConnectionFailure

Poderá ver este problema quando estiver a aprovisionar um novo SSIS IR ou enquanto o runtime de integração estiver em execução. Se ocorrer este erro durante o aprovisionamento do runtime de integração, poderá obter uma mensagem de SqlException detalhada na mensagem de erro que indica um dos seguintes problemas:

  • Um problema de ligação de rede. Verifique se o nome do anfitrião para Base de Dados SQL ou SQL Managed Instance está acessível. Verifique também se nenhuma firewall ou grupo de segurança de rede (NSG) está a bloquear o acesso do SSIS IR ao servidor.
  • Falha no início de sessão durante a autenticação do SQL. A conta fornecida não consegue iniciar sessão na base de dados do SQL Server. Confirme que indica a conta de utilizador correta.
  • Falha de início de sessão durante a autenticação do Microsoft Azure Active Directory (Microsoft Azure AD) (identidade gerida). Adicione a identidade gerida da fábrica a um grupo do AAD e verifique se a identidade gerida tem permissões de acesso ao servidor da base de dados de catálogo.
  • Limite de tempo da ligação excedido. Este erro é sempre causado por uma configuração relacionada com a segurança. É recomendável que:
    1. Crie uma nova VM.
    2. Associe a VM à mesma Rede Virtual de IR do Microsoft Azure se o IR estiver numa rede virtual.
    3. Instale o SSMS e verifique o estado Base de Dados SQL ou SQL Managed Instance.

Para outros problemas, corrija o problema mostrado na mensagem de erro de exceção SQL detalhada. Se continuar a ter problemas, contacte o Base de Dados SQL ou SQL Managed Instance equipa de suporte.

Se vir o erro quando o IR está em execução, é provável que as alterações do grupo de segurança de rede ou da firewall estejam a impedir o nó de trabalho do SSIS IR de aceder a Base de Dados SQL ou SQL Managed Instance. Desbloqueie o nó de trabalho do SSIS IR para que possa aceder a Base de Dados SQL ou SQL Managed Instance.

CatalogCapacityLimitError

Eis o aspeto deste tipo de mensagem de erro: "A base de dados 'SSISDB' atingiu a quota de tamanho. Particione ou elimine dados, largue índices ou consulte a documentação para obter possíveis resoluções."

Soluções possíveis:

  • Aumente o tamanho da quota do SSISDB.
  • Alterar a configuração do SSISDB para reduzir o tamanho, ao:
    • Reduzir o período de retenção e o número de versões do projeto.
    • Reduzir o período de retenção do registo.
    • Alterar o nível predefinido do registo.

CatalogDbBelongsToAnotherIR

Este erro significa Base de Dados SQL ou SQL Managed Instance já tem um SSISDB e que está a ser utilizado por outro IR. Tem de fornecer uma Base de Dados SQL ou SQL Managed Instance diferente ou eliminar o SSISDB existente e reiniciar o novo IR.

CatalogDbCreationFailure

Este erro pode ocorrer por um dos seguintes motivos:

  • A conta de utilizador que está configurada para o SSIS IR não tem permissão para criar a base de dados. Pode conceder ao utilizador a permissão para criar a base de dados.
  • Ocorre um erro de tempo limite durante a criação da base de dados, como um tempo limite de execução ou um tempo limite de operação da BD. Deve repetir a operação mais tarde. Se a repetição não funcionar, contacte o Base de Dados SQL ou SQL Managed Instance equipa de suporte.

Para outros problemas, verifique a Mensagem de erro de exceção do SQL e corrija o problema mencionado nos detalhes do erro. Se continuar a ter problemas, contacte o Base de Dados SQL ou SQL Managed Instance equipa de suporte.

InvalidCatalogDb

Este tipo de mensagem de erro tem o seguinte aspeto: "Nome de objeto inválido 'catalog.catalog_properties'". Nesta situação, já tem uma base de dados com o nome SSISDB, mas não foi criada pelo SSIS IR ou a base de dados está num estado inválido causado por erros no último aprovisionamento do SSIS IR. Pode remover a base de dados existente com o nome SSISDB ou pode configurar uma nova Base de Dados SQL ou SQL Managed Instance para o IR.

Problemas de configuração personalizados

A configuração personalizada fornece uma interface para adicionar os seus próprios passos de configuração durante o aprovisionamento ou a reconfiguração do SSIS IR. Para obter mais informações, veja Personalizar a configuração do Azure-SSIS Integration Runtime.

Verifique se o contentor contém apenas os ficheiros de configuração personalizados necessários; todos os ficheiros no contentor serão transferidos para o nó de trabalho do SSIS IR. Recomendamos que teste o script de configuração personalizada num computador local para corrigir qualquer problema de execução do script antes de o executar no SSIS IR.

O contentor do script de configuração personalizada será verificado enquanto o IR estiver em execução, pois o SSIS IR é atualizado regularmente. Esta atualização requer o acesso ao contentor para transferir o script de configuração personalizada e instalá-lo novamente. O processo também verifica se o contentor está acessível e se existe o ficheiro main.cmd.

Para qualquer erro que envolva a configuração personalizada, verá um código de erro CustomSetupScriptFailure com subcódigo, como CustomSetupScriptBlobContainerInaccessible ou CustomSetupScriptNotFound.

CustomSetupScriptBlobContainerInaccessible

Este erro significa que o SSIS IR não conseguiu aceder ao contentor de blobs do Azure para a configuração personalizada. Verifique se o URI de SAS do contentor está acessível e se não expirou.

Pare o IR se estiver em execução, reconfigure o IR com o novo URI de SAS do contentor de configuração personalizada e reinicie-o.

CustomSetupScriptNotFound

Este erro significa que o SSIS IR não consegue encontrar um script de configuração personalizada (main.cmd) no contentor de blobs. Verifique se o ficheiro main.cmd existe no contentor, que é o ponto de entrada para a configuração personalizada.

CustomSetupScriptExecutionFailure

Este erro significa que a execução do script de configuração personalizada (main.cmd) falhou. Experimente o script no computador local primeiro ou verifique os registos de execução da configuração personalizada no contentor de blobs.

CustomSetupScriptTimeout

Este erro indica que foi excedido o tempo limite de execução do script de configuração personalizada. Garanta que o script pode ser executado silenciosamente, e que não são necessárias entradas interativa, e verifique se o contentor de blobs contem apenas os ficheiros de configuração personalizada necessários. Recomenda-se testar o script no computador local primeiro. Também deve verificar os registos de execução da configuração personalizada no contentor de blobs. O período máximo da configuração personalizada é de 45 minutos antes de exceder o limite de tempo. O período máximo inclui o tempo para transferir todos os ficheiros do contentor e instalá-los no SSIS IR. Se precisar de um período mais extenso, crie um pedido de suporte.

CustomSetupScriptLogUploadFailure

Este erro significa que a tentativa de carregamento dos registos de execução da configuração personalizada para o contentor de blobs falhou. O problema ocorre porque o SSIS IR não tem permissões de escrita no contentor de blobs ou devido a problemas de armazenamento ou rede. Se a configuração personalizada for bem sucedida, este erro não afetará nenhuma função do SSIS, mas os registos estarão ausentes. Se a configuração personalizada falhar com outro erro e o registo não for carregado, este erro será comunicado em primeiro para que o registo possa ser carregado para análise. Além disso, depois deste problema ter sido resolvido, comunicaremos eventuais problemas mais específicos. Se este problema não ficar resolvido após uma nova tentativa, contacte a equipa de suporte do Azure Data Factory.

Configuração da rede virtual

Quando associa o SSIS IR à Rede Virtual do Microsoft Azure, o SSIS IR utiliza a rede virtual que está na subscrição do utilizador. Para obter mais informações, veja Associar um Azure-SSIS Integration Runtime a uma rede virtual. Após o início do SSIS IR com êxito, se encontrar problemas de ligação de rede, pode tentar utilizar a ferramenta de conectividade de diagnóstico para diagnosticar o problema. Quando ocorrer um problema relacionado com a Rede Virtual, verá um dos erros a seguir.

InvalidVnetConfiguration

Este erro pode ocorrer por vários motivos. Para resolver este erro, veja as secções Proibido, InvalidPropertyValue e MisconfiguredDnsServerOrNsgSettings.

Proibido

Este tipo de erro poderá assemelhar-se ao seguinte: "O SubnetId não está ativado para a conta atual. O fornecedor de recursos Microsoft.Batch não está registado na mesma subscrição da VNet."

Estes detalhes significam que o Azure Batch não consegue aceder à rede virtual. Registe o fornecedor de recursos do Microsoft.Batch na mesma subscrição da Rede Virtual.

InvalidPropertyValue

Este tipo de erro pode ser semelhante a um dos seguintes:

  • "A VNet especificada não existe ou o serviço Batch não tem acesso à mesma."
  • "A sub-rede xxx especificada não existe."

Estes erros significam que a rede virtual não existe, o serviço do Azure Batch não pode aceder à rede ou a sub-rede fornecida não existe. Verifique se a rede virtual e a sub-rede existem e se o Azure Batch tem acesso.

MisconfiguredDnsServerOrNsgSettings

Este tipo de mensagem de erro pode ter o seguinte aspeto: "Falha ao aprovisionar Integration Runtime na VNet. Se as definições do servidor DNS ou do NSG estiverem configuradas, certifique-se de que o servidor DNS está acessível e que o NSG está configurado corretamente."

Nesta situação, provavelmente tem uma configuração personalizada do servidor DNS ou definições do NSG, o que impede que o nome do servidor do Azure requerido pelo SSIS IR seja resolvido ou acedido. Para obter mais informações, veja Configuração da Rede Virtual do SSIS IR. Se os problemas persistirem, contacte a equipa de suporte do Azure Data Factory.

VNetResourceGroupLockedDuringUpgrade

O SSIS IR será atualizado automaticamente de forma regular. Um novo conjunto do Azure Batch é criado durante a atualização e o conjunto do Azure Batch antigo é eliminado. Além disso, os recursos relacionados com a Rede Virtual do conjunto antigo são eliminados e os novos recursos relacionados com a Rede Virtual são criados na sua subscrição. Este erro significa que a eliminação de recursos relacionados com a Rede Virtual do conjunto antigo falhou devido a um bloqueio de eliminação ao nível da subscrição ou do grupo de recursos. Como o cliente controla e define o bloqueio de eliminação, o bloqueio de eliminação deve ser removido nesta situação.

VNetResourceGroupLockedDuringStart

Se o aprovisionamento do SSIS IR falhar, todos os recursos criados serão eliminados. No entanto, se existir um bloqueio de eliminação de recursos ao nível da subscrição ou do grupo de recursos, os recursos da Rede Virtual não serão eliminados conforme o esperado. Para corrigir este erro, remova o bloqueio de eliminação e reinicie o IR.

VNetResourceGroupLockedDuringStop/VNetDeleteLock

Quando parar o SSIS IR, todos os recursos relacionados com a Rede Virtual serão eliminados. Mas a eliminação poderá falhar se existir um bloqueio de eliminação de recursos ao nível da subscrição ou do grupo de recursos. Também aqui o cliente controla e define o bloqueio de eliminação. Portanto, o cliente deve remover o bloqueio de eliminação e parar o SSIS IR novamente.

NodeUnavailable

Este erro ocorre quando o IR está em execução e significa que o IR passou a estar em mau estado de funcionamento. Este erro é sempre causado por uma alteração no servidor DNS ou na configuração NSG que impede que o SSIS IR se ligue a um serviço necessário. Como a configuração do servidor DNS e do NSG é controlada pelo cliente, o cliente deve corrigir os problemas de bloqueio no seu lado. Para obter mais informações, veja Configuração da Rede Virtual do SSIS IR. Se os problemas persistirem, contacte a equipa de suporte do Azure Data Factory.

Configuração de endereços IP públicos estáticos

Quando associa o Azure-SSIS IR ao Azure Rede Virtual, também pode trazer os seus próprios endereços IP públicos estáticos para o IR para que o IR possa aceder a origens de dados que limitam o acesso a endereços IP específicos. Para obter mais informações, veja Associar um Azure-SSIS Integration Runtime a uma rede virtual.

Além dos problemas de rede virtual acima, também pode encontrar um problema relacionado com endereços IP públicos estáticos. Verifique os seguintes erros para obter ajuda.

InvalidPublicIPSpecified

Este erro pode ocorrer por vários motivos quando inicia o Azure-SSIS IR:

Mensagem de erro Solução
O endereço IP público estático fornecido já é utilizado, forneça dois não utilizados para o seu Integration Runtime Azure-SSIS. Deve selecionar dois endereços IP públicos estáticos não utilizados ou remover as referências atuais ao endereço IP público especificado e, em seguida, reiniciar o Azure-SSIS IR.
O endereço IP público estático fornecido não tem nome DNS. Indique dois deles com o nome DNS para o seu Integration Runtime Azure-SSIS. Pode configurar o nome DNS do endereço IP público no portal do Azure, como mostra a imagem abaixo. Os passos específicos são os seguintes: (1) Abrir portal do Azure e obter a página de recursos deste endereço IP público; (2) Selecione a secção Configuração e configure o nome DNS e, em seguida, clique no botão Guardar; (3) Reinicie o Azure-SSIS IR.
A VNet fornecida e os endereços IP públicos estáticos para o seu Azure-SSIS Integration Runtime têm de estar na mesma localização. De acordo com os requisitos da Rede do Azure, o endereço IP público estático e a rede virtual devem estar na mesma localização e subscrição. Forneça dois endereços IP públicos estáticos válidos e reinicie o Azure-SSIS IR.
O endereço IP público estático fornecido é básico, forneça dois padrões para o seu Integration Runtime Azure-SSIS. Consulte SKUs do Endereço IP Público para obter ajuda.

Runtime de integração Azure-SSIS

PublicIPResourceGroupLockedDuringStart

Se Azure-SSIS IR aprovisionamento falhar, todos os recursos que foram criados serão eliminados. No entanto, se existir um bloqueio de eliminação de recursos ao nível da subscrição ou do grupo de recursos (que contém o seu endereço IP público estático), os recursos de rede não serão eliminados conforme esperado. Para corrigir o erro, remova o bloqueio de eliminação e reinicie o IR.

PublicIPResourceGroupLockedDuringStop

Quando parar Azure-SSIS IR, todos os recursos de rede criados no grupo de recursos que contém o seu endereço IP público serão eliminados. No entanto, a eliminação pode falhar se existir um bloqueio de eliminação de recursos no nível de subscrição ou grupo de recursos (que contém o seu endereço IP público estático). Remova o bloqueio de eliminação e reinicie o IR.

PublicIPResourceGroupLockedDuringUpgrade

Azure-SSIS IR é atualizado automaticamente regularmente. Os novos nós de IR são criados durante a atualização e os nós antigos serão eliminados. Além disso, os recursos de rede criados (por exemplo, o balanceador de carga e o grupo de segurança de rede) para os nós antigos são eliminados e os novos recursos de rede são criados na sua subscrição. Este erro significa que a eliminação dos recursos de rede para os nós antigos falhou devido a um bloqueio de eliminação no nível de subscrição ou grupo de recursos (que contém o seu endereço IP público estático). Remova o bloqueio de eliminação para que possamos limpar os nós antigos e libertar o endereço IP público estático para os nós antigos. Caso contrário, não é possível libertar o endereço IP público estático e não poderemos atualizar ainda mais o SEU IR.

PublicIPNotUsableDuringUpgrade

Quando quiser trazer os seus próprios endereços IP públicos estáticos, devem ser fornecidos dois endereços IP públicos. Um deles será utilizado para criar os nós de IR imediatamente e outro será utilizado durante a atualização do IR. Este erro pode ocorrer quando o outro endereço IP público é inutilizável durante a atualização. Veja InvalidPublicIPSpecified para obter possíveis causas.

Gestão de recursos

Etiqueta de recurso não atualizada

Pode aplicar etiquetas aos seus recursos do Azure para organizá-las logicamente numa taxonomia. Enquanto o SSIS IR estiver em execução, as alterações às etiquetas de fábrica de dados principais do SSIS IR não entrarão em vigor até que o SSIS IR seja reiniciado.