先说下我遇到的场景:
elstic search 节点 在内网机器,外网就一台机器暴露公网ip,但是想在公网访问els-head。
服务器架构如下:
我的解决过程:
1. 考虑端口转发
2. rinetd安装配置了转发 宿主机9200到内网ip的9200 (后来发现这步没必要,node有自己的代理,可以跳过)
3. 我在els-head前端调试,在ui界面连不上,但是直接访问宿主机ip的9200可以访问
4.仔细查看前台 console报错,发现是跨域问题
5.重点,解决node的跨域配置
6.启动的时候要启动两个脚本
npm start
npm run proxy
7.enjoy!
总结:
1.最好不要用iptables firewall工具配置端口转发,因为阿里或者aws的机器有自己的安全组,这样玩有点麻烦
2.如果你要转发,推荐rinetd
3.仔细看文档,proxy我看到源代码了,才想到看文档,找了好久才找到