2010-05-21 3 views
0

J'espère que quelqu'un pourra me donner des indications sur l'endroit où je vais me tromper en mettant en cluster 3 serveurs avec MySQL Cluster 7.1 avec plusieurs nœuds de gestion.MySQL Cluster 7.1 sur Windows 2008 avec plusieurs noeuds de gestion

Actuellement, le cluster fonctionne parfaitement avec un noeud de gestion. Ceci est la configuration:

  1. serveur passe d'abord seulement une instance de ndb_mgmd (192.168.66.114)
  2. serveur exécute une deuxième instance de ndbd et mysqld (192.168.66.2)
  3. Troisième serveur exécute une instance de ndbd et mysqld (192.168.66.113)

Je souhaite introduire un deuxième noeud de gestion dans le cluster. J'ai exactement le même config.ini pour les deux serveurs de gestion. Ici, il est:

[NDBD DEFAULT] 
NoOfReplicas=2 

[MYSQLD DEFAULT] 

[NDB_MGMD DEFAULT] 
PortNumber=1186 
datadir=c:/Progra~1/mysql-cluster-gpl-7.1.3-win32 
LogDestination=FILE:filename=c:/Progra~1/mysql-cluster-gpl-7.1.3-win32/clusterlog.log 


[TCP DEFAULT] 

# Management Server 
[NDB_MGMD] 
Id=1 
HostName=192.168.66.114 
ArbitrationRank=1 

[NDB_MGMD] 
Id=6 
HostName=192.168.66.2 
ArbitrationRank=2 

# Storage Engines 
[NDBD] 
Id=2 
HostName=192.168.66.2 
DataDir= D:/AppData/ndb-7.1.3 

[NDBD] 
Id=3 
HostName=192.168.66.113 
DataDir= D:/AppData/ndb-7.1.3 

[MYSQLD] 
Id=4 
HostName=192.168.66.2 

[MYSQLD] 
Id=5 
HostName=192.168.66.113 

Quand je commence les instances ndb_mgmd sur les deux serveurs et de délivrer une commande show dans ndb_mgm, sur le premier serveur de gestion, je vois qu'il a commencé:

ndb_mgm> show 
Connected to Management Server at: localhost:1186 
Cluster Configuration 
--------------------- 
[ndbd(NDB)]  2 node(s) 
id=2 @192.168.66.2 (mysql-5.1.44 ndb-7.1.3, Nodegroup: 0, Master) 
id=3 @192.168.66.113 (mysql-5.1.44 ndb-7.1.3, Nodegroup: 0) 

[ndb_mgmd(MGM)] 2 node(s) 
id=1 @192.168.66.114 (mysql-5.1.44 ndb-7.1.3) 
id=6 (not connected, accepting connect from 192.168.66.2) 

[mysqld(API)] 2 node(s) 
id=4 @192.168.66.2 (mysql-5.1.44 ndb-7.1.3) 
id=5 @192.168.66.113 (mysql-5.1.44 ndb-7.1.3) 

ndb_mgm> 

Je suis encore début de la deuxième instance de gestion sur le second serveur de gestion, de sorte que les lignes suivantes est parfaitement OK (ci-dessus sortie ndb_mgm):

id=6 (not connected, accepting connect from 192.168.66.2) 

Ensuite, je vais sur le deuxième serveur de gestion (192.168.66.2) et démarre ndb_mgmd. Après le démarrage, j'envoie une commande show contre:

ndb_mgm> show 
Cluster Configuration 
--------------------- 
[ndbd(NDB)]  2 node(s) 
id=2 (not connected, accepting connect from 192.168.66.2) 
id=3 (not connected, accepting connect from 192.168.66.113) 

[ndb_mgmd(MGM)] 2 node(s) 
id=1 (not connected, accepting connect from 192.168.66.114) 
id=6 @192.168.66.2 (mysql-5.1.44 ndb-7.1.3) 

[mysqld(API)] 2 node(s) 
id=4 (not connected, accepting connect from 192.168.66.2) 
id=5 (not connected, accepting connect from 192.168.66.113) 

ndb_mgm> 

Au lieu d'énumérer les nœuds de gestion comme connecté, le deuxième noeud de gestion des rapports juste qu'il est lui-même connecté. Pour en revenir au premier serveur de gestion à 192.168.66.114 donne toujours le même résultat que avant de commencer la deuxième ndb_mgmd, soit seul nœud de gestion à 192.168.66.114 est connecté:

ndb_mgm> show 
Connected to Management Server at: localhost:1186 
Cluster Configuration 
--------------------- 
[ndbd(NDB)]  2 node(s) 
id=2 @192.168.66.2 (mysql-5.1.44 ndb-7.1.3, Nodegroup: 0, Master) 
id=3 @192.168.66.113 (mysql-5.1.44 ndb-7.1.3, Nodegroup: 0) 

[ndb_mgmd(MGM)] 2 node(s) 
id=1 @192.168.66.114 (mysql-5.1.44 ndb-7.1.3) 
id=6 (not connected, accepting connect from 192.168.66.2) 

[mysqld(API)] 2 node(s) 
id=4 @192.168.66.2 (mysql-5.1.44 ndb-7.1.3) 
id=5 @192.168.66.113 (mysql-5.1.44 ndb-7.1.3) 

ndb_mgm> 

J'ai passé de nombreuses heures à essayer maintenant comprendre ce qui ne va pas, mais en vain. S'il vous plaît aussi jeter un oeil au fichier journal ndb_mgmd du premier serveur de gestion, extrait est pris immédiatement après le démarrage du deuxième ndb_mgmd à 192.168.66.2:

2010-05-21 16:05:04 [MgmtSrvr] INFO  -- Reading cluster configuration from 'c:/Progra~1/mysql-cluster-gpl-7.1.3-win32/config.ini' 
2010-05-21 16:05:04 [MgmtSrvr] WARNING -- at line 45: Cluster configuration warning: 
    arbitrator with id 6 and db node with id 2 on same host 192.168.66.2 
    Running arbitrator on the same host as a database node may 
    cause complete cluster shutdown in case of host failure. 
2010-05-21 16:05:04 [MgmtSrvr] INFO  -- Config equal! 
2010-05-21 16:05:04 [MgmtSrvr] INFO  -- Mgmt server state: nodeid 1 reserved for ip 192.168.66.114, m_reserved_nodes 1. 
2010-05-21 16:05:04 [MgmtSrvr] INFO  -- Id: 1, Command port: *:1186 
2010-05-21 16:05:04 [MgmtSrvr] DEBUG -- 127.0.0.1:3727: Connected! 
2010-05-21 16:05:04 [MgmtSrvr] DEBUG -- Sending CONFIG_CHECK_REQ to 1 
2010-05-21 16:05:04 [MgmtSrvr] DEBUG -- Got CONFIG_CHECK_REQ from node: 1. Our generation: 1, other generation: 1, our state: 2, other state: 2, our checksum: 0xc7202738, other checksum: 0xc7202738 
2010-05-21 16:05:04 [MgmtSrvr] DEBUG -- Send CONFIG_CHECK_CONF to node: 1 
2010-05-21 16:05:04 [MgmtSrvr] DEBUG -- Got CONFIG_CHECK_CONF from node: 1 
2010-05-21 16:05:04 [MgmtSrvr] DEBUG -- 192.168.66.113:51051: Connected! 
2010-05-21 16:05:04 [MgmtSrvr] DEBUG -- 192.168.66.2:65492: Connected! 
2010-05-21 16:05:04 [MgmtSrvr] INFO  -- Node 1: Node 6 Connected 
2010-05-21 16:05:04 [MgmtSrvr] INFO  -- Node 6 connected 
2010-05-21 16:05:04 [MgmtSrvr] DEBUG -- Sending CONFIG_CHECK_REQ to 6 
2010-05-21 16:05:04 [MgmtSrvr] DEBUG -- Got CONFIG_CHECK_CONF from node: 6 
2010-05-21 16:05:04 [MgmtSrvr] INFO  -- Node 1: Node 3 Connected 
2010-05-21 16:05:04 [MgmtSrvr] DEBUG -- 192.168.66.113:51051: Stopped! 
2010-05-21 16:05:04 [MgmtSrvr] DEBUG -- 192.168.66.113:51051: Disconnected! 
2010-05-21 16:05:04 [MgmtSrvr] INFO  -- Node 1: Node 2 Connected 
2010-05-21 16:05:04 [MgmtSrvr] DEBUG -- 192.168.66.2:65492: Stopped! 
2010-05-21 16:05:04 [MgmtSrvr] DEBUG -- 192.168.66.2:65492: Disconnected! 
2010-05-21 16:05:05 [MgmtSrvr] INFO  -- Node 3: Prepare arbitrator node 1 [ticket=16800008ebadb656] 
2010-05-21 16:05:05 [MgmtSrvr] INFO  -- Node 2: Started arbitrator node 1 [ticket=16800008ebadb656] 

Personnellement, je trouve les deux lignes suivantes de ce qui précède la sortie est aussi intéressante:

2010-05-21 16:05:04 [MgmtSrvr] DEBUG -- 192.168.66.2:65492: Stopped! 
2010-05-21 16:05:04 [MgmtSrvr] DEBUG -- 192.168.66.2:65492: Disconnected! 

Il n'y a pas de message d'erreur, il est juste dit Stopped and Disconnected.

Quelqu'un peut-il comprendre ce qui ne va pas avec ma configuration? Toute aide serait très, très appréciée.

Répondre

0

Les gars, celui-ci effectivement fixé lui-même. Je ne sais pas pourquoi, mais plus tard aujourd'hui, le deuxième noeud de gestion a commencé à se connecter correctement sans mon intervention.

1

http://dev.mysql.com/tech-resources/articles/mysql-cluster-for-two-servers.html

Le lien ci-dessus est le guide étape par étape que j'ai utilisé pour mettre en œuvre ma configuration du cluster.L'article est pour une installation basée sur Linux, mais les étapes sont presque identiques pour une installation de Windows. La syntaxe de la ligne de commande est bien sûr différente pour Windows. Les seules différences que vous devez gérer sont de placer les fichiers du cluster MySQL à l'endroit approprié sur votre machine Windows et d'installer les services manuellement. Une fois que vous avez fait cela, il n'y a pas de différence - tout est fait dans les fichiers de configuration. Pour commencer, vous pouvez copier les fichiers d'installation, puis tout démarrer à partir de la ligne de commande. De cette façon, vous trouverez facile de résoudre les problèmes qui peuvent survenir, car vous verrez des erreurs dans les fenêtres d'invite de commande. Sinon, vous devrez d'abord configurer la journalisation en consultant les journaux pour savoir ce qui se passe. Rappelez-vous, vous devez être un magicien pour tout faire fonctionner dès le premier essai, alors laissez la journalisation de côté pour les débutants, et regardez directement la sortie des services de cluster dans votre fenêtre d'invite de commande. Si vous parvenez à tout faire fonctionner, vous devriez aller de l'avant et installer les "démons" en tant que services sous Windows. Je peux vous aider avec ceci si besoin d'aide. Il s'avère que l'installation des services peut être une tâche très délicate - même si j'ai installé mon cluster il y a quelque temps, je me souviens que l'installation des services m'a pris du temps. Je l'ai fait sur une base d'essais et d'erreurs. De mémoire, vous devez utiliser seulement 8.3 noms dans vos chemins lors de l'installation des services. Sinon, le mien n'a pas pu démarrer (ou installer en tant que services, je ne me souviens plus exactement).

+0

Le lien est maintenant mort. – ChrisF

Questions connexes