Problemas conhecidos para Operações IoT do Azure

Este artigo lista os problemas atualmente conhecidos que pode encontrar ao utilizar o Operações IoT do Azure. As orientações ajudam-no a identificar estes problemas e fornecem soluções alternativas, quando disponíveis.

Para orientações gerais de resolução de problemas, veja Troubleshoot Operações IoT do Azure.

Questões de implementação e atualização

Esta secção lista problemas conhecidos atuais na implementação e atualização do Operações IoT do Azure.

A atualização para Operações IoT do Azure 2603 pode falhar silenciosamente


Assinatura de log: N/A


Quando executas az iot ops upgrade para atualizar para Operações IoT do Azure 2603, a atualização pode falhar silenciosamente em chegar ao cluster. Depois observa os seguintes sintomas:

  • provisioningState: Failed na extensão Operações IoT do Azure.
  • Todas as cargas de trabalho no cluster mantêm-se saudáveis (não ocorre atividade de atualização).
  • az iot ops upgrade Posso não reportar nada para atualizar nas tentativas seguintes.

Causa raiz

  Durante a atualização, se uma extensão do sistema dependente, como microsoft.extensiondiagnostics sofrer um timeout transitório do Helm, o Azure Resource Manager define-a como Falhado. Mesmo que a extensão tenha sucesso no grupo de clusters, o estado do lado da nuvem permanece como Falhado. Isto bloqueia a cadeia de dependências — o Azure Resource Manager nunca entrega a configuração atualizada do Operações IoT do Azure ou da extensão secret-store ao agente de configuração do cluster.   Os sintomas incluem:

  • O agente de configuração PostStatus retorna 400: "Configuration spec has been modified"
  • getPendingConfigs devolve resultados vazios
  • O gestor de extensões nunca recebe instruções de atualização do Helm

Solução

  A solução alternativa é forçar Azure Resource Manager a submeter novamente as especificações da extensão, executando uma atualização no-op tanto na Operações IoT do Azure como na da loja secreta, e depois tentar novamente a atualização:

az k8s-extension update --name <aio-extension-name> \
    --cluster-name <cluster-name> \
    --resource-group <resource-group> \
    --cluster-type connectedClusters \
    --configuration-settings AgentOperationTimeoutInMinutes=120

az k8s-extension update --name azure-secret-store \
    --cluster-name <cluster-name> \
    --resource-group <resource-group> \
    --cluster-type connectedClusters \
    --configuration-settings AgentOperationTimeoutInMinutes=120

az iot ops upgrade

Para identificar o nome da extensão do Operações IoT do Azure, que inclui um sufixo aleatório (por exemplo, azure-iot-operations-cym7h), encontre o nome específico da sua extensão executando:

az k8s-extension list \
    --cluster-name <cluster-name> \
    --resource-group <resource-group> \
    --cluster-type connectedClusters \
    --query "[?extensionType=='microsoft.iotoperations'].name" -o tsv

Importante

Depois de a atualização terminar, reinicia AgentOperationTimeoutInMinutes para um valor mais baixo, como cinco minutos, para evitar longos tempos de espera em operações futuras caso algo falhe.

Problemas com o Azure Device Registry

Esta secção lista os problemas atualmente conhecidos do Azure Device Registry.

Os recursos de ativos ADR não sincronizam


ID da emissão: 1235


Assinatura de log: N/A


Os recursos de ativos do Azure Device Registry não sincronizam novamente se foram criados com uma versão antiga da API.

Problemas do broker MQTT

Esta seção lista os problemas conhecidos atuais para o broker MQTT.

Os recursos do MQTT broker não são visíveis no portal do Azure


ID do problema: 4257


Assinatura de log: N/A


Os recursos do MQTT broker criados no teu cluster usando Kubernetes não são visíveis no portal Azure. Este resultado é esperado porque gerir componentes do Operações IoT do Azure usando Kubernetes é apenas para depuração e testes, e a sincronização de recursos da Edge para a cloud atualmente não é suportada.

Atualmente, não existe solução para este problema.

Problemas gerais do conector

Esta seção lista os problemas conhecidos atuais que afetam todos os conectores.

O Connector não deteta atualizações das credenciais dos dispositivos no Azure Key Vault


ID do problema: 6514


N/A


O conector não recebe notificação quando as credenciais do dispositivo armazenadas no Azure Key Vault são atualizadas. Como resultado, o conector continua a usar as credenciais antigas até ser reiniciado.

Solução alternativa: Reinicie o conector para o forçar a recuperar as credenciais atualizadas do Azure Key Vault.

Para conectores Akri, o único tipo de autenticação suportado para endpoints de registo é artifact pull secrets


ID de problema: 4570


Assinatura de log: N/A


Quando especifica a referência do endpoint do registro num modelo de conector, existem múltiplos métodos de autenticação suportados. Os conectores Akri suportam apenas artifact pull secrets autenticação.

Os conectores Akri não funcionam com os recursos do endpoint de registro.


ID da questão: 7710


Corrigido na versão 1.2.154 (2512) e posteriores


Assinatura de log:

[aio_akri_logs@311 tid="7"] - failed to generate StatefulSet payload for instance rest-connector-template-...
[aio_akri_logs@311 tid="7"] - reconciliation error for Connector resource... 
[aio_akri_logs@311 tid="7"] - reconciliation of Connector resource failed...

Se criares um recurso RegistryEndpoint usando bicep e o referenciares no recurso ConnectorTemplate, então, quando o operador Akri tentar realizar a reconciliação, o ConnectorTemplate falhará com o erro mostrado anteriormente.

Solução alternativa: Não utilize RegistryEndpoint recursos com conectores Akri. Em vez disso, especifique a informação do registo nas ContainerRegistry definições do ConnectorTemplate recurso.

Erro Akri ao atualizar ou eliminar uma instância do Operações IoT do Azure


ID da questão: 9347


Corrigido na versão 1.2.154 (2512) e posteriores


Os utilizadores podem encontrar um erro relativamente a certificados de webhook expirados com o Akri ao eliminar ou atualizar instâncias do Operações IoT do Azure ou ao realizar operações CRUD em instâncias de recursos Akri, como Connector e ConnectorTemplates.

Solução alternativa: execute kubectl delete pod -n azure-iot-operations aio-akri-webhook-0 --ignore-not-found para apagar e reiniciar os pods webhook para permitir que o pod recolha o novo certificado.

Conector para problemas do OPC UA

Esta seção lista os problemas conhecidos atuais do conector para OPC UA.

Não é possível usar caracteres especiais em nomes de eventos


ID do problema: 1532


Corrigido na versão 1.3.36 (2603) e posteriores


Assinatura de log: 2025-10-22T14:51:59.338Z aio-opc-opc.tcp-1-68ff6d4c59-nj2s4 - Updated schema information for Boiler#1Notifier skipped!


A geração de esquema falhará se os nomes de eventos contiverem caracteres especiais, como #, %ou &. Evite usar esses caracteres em nomes de eventos para evitar problemas de geração de esquema.

Conector para mídia e conector para questões ONVIF

Esta seção lista os problemas conhecidos atuais para o conector para mídia e o conector para ONVIF.

Conflito de sincronização secreto


ID do problema: 0606


Assinatura de log: N/A


Ao usar a sincronização secreta, certifique-se de que os nomes secretos sejam globalmente exclusivos. Se existir um segredo local com o mesmo nome, os conectores podem não conseguir recuperar o segredo pretendido.

O destino do evento do ativo ONVIF só pode ser configurado ao nível do grupo ou ativo


ID da questão: 9545


Corrigido na versão 1.2.154 (2512) e posteriores


Assinatura de registo semelhante a:

No matching event subscription for topic: "tns1:RuleEngine/CellMotionDetector/Motion"


Atualmente, os destinos de eventos de ativos ONVIF são reconhecidos apenas ao nível do grupo de eventos ou ativo. Configurar os destinos ao nível do evento individual resulta em entradas de registo semelhantes ao exemplo, e nenhum dado de evento é publicado ao broker MQTT.

Como solução alternativa, configure o destino do evento ao nível do grupo de eventos ou ativo em vez do nível individual do evento. Por exemplo, usando defaultEventsDestinations ao nível do grupo de eventos:

eventGroups:
  - dataSource: ""
    events:
    - dataSource: tns1:RuleEngine/CellMotionDetector/Motion
      destinations:
      - configuration:
          qos: Qos1
          retain: Never
          topic: azure-iot-operations/data/motion
          ttl: 5
        target: Mqtt
      name: Motion
    name: Default
    defaultEventsDestinations:
    - configuration:
        qos: Qos1
        retain: Never
        topic: azure-iot-operations/data/motion
        ttl: 5
      target: Mqtt

Problemas de fluxos de dados

Esta seção lista os problemas conhecidos atuais para fluxos de dados.

Os recursos de fluxo de dados não são visíveis na interface web da experiência operacional.


ID do problema: 8724


Assinatura de log: N/A


Os recursos personalizados de fluxo de dados criados no seu cluster usando o Kubernetes não são visíveis na interface web da experiência operacional. Este resultado é esperado porque gerir componentes do Operações IoT do Azure usando Kubernetes é apenas para depuração e testes, e a sincronização de recursos da Edge para a cloud atualmente não é suportada.

Atualmente, não existe solução para este problema.

Um perfil de fluxo de dados não pode exceder 70 fluxos de dados


ID do problema: 1028


Assinatura de log:

exec /bin/main: argument list too long


Se você criar mais de 70 fluxos de dados para um único perfil de fluxo de dados, as implantações falharão com o erro exec /bin/main: argument list too long.

Para contornar esse problema, crie vários perfis de fluxo de dados e distribua os fluxos de dados entre eles. Não exceda 70 fluxos de dados por perfil.

Os gráficos de fluxo de dados suportam apenas tipos de pontos finais específicos


ID do problema: 5693


Assinatura de log: N/A


Atualmente, os gráficos de fluxo de dados (WASM) suportam apenas pontos de extremidade de fluxo de dados MQTT, Kafka e OpenTelemetry (OTel). Os pontos de extremidade OpenTelemetry só podem ser usados como destinos em gráficos de fluxo de dados. Outros tipos de endpoints como Data Lake, Microsoft Fabric OneLake, Azure Data Explorer e Local Storage não são suportados para grafos de fluxo de dados.

Para contornar esse problema, use um dos tipos de ponto de extremidade suportados:

Para obter mais informações sobre gráficos de fluxo de dados, consulte Usar WebAssembly (WASM) com gráficos de fluxo de dados.

Não é possível usar a mesma definição de gráfico várias vezes em um cenário de gráfico encadeado


ID da emissão: 1352


Corrigido na versão 1.3.36 (2603) e posteriores


Falha ao enviar config


Você cria um cenário de gráfico encadeado usando a saída de um gráfico de fluxo de dados como entrada para outro gráfico de fluxo de dados. No entanto, se você tentar usar a mesma definição de gráfico várias vezes nesse cenário, ele atualmente não funciona como esperado. Por exemplo, o código a seguir falha ao usar a mesma definição de grafo (graph-passthrough:1.3.6) tanto para graph-1 quanto para graph-2.

      {
          nodeType: 'Graph'
          name: 'graph-1'
          graphSettings: {
            registryEndpointRef: dataflowRegistryEndpoint.name
            artifact: 'graph-passthrough:1.3.6'
            configuration: []
            }
      }
      {
          nodeType: 'Graph'
          name: 'graph-2'
          graphSettings: {
            registryEndpointRef: dataflowRegistryEndpoint.name
            artifact: 'graph-passthrough:1.3.6'
            configuration: graphConfiguration
            }
      }
  nodeConnections: [
      {
          from: {name: 'source'}
          to: {name: 'graph-1'}
      }
      {
          from: {name: 'graph-1'}
          to: {name: 'graph-2'}
      }
      {
          from: {name: 'graph-2'}
          to: {name: 'destination'}
      }
  ]

Para resolver esse erro, envie a definição do gráfico para o ACR quantas vezes forem necessárias com o cenário com um nome ou tag diferente a cada vez. Por exemplo, no cenário descrito, a definição do gráfico precisa ser empurrada duas vezes com um nome diferente ou uma tag diferente, como graph-passthrough-one:1.3.6 e graph-passthrough-two:1.3.6.

Questões do ouvinte do broker

Esta secção lista os problemas atuais conhecidos para os ouvintes corretores.

Azure Portal falha em obter autenticações de brokers


ID da questão: 3072


Assinatura do registo: mensagem do portal Azure Fetch broker authentications: Failed to fetch broker authentications


Quando configura um ouvinte de corretor no portal do Azure e seleciona um valor no menu suspenso "Autenticação", o portal tenta obter a lista de autenticações de corretores. O portal mostra a mensagem Fetch broker authentications: Failed to fetch broker authenticationsde erro .

Para contornar este problema, atualize para a versão 2603.