Compartilhar via


Tutorial: Usar tópicos de namespace para encaminhar mensagens MQTT para Hubs de Eventos do Azure (portal do Azure)

Neste tutorial, você vai aprender como usar um tópico de namespace para encaminhar dados de clientes MQTT para Hubs de Eventos do Azure. Aqui estão as etapas de alto nível:

Pré-requisitos

  • Caso você não tenha uma assinatura do Azure, crie uma conta gratuita do Azure antes de começar.
  • Se não estiver familiarizado com a Grade de Eventos, leia a visão geral da Grade de Eventos antes de começar o tutorial.
  • Registre o provedor de recursos da Grade de Eventos de acordo com as etapas em Registrar o provedor de recursos da Grade de Eventos.
  • Certifique-se de que a porta 8883 esteja aberta no seu firewall. A amostra deste tutorial usa o protocolo MQTT, que se comunica pela porta 8883. Essa porta pode ser bloqueada em alguns ambientes de rede corporativa e educacional.

Criar um namespace no Portal do Azure

Um namespace na Grade de Eventos do Azure é um contêiner lógico para um ou mais tópicos, clientes, grupos de clientes, espaços de tópicos e associações de permissão. Ele fornece um namespace exclusivo, permitindo que você tenha vários recursos na mesma região do Azure. Com um namespace da Grade de Eventos do Azure, você já pode agrupar recursos relacionados e gerenciá-los como uma só unidade na sua assinatura do Azure.

Siga as próximas seções para criar, exibir e gerenciar um namespace da Grade de Eventos do Azure.

Para criar um namespace:

  1. Entre no portal do Azure.

  2. Na caixa de pesquisa, insira Namespaces da Grade de Eventos e selecione Namespaces da Grade de Eventos nos resultados.

    Captura de tela mostrando namespaces da Grade de Eventos nos resultados da pesquisa.

  3. Na página Namespaces da Grade de Eventos, selecione + Criar na barra de ferramentas.

    Captura de tela mostrando a página Namespaces da Grade de Eventos com o botão Criar na barra de ferramentas selecionada.

  4. Na página Básico, siga essas etapas.

    1. Selecione a Assinatura do Azure na qual você quer criar o namespace.

    2. Escolha um grupo de recursos existente ou crie um grupo de recursos.

    3. Insira um nome para o namespace.

    4. Selecione a região ou a localização onde você deseja criar o namespace.

    5. Selecione Revisar + criar na parte inferior da página.

      Captura de tela mostrando a guia Noções básicas da página Criar namespace.

  5. Na página Revisar + criar, revise as configurações e selecione Criar.

  6. Na página Implantação bem sucedida, selecione Ir para o recurso para navegar até a página do seu namespace.

Criar um tópico de namespace

  1. Se você não está na página Namespace da Grade de Eventos, siga as etapas em criar, exibir e gerenciar namespaces para visualizar o namespace que você deseja usar para criar o tópico.

  2. Na página Namespace da Grade de Eventos, selecione a opção Tópicos na seção Agente de eventos no menu à esquerda.

  3. Na página Tópicos, selecione o botão + Tópico na barra de comandos.

    Captura de tela que mostra a criação de tópicos de namespace da Grade de Eventos.

  4. Na página Criar Tópico, digite o nome do tópico que você quer criar e selecione Criar.

    Captura de tela que mostra as informações básicas da criação de tópicos de namespace da Grade de Eventos.

Habilitar a identidade gerenciada para o namespace da Grade de Eventos

  1. Na página Namespace da Grade de Eventos, selecione Identidade em Configurações no menu do lado esquerdo.

  2. Ative o comutador para habilitar uma identidade gerenciada atribuída pelo sistema.

  3. Selecione Salvar na barra de ferramentas para salvar a configuração.

    Captura de tela de uma página de identidade atribuída pelo sistema para um namespace da Grade de Eventos.

  4. Na mensagem de confirmação, selecione Sim.

  5. Confirme que você vê a ID de objeto da identidade gerenciada atribuída pelo sistema e veja um link para atribuir funções.

    Captura de tela que mostra a atribuição de identidade a um namespace concluída.

    Verifique as notificações no portal para confirmar se a identidade gerenciada está habilitada para o namespace.

Habilitar o Agente MQTT para o namespace da Grade de Eventos

  1. Na página Namespace da Grade de Eventos, selecione Configuração em Definições no menu do lado esquerdo.

  2. Marque a caixa de seleção ao lado de Habilitar o Agente MQTT.

  3. Selecione Aplicar na parte inferior da página.

    Captura de tela que mostra a página Configuração de namespace da Grade de Eventos usada para habilitar o MQTT.

    Verifique as notificações no portal para confirmar se o Agente MQTT está habilitado para o namespace.

Em uma guia separada do navegador da web, ou em uma janela separada, use o portal do Azure para criar um namespace de Hubs de Eventos com um hub de eventos.

Criar um namespace de Hubs de Eventos

Um namespace dos Hubs de Eventos fornece um contêiner de escopo exclusivo, em que você cria um ou mais Hubs de Eventos. Para criar um namespace em seu grupo de recursos usando o portal, faça o seguinte:

  1. No portal do Azure, selecione Todos os serviços no menu à esquerda e selecione estrela (*) ao lado de Hubs de Eventos na categoria Análise. Confirme que Hubs de Eventos foi adicionado à FAVORITOS no menu de navegação à esquerda.

    Captura de tela mostrando a seleção de Hubs de Eventos na página Todos os serviços.

  2. Selecione Hubs de Eventos em FAVORITOS no menu de navegação esquerdo e selecione Criar na barra de ferramentas.

    Captura de tela mostrando a seleção do botão Criar na página Hubs de eventos.

  3. Na página Criar namespace, execute as seguintes etapas:

    1. Selecione a assinatura na qual você deseja criar o namespace.

    2. Selecione o grupo de recursos criado na etapa anterior.

    3. Insira um nome para o namespace. O sistema imediatamente verifica para ver se o nome está disponível.

    4. Selecione uma localização para o namespace.

    5. Escolha Básico para o tipo de preço. Se você planeja usar o namespace de aplicativos Apache Kafka, use a camada Standard . A camada básica não dá suporte a cargas de trabalho do Apache Kafka. Para saber mais sobre as diferenças entre camadas, consulte os artigos Cotas e limites, Hubs de Eventos Premiume Hubs de Eventos Dedicados.

    6. Não altere as configurações das unidades de produtividade (para a camada padrão) ou unidades de processamento (para a camada premium). Para saber mais sobre as unidades de produtividade ou unidades de processamento: Escalabilidade de Hubs de Eventos.

    7. Selecione Examinar + Criar na parte inferior da página.

      Captura de tela da página Criar Namespace no portal do Azure.

    8. Na página Examinar + Criar, examine as configurações e selecione Criar. Aguarde até que a implantação seja concluída.

  4. Na página Implantação, selecione Ir para o recurso para navegar até a página de seu namespace.

    Captura de tela da página de Implantação concluída com o link para o recurso.

  5. Confirme que você vê a página Namespace dos Hubs de Eventos semelhante ao seguinte exemplo:

    Captura de tela da home page do namespace de Hubs de Eventos no portal do Azure.

Criar um Hub de Evento

Para criar um hub de eventos dentro do namespace, faça o seguinte:

  1. Na página de Visão geral, selecione + Hub de eventos na barra de comandos.

    Captura de tela da seleção do botão Adicionar hub de eventos na barra de comandos.

  2. Digite um nome para o hub de eventos e selecione Revisar + Criar.

    Captura de tela da página Criar hub de eventos.

  3. Na página Examinar + criar escolha Criar.

  4. Você pode verificar o status da criação do hub de eventos em alertas. Depois que o hub de eventos for criado, você o verá na lista de Hubs de Eventos.

    Captura de tela mostrando a lista de hubs de eventos.

Conceder ao namespace da Grade de Eventos o acesso necessário para enviar eventos para o hub de eventos

  1. Na página Namespace de Hubs de Eventos, selecione Gerenciamento de Identidades e Acesso (IAM) no menu à esquerda.

  2. Na página de Controle de acesso, selecione + Adicionar na barra de comandos e, em seguida, selecione Adicionar atribuição de função.

    Captura de tela que mostra a página de controle de acesso para o namespace dos Hubs de Eventos.

  3. Na página Adicionar atribuição de função, selecione Remetente de Dados de Hubs de Eventos do Azure na lista de funções e, a seguir, selecione Avançar, na parte inferior da página.

    Captura de tela que mostra a página Adicionar atribuição de função com o Remetente de Dados dos Hubs de Eventos do Azure selecionado.

  4. Na página Membros, siga essas etapas:

    1. Para o campo Atribuir acesso a, selecione Identidade gerenciada.

    2. Escolha + Selecionar membros.

      Captura de tela que mostra a página Adicionar atribuição de função com a identidade gerenciada selecionada.

  5. Na página Selecionar identidades gerenciadas, siga estas etapas:

    1. Selecione sua assinaturado Azure.

    2. Para Identidade gerenciada, selecione Namespace da Grade de Eventos.

    3. Selecione a identidade gerenciada que tem o mesmo nome do namespace da Grade de Eventos.

    4. Escolha Selecionar na parte inferior da página.

      Captura de tela que mostra a página Selecionar identidades gerenciadas com a identidade gerenciada do namespace da Grade de Eventos selecionada.

  6. Na página Adicionar atribuição de função, selecione Revisar + atribuir na parte inferior da página.

  7. Na página Examinar + atribuir, selecione Examinar + atribuir.

Criar uma assinatura de eventos tendo Hubs de Eventos como ponto de extremidade

  1. Alterne para a guia da janela do seu navegador da web que está com o namespace da Grade de Eventos aberto.

  2. Na página Namespace da Grade de Eventos, selecione Tópicos no menu à esquerda.

  3. Na página Tópicos, selecione o tópico do namespace que você criou anteriormente.

    Captura de tela que mostra a página Tópicos com o tópico do namespace selecionado.

  4. Na página Tópico do Namespace da Grade de Eventos, selecione + Assinatura na barra de comandos na parte superior.

    Captura de tela que mostra a página Assinaturas.

  5. Na página Criar Assinatura, siga essas etapas:

    1. Insira um nome para a assinatura de evento.

    2. Para o Modo Entrega, selecione Push.

    3. Confirme se o Tipo de ponto de extremidade está definido como Hub de eventos.

    4. Selecione Configurar um ponto de extremidade.

      Captura de tela que mostra a página Criar Assinatura.

    5. Na página Selecionar Hub de Eventos, siga essas etapas:

      1. Selecione a Assinatura do Azure que contém o hub de eventos.

      2. Selecione o grupo de recursos que inclui o hub de eventos.

      3. Selecione o namespace de Hubs de Eventos.

      4. Selecione o hub de eventos no namespace de Hubs de Eventos.

      5. Em seguida, selecione Confirmar seleção.

        Captura de tela que mostra a página Selecionar hub de eventos.

    6. De volta à página Criar Assinatura, selecione Atribuído pelo Sistema para o Tipo de identidade gerenciada.

    7. Selecione Criar na parte inferior da página.

      Captura de tela que mostra a página Criar Assinatura com o botão Criar selecionado.

Configurar o roteamento no namespace da Grade de Eventos

  1. Navegue de volta para a página Namespace da Grade de Eventos selecionando o namespace na seção Essentials da página Tópico do Namespace da Grade de Eventos ou selecionando o nome do namespace no menu breadcrumb na parte superior.

  2. Na página Namespace da Grade de Eventos, selecione Roteamento no menu do lado esquerdo na seção Agente MQTT.

  3. Na página Roteamento, selecione Habilitar roteamento.

  4. Para Tipo de tópico, selecione Tópico do namespace.

  5. Para Tópico, selecione o tópico do namespace da Grade de Eventos que você criou, para o qual todas as mensagens MQTT serão encaminhadas.

  6. Escolha Aplicar.

    Captura de tela que mostra a página Roteamento com o tópico do namespace selecionado.

    Verifique as notificações para confirmar que o namespace está habilitado com as informações de roteamento.

Criar clientes, espaço de tópico e vinculações de permissão

Siga as etapas no início rápido: Publicar e fazer uma assinatura de um tópico MQTT para:

  1. Criar um cliente. Você pode criar o segundo cliente se quiser, mas é opcional.

  2. Criar um espaço de tópico.

  3. Criar vinculações de permissão de fornecedor e assinante.

  4. Usar o MQTTX para enviar algumas mensagens.

  5. Verifique se o hub de eventos recebeu essas mensagens na página Visão geral do seu namespace de Hubs de Eventos.

    Captura de tela que mostra a página Visão geral do hub de eventos com contagem de mensagens de entrada.

Ver as mensagens MQTT encaminhadas nos Hubs de Eventos usando uma consulta do Stream Analytics

Navegue até a instância de Hubs de Eventos (um hub de eventos) em sua assinatura de eventos no portal do Azure. Processe os dados do seu hub de eventos usando o Stream Analytics. Para obter mais informações, confira Processar dados da plataforma Hubs de Eventos do Azure usando o Stream Analytics — Hubs de Eventos do Azure | Microsoft Learn. Você pode ver as mensagens MQTT na consulta.

Captura de tela que mostra os dados de mensagens MQTT nos Hubs de Eventos usando a ferramenta de consulta do Stream Analytics.

Próximas etapas

Para obter amostras de código, acesse esse repositório do GitHub.