Php 流浪多机器-机器之间的连接
我有简单的vagrant多机配置:Php 流浪多机器-机器之间的连接,php,
elasticsearch,vagrant,Php,
elasticsearch,Vagrant,我有简单的vagrant多机配置: Vagrant.configure(2) do |config| config.vm.box = "bento/ubuntu-16.04" config.vm.provision :shell, path: "vagrant/ubuntu-16.04/provision.sh" config.vm.synced_folder "ed", "/var/www/html" config.vm.provider "virtualbox" do |v|
Vagrant.configure(2) do |config|
config.vm.box = "bento/ubuntu-16.04"
config.vm.provision :shell, path: "vagrant/ubuntu-16.04/provision.sh"
config.vm.synced_folder "ed", "/var/www/html"
config.vm.provider "virtualbox" do |v|
v.memory = 1024
v.cpus = 2
end
config.vm.define "node1", primary: true do |node|
node.vm.hostname = 'node1'
node.vm.network :private_network, ip: "192.168.56.101"
node.vm.network :forwarded_port, guest: 22, host: 10122, id: "ssh"
node.vm.provision :hosts, :sync_hosts => true
end
config.vm.define "node2" do |node|
node.vm.hostname = "node2"
node.vm.network :private_network, ip: "192.168.56.102"
node.vm.network :forwarded_port, guest: 22, host: 10123, id: "ssh"
node.vm.provision :hosts, :sync_hosts => true
end
end
在node1
我有php,在node2
我有elasticsearch。
当我从
vagrant@node2
它可以工作,
但是当我试着从
vagrant@node1
它无法工作,我收到错误信息:
curl: (7) Failed to connect to 192.168.56.102 port 9200: Connection refused
根据您的评论,elasticsearch正在本地主机上侦听。因此,只能从本地访问。查看您的输出:
netstat -anp | grep LISTEN | grep 9200
tcp6 0 0 127.0.0.1:9200 :::* LISTEN - tcp6 0 0 ::1:9200 :::* LISTEN
您必须将elasticsearch
端口绑定到您的IP地址才能从外部访问
打开您的elasticsearch.yml
并将IP地址添加到network.host
选项
network.host: "192.168.56.102"
然后重新启动elasticsearch服务
sudo service elasticsearch restart
端口9200在192.168.56.102的防火墙中打开了吗?@NangSaigon我如何检查它?@NangSaigon我运行了
netstat-anp | grep LISTEN | grep 9200
并收到了tcp6 0 127.0.0.1:9200::*LISTEN-
tcp6 0:1:9200::*LISTEN-我认为要进行快速测试,您只需关闭防火墙:sudo ufw disable,然后再次使用Curl命令。此外,我希望您成功设置了专用网络,您是否尝试过从节点1 ping到节点2?是的,您可以问新问题。如果我不能帮助你,那么一个更了解这一点的人会帮助你。不要删除此问题,因为这可能会帮助其他人。此外,还添加了更有用的侦听端口详细信息。