Настройка кластера с помощью Vagrant

Настройка кластера с помощью Vagrant

Я хочу создать кластер из 4 виртуальных машин CentOS с помощью Vagrant. Я установил Vagrant и VirtualBox на своей машине Widnows, скачал CentOS 64 box и создал кластер.Шаги:

  1. Выполните команду 'vagrant box add --name centos65-base'
  2. Выполните команду «vagrant init centos65-base»
  3. Отредактируйте VagrantFile следующим образом:

    # -*- mode: ruby -*-
    # vi: set ft=ruby :
    
    Vagrant.configure(2) do |config|
    
      config.vm.define :node1 do |node1_config|
        node1_config.vm.box = "centos65_base"
        node1_config.vm.network "private_network", ip: "10.0.2.5"
      end
    
      config.vm.define :node2 do |node2_config|
        node2_config.vm.box = "centos65_base"
        node2_config.vm.network "private_network", ip: "10.0.2.6"
      end
    
      config.vm.define :node3 do |node3_config|
        node3_config.vm.box = "centos65_base"
        node3_config.vm.network "private_network", ip: "10.0.2.7"
      end
    
      config.vm.define :node4 do |node4_config|
        node4_config.vm.box = "centos65_base"
        node4_config.vm.network "private_network", ip: "10.0.2.8"
      end
    end
    
  4. Выполнить «бродягу»

В конце четвертого шага четыре узла кластера были настроены и подняты, что здорово. Я подключился к ним по sshed. Я смог успешно пинговать www.google.com и свою хост-машину с виртуальных машин. Однако пингование с одного узла в кластере на другой дает"узел назначения недоступен"ошибка. Я запустил 'ifconfig', чтобы увидеть используемые сетевые адаптеры. eth0 используется для DHCP, а eth1 используется для статического IP.

[root@vagrant-centos65 vagrant]# ifconfig
eth0      Link encap:Ethernet  HWaddr 08:00:27:4F:B8:06
          inet addr:10.0.2.15  Bcast:10.0.2.255  Mask:255.255.255.0
          inet6 addr: fe80::a00:27ff:fe4f:b806/64 Scope:Link
          UP BROADCAST RUNNING MULTICAST  MTU:1500  Metric:1
          RX packets:1142 errors:0 dropped:0 overruns:0 frame:0
          TX packets:672 errors:0 dropped:0 overruns:0 carrier:0
          collisions:0 txqueuelen:1000
          RX bytes:106471 (103.9 KiB)  TX bytes:84099 (82.1 KiB)

eth1      Link encap:Ethernet  HWaddr 08:00:27:EC:A0:37
          inet addr:10.0.2.5  Bcast:10.0.2.255  Mask:255.255.255.0
          inet6 addr: fe80::a00:27ff:feec:a037/64 Scope:Link
          UP BROADCAST RUNNING MULTICAST  MTU:1500  Metric:1
          RX packets:268 errors:0 dropped:0 overruns:0 frame:0
          TX packets:7 errors:0 dropped:0 overruns:0 carrier:0
          collisions:0 txqueuelen:1000
          RX bytes:27329 (26.6 KiB)  TX bytes:482 (482.0 b)

lo        Link encap:Local Loopback
          inet addr:127.0.0.1  Mask:255.0.0.0
          inet6 addr: ::1/128 Scope:Host
          UP LOOPBACK RUNNING  MTU:16436  Metric:1
          RX packets:8 errors:0 dropped:0 overruns:0 frame:0
          TX packets:8 errors:0 dropped:0 overruns:0 carrier:0
          collisions:0 txqueuelen:0
          RX bytes:784 (784.0 b)  TX bytes:784 (784.0 b)

Есть идеи, как это исправить? Мне нужно, чтобы виртуальные машины в кластере могли общаться друг с другом.

решение1

Я решил эту проблему, используя диапазон IP-адресов 192.168.33.10 - 192.168.33.13 вместо 10.0.2.5 - 10.0.2.8 для статической конфигурации IP.

Я подозреваю, что использование диапазона 10.0.2.x вызвало конфликт, поскольку DHCP по умолчанию использует тот же диапазон в Vagrant.

Связанный контент