apache zookeeper - usar - Zookeeper-tres nodos y nada más que errores
para que sirve zookeeper (2)
Necesita crear un archivo llamado myid y colocarlo en el directorio var del observador, uno para cada servidor, que consiste en una sola línea que contiene solo el texto de la identificación de esa máquina. Así que myid del servidor 1 contendría el texto "1" y nada más. La identificación debe ser única dentro del conjunto y debe tener un valor entre 1 y 255.
vea más en http://zookeeper.apache.org/doc/r3.3.3/zookeeperAdmin.html#sc_zkMulitServerSetup
Tengo tres nodos guardián. Todos los puertos están abiertos. La dirección ip es correcta. A continuación se muestra mi archivo de configuración. Todos los nodos fueron iniciados por chef y todos tienen el mismo archivo de instalación y configuración.
# The number of milliseconds of each tick
tickTime=3000
# The number of ticks that the initial
# synchronization phase can take
initLimit=10
# The number of ticks that can pass between
# sending a request and getting an acknowledgement
syncLimit=5
# the directory where the snapshot is stored.
dataDir=/var/lib/zookeeper
# Place the dataLogDir to a separate physical disc for better performance
# dataLogDir=/disk2/zookeeper
# the port at which the clients will connect
clientPort=2181
server.1=111.111.111:2888:3888
server.2=111.111.112:2888:3888
server.3=111.111.113:2888:3888
Aquí está el error para uno de los nodos. Entonces ... estoy bastante confundido sobre cómo podría obtener un error ya que la configuración es más bien vanilla. Los tres nodos están haciendo lo mismo.
2012-07-16 05:16:57,558 - INFO [main:QuorumPeerConfig@90] - Reading configuration from: /etc/zookeeper/conf/zoo.cfg
2012-07-16 05:16:57,567 - INFO [main:QuorumPeerConfig@310] - Defaulting to majority quorums
2012-07-16 05:16:57,572 - FATAL [main:QuorumPeerMain@83] - Invalid config, exiting abnormally
org.apache.zookeeper.server.quorum.QuorumPeerConfig$ConfigException: Error processing /etc/zookeeper/conf/zoo.cfg
at org.apache.zookeeper.server.quorum.QuorumPeerConfig.parse(QuorumPeerConfig.java:110)
at org.apache.zookeeper.server.quorum.QuorumPeerMain.initializeAndRun(QuorumPeerMain.java:99)
at org.apache.zookeeper.server.quorum.QuorumPeerMain.main(QuorumPeerMain.java:76)
Caused by: java.lang.IllegalArgumentException: serverid replace this text with the cluster-unique zookeeper''s instance id (1-255) is not a number
at org.apache.zookeeper.server.quorum.QuorumPeerConfig.parseProperties(QuorumPeerConfig.java:333)
at org.apache.zookeeper.server.quorum.QuorumPeerConfig.parse(QuorumPeerConfig.java:106)
... 2 more
server.1=111.111.111:2888:3888
server.2=111.111.112:2888:3888
server.3=111.111.113:2888:3888
Son sus servidores e IP''s
Luego cree el archivo myid en cada uno de los nodos con el valor 1 en 111.111.111 y 2 en 111.111.111.112 y 3 en 111.111.111.113 servidores bajo el directorio (dataDir = / var / lib / zookeeper)
Si coloca el archivo myid de valor "1", obtendrá la excepción de formato de número y la "Configuración no válida, que se cerrará de forma anormal" si el archivo myid se crea con cualquier extensión.
Por lo tanto, solo cree el archivo myid sin ninguna extensión y coloque valores enteros 1,2,3 en los servidores correspondientes sin comillas dobles