Testar comunicações (sincronizações de dispositivos desativadas) - AWS IoT Greengrass

AWS IoT Greengrass Version 1 entrou na fase de vida útil prolongada em 30 de junho de 2023. Para obter mais informações, consulte política de manutenção do AWS IoT Greengrass V1. Após essa data, AWS IoT Greengrass V1 não lançaremos atualizações que forneçam recursos, aprimoramentos, correções de erros ou patches de segurança. Os dispositivos que funcionam AWS IoT Greengrass V1 não serão interrompidos e continuarão operando e se conectando à nuvem. É altamente recomendável que você migre para AWS IoT Greengrass Version 2, o que adiciona novos recursos significativos e suporte para plataformas adicionais.

As traduções são geradas por tradução automática. Em caso de conflito entre o conteúdo da tradução e da versão original em inglês, a versão em inglês prevalecerá.

Testar comunicações (sincronizações de dispositivos desativadas)

  1. Verifique se o computador e o dispositivo AWS IoT Greengrass principal estão conectados à Internet usando a mesma rede.

    1. No dispositivo AWS IoT Greengrass principal, execute o comando a seguir para encontrar seu endereço IP.

      hostname -I
    2. Em seu computador, execute o comando a seguir usando o endereço IP do núcleo. Você pode usar Ctrl + C para interromper o comando ping.

      ping IP-address

      Uma saída semelhante à seguinte indica uma comunicação bem-sucedida entre o computador e o dispositivo AWS IoT Greengrass principal (0% de perda de pacotes):

      Resultado bem-sucedido do comando de ping.
      nota

      Se você não conseguir fazer ping em uma instância do EC2 em execução AWS IoT Greengrass, certifique-se de que as regras do grupo de segurança de entrada da instância permitam tráfego ICMP para mensagens de solicitação do Echo. Para obter mais informações, consulte Adicionar regras a um grupo de segurança no Guia do usuário do Amazon EC2.

      Nos computadores host Windows, no Firewall do Windows com o aplicativo Segurança Avançada, talvez você também precise habilitar uma regra de entrada que permita a entrada de solicitações de eco (por exemplo, File and Printer Sharing (Compartilhamento de arquivos e impressoras) (Solicitação de eco – ICMPv4-In)) ou precise criar uma.

  2. Obtenha seu AWS IoT endpoint.

    1. No painel de navegação do console do AWS IoT, selecione Configurações.

    2. Em Endpoint de dados do dispositivo, anote o valor do Endpoint. Você pode usar esse valor para substituir o espaço reservado AWS_IOT_ENDPOINT nos comandos nas etapas a seguir.

  3. No seu computador (não no dispositivo AWS IoT Greengrass principal), abra duas janelas de linha de comando (terminal ou prompt de comando). Uma janela representa o dispositivo cliente GG_Switch e a outra representa o dispositivo cliente GG_TrafficLight .

    1. Na janela do dispositivo cliente GG_Switch, execute os comandos a seguir.

      • Substitua path-to-certs-folder pelo o caminho para a pasta que contém os certificados, as chaves e os arquivos Python.

      • Substitua AWS_IOT_ENDPOINT pelo seu endpoint.

      • Substitua as duas CertId instâncias do switch pelo ID do certificado no nome do arquivo do seu dispositivo cliente GG_Switch.

      cd path-to-certs-folder python lightController.py --endpoint AWS_IOT_ENDPOINT --rootCA AmazonRootCA1.pem --cert switchCertId-certificate.pem.crt --key switchCertId-private.pem.key --thingName GG_TrafficLight --clientId GG_Switch
    2. Na janela do dispositivo TrafficLight cliente GG_, execute os seguintes comandos.

      • Substitua path-to-certs-folder pelo o caminho para a pasta que contém os certificados, as chaves e os arquivos Python.

      • Substitua AWS_IOT_ENDPOINT pelo seu endpoint.

      • Substitua as duas CertId instâncias leves pelo ID do certificado no nome do arquivo do seu dispositivo TrafficLight cliente GG_.

      cd path-to-certs-folder python trafficLight.py --endpoint AWS_IOT_ENDPOINT --rootCA AmazonRootCA1.pem --cert lightCertId-certificate.pem.crt --key lightCertId-private.pem.key --thingName GG_TrafficLight --clientId GG_TrafficLight

      A cada 20 segundos, o interruptor atualiza o estado de shadow para G, Y e R, e a luz exibe seu novo estado, conforme a seguir.

      Resultado do GG_Switch:

      Captura de tela da resultado associado ao GG_Switch.

      TrafficLight Saída GG_:

      Captura de tela da saída associada a TrafficLight GG_.

    Quando executado pela primeira vez, cada script de dispositivo cliente executa o serviço de AWS IoT Greengrass descoberta para se conectar ao AWS IoT Greengrass núcleo (pela Internet). Depois que um dispositivo cliente é descoberto e conectado com sucesso ao AWS IoT Greengrass núcleo, as operações futuras podem ser executadas localmente.

    nota

    Os scripts lightController.py e trafficLight.py armazenam informações de conexão na pasta groupCA, que é criada na mesma pasta que os scripts. Se você receber erros de conexão, certifique-se de que o endereço IP no arquivo ggc-host corresponde ao endpoint de endereço IP para seu núcleo.

  4. No AWS IoT console, escolha seu AWS IoT Greengrass grupo, escolha a guia Dispositivos clientes e, em seguida, escolha GG_ TrafficLight para abrir a página de detalhes do AWS IoT item do dispositivo cliente.

  5. Selecione a guia Sombras do dispositivo. Depois que o GG_Switch mudar de estado, não deverá haver atualizações nesta sombra. Isso porque o GG_ TrafficLight está configurado para Desativar a sincronização de sombras com a nuvem.

  6. Pressione Ctrl + C na janela do dispositivo cliente (lightController.py) do GG_Switch. Você deve ver que a janela GG_ TrafficLight (trafficLight.py) para de receber mensagens de mudança de estado.

    Mantenha essas janelas abertas para que você possa executar os comandos na próxima seção.