Verbindung zum Remote-Mongodb-Server kann nicht hergestellt werden

Ich versuche, einen Remote-Mongodb-Server zu erstellen, mit dem ich in meinem Java-Projekt arbeiten kann.

Ich benutze Vagrant + Ansible, um die Umgebung zu erstellen, aber aus irgendeinem Grund kann ich keine Verbindung herstellen.

Ich bekomme immer eine Verbindung über das Netzwerk abgelehnt. Der gleiche Code auf localhost funktioniert einwandfrei.

Ich benutze eine Vagrant Box:chef/centos-6.5

und meine anstehenden Aufgaben sind wie folgt:

- name: Download EPEL Repo
  get_url: url=http://dl.fedoraproject.org/pub/epel/6/x86_64/epel- release-6-8.noarch.rpm dest=/tmp/epel-release-6-8.noarch.rpm
- name: Install EPEL Repo
  command: rpm -ivh /tmp/epel-release-6-8.noarch.rpm creates=/etc/yum.repos.d/epel.repo
- name: Install libselinux-python
  yum: name=libselinux-python
- name: Create the repository for 10Gen  
  copy: src=10gen.repo.j2 dest=/etc/yum.repos.d/10gen.repo
- name: Create the EPEL Repository.
  copy: src=epel.repo.j2 dest=/etc/yum.repos.d/epel.repo
- name: Create the GPG key for EPEL
  copy: src=RPM-GPG-KEY-EPEL-6 dest=/etc/pki/rpm-gpg
- name: Create the mongod user
  user: name=mongod comment="MongoD"
- name: Create the data directory for the namenode metadata
  file: path={{ mongodb_datadir_prefix }} owner=mongod group=mongod state=directory
- name: Install the mongodb package
  yum: name={{ item }} state=installed
  with_items:
   - libselinux-python
   - mongo-10gen
   - mongo-10gen-server
   - bc
   - python-pip
- name: Install the latest pymongo package
  pip: name=pymongo state=latest use_mirrors=no 

Ich habe die iptables Ausnahmen hinzugefügt:

sudo iptables -A INPUT -p tcp --dport 27017 -j ACCEPT

was ist aktiv:

[root@localhost ~]# iptables -L -v
Chain INPUT (policy ACCEPT 209 packets, 13148 bytes)
 pkts bytes target     prot opt in     out     source               destination
 1070 68777 ACCEPT     tcp  --  any    any     anywhere             anywhere            tcp dpt:27017

mein Java-Code, der @ definieMongoDbFactory

public @Bean
MongoDbFac,tory mongoDbFactory() throws Exception {
    MongoClient mongo = new MongoClient("<ip-of-machine>", 27017);
    return new SimpleMongoDbFactory(mongo, "test");
}

Aber ich bekomme immer die folgende Ausnahme, wenn ich versuche, eine Verbindung herzustellen.

com.mongodb.MongoTimeoutException: Timed out after 10000 ms while waiting for a server that matches AnyServerSelector{}. Client view of cluster state is {type=Unknown, servers=[{address=192.168.1.11:27017, type=Unknown, state=Connecting, exception={com.mongodb.MongoException$Network: Exception opening the socket}, caused by {java.net.ConnectException: Connection refused}}]

Wenn ich mongodb von localhost aus starte und die IP entsprechend ändere, funktioniert alles einwandfrei.

Vielen Dan

Antworten auf die Frage(2)

Ihre Antwort auf die Frage