Observação
O acesso a essa página exige autorização. Você pode tentar entrar ou alterar diretórios.
O acesso a essa página exige autorização. Você pode tentar alterar os diretórios.
Um grupo no Azure Device Registry é um conjunto de recursos homogêneos definidos por consulta que você usa para direcionar operações em escala de frota, como atualizações de software. Na prévia atual, um grupo mira em dispositivos conectados ao Hub IoT. Em vez de gerenciar recursos individuais, você define um filtro uma vez e reutiliza o grupo resultante onde precisar agir sobre esse conjunto de recursos.
Importante
Os grupos do Azure Device Registry estão atualmente em pré-visualização.
Aplicabilidade do serviço
| Característica | Operações do Azure IoT | Hub IoT do Azure |
|---|---|---|
| Groups | Não suportado nesta prévia | Preview |
Nesta prévia, grupos suportam dispositivos conectados ao Hub IoT em um namespace do Azure Device Registry.
Associação definida por consulta
Você cria um grupo definindo um filtro com base em propriedades de recursos compatíveis, como fabricante ou versão do software. Na prévia, o único tipo de recurso Azure suportado é RegistryDevice. O Azure Device Registry avalia o filtro dentro do namespace e preenche o grupo com todos os recursos correspondentes.
Para grupos RegistryDevice, use nomes de propriedades da linguagem de consulta na definição da consulta. Por exemplo:
WHERE manufacturer = 'Contoso' AND model = 'Sensor-v2'
Um dispositivo pode pertencer a mais de um grupo ao mesmo tempo. Por exemplo, um dispositivo pode corresponder tanto a um grupo "firmware versão 2.1" quanto a um grupo "building 12". A associação não é exclusiva, então você pode formar grupos de acordo com diferentes necessidades operacionais sem duplicar dispositivos.
Propriedades e operadores suportados pelo RegistryDevice
A tabela a seguir mostra as propriedades e operadores suportados para consultas de filtro RegistryDevice:
| Terminologia do usuário | Caminho da propriedade | Tipo literal | Operadores |
|---|---|---|---|
| UUID de espaço de nomes | namespaceUuid |
cadeia |
=, !=, <> |
| nome | name |
cadeia |
=, !=, <>, IN, NIN |
| tipo de recurso | resourceType |
cadeia |
=, !=, <> |
| local | location |
cadeia |
=, !=, <>, IN, NIN |
| UUID de dispositivo | uuid |
cadeia |
=, !=, <>, IN, NIN |
| estado de provisionamento | provisioningState |
cadeia |
=, !=, <>, IN, NIN |
| ID de dispositivo externo | externalDeviceId |
cadeia |
=, !=, <>, IN, NIN |
| ativado, desativado | enabled |
string enum |
=, !=, <>; os valores são 'Enabled' e 'Disabled' |
| fabricante | manufacturer |
cadeia |
=, !=, <> |
| modelo | model |
cadeia |
=, !=, <> |
| Revisão de software | softwareRevision |
cadeia |
=, !=, <> |
| chave da marcação | tags.<key> |
cadeia |
=, !=, <>; profundidade máxima do caminho é 4 |
Propriedades de atualização suportadas pelo RegistryDevice e operadores
A tabela a seguir mostra as propriedades e operadores suportados para consultas de filtro RegistryDevice no escopo de attributes.update:
| Caminho da propriedade | Tipo literal | Operadores |
|---|---|---|
attributes.update.deviceClassId |
cadeia |
=, !=, <>, IN, NIN |
attributes.update.installedUpdateId.provider |
cadeia |
=, !=, <>, IN, NIN |
attributes.update.installedUpdateId.name |
cadeia |
=, !=, <>, IN, NIN |
attributes.update.installedUpdateId.version |
cadeia |
=, !=, <>, IN, NIN |
attributes.update.latestUpdateJobInfo.state |
cadeia |
=, !=, <>, IN, NIN |
attributes.update.latestUpdateJobInfo.updateId.provider |
cadeia |
=, !=, <>, IN, NIN |
attributes.update.latestUpdateJobInfo.updateId.name |
cadeia |
=, !=, <>, IN, NIN |
attributes.update.latestUpdateJobInfo.updateId.version |
cadeia |
=, !=, <>, IN, NIN |
attributes.update.agentInfo.compatibilityProperties.<key> |
cadeia |
=, !=, <>; profundidade máxima do caminho é 5 |
attributes.update.agentInfo.agentProfile |
inteiro |
=, !=, <>, IN, NIN |
Você pode combinar condições com AND, OR, NOT, parênteses e comparações em relação a null. Funções escalares como STARTSWITH, CONTAINS, IS_NULL e IS_DEFINED, comparações campo a campo e caminhos attributes.* ou properties.* arbitrários não são suportados.
Associação em cache e atualização
A pertença ao grupo é calculada e armazenada em cache no tempo de atualização — não é avaliada em tempo real. Quando você cria um grupo, ou ao atualizar um existente, o Azure Device Registry reavalia o filtro e atualiza a lista de membros em cache.
Você aciona uma atualização do grupo por meio da operação RefreshMembers. Refresh é assíncrono, e um grupo pode ter Creating, RefreshingMembers, ou Ready status. Você pode listar membros quando o grupo atingir Ready status.
Como a associação está em cache, a lista de membros de um grupo pode ficar desatualizada entre as atualizações. Se as propriedades de um recurso mudarem, ou um novo recurso começar a corresponder ao filtro, essa mudança não é refletida na lista de membros de um grupo de atualização manual até que a próxima atualização seja concluída. O serviço exige um intervalo mínimo de uma hora entre as atualizações manuais.
Filtros imutáveis e ciclo de vida
Você pode editar o nome e a descrição de um grupo. O filtro é fixo na criação; para direcionar um conjunto diferente de dispositivos, crie ou clone um grupo com um novo filtro.
Para direcionar um conjunto diferente ou ajustado de recursos, crie um grupo separado com o novo filtro. Deletar um grupo remove apenas o grupo; seus dispositivos membros permanecem.
Gerenciar grupos no portal Azure (prévia)
Nesta prévia, a página Grupos (prévia) na navegação do namespace lista seus grupos e abre uma visualização de detalhes do grupo. A visualização detalhada mostra os essenciais do grupo, uma definição de filtro de consulta somente leitura, a contagem atual de membros e o tempo de última atualização. Como o filtro está definido na criação e não pode ser editado, use a visualização de detalhes para confirmar quais dispositivos um grupo tem como alvo. A lista de membros mostra até 10 dispositivos, então trate isso como uma verificação rápida e não como uma lista completa de um grande grupo.
A partir da lista de grupos ou da visualização de detalhes do grupo, você pode tomar as seguintes ações:
- Crie um grupo a partir da visualização de lista fornecendo um nome obrigatório, uma descrição opcional e um filtro de consulta.
- Clone um grupo existente a partir da lista ou da visualização de detalhes. Clonar é a maneira prática de partir da definição de um grupo quando você precisa ajustar os critérios de associação, porque não é possível editar o filtro original.
- Edite o nome e a descrição de um grupo a partir da visualização de detalhes. O filtro de consulta permanece imutável.
- Atualize a membresia em cache de um grupo na visualização de lista ou detalhes, sujeito aos limites de atualização descritos em Membresia em cache e atualização.
- Exclua um grupo da lista ou da visualização de detalhes. Você confirma a exclusão digitando o nome do grupo.
Relação com trabalhos e atualizações de software
Grupos existem independentemente de qualquer capacidade específica que os consome. Um grupo é um recurso reutilizável de gestão de frotas que você pode referenciar de vários lugares. Por exemplo, um Job usa um grupo como alvo para uma operação padrão de atualização de software.
Como um grupo pode ser referenciado por mais de um trabalho ou fluxo de trabalho, excluir um grupo ou alterar sua disponibilidade pode afetar qualquer coisa que dependa dele. Planeje mudanças no ciclo de vida do grupo levando essa dependência em mente.
Limites e restrições de pré-visualização
Os seguintes limites atualmente se aplicam aos grupos:
- Até 100 grupos por assinatura.
- Um intervalo mínimo de uma hora entre as atualizações manuais.
-
ListMembersTamanho de página de 1.000, sem filtragem ou ordenação nesta prévia.