Cenário: Trabalhando com um Grupo de Domínios IoT

Este cenário explica um workflow de grupo de domínios IoT.

Tarefas

  1. Criar um grupo de domínios IoT
  2. Opcional. Adicionar uma VCN a um grupo de domínios IoT para estabelecer uma conexão direta com o banco de dados
  3. Opcional. Confirme os detalhes do grupo de domínios
  4. Opcional. Obtenha as solicitações de serviço do grupo de domínios para verificar o status, os logs ou encontrar quaisquer erros que possam ocorrer.

Este cenário mostra como concluir tarefas do grupo de domínios usando a CLI. Como alternativa, você pode concluir essas tarefas usando a Console ou a API. Para obter mais informações, consulte IoT Domain Groups.

Antes de começar

Um administrador deve adicionar uma política à sua tenancy e aos compartimentos que você deseja usar. Para obter exemplos de política e pré-requisitos, consulte Detalhes da Política da Plataforma Internet of Things (IoT) e Pré-requisitos do IoT.

Observação

O sistema Oracle restringe a criação de até 2 domínios IoT em cada grupo de domínios IoT. O número máximo de grupos de domínios IoT é 5 e o número máximo de domínios IoT é 10 para cada região da sua tenancy.

Para obter uma lista de limites de recursos aplicáveis e instruções para solicitar um aumento de limite, consulte Limites de Recursos do Internet of Things.

Etapa 1: Criando um Grupo de Domínios IoT

Você deve configurar um grupo de domínios antes de criar um domínio. Cada grupo de domínios IoT usa uma instância de banco de dados dedicada, que é compartilhada por todos os domínios IoT associados ao grupo de domínios IoT.

Para criar um novo grupo de domínios IoT, use este comando oci iot create-domain-group e o parâmetro <compartment-OCID> necessário para criar um grupo de domínios no compartimento específico. Opcionalmente, você pode incluir o nome de exibição.
oci iot domain-group create --compartment-id <compartment-OCID> --display-name <your-iot-domain-group-name>

O exemplo de resposta mostra que o grupo de domínios está criando e contém o URL do host de dados com um ID abreviado do grupo de domínios. Use o URL do host de dados para acessar seus metadados e dados associados a um grupo de domínios IoT específico que contém todos os dispositivos para o domínio IoT associado.

data-host:<domain-group-short-id>.data.iot.<region>.oci.oraclecloud.com

Observe que os detalhes da conexão do banco de dados são null. Depois que o grupo de domínios for criado, dependendo de onde você deseja exibir seus dados, será necessário configurar o acesso aos dados do domínio IoT associado para adicionar os detalhes de autenticação do domínio IoT para estabelecer conexão com outro sistema.

{
  "data": {
    "compartment-id": "<compartment-OCID>",
    "data-host": "<domain-group-short-id>.data-iot.<region>.oci.oraclecloud.com,
    "db-allow-listed-vcn-ids": null,
    "db-connection-string": null,
    "db-token-scope": null,
    "defined-tags": {
      "Oracle-Tags": {
        "CreatedBy": "default/user@oracle.com",
        "CreatedOn": "2025-08-05T18:15:41.260Z"
      }
    },
    "description": null,
    "display-name": "<your-iot-domain-group-name>",
    "freeform-tags": {},
    "id": "<domain-group-OCID>",
    "lifecycle-state": "CREATING",
    "system-tags": {},
    "time-created": "2025-08-05T18:15:43.054000+00:00",
    "time-updated": "2025-08-05T18:15:43.054000+00:00"
  },
  "etag": "<unique-id>",
  "opc-work-request-id": "<work-request-OCID>"
            }

Opcionalmente, durante esse processo de trabalho com um grupo de domínios, você pode monitorar a solicitação de serviço de cada operação para confirmar se ela foi bem-sucedida antes de passar para a próxima operação. Você pode usar solicitações de serviço para verificar logs ou mensagens de erro.

Use o "opc-work-request-id": "<work-request-OCID>" de qualquer operação para obter a solicitação de serviço relacionada para essa operação específica. Por exemplo:

Opcional: Obtendo uma Solicitação de Serviço Antes de um Grupo de Domínios IoT ser Criado

Opcionalmente, durante o tempo necessário para criar um grupo de domínios, você pode obter a solicitação de serviço para exibir o status do processo de criação de um grupo de domínios IoT.

  1. Use o comando oci iot work-request get para obter a solicitação de serviço para criar um grupo de domínios. Substitua o <work-request-OCID> pelo OCID da solicitação de serviço na resposta da etapa anterior:
    oci iot work-request get --work-request-id <work-request-OCID>
  2. Se você receber a solicitação de serviço durante o processamento da criação do grupo de domínios IoT, verá algo como este exemplo de resposta que mostra o processo de criação de um grupo de domínios como aceito e iniciado com sucesso, observe os seguintes parâmetros no exemplo abaixo:

    "operationType": "CREATE_IOT_DOMAIN_GROUP"

    "actionType": "IN_PROGRESS"

    "status": "ACCEPTED"

    {
      "data": {
        "compartment-id": "<compartment-OCID>",
        "id": "<iot-work-request-OCID>",
        "operation-type": "CREATE_IOT_DOMAIN_GROUP",
        "percent-complete": 50.0,
        "resources": [
          {
            "action-type": "IN_PROGRESS",
            "entity-type": "iotDomainGroup",
            "entity-uri": "/20250531/iotDomainGroups/<iot-domain-group-OCID>",
            "identifier": "<iot-domain-group-OCID>",
            "metadata": null
          }
        ],
        "status": "ACCEPTED",
        "time-accepted": "2025-09-08T09:29:22.505000+00:00",
        "time-finished": null,
        "time-started": null,
        "time-updated": "2025-09-08T09:29:57.532000+00:00"
      },
      "etag": "<unique-id>"
    }
    
    Este exemplo mostra como obter uma solicitação de serviço usando a CLI. Como alternativa, você também pode usar a Console ou APIs REST para obter o OCID da solicitação de serviço. Para obter mais informações, consulte Solicitações de Serviço para Domínios e Grupos de Domínios IoT. Você pode encontrar o OCID da solicitação de serviço na página de detalhes do grupo de domínios usando a Console. Para obter mais informações, consulte Obtendo Detalhes de uma Solicitação de Serviço.
Opcional: Listando Logs de Solicitação de Serviço de um Grupo de Domínios IoT

Opcionalmente, você pode usar o comando oci iot work-request list-logs para verificar se a criação de uma solicitação de serviço de grupo de domínios exibe o processo de criação de um grupo de domínios descrito nos logs.

oci iot work-request list-logs --work-request-id <work-request-OCID>
Este exemplo de resposta mostra uma lista de logs de uma solicitação de serviço de criação de grupo de domínios:
{
  "data": {
    "items": [
      {
        "message": "Generating database credentials",
        "timestamp": "2025-09-08T09:29:48.410000+00:00"
      },
      {
        "message": "Creating database",
        "timestamp": "2025-09-08T09:29:54.543000+00:00"
      },
      {
        "message": "Provisioning database",
        "timestamp": "2025-09-08T09:29:57.532000+00:00"
      }
    ]
  }
}
Opcional: Listando Erros de Solicitação de Serviço de um Grupo de Domínios IoT

Opcionalmente, use o comando oci iot work-request list-errors para listar quaisquer erros na criação de uma solicitação de serviço de grupo de domínios.

oci iot work-request list-errors --work-request-id <work-request-OCID>

Se existirem entradas de log de solicitação de serviço do grupo de domínios, este será um exemplo de resposta. Este exemplo de resposta não contém erros:

{
  "data": {
    "items": []
  }
}
    
Opcional: Obtendo a Solicitação de Serviço Após a Criação de um Grupo de Domínios IoT

Após a conclusão da operação de criação de um grupo de domínios, use o comando oci iot work-request get para confirmar se o grupo de domínios foi criado com sucesso e para confirmar se o grupo de domínios está ativo.

oci iot work-request get --work-request-id <work-request-OCID>
Este exemplo de resposta mostra o "actionType": "CREATED" e o "status": "SUCCEEDED", confirmando que o grupo de domínios foi criado com sucesso.
{
  "data": {
    "compartment-id": "<compartment-OCID>",
    "id": "<iot-work-request-OCID>",
    "operation-type": "CREATE_IOT_DOMAIN_GROUP",
    "percent-complete": 100.0,
    "resources": [
      {
        "action-type": "CREATED",
        "entity-type": "iotDomainGroup",
        "entity-uri": "/20250531/iotDomainGroups/<iot-domain-group-OCID>",
        "identifier": "<iot-domain-group-OCID>",
        "metadata": null
      }
    ],
    "status": "SUCCEEDED",
    "time-accepted": "2025-09-08T09:29:22.505000+00:00",
    "time-finished": "2025-09-08T09:38:01.360000+00:00",
    "time-started": "2025-09-08T09:29:48.402000+00:00",
    "time-updated": "2025-09-08T09:38:01.360000+00:00"
  },
  "etag": "<unique-id>"
}
Opcional: Listando Logs de Solicitação de Serviço Após a Criação de um Grupo de Domínios IoT
Use este comando para listar os logs para confirmar que o processo de criação de uma operação de grupo de domínios IoT concluiu todas as etapas.
oci iot work-request list-logs --work-request-id <work-request-OCID>
Este exemplo de resposta mostra todas as etapas concluídas para a operação de criação de grupo de domínios IoT:
{
  "data": {
    "items": [
      {
        "message": "Generating database credentials",
        "timestamp": "2025-09-08T09:29:48.410000+00:00"
      },
      {
        "message": "Creating database",
        "timestamp": "2025-09-08T09:29:54.543000+00:00"
      },
      {
        "message": "Provisioning database",
        "timestamp": "2025-09-08T09:29:57.532000+00:00"
      },
      {
        "message": "Enabling data guard",
        "timestamp": "2025-09-08T09:33:59.906000+00:00"
      },
      {
        "message": "Configuring admin secret rotation ",
        "timestamp": "2025-09-08T09:37:03.396000+00:00"
      },
      {
        "message": "Generating DNS record(s)",
        "timestamp": "2025-09-08T09:37:08.842000+00:00"
      },
      {
        "message": "Configuring routing policy",
        "timestamp": "2025-09-08T09:37:09.903000+00:00"
      },
      {
        "message": "Finishing work request",
        "timestamp": "2025-09-08T09:38:01.360000+00:00"
      }
    ]
  }
}

Etapa 2: Obtendo os Detalhes de um Grupo de Domínios IoT Antes de Adicionar os Detalhes da VCN

Use esse comando para obter os detalhes de um grupo de domínios IoT específico.
oci iot domain-group get --iot-domain-group-id <iot-domain-group-OCID>

Este exemplo de resposta mostra que a VCN não está configurada para o grupo de domínios IoT:

{
  "data": {
    "compartment-id": "<compartment-OCID>",
    "data-host": "<domain-group-short-id>.data.iot.us-phoenix-1.oci.oraclecloud.com",
    "db-allow-listed-vcn-ids": null,
    "db-connection-string": null,
    "db-token-scope": null,
    "defined-tags": {
      "Oracle-Tags": {
        "CreatedBy": "default/user@oracle.com",
        "CreatedOn": "2025-09-08T09:29:22.092Z"
      }
    },
    "description": null,
    "display-name": "Demo Domain Group",
    "freeform-tags": {},
    "id": "<iot-domain-group-OCID>",
    "lifecycle-state": "ACTIVE",
    "system-tags": {},
    "time-created": "2025-09-08T09:29:22.449000+00:00",
    "time-updated": "2025-09-08T09:38:01.413000+00:00"
  },
  "etag": "<unique-id>"
}

Opcional: Adicionando uma VCN ao Grupo de Domínios IoT para Estabelecer uma Conexão Direta com o Banco de Dados

Depois que um grupo de domínios IoT estiver ativo, se você quiser estabelecer uma conexão direta com o banco de dados para exibir os dados diretamente no banco de dados ou se quiser conectar seus dados para usar o Oracle Analytics Cloud, como parte dessa configuração, você deverá adicionar uma VCN ou VCNs para permitir o acesso aos dados IoT desse grupo de domínios.

Para concluir as etapas a seguir, seu usuário deve ter pelo menos acesso de leitura à VCN ou às VCNs que você deseja adicionar ao grupo de domínios IoT. Para confirmar se você tem acesso de leitura à VCN, consulte Obtendo Detalhes de uma VCN para exibir as VCNs às quais você tem acesso. Se você não tiver acesso de leitura para a VCN, peça a um administrador para adicionar a política relacionada para obter detalhes, consulte Pré-requisitos do IoT.

Use o comando oci iot domain-group configure-data-access para configurar a VCN ou as VCNs que você deseja permitir o acesso ao banco de dados do grupo de domínios.

Substitua o ["vcn-OCID-1","vcn-OCID-2"] pelos OCIDs da VCN configurados para o seu ambiente. Substitua o <domain-group-OCID> pelo OCID do grupo de domínios com o qual você deseja trabalhar:

oci iot domain-group configure-data-access --db-allow-listed-vcn-ids '["vcn-OCID-1","vcn-OCID-2"]' --iot-domain-group-id <domain-group-OCID>
Observação

O número máximo de VCNs que você pode associar a um grupo de domínios IoT é 5.

Para obter mais informações, consulte Configurando o acesso aos dados para um grupo de domínios IoT.

Etapa 3: Obtendo os Detalhes do Grupo de Domínios IoT Depois de Adicionar os Detalhes da VCN

Ao trabalhar com um grupo de domínios IoT, você pode usar esse comando para obter os detalhes do grupo de domínios. Na resposta, você pode verificar os detalhes da conexão do banco de dados definidos para este grupo de domínios IoT. Substitua o <iot-domain-group-OCID> pelo OCID do grupo de domínios IoT específico:

oci iot iot-domain-group get --iot-domain-group-id <iot-domain-group-OCID>

Este exemplo de resposta mostra que o grupo de domínios está ativo, "lifecycleState": "ACTIVE" e, se configurado, essa resposta inclui os detalhes da conexão do banco de dados e o host de dados do grupo de domínios:

db-allow-listed-vcn-ids

db-connection-string

db-token-scope


{
  "data": {
    "compartment-id": "<compartment-OCID>",
    "data-host": "<domain-group-short-id>.iot-data.<region>.oci.oraclecloud.com",
    "db-allow-listed-vcn-ids": [
      "<vcn-OCID>"
    ],
    "db-connection-string": "tcps:adb.<region>.oraclecloud.com:1521/<unique-id>.adb.oraclecloud.com?retry_count=20&retry_delay=3",
    "db-token-scope": "urn:oracle:db::id::ocid1.<database-compartment-OCID>",
    "defined-tags": {
      "Oracle-Tags": {
        "CreatedBy": "default/user@oracle.com",
        "CreatedOn": "2025-08-11T19:21:24.791Z"
      }
    },
    "description": "<your-domain-group-description>",
    "display-name": "<your-domain-group-name>",
    "freeform-tags": {},
    "id": "<iot-domain-group-OCID>",
    "lifecycle-state": "ACTIVE",
    "system-tags": {},
    "time-created": "2025-08-11T19:21:26.411000+00:00",
    "time-updated": "2025-08-12T02:17:02.763000+00:00"
  },
  "etag": "<unique-id>"
          }

Em seguida, crie um domínio IoT e associe o domínio a um grupo de domínios IoT.