Проблема с AWS EC2, используемыми в MySQL Cluster

При настройке и попытке запустить MySQL Cluster с 4 или 4 узлами, используя AWS, я столкнулся с препятствиями, пытаясь зарегистрировать первый узел данных в диспетчере.

Кажется, это проблема с тем фактом, что узел данных (DN) имеет общедоступный IP-адрес, отличный от IP-адреса, связанного с его eth0 (который я назову частным ip). Таким образом, кажется, что менеджер кластера получает входящий запрос от DN для NodeID:11, но IP-адрес источника не совпадает с IP-адресом, который указан в config.ini.

Вот ошибка, которую я получаю на DN, пытаясь соединиться:

2014-02-08 22:12:45 [ndbd] INFO     -- Angel connected to '<mg_public_ip>:1186'
2014-02-08 22:12:48 [ndbd] INFO     -- Angel allocated nodeid: 11
2014-02-08 22:12:49 [ndbd] ERROR    -- Could not fetch configuration/invalid configuration, error: 'The hostname this node should have according to the configuration does not match a local interface. Attempt to bind '<dn_public_ip>' failed with error: 99 'Cannot assign requested address''

Акцент на "Имя хоста, которое должен иметь этот узел в соответствии с конфигурацией , не соответствует локальному интерфейсу"

Я потратил 2 дня на поиски решений в сети! Удачи. Один из участников, столкнувшийся с этой проблемой, предложил создать сетевой псевдоним с eth0: 0, установленным для публичного IP-адреса DN. Который производит следующий журнал: (это решение также требовало настройки NAT маршрутизатора).

Unable to connect with connect string: nodeid=11,<mg_public_ip>:1186

Я считаю, что это проблема конфигурации сети, и что MySQL и AWS могут обеспечить обходной путь, но я пока не нашел его. Любое понимание будет с благодарностью!

Подробности:

DN Public IP == <dn_public_ip>
DN Private IP == <dn_private_ip>

Менеджер (MG) также имеет публичный и частный IP:

Manager Public IP == <mg_public_ip>
Manager Private IP == <mg_private_ip>

Диспетчер настроен со следующим config.ini:

[ndbd default]
# Options affecting ndbd processes on all data nodes:
NoOfReplicas=2    # Number of replicas
DataMemory=80M    # How much memory to allocate for data storage
IndexMemory=18M   # How much memory to allocate for index storage
                  # For DataMemory and IndexMemory, we have used the
                  # default values. Since the "world" database takes up
                  # only about 500KB, this should be more than enough for
                  # this example Cluster setup.

[tcp default]
# TCP/IP options:
# portnumber=2202   # This the default; however, you can use any
                  # port that is free for all the hosts in the cluster
                  # Note: It is recommended that you do not specify the port
                  # number at all and simply allow the default value to be used
                  # instead

[ndb_mgmd]
# Management process options:
hostname = <mg_private_ip>      # Private IP address of MGM node
datadir=/var/lib/mysql-cluster  # Directory for MGM node log files

[ndbd]
# Options for data node "A":
hostname=<dn_public_ip>         # Public address of data node A
datadir=/usr/local/mysql/data   # Directory for this data node's data files
NodeId=11

[ndbd]
# Options for data node "B":
hostname=***                    # Hostname or IP address
datadir=/usr/local/mysql/data   # Directory for this data node's data files
NodeId=12

[mysqld]
# SQL node options:
hostname=****                   # Hostname or IP address
                                # (additional mysqld connections can be
                                # specified for this node for various
                                # purposes such as running ndb_restore)
NodeId=21

ifconfig на узле данных A:

eth0      Link encap:Ethernet  HWaddr 22:00:0A:FE:87:82  
          inet <addr:dn_private_ip>  Bcast:*.*.*.*  Mask:255.255.255.192
          inet6 addr: ***** Scope:Link
          UP BROADCAST RUNNING MULTICAST  MTU:1500  Metric:1
          RX packets:9321 errors:0 dropped:0 overruns:0 frame:0
          TX packets:7950 errors:0 dropped:0 overruns:0 carrier:0
          collisions:0 txqueuelen:1000 
          RX bytes:739918 (722.5 KiB)  TX bytes:1194550 (1.1 MiB)
          Interrupt:25 

_ndb_1_cluster.log в диспетчере:_

[MgmtSrvr] WARNING  -- Found timedout nodeid reservation for 11, releasing it
[MgmtSrvr] INFO     -- Nodeid 11 allocated for NDB at <dn_public_ip>

0 ответов

Другие вопросы по тегам