run-cluster on multiple machines not working

I try to run bin/run-cluster.sh with ‘localhost’ replaced with actual machine ips as below:

index=0
while [ "$index" -lt "$ps_count" ]
do
  ps_hosts[$index]="11.180.94.220:$((index + 2000))"
  ((index++))
done
ps_hosts=$(printf ",%s" "${ps_hosts[@]}")
ps_hosts=${ps_hosts:1}

index=0
while [ "$index" -lt "$worker_count" ]
do
  worker_hosts[$index]="11.180.95.34:$((index + 3000))"
  ((index++))
done
worker_hosts=$(printf ",%s" "${worker_hosts[@]}")
worker_hosts=${worker_hosts:1}

And run with command below:
./bin/run-cluster.sh 1:2:2 --train_files=data/cv_corpus_v1/cv-valid-train.csv --dev_files=data/cv_corpus_v1/cv-valid-dev.csv --test_files=data/cv_corpus_v1/cv-valid-test.csv --train_batch_size=10 --test_batch_size=10 --dev_batch_size=10 --validation_step=1 --log_level=0 --n_hidden=10 --checkpoint_dir=checkpoints/ --epoch=1

it hangs and the worker is not created on the corresponding machine.
what I am doing wrong? how can I fix it? it works well on both machines with local mode while distributed mode is not working.
Please help.

$./bin/run-cluster.sh 1:2:2 --train_files=data/cv_corpus_v1/cv-valid-train.csv --dev_files=data/cv_corpus_v1/cv-valid-dev.csv --test_files=data/cv_corpus_v1/cv-valid-test.csv --train_batch_size=10 --test_batch_size=10 --dev_batch_size=10 --validation_step=1 --log_level=0 --n_hidden=10 --checkpoint_dir=checkpoints/ --epoch=1
Starting cluster with 1 parameter servers and 2 workers with 2 GPUs each…
Started ps 0
Started worker 0
Started worker 1
[ps 0] /opt/anaconda/lib/python2.7/site-packages/h5py/init.py:34: FutureWarning: Conversion of the second argument of issubdtype from float to np.floating is deprecated. In future, it will be treated as np.float64 == np.dtype(float).type.
[ps 0] from ._conv import register_converters as _register_converters
[worker 1] /opt/anaconda/lib/python2.7/site-packages/h5py/init.py:34: FutureWarning: Conversion of the second argument of issubdtype from float to np.floating is deprecated. In future, it will be treated as np.float64 == np.dtype(float).type.
[worker 1] from ._conv import register_converters as _register_converters
[worker 0] /opt/anaconda/lib/python2.7/site-packages/h5py/init.py:34: FutureWarning: Conversion of the second argument of issubdtype from float to np.floating is deprecated. In future, it will be treated as np.float64 == np.dtype(float).type.
[worker 0] from ._conv import register_converters as _register_converters
[worker 0] D Starting coordinator…
[worker 0] D Coordinator started.
[worker 1] E0709 11:25:47.865958962 12580 ev_epoll1_linux.c:1051] grpc epoll fd: 3
[ps 0] E0709 11:25:47.865958707 12574 ev_epoll1_linux.c:1051] grpc epoll fd: 3
[ps 0] D Waiting for stop token…
[worker 0] E0709 11:25:49.127771333 12577 ev_epoll1_linux.c:1051] grpc epoll fd: 32
^C
Killing whole process group - the hard way…
Killed