Сервер
На компьютере A (Ubuntu 16.04 LTS) запущен контейнер образа обслуживающей системы Tensorflow (* Ubuntu 16.04 LTS).
Контейнер указывает, что
2018-12-04 00:15:03.059490: I tensorflow_serving/model_servers/server.cc:286] Running gRPC ModelServer at 0.0.0.0:8500
Работает curl ifconfig.me
на A возвращает, например, 12.12.1.123
.
Клиент
Я запускаю следующий скрипт:
from grpc.beta import implementations
from tensorflow_serving.apis import predict_pb2
from tensorflow_serving.apis import prediction_service_pb2
host = 'x.x.x.x'
port = int(8500)
channel = implementations.insecure_channel(host, port)
....
....
Если я установил host = '0.0.0.0'
и запустил скрипт на A, он работает.
если я установил host = '12.12.1.123'
и запустил сценарий на компьютере B (не в той же локальной сети), он потерпит неудачу.
, если я ping 12.12.1.123
на компьютере B, он заработает.
Я думаю,что 12.12.1.123
относится не только к компьютеру A. Существует некоторая проблема, которая блокирует запись grpc на компьютер A.
Я провел некоторый поиск, и потенциальное решение
NAT
mode (Network Address Translation) iptables
Но я не знаю, как настроить и протестировать.
И могут быть некоторые дажепростое решение.Пожалуйста, вдохнови меня.Спасибо.