1 votes

Deux machines virtuelles Vagrant ne peuvent pas se pinguer

  • CentOS 7 VM - 10.0.2.100
  • Windows Server 2012 R2 VM - 10.0.2.15

Objectif - Pinger l'un l'autre; communiquer entre eux

Problème - Impossible de se pinguer; communiquer entre eux

Sur la VM CentOS, j'ai désactivé auto_config car Vagrant avait du mal à changer automatiquement l'IP pour moi. J'ai donc fait en sorte que Vagrant la reconnaisse comme étant 10.0.2.100 puis j'ai changé le réseau manuellement sur la VM.

Sur la VM Windows, Vagrant a défini l'adresse IP par défaut sur 10.0.2.15.

# -*- mode: ruby -*-
# vi: set ft=ruby :

Vagrant.configure("2") do |config|

  config.vm.define "master" do |master|
    master.vm.box = "centos/7"
    master.vm.network "private_network", ip: "10.0.2.100", auto_config: false
    master.vm.box      = "centos_7_v2"
    master.vm.hostname = "master.local.com"
    master.vm.provider "virtualbox" do |v|
      v.customize ["modifyvm", :id, "--natdnshostresolver1", "on"]
    end
  end

  config.vm.define "nodeone" do |nodeone|
    nodeone.vm.box = "windows_2012_r2_standard"
    nodeone.vm.hostname = "nodeone.local.com"
    nodeone.vm.provider "virtualbox" do |v|
      v.customize ["modifyvm", :id, "--natdnshostresolver1", "on"]
    end
  end

end

J'ai ajouté la configuration --natdnshostresolver1 aux deux VM, puis j'ai ajouté ce qui suit dans mon propre fichier hosts (sur mon Mac).

10.0.2.15 nodeone.local.com
10.0.2.100 master.local.com

0voto

Jeffrey Wen Points 254

J'ai enfin compris. Apparemment, vous devez simplement définir l'adresse IP dans le même sous-réseau, puis ajouter ensuite l'option virtualbox__intnet: true comme indiqué sur https://www.vagrantup.com/docs/virtualbox/networking.html

# Master
master.vm.network "private_network", ip: "192.168.50.100",
  virtualbox__intnet: true

# Node
nodeone.vm.network "private_network", ip: "192.168.50.110",
  virtualbox__intnet: true

0voto

Taylor Liss Points 101

Comme indiqué par @jeffrey-wen, la solution consiste à ajouter virtual_box__intnet: true au fichier d'inventaire. Il convient de noter qu'en faisant cela, vous pourriez avoir des difficultés à pinguer ou à effectuer un ssh sur vos boîtes Vagrant qui se trouvent maintenant sur un nouveau réseau local (comme indiqué dans ce problème Ansible).

La solution pour moi a été d'ajouter -c local à toute commande que j'ai exécutée. -c informe Ansible du type de connexion à utiliser et est par défaut smart qui ne fonctionne parfois pas correctement.

Désolé d'avoir posté cela comme une réponse - je n'ai pas encore assez de réputation pour le poster comme un commentaire ¯\_()_/¯

SistemesEz.com

SystemesEZ est une communauté de sysadmins où vous pouvez résoudre vos problèmes et vos doutes. Vous pouvez consulter les questions des autres sysadmins, poser vos propres questions ou résoudre celles des autres.

Powered by:

X