Share via


Criar e configurar um observador de banco de dados (preview)

Aplica-se a:Banco de Dados SQL do AzureInstância Gerenciada de SQL do Azure

O observador de banco de dados não requer a implantação ou manutenção de agentes de monitoramento ou de outra infraestrutura de monitoramento. É possível habilitar o monitoramento detalhado do banco de dados dos recursos do SQL do Azure em minutos.

Este artigo contém etapas detalhadas para criar, configurar e iniciar um observador de banco de dados no portal do Azure.

Para obter um exemplo com etapas detalhadas de criação e de configuração de um observador de banco de dados, confira Início Rápido: criar um observador de banco de dados para monitorar o SQL do Azure.

Para ver como você pode criar e configurar um observador de banco de dados com o Bicep ou um modelo ARM, consulte Criar um observador de banco de dados.

Para gerenciar observadores de banco de dados programaticamente, consulte a documentação da API REST do observador de banco de dados.

Observação

No momento, o observador de banco de dados está em preview. Os recursos da preview são liberados com funcionalidades limitadas, mas estão disponíveis como preview para que os clientes possam obter acesso antecipado e fornecer feedback. Os recursos da preview estão sujeitos aos termos de preview complementares, que são distintos e não estão sujeitos a SLAs. O suporte é fornecido como melhor esforço em determinados casos. No entanto, o Suporte da Microsoft quer muito seus comentários sobre a funcionalidade de versão prévia e pode fornecer o melhor suporte em determinados casos. Os recursos da preview podem ter funcionalidades limitadas ou restritas e podem estar disponíveis apenas em áreas geográficas selecionadas.

Pré-requisitos

Para usar o observador de banco de dados, é necessários atender os pré-requisitos apresentados a seguir.

  • Você precisará de uma assinatura ativa do Azure. Se você não tiver uma, crie uma conta gratuita. Você precisa ser membro da função Colaborador ou da função Proprietário da assinatura ou de um grupo de recursos para poder criar recursos.

  • Para configurar um observador de banco de dados, você precisará de um destino do SQL existente: um banco de dados SQL do Azure, um pool elástico ou uma instância gerenciada de SQL.

  • Os provedores de recursos Microsoft.DatabaseWatcher, Microsoft.Kusto e Microsoft.Network devem estar registrados em sua assinatura do Azure.

    O registro do provedor de recursos é automático se tiver a subscrição à função RBACProprietário ou Contribuidor ao nível da assinatura. Caso contrário, um usuário em uma dessas funções deverá efetuar o registro de provedores de recursos antes que você possa criar e configurar um observador. Para saber mais, confira Registrar provedores de recursos.

  • O usuário que cria e configura o observador e os recursos do cluster do Azure Data Explorer deve ser membro da função RBAC Proprietário ou Contribuidor para o grupo de recursos ou ter uma assinatura na qual estes recursos são criados.

    Além disso, se usar a autenticação do SQL, o usuário deve ser membro da função Proprietário do grupo de recursos ou membro da função Proprietário ou Administrador de acesso de usuário para o cofre de chaves que armazena credenciais de autenticação do SQL.

  • O usuário que realiza a configuração do observador deve ter acesso de administrador aos destinos do SQL do Azure. O observador recebe acesso limitado e específico aos destinos de monitoramento do SQL. Para obter mais informações, confira Permitir acesso a destinos.

  • Para realizar a concessão de acesso para um observador a um destino do SQL, você precisa executar scripts T-SQL. É possível usar o SQL Server Management Studio (SSMS), o Azure Data Studio, ou o Visual Studio Code com a extensão mssql do SQL Server.

  • Para usar o Link Privado do Azure para obter conectividade privada aos recursos do Azure, o usuário que aprova o ponto de extremidade privado deve ser membro da função RBAC Proprietário ou deve ter as permissões de RBAC necessárias. Para obter mais informações, confira Aprovação de RBAC para ponto de extremidade privado.

Criar um observador

  1. No portal do Azure, no menu de navegação, selecione Todos os Serviços. Selecione Monitorar como a categoria e, em Ferramentas de Monitoramento, escolha Observadores de Banco de Dados. Como alternativa, é possível digitar observador de banco de dados na caixa de Pesquisa na parte superior da página do portal e selecionar Observadores de Banco de Dados.

    Assim que a exibição Observadores de Banco de Dados for aberta, selecione Criar.

  2. Na guia Noções Básicas, selecione a assinatura e o grupo de recursos para o observador, insira o nome do observador e escolha uma região do Azure.

    Dica

    Durante a preview, se o observador de banco de dados ainda não estiver disponível em sua região, você poderá criá-lo em uma região diferente. Para obter mais informações, confira Regional availability.

  3. Na guia Identidade, o status de identidade gerenciada atribuída pelo sistema é definido como Ativo. No momento, não há suporte para a criação de observadores sem uma identidade gerenciada atribuída pelo sistema.

  4. Escolha um armazenamento de dados para o observador.

    Por padrão, a criação de um observador também cria um cluster do Azure Data Explorer e adiciona um banco de dados nesse cluster como o armazenamento de dados para os dados de monitoramento coletados.

    • Por padrão, o novo cluster do Azure Data Explorer usa o SKU extra pequeno e com computação otimizada. Esta é o SKU mais econômico que ainda oferece um Contrato de Nível de Serviço (SLA). É possível escalar esse cluster posteriormente, conforme necessário.

    • Como alternativa, você pode usar um banco de dados em um cluster do Azure Data Explorer existente, em um cluster do Azure Data Explorer gratuito ou na Análise em Tempo Real.

      1. Na guia Armazenamento de Dados, escolha a opção Selecionar um Armazenamento de Dados e selecione Adicionar.
      2. Selecione um banco de dados da Análise em Tempo Real ou um cluster do Azure Data Explorer.
      3. Se estiver usando um cluster do Azure Data Explorer existente, você deverá habilitar a ingestão de streaming.
      4. Crie um novo banco de dados ou use um banco de dados existente.

      Observação

      O banco de dados existente selecionado deve estar vazio ou deve ser um banco de dados que você usou anteriormente como um armazenamento de dados do observador de banco de dados. Não há suporte para a seleção de um banco de dados que contenha objetos que não foram criados pelo observador de banco de dados.

  5. Na guia Destinos do SQL, adicione um ou mais recursos do SQL do Azure para serem monitorados. É possível ignorar a adição de destinos do SQL ao criar o observador e adicioná-los posteriormente. Você precisa adicionar, no mínimo, um destino antes de iniciar o observador.

  6. Na guia Fazer Revisão e Criar, faça a revisão da configuração do observador e selecione Criar. Se você selecionar a opção padrão para criar um novo cluster do Azure Data Explorer, normalmente, a implantação demora de 15 a 20 minutos. Se você selecionar um banco de dados em um cluster do Azure Data Explorer existente, em um cluster gratuito do Azure Data Explorer ou na Análise em Tempo Real, normalmente, a implantação demora até cinco minutos.

  7. Assim que a implantação for concluída, realize a concessão de acesso aos destinos do SQL para o observador.

    • O acesso a um banco de dados em um cluster novo ou existente do Azure Data Explorer é concedido automaticamente quando o observador é criado.
    • No entanto, você deverá permitir acesso para o armazenamento de dados ao usar um comando do KQL se selecionar um banco de dados em:
      • Análise em Tempo Real no Microsoft Fabric
      • Um cluster gratuito do Azure Data Explorer
  8. Crie pontos de extremidade privados gerenciados se desejar usar a conectividade privada.

Iniciar e parar um observador

Quando um observador é criado, ele não é iniciado automaticamente porque pode ser necessário realizar configurações adicionais.

Para iniciar um observador, ele deve ter:

Depois que um observador estiver totalmente configurado, na página de Visão Geral, use o botão Iniciar para iniciar a coleção de dados. Em poucos minutos, novos dados de monitoramento aparecem no armazenamento de dados e nos dashboards. Se você não vir os novos dados em cinco minutos, confira Solução de problemas.

É possível parar o observador com o botão Parar se não precisar monitorar os recursos do SQL do Azure por algum tempo.

Para reiniciar um observador, pare-o e reinicie-o.

Modificar um observador

No portal do Azure, é possível adicionar ou remover destinos, criar ou excluir pontos de extremidade privados ou usar um armazenamento de dados diferente para um observador existente.

Observação

A menos que seja indicado de forma diferente, as alterações realizadas na configuração do observador entrarão em vigor após você parar e reiniciar o observador.

Adicionar destinos do SQL a um observador

Para habilitar o monitoramento do observador de banco de dados para um banco de dados SQL do Azure, pool elástico ou instância gerenciada de SQL, é necessário adicionar este recurso como um destino do SQL.

  1. Para adicionar um destino, na página Destinos do SQL, selecione Adicionar.
  2. Localize o recurso do SQL do Azure que você deseja monitorar. Selecione o tipo de recurso e a assinatura e, em seguida, selecione o destino do SQL na lista de recursos. O destino do SQL pode estar em qualquer assinatura no mesmo locatário do Microsoft Entra ID do observador.
  3. Para monitorar a réplica primária e uma réplica secundária de alta disponibilidade de um banco de dados, pool elástico ou instância gerenciada de SQL, adicione dois destinos separados para o mesmo recurso e marque a caixa Intenção de Leitura para um deles.
    • Marcar a caixa Intenção de Leitura configura o observador para monitorar somente a réplica secundária de alta disponibilidade.
    • Não marque a caixa Intenção de Leitura se desejar monitorar somente a réplica primária, se não existir uma réplica secundária de alta disponibilidade para esse recurso ou se o recurso de expansão de leitura estiver desabilitado.

Por padrão, o observador de banco de dados usa a autenticação do Microsoft Entra ao realizar a conexão com os destinos do SQL. Se desejar que o observador use autenticação do SQL, marque a caixa Usar Autenticação do SQL e insira os detalhes necessários. Para obter mais informações, confira Configuração adicional para usar a autenticação do SQL.

Remover destinos do SQL de um observador

Para remover um ou mais destinos, abra a página Destinos do SQL, selecione os destinos que deseja remover na lista e escolha Excluir.

A remoção de um destino interrompe o monitoramento de um recurso do SQL do Azure quando o observador é reiniciado, mas não exclui o recurso real.

Se você excluir um recurso do SQL do Azure monitorado pelo observador de banco de dados, também deverá remover o destino correspondente. Como há um limite em relação ao número de destinos do SQL que um observador pode ter, manter os destinos obsoletos pode bloquear a adição de novos destinos.

Criar um ponto de extremidade privado gerenciado

Se desejar usar a conectividade privada para a coleção de dados de destinos do SQL, para a ingestão no armazenamento de dados e para a conexão com um cofre de chaves, você deve criar pontos de extremidade privados e gerenciados. Se você não criar pontos de extremidade privados, o observador de banco de dados usará a conectividade pública como padrão.

Para criar um ponto de extremidade privado e gerenciado:

  1. Se houver um bloqueio somente leitura no recurso, no grupo de recursos ou na assinatura do recurso para o qual você está criando um ponto de extremidade privado gerenciado, remova o bloqueio. Você pode adicionar o bloqueio novamente depois que o ponto de extremidade privado for criado com êxito.

  2. Navegue até um observador de banco de dados no portal do Azure, abra a página Pontos de Extremidade Privados e Gerenciados e selecione Adicionar.

  3. Insira um nome para o ponto de extremidade privado.

  4. Selecione a assinatura do recurso do Azure para a qual pretende criar o ponto de extremidade privado.

  5. Dependendo do recurso para o qual pretende criar um ponto de extremidade privado, selecione o Tipo de Recurso e o Sub-recurso de Destino da seguinte forma:

    Recurso Tipo de recurso Sub-recurso de destino
    Servidor lógico Microsoft.Sql/servers sqlServer
    Instância Gerenciada de SQL Microsoft.Sql/managedInstances managedInstance
    Cluster do Azure Data Explorer Microsoft.Kusto/clusters cluster
    Key vault Microsoft.KeyVault/vaults vault
  6. Selecione o recurso para o qual deseja criar um ponto de extremidade privado. Pode ser um servidor lógico do SQL do Azure ou uma instância gerenciada de SQL, um cluster do Azure Data Explorer ou um cofre de chaves.

    • A criação de um ponto de extremidade privado para um servidor lógico do Banco de Dados SQL do Azure habilita a conectividade privada do observador de banco de dados para todos os destinos de banco de dados e de pool elástico nesse servidor.
  7. Como opção, insira a descrição do ponto de extremidade privado. Isto pode ajudar o proprietário do recurso a aprovar a solicitação.

  8. Selecione Criar. Pode demorar entre um e dois minutos para criar um ponto de extremidade privado. Um ponto de extremidade privado é criado quando o estado de provisionamento sofre alterações de Aceito ou Em Execução para Com Êxito. Atualize a exibição para visualizar o estado de provisionamento atual.

    Importante

    O ponto de extremidade privado é criado no estado Pendente. Ele deve ser aprovado pelo proprietário do recurso antes que o observador do banco de dados possa usá-lo para realizar a conexão com o recurso.

    Para permitir que os proprietários dos recursos controlem a conectividade da rede, os pontos de extremidade privados do observador de banco de dados não são aprovados automaticamente.

  9. O proprietário do recurso deve aprovar a solicitação do ponto de extremidade privado.

Se um observador já estiver em execução quando um ponto de extremidade privado for aprovado, ele deverá ser reiniciado para começar a usar a conectividade privada.

Excluir um ponto de extremidade privado e gerenciado.

  1. Se houver um bloqueio de exclusão no recurso, no grupo de recursos ou na assinatura do recurso para o qual você está criando um ponto de extremidade privado gerenciado, remova o bloqueio. Você pode adicionar o bloqueio novamente depois que o ponto de extremidade privado for excluído com êxito.
  2. Na página do portal do Azure para o seu observador de banco de dados, abra a página Pontos de Extremidade Privados e Gerenciados.
  3. Selecione os pontos de extremidade privados que pretende excluir.
  4. Selecione Excluir.

A exclusão de um ponto de extremidade privado gerenciado interrompe a coleção de dados de destinos do SQL que usam esse ponto de extremidade privado. A exclusão do ponto de extremidade privado e gerenciado para o cluster do Azure Data Explorer interrompe a coleção de dados para todos os destinos. Para retomar a coleção de dados, crie o ponto de extremidade privado novamente ou habilite a conectividade pública e reinicie o observador.

Alterar o armazenamento de dados para um observador

Um observador pode ter somente um armazenamento de dados.

Para alterar o armazenamento de dados atual, remova o armazenamento de dados existente e, em seguida, adicione um novo armazenamento de dados.

  • Para remover o armazenamento de dados atual, abra a página Armazenamento de Dados, selecione o armazenamento de dados na grade e escolha Excluir.

    • A remoção de um armazenamento de dados não exclui o banco de dados real do armazenamento de dados em um cluster do Azure Data Explorer ou na Análise em Tempo Real no Microsoft Fabric.
    • Para interromper a coleção de dados em um armazenamento de dados removido, pare o observador.
    • Se você remover um armazenamento de dados, deverá adicionar um novo armazenamento de dados antes de iniciar o observador novamente.
  • Para adicionar um armazenamento de dados, selecione Adicionar na página Armazenamento de Dados e, em seguida, selecione ou crie um banco de dados em um cluster do Azure Data Explorer ou na Análise em Tempo Real.

    • O banco de dados selecionado deve estar vazio ou deve ser um banco de dados que você usou anteriormente como um armazenamento de dados do observador de banco de dados. Não há suporte para a seleção de um banco de dados que contenha objetos que não foram criados pelo observador de banco de dados.
    • Depois de adicionar um armazenamento de dados, você deverá conceder acesso ao observador para usá-lo. Para obter mais informações, confira Permitir acesso ao armazenamento de dados.
    • O novo armazenamento de dados será usado após o observador ser reiniciado.

Excluir um observador

Ao excluir um observador, a identidade gerenciada atribuída pelo sistema também é excluída. Isso remove o acesso concedido a esta identidade. Se criar o observador novamente em um momento posterior, será necessário permitir acesso à identidade gerenciada atribuída pelo sistema do novo observador para realizar a autenticação para cada recurso. Isso inclui:

Você deve permitir acesso a um observador criado novamente, mesmo se usar o mesmo nome do observador.

Ao excluir um observador, os recursos do Azure referenciados como os destinos e o armazenamento de dados não são excluídos. Você retém os dados de monitoramento do SQL coletados no armazenamento de dados e pode usar o mesmo banco de dados que o armazenamento de dados se criar um novo observador posteriormente.

Permitir acesso a destinos do SQL

Para permitir que um observador colete dados de monitoramento do SQL, é necessário executar um script T-SQL que conceda as permissões específicas e limitadas do SQL para o observador.

  • Para executar o script no Banco de Dados SQL do Azure, você precisa de acesso de administrador do servidor ao servidor lógico que contém os bancos de dados e os pools elásticos que deseja monitorar.

    • No Banco de Dados SQL do Azure, é necessário executar o script somente uma vez por servidor lógico para cada observador criado. Isto concede ao observador acesso a todos os bancos de dados e pools elásticos existentes e novos nesse servidor.
  • Para executar o script na Instância Gerenciada de SQL do Azure, você precisa ser membro de uma função de servidor sysadmin ou securityadmin, ou ter a permissão do servidor CONTROL na instância gerenciada de SQL.

    • Na Instância Gerenciada de SQL do Azure, você precisa executar o script em cada instância que deseja monitorar.
  1. Navegue até o observador no portal do Azure, selecione Destinos do SQL, escolha um dos links Permitir Acesso para abrir o script T-SQL e copie o script. Certifique-se de escolher o link mais adequado para o seu tipo de destino e o tipo de autenticação que deseja usar.

    Importante

    O script de autenticação do Microsoft Entra no portal do Azure é específico para um observador porque inclui o nome do observador. Para obter uma versão genérica desse script que você pode personalizar para cada observador, confira Permitir acesso a destinos do SQL com scripts T-SQL.

  2. No SQL Server Management Studio, no Azure Data Studio ou em outras ferramenta de cliente do SQL, abra um novo período de consulta e faça conexão com o banco de dados master em um servidor lógico do SQL do Azure que contém o destino ou ao banco de dados master em um destino de instância gerenciada de SQL.

  3. Cole e execute o script T-SQL para permitir acesso ao observador. O script cria um logon que o observador usará para se realizar a conexão e a concessão de permissões específicas e limitadas para coletar dados de monitoramento.

    1. Se você usar um script de autenticação do Microsoft Entra, o observador já deverá estar criado quando você executar o script. Além disso, você deve estar conectado com a autenticação do Microsoft Entra.

Se você adicionar novos destinos a um observador posteriormente, precisará permitir acesso a esses destinos de maneira semelhante, a menos que esses destinos estejam em um servidor lógico para o qual o acesso já tenha sido concedido.

Permitir acesso a destinos do SQL com scripts T-SQL

Existem diferentes scripts para a autenticação do Microsoft Entra e a autenticação do SQL, e para destinos de Banco de Dados SQL do Azure e de Instância Gerenciada de SQL do Azure.

Importante

Sempre use os scripts fornecidos para permitir acesso ao observador de banco de dados. A concessão de acesso de uma forma diferente pode bloquear a coleção de dados. Para obter mais informações, confira Autorização do observador.

Antes de executar um script, substitua todas as instâncias de espaços reservados que possam estar presentes no script, como login-name-placeholder, user-name-placeholder e password-placeholder pelos valores reais.

Permitir acesso a observadores com autenticação do Microsoft Entra

Este script cria um logon de autenticação do Microsoft Entra (anteriormente conhecido como Azure Active Directory) em um servidor lógico no Banco de Dados SQL do Azure. O logon é criado para a identidade gerenciada de um observador. O script concede ao observador as permissões necessárias e suficientes para coletar dados de monitoramento de todos os bancos de dados e pools elásticos no servidor lógico.

Você deve usar o nome do observador como o nome de logon. O script deve ser executado no banco de dados master do servidor lógico. Você deve estar conectado usando um logon de autenticação do Microsoft Entra que seja um administrador do servidor.

CREATE LOGIN [watcher-name-placeholder] FROM EXTERNAL PROVIDER;

ALTER SERVER ROLE ##MS_ServerPerformanceStateReader## ADD MEMBER [watcher-name-placeholder];
ALTER SERVER ROLE ##MS_DefinitionReader## ADD MEMBER [watcher-name-placeholder];
ALTER SERVER ROLE ##MS_DatabaseConnector## ADD MEMBER [watcher-name-placeholder];

Permitir acesso a observadores com autenticação do SQL

Etapas adicionais são necessárias ao usar a autenticação do SQL, confira Configuração adicional para usar a autenticação do SQL.

Este script cria um logon de autenticação do SQL em um servidor lógico no Banco de Dados SQL do Azure. Ele concede ao logon as permissões necessárias e suficientes para coletar dados de monitoramento de todos os bancos de dados e pools elásticos nesse servidor lógico.

O script deve ser executado no banco de dados master do servidor lógico, usando um logon que seja de um administrador do servidor lógico.

CREATE LOGIN [login-name-placeholder] WITH PASSWORD = 'password-placeholder';

ALTER SERVER ROLE ##MS_ServerPerformanceStateReader## ADD MEMBER [login-name-placeholder];
ALTER SERVER ROLE ##MS_DefinitionReader## ADD MEMBER [login-name-placeholder];
ALTER SERVER ROLE ##MS_DatabaseConnector## ADD MEMBER [login-name-placeholder];

Configuração adicional para usar a autenticação do SQL

Para armazenar credenciais de autenticação com segurança, o uso da autenticação do SQL no observador de banco de dados requer uma configuração adicional.

Dica

Para obter uma configuração mais segura, mais simples e menos propensa a erros, recomendamos habilitar a autenticação do Microsoft Entra para os recursos do SQL do Azure e usá-la em vez da autenticação do SQL.

Para configurar o observador de banco de dados para realizar uma conexão com um destino ao usar a autenticação do SQL, siga estas etapas:

  1. Crie um cofre no Azure Key Vault ou identifique um cofre existente que você possa usar. O cofre deve usar o modelo de permissão RBAC. O modelo de permissão RBAC é o padrão para novos cofres. Se você quiser usar um cofre existente, verifique se ele não está configurado para usar o modelo mais antigo de política de acesso.

    Se desejar usar a conectividade privada com o cofre, crie um ponto de extremidade privado na página Pontos de Extremidade Privados e Gerenciados. Selecione Microsoft.KeyVault/vaults como o Tipo de Recurso e vault como Sub-recurso de Destino. Certifique-se de que o ponto de extremidade privado é aprovado antes de iniciar o observador.

    Se desejar usar a conectividade pública, o cofre deverá ter o acesso público de todas as redes habilitado. Não há suporte para a restrição da conectividade do cofre público para redes específicas no observador de banco de dados.

  2. Crie um logon de autenticação do SQL em cada servidor lógico do SQL do Azure ou em cada instância gerenciada que você deseja monitorar e conceda as permissões necessárias. Use os scripts de acesso fornecidos para a autenticação do SQL e substitua os espaços reservados para nome de logon, nome de usuário e senha pelos valores reais. Use uma senha forte.

  3. No cofre, crie dois segredos: um segredo para o nome de logon e um segredo separado para a senha. Use nomes válidos como nome do segredo e insira o nome de logon ou senha usado no script T-SQL como o valor do segredo.

    Por exemplo, os nomes dos dois segredos podem ser database-watcher-login-name e database-watcher-password. Os valores de segredos corresponderiam a um nome de logon e a uma senha forte.

    Para criar segredos, você precisa ser membro da função RBAC Key Vault Secrets Officer.

  4. Na página Controle de Acesso (IAM) de cada segredo, adicione uma atribuição de função para a identidade gerenciada do observador na função RBAC Key Vault Secrets User. Para seguir o princípio do menor privilégio, adicione esta atribuição de função para cada segredo, em vez de para todo o cofre. A página Controle de acesso (IAM) só será exibida se o cofre estiver configurado para usar o modelo de permissão RBAC.

  5. Adicione o destino do SQL para um observador. Ao adicionar um destino, marque a caixa Usar Autenticação do SQL e selecione o cofre em que o nome de logon e os segredos de senha estão armazenados. Insira os nomes dos segredos para nome de logon e senha.

    Ao adicionar um destino do SQL, não insira o nome de logon e a senha reais. Ao usar o exemplo anterior, você inseriria os nomes de segredos database-watcher-login-name e database-watcher-password.

Se desejar usar logons diferentes em destinos do SQL diferentes, você poderá usar o mesmo cofre para armazenar todos os segredos.

Observação

Se você atualizar o valor do segredo para um nome de logon ou uma senha no cofre de chaves enquanto um observador estiver em execução, o observador se reconectará aos destinos usando as novas credenciais de autenticação do SQL em 15 minutos. Se desejar começar a usar as novas credenciais imediatamente, pare o que está fazendo e reinicie o observador.

Permitir acesso ao armazenamento de dados

Para criar e gerenciar o esquema do banco de dados ao longo do tempo e para ingerir dados de monitoramento, o observador de banco de dados requer subscrição à função RBAC Administradores no banco de dados do armazenamento de dados. O observador de banco de dados não requer acesso em nível de cluster ao cluster do Azure Data Explorer ou acesso a outros bancos de dados que possam existir no mesmo cluster.

Se você criar um novo cluster e um novo banco de dados do Azure Data Explorer ou selecionar um banco de dados em um cluster existente ao criar um observador, esse acesso será concedido automaticamente se o usuário que cria o observador for membro da função RBAC Proprietário do cluster.

Se você alterar o armazenamento de dados para um observador existente, ou se usar um banco de dados na Análise em Tempo Real ou em um cluster do Azure Data Explorer gratuito, será necessário realizar a concessão de acesso conforme descrito nesta seção.

Permitir acesso a um banco de dados do Azure Data Explorer ao usar o portal do Azure

É possível usar o portal do Azure para permitir acesso a um banco de dados no cluster do Azure Data Explorer:

  1. Para um banco de dados em um cluster do Azure Data Explorer, no menu de recursos em Segurança e Sistema de Rede, selecione Permissões. Não use a página Permissões do cluster.
  2. Selecione Adicionar e escolha Administrador.
  3. Na página Novas Entidades de Segurança, selecione Aplicativos Empresariais e digite o nome do observador na caixa de Pesquisa.
  4. Selecione o aplicativo empresarial que tem o mesmo nome do observador.

Permitir acesso a um banco de dados do Azure Data Explorer ao usar KQL

Em vez de usar o portal do Azure, você pode permitir acesso ao banco de dados ao usar um comando do KQL.

  1. Conecte-se a um banco de dados no cluster do Azure Data Explorer ao usar o Kusto Explorer ou a interface do usuário da Web do Azure Data Explorer . Use este método para permitir acesso a um banco de dados na Análise em Tempo Real ou em um cluster do Azure Data Explorer gratuito.

  2. Na amostra de comando do KQL apresentada a seguir, substitua três espaços reservados:

    .add database [adx-database-name-placeholder] admins ('aadapp=watcher-object-id-placeholder;tenant-primary-domain-placeholder');
    
    Espaço reservado Substituição
    adx-database-name-placeholder O nome de um banco de dados em um cluster do Azure Data Explorer ou na Análise em Tempo Real.
    watcher-object-id-placeholder Valor da ID do Objeto (entidade de segurança) (um GUID), encontrado na página Identidade do observador.
    tenant-primary-domain-placeholder O nome de domínio do locatário do Microsoft Entra ID do observador. Encontre isso na página de Visão Geral do Microsoft Entra ID no portal do Azure. Em vez do domínio primário do locatário, o valor do GUID da ID do Locatário também pode ser usado.

    Você poderá omitir esta parte do comando (e o ponto e vírgula precedente) se o observador e o cluster do Azure Data Explorer estiverem no mesmo locatário do Microsoft Entra ID.

    Por exemplo:

    .add database [watcher_data_store] admins ('aadapp=9da7bf9d-3098-46b4-bd9d-3b772c274931;contoso.com');
    

Para obter mais informações, confira Kusto role-based access control.

Permitir acesso ao armazenamento de dados para usuários e grupos

É possível usar o portal do Azure ou um comando do KQL para realizar a concessão de acesso a um banco de dados para usuários e grupos em um cluster do Azure Data Explorerou na Análise em Tempo Real. Para conceder acesso, você deve ser membro da função RBAC Admin no banco de dados.

Use um comando do KQL para permitir acesso a um banco de dados no cluster do Azure Data Explorer gratuito ou na Análise em Tempo Real. Para seguir o princípio do menor privilégio, recomendamos que você não adicione usuários e grupos para uma função RBAC que não seja Espectador.

Importante

Considere com atenção os requisitos de privacidade e segurança de seus dados ao permitir acesso para a exibição de dados de monitoramento do SQL coletados pelo observador de banco de dados.

Mesmo que o observador de banco de dados não tenha a capacidade de coletar dados armazenados em tabelas de usuários nos bancos de dados SQL, determinados conjuntos de dados, como Sessões Ativas, Metadados de Índice, Índices Ausentes, Estatísticas de Runtime da Consulta, Estatísticas de Espera da Consulta, Estatísticas da Sessão e Metadados da Tabela, podem conter dados potencialmente confidenciais, como nomes de tabelas e índices, texto de consulta, valores de parâmetros de consulta, nomes de logon etc.

Ao realizar a concessão de acesso de exibição ao armazenamento de dados para um usuário que não tem acesso para visualizar esses dados em um banco de dados SQL, é possível habilitar que ele veja dados confidenciais que, de outra forma, não conseguiria ver.

Permitir acesso ao armazenamento de dados ao usar o portal do Azure

É possível usar o portal do Azure para permitir acesso a um banco de dados para usuários e grupos no cluster do Azure Data Explorer:

  1. Para um banco de dados em um cluster do Azure Data Explorer, no menu de recursos em Segurança e Sistema de Rede, selecione Permissões. Não use a página Permissões do cluster.
  2. Selecione Adicionar e escolha Espectadores.
  3. Na página Novas Entidades de Segurança, digite o nome do usuário ou grupo na caixa de Pesquisa.
  4. Selecione o usuário ou o grupo.

Permitir acesso ao armazenamento de dados ao usar KQL

Em vez de usar o portal do Azure, você pode permitir acesso ao banco de dados para usuários e grupos ao usar um comando do KQL. Os exemplos de comandos do KQL apresentados a seguir concedem acesso de leitura de dados ao usuário mary@contoso.com e ao grupo SQLMonitoringUsers@contoso.com em um locatário do Microsoft Entra ID com um valor de ID de locatário específico:

.add database [watcher_data_store] viewers ('aaduser=mary@contoso.com');

.add database [watcher_data_store] viewers ('aadgroup=SQLMonitoringUsers@contoso.com;8537e70e-7fb8-43d3-aac5-8b30fb3dcc4c');

Para obter mais informações, confira Kusto role-based access control.

Para permitir acesso ao armazenamento de dados para usuários e grupos de outro locatário, é necessário habilitar a autenticação entre locatários no cluster do Azure Data Explorer. Para obter mais informações, confira Allow cross-tenant queries and commands.

Dica

A autenticação entre locatários está habilitada na Análise em Tempo Real e em clusters do Azure Data Explorer gratuitos. Isso possibilita permitir acesso aos usuários e grupos no locatário do Microsoft Entra ID para a exibição de dados nestes bancos de dados.

Gerenciar o armazenamento de dados

Esta seção descreve como você pode gerenciar o armazenamento de dados de monitoramento, incluindo a escalabilidade, a retenção de dados e outras configurações. As considerações de escalabilidade do cluster nesta seção são relevantes se você usar um banco de dados no cluster do Azure Data Explorer. Se você usar um banco de dados na Análise em Tempo Real no Fabric, a escalabilidade será gerenciada automaticamente.

Escalar o cluster do Azure Data Explorer

É possível escalar o cluster do Azure Data Explorer conforme necessário. Por exemplo, você pode reduzir verticalmente o cluster para o SKU Extra pequeno de desenvolvimento/teste se um Contrato de Nível de Serviço (SLA) não for necessário e se o desempenho de consulta e ingestão de dados permanecer aceitável.

Para muitas implantações do observador de banco de dados, o SKU padrão do cluster com duas instâncias que é extra pequeno e tem computação otimizada será suficiente indefinidamente. Em alguns casos, dependendo da configuração e das alterações na carga de trabalho ao longo do tempo, poderá ser necessário escalar o cluster para garantir o desempenho de consulta adequado e manter a baixa latência de ingestão de dados.

O Azure Data Explorer oferece suporte para escalar o cluster vertical e horizontalmente. Com a escala vertical, você realiza alterações no SKU do cluster, o que altera o número de vCPUs, memória e cache por instância (nó). Com a escala horizontal, o SKU permanece o mesmo, mas o número de instâncias no cluster aumenta ou diminui.

Você precisará escalar o cluster horizontal ou verticalmente se notar um ou mais dos seguintes indícios:

  • O desempenho do dashboard ou da consulta ad hoc se tornou muito lento.
  • Você executa diversas consultas simultâneas no cluster e recebe erros de limitação.
  • A latência de ingestão de dados torna-se consistentemente superior ao aceitável.

Em geral, não é necessário escalar o cluster, pois a quantidade de dados no armazenamento de dados aumenta com o tempo. Isso ocorre porque as consultas do dashboard e as consultas analíticas mais comuns usam somente os dados mais recentes, que são armazenados em cache no armazenamento SSD local nos nós de cluster.

No entanto, se você executar consultas analíticas que abrangem intervalos de tempo mais longos, elas poderão se tornar mais lentas com o tempo, à medida que a quantidade total de dados coletados aumentar e não caber mais no armazenamento SSD local. Neste caso, pode ser necessário escalar o cluster para manter o desempenho de consulta adequado.

  • Se for necessário escalar cluster, recomendamos escalá-lo horizontalmente primeiro para aumentar o número de instâncias. Isto mantém o cluster disponível para consultas e para a ingestão durante o processo de escalabilidade.

    • Você pode habilitar a escala automática otimizada para reduzir ou aumentar automaticamente o número de instâncias em resposta a alterações na carga de trabalho ou a tendências sazonais.
  • Você pode descobrir que, mesmo depois de escalar horizontalmente o cluster, algumas consultas ainda não funcionam conforme o esperado. Isto poderá acontecer se o desempenho da consulta estiver limitado pelos recursos disponíveis em uma instância (nó) do cluster. Nesse caso, escale verticalmente o cluster.

    • A escala vertical do cluster demora vários minutos. Durante esse processo, há um período de inatividade, que pode realizar a interrupção da coleção de dados. Se isso acontecer, pare e reinicie o observador após a conclusão da operação de escalabilidade.

Não é possível escalar um cluster do Azure Data Explorer gratuito. Se você observar que as especificações do cluster gratuito são insuficientes para os requisitos, atualize para um cluster do Azure Data Explorer completo. O processo de atualização retém todos os dados coletados. Como pode haver um período de inatividade durante a atualização, pode ser necessário parar e reiniciar o observador para retomar a coleção de dados quando a atualização for concluída.

Gerenciar a retenção de dados

Se não precisar de dados mais antigos, você poderá configurar políticas de retenção de dados para limpá-los automaticamente. Por padrão, a retenção de dados é estabelecida como 365 dias em um novo banco de dados em um cluster do Azure Data Explorer ou na Análise em Tempo Real.

  • É possível reduzir o período de retenção de dados no nível do banco de dados ou para tabelas individuais no banco de dados.
  • Além disso, é possível aumentar a retenção se você precisar armazenar dados de monitoramento por mais de um ano. Não existe um limite máximo para o período de retenção de dados.
  • Se você configurar períodos de retenção de dados diferentes para tabelas distintas, os dashboards poderão não funcionar conforme o esperado para os intervalos de tempo mais antigos. Isso pode acontecer se os dados ainda estiverem presentes em algumas tabelas, mas já tiverem sido limpos em outras tabelas para o mesmo intervalo de tempo.

Alterações de esquema e de acesso no armazenamento de dados do observador de banco de dados

Com o tempo, a Microsoft poderá introduzir novos conjuntos de dados para o observador de banco de dados ou expandir os conjuntos de dados existentes. Isso significa que novas tabelas no armazenamento de dados ou novas colunas em tabelas existentes poderão ser adicionadas automaticamente.

Para fazer isso, a identidade gerenciada de um observador de banco de dados deve ser membro da função RBAC Administradores no armazenamento de dados. Revogar esta subscrição de função ou substituí-la por uma subscrição em outra função RBAC pode impactar a coleção de dados do observador de banco de dados e o gerenciamento de esquema. Além disso, não há suporte para isso.

De forma semelhante, não há suporte para a criação de novos objetos, como tabelas, tabelas externas, exibições materializadas, funções e entre outros, no armazenamento de dados do observador de banco de dados. É possível usar consultas entre clusters e entre bancos de dados para consultar dados no armazenamento de dados de outros clusters do Azure Data Explorer ou de outros bancos de dados no mesmo cluster.

Importante

Se você alterar o acesso do observador de banco de dados ao armazenamento de dados ou fizer alterações no esquema de banco de dados ou na configuração que afetem a ingestão de dados, pode ser necessário alterar o armazenamento de dados desse observador para um novo banco de dados vazio e realizar a concessão de acesso a esse novo banco de dados para o observador com a finalidade de retomar a coleção de dados e reverter para uma configuração com suporte.

Cluster do Azure Data Explorer interrompido

Um cluster do Azure Data Explorer pode ser interrompido para economizar custos. Por padrão, um cluster do Azure Data Explorer é automaticamente interrompido após vários dias de inatividade. Por exemplo, isso pode acontecer se você parar o observador que ingere dados no único banco de dados do cluster e não executar consultas nesse banco de dados.

Se o cluster for interrompido, a coleta de dados do observador de banco de dados também será interrompida e os dados de monitoramento não aparecerão nos dashboards. Para retomar a coleta de dados e tornar os dados acessíveis por meio de dashboards, você precisa retomar manualmente o cluster. Quando o cluster estiver em execução, reinicie o observador.

É possível desabilitar o comportamento de parada automática se desejar que o cluster permaneça disponível mesmo quando estiver inativo. Isso pode aumentar o custo do cluster.

Ingestão de streaming

O observador de banco de dados requer que o cluster do Azure Data Explorer que contém o banco de dados do armazenamento de dados tenha a ingestão de streaming habilitada. A ingestão de streaming é automaticamente habilitada para o novo cluster do Azure Data Explorer criado quando você cria um novo observador. Além disso, ela está habilitada na Análise em Tempo Real e no cluster do Azure Data Explorer gratuito.

Se desejar usar um cluster do Azure Data Explorer existente, certifique-se de primeiro habilitar a ingestão de streaming. Isso demora alguns minutos e requer uma reinicialização do cluster.

Monitorar grandes propriedades

Para monitorar uma grande propriedade do SQL do Azure, pode ser necessário criar vários observadores.

Cada observador requer um banco de dados em um cluster do Azure Data Explorer ou na Análise em Tempo Real como armazenamento de dados. Os observadores criados podem usar um banco de dados individual como um armazenamento de dados comum ou bancos de dados separados como armazenamentos de dados separados. As considerações apresentadas a seguir podem ajudar você a fazer a escolha ideal de design para seus cenários e requisitos de monitoramento.

Considerações para um armazenamento de dados comum:

  • Há uma exibição de painel de controle único para toda a propriedade do SQL do Azure.
  • Contudo, os usuários com acesso ao armazenamento de dados têm acesso a todos os dados de monitoramento.

Considerações para armazenamentos de dados separados:

  • Os subconjuntos da propriedade do SQL do Azure são monitorados de forma independente. Os dashboards de propriedade no portal do Azure mostram dados de um armazenamento de dados individual. Os usuários com acesso a múltiplos armazenamentos de dados podem usar consultas do KQL entre clusters ou entre bancos de dados para acessar dados de monitoramento em diversos armazenamentos de dados usando uma única consulta.
  • Como o acesso aos dados no Azure Data Explorer e na Análise em Tempo Real é gerenciado por um banco de dados, é possível gerenciar o acesso aos dados de monitoramento para os subconjuntos da propriedade de uma forma granular.
  • É possível estabelecer múltiplos bancos de dados em um mesmo cluster do Azure Data Explorer para compartilhar recursos de cluster e economizar custos, mantendo os dados isolados em cada banco de dados.
  • Se você necessitar de uma separação completa de ambientes, incluindo o acesso de rede para clusters do Azure Data Explorer, é possível estabelecer bancos de dados diferentes em clusters distintos.