我为VPC启用了Private Google API access,并使用此HTTP proxy solution将我的异地数据中心连接到Google Cloud后端。
使用该解决方案,我已通过使用gsutil在异地网络中移动文件来验证Google对象存储API是否正常工作。
但是我无法连接到云IOT所需的mqtt.googleapis.com。
我认为这是因为在mqtt.googleapis.com上运行的MQTT代理无法通过专用网络访问,除非它的代理方式与上述HTTP代理解决方案类似。
同时实际的gsutil IOT命令工作正常,因为我认为它们正在运行Google HTTP API。
为了解决这个问题,我发现我们需要下面的任何一个,除非有人有不同的方法来做到这一点?
在私有VPC中运行MQTT代理代理,并将MQTT数据包路由到mqtt.googleapis.com。在这种情况下我们可以使用合适的MQTT代理代理吗?
如果我们获得了mqtt网桥(mqtt.googleapis.com)正在运行的一系列公共IP,那么我们可以简单地为这一个用例构建网络路由。可以吗?
答案 0 :(得分:0)
它是否可以通过物联网核心中的HTTP协议桥接工作?使用HTTP而不是MQTT是一个选项吗?
答案 1 :(得分:0)
我设法使用NGINX作为反向代理,并将TCP流量直接流式传输到mqtt.googleapis.com。以下是实现此目的的步骤
--with-stream
配置标志安装Nginx。这使用TCP流代理的功能构建Nginx /etc/nginx/nginx.conf
stream {
upstream google_mqtt {
server mqtt.googleapis.com:8883;
}
server {
listen 8883;
proxy_pass google_mqtt;
}
}
mqtt.googleapis.com
解析为Nginx服务器的IP