2016-09-20 3 views
2

Ich bin ein Anfänger mit Aerospike mit Python-Client. Ich habe einen Aerospike [build - 3.9.1.1] in einer Google-Instanz installiert. Wie kann ich eine Verbindung von einer anderen Instanz zum Server herstellen?Verbinden mit Remote-Aerospike-Server - Community Edition

ich versuchte, die in der Schale folgt und sich nicht bewegen würde:

Dies ergibt Ausnahme
import aerospike 
config = {'hosts': [('xx.mmm.nn.oo', 3000)]} 
# the IP from ifconfig | grep "inet addr" 
client = aerospike.client(config) 
client.connect() 

wie unten:

ClientError: (-1L, 'Failed to connect', 'src/main/aerospike/as_cluster.c', 459) 

In dem entfernten versucht ich folgendes:

Dies funktioniert gut:

asinfo -v "namespaces" 

Auch das funktioniert, wenn ich tun:

telnet xx.mmm.nn.oo 3003 
.... 
namespaces 
... 

verzweifelt gehen, habe ich versucht, mit der IP des Servers access-address in der lokalen Einstellung [xx.mmm.nn.oo] und das hat nicht arbeite entweder!

Bitte helfen Sie Menschen!

+1

Können Sie asinfo -h xx.mmm.nn.oo -v Namespaces von dem Host ausführen, von dem aus Sie den Client ausführen? – Meher

+0

von der gleichen Maschine funktioniert es, aber auf dem Client gibt es: 'Anfrage an 10.132.0.9: 3000 Fehler zurückgegeben sollte es irgendwelche Konfiguration, um eine solche Verbindung zu ermöglichen? –

+1

Ist der Client-Host im selben Google-Projekt? Kann es diese IP-Adresse pingen? Und schließlich ist Port 3000 von diesem Rechner aus erreichbar? (Sie müssen möglicherweise einige Änderungen in den Einstellungen Ihrer Google-Instanz/Ihres Projekts vornehmen, um die Kommunikation auf Port 3000 zu ermöglichen). – Meher

Antwort

1

Problem scheinbar gelöst durch Verbindungen, indem Sie die iptables erlaubt:

/sbin/iptables -A INPUT -p tcp es XXX.XXX.XXX.XXX ACCEPT -j/sbin/iptables -A OUTPUT -p tcp -d XXX.XXX.XXX.XXX -j ACCEPT -

Verwandte Themen