Как отправлять сообщения на IoT Gateway с сервера, работающего на экземпляре Google Linux - PullRequest
0 голосов
/ 06 июня 2019

Я пытаюсь отправить сообщения со своего компьютера Mac на шлюз Google IoT, работающий на экземпляре Google VM linux.Не удается запустить сервер шлюза в экземпляре linux для подтверждения сообщений, отправленных сценариями на моем компьютере Mac.

Настройте экземпляр Linux VM Google и следуйте указаниям: https://codelabs.developers.google.com/codelabs/cloud-iot-core-gateways/index.html#0

Я сделалпопробуйте прочитать https://cloud.google.com/community/tutorials/cloud-iot-gateways-rpi. Я установил GOOGLE_CLOUD_PROJECT, чтобы указать на мой проект.

Я обновил ADDR в сценарии thermostat.py, чтобы он указывал на адрес экземпляра linux.Но я не совсем уверен, какой адрес использовать.Адрес, полученный при запуске ifconfig на экземпляре Linux, не может быть проверен на моем компьютере Mac.Я использовал статический адрес, назначенный экземпляру linux, и хотя я могу пропинговать его, я не вижу, чтобы сервер, работающий на шлюзе, подтверждал сообщение, отправленное сценарием.

На экземпляре linux я запускаюсервер шлюза, и если я запускаю thermostat.py в том же экземпляре, я вижу сообщения, полученные шлюзом и консолью Google IoT.

Однако у меня возникают проблемы при запуске thermostat.py с локального компьютера (mac).Я хочу, чтобы это работало, прежде чем пытаться на моем встроенном устройстве.Я вижу, что скрипт пытается отправить сообщение, но я не вижу сообщений, полученных на сервере.

Какой IP-адрес мне следует использовать для связи с сервером шлюза на моем экземпляре Linux?

Кроме настроек ADDR и GOOGLE_CLOUD_PROJECT, есть ли какие-либо другие изменения, которые мне нужны?сделать до thermostat.py?

1 Ответ

0 голосов
/ 18 июня 2019

Виртуальные машины в GCE (Google Compute Engine) по умолчанию имеют заблокированный межсетевой экран. Вам нужно открыть порты для HTTP-соединения, чтобы трафик к шлюзу мог проходить.

...