2017-02-23 68 views
1

У меня есть простая бродячая мульти-машина конфигурация: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| 
    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.
Когда я бегу curl localhost:9200 от [email protected] это работает,
, но когда я пытаюсь запустить curl 192.168.56.102:9200 из [email protected] он не будет работать, я получаю сообщение об ошибке:

curl: (7) Failed to connect to 192.168.56.102 port 9200: Connection refused 
+0

- это порт 9200, открытый в брандмауэре 192.168.56.102? – NangSaigon

+0

@NangSaigon Как я могу проверить его? –

+0

@NangSaigon Я побежал 'netstat -anp | grep LISTEN | grep 9200' и ​​получил 'tcp6 0 0 127.0.0.1:9200 ::: * LISTEN -' ' tcp6 0 0 :: 1: 9200 ::: * LISTEN -' –

ответ

2

Основываясь на ваш комментарий, 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 
+0

Да !!! Оно работает! Не могли бы вы помочь мне решить ту же проблему с mysql? –

+1

да, вы можете задать новый вопрос. если я не смогу помочь, тогда кто-то, кто знает об этом, поможет вам. не удаляйте этот вопрос bcoz, это может помочь другим. также добавьте информацию о порте прослушивания, которая будет более полезна. –

+0

Хорошо. Большое спасибо!!! –