2017-07-11 226 views
0

我有一個運行在GCE Ubuntu 16.04實例上的neo4j服務器,我想在本地瀏覽器中訪問它。當我在瀏覽器中輸入地址時,會引發DNS錯誤。我能做些什麼來連接?這是我迄今所做的:在GCE連接到遠程neo4j服務器

添加防火牆規則啓用遠程主機以偵聽端口7474和7473.

改變在/etc/neo4j/neo4j.conf下面幾行:

# With default configuration Neo4j only accepts local connections. 
# To accept non-local connections, uncomment this line: 
dbms.connectors.default_listen_address=0.0.0.0 

# Bolt connector 
dbms.connector.bolt.enabled=true 
#dbms.connector.bolt.tls_level=OPTIONAL 
dbms.connector.bolt.listen_address=:7687 

# HTTP Connector. There must be exactly one HTTP connector. 
dbms.connector.http.enabled=true 
dbms.connector.http.listen_address=:7474 

# HTTPS Connector. There can be zero or one HTTPS connectors. 
dbms.connector.https.enabled=true 
dbms.connector.https.listen_address=:7473 

的Netstat輸出:

Proto Recv-Q Send-Q Local Address   Foreign Address   State 
tcp6  0  0 :::7687     :::*     LISTEN  
tcp6  0  0 :::7473     :::*     LISTEN  
tcp6  0  0 :::7474     :::*     LISTEN 

每次啓動的Neo4j(服務Neo4j的開始,而不是僅僅Neo4j的開始),它說以下內容:

Jul 12 18:43:50 instance-1 neo4j[2003]: 2017-07-12 18:43:50.188+0000 INFO ======== Neo4j 3.2.2 ======== 
Jul 12 18:43:50 instance-1 neo4j[2003]: 2017-07-12 18:43:50.358+0000 INFO Starting... 
Jul 12 18:43:54 instance-1 neo4j[2003]: 2017-07-12 18:43:54.119+0000 INFO Bolt enabled on 0.0.0.0:7687. 
Jul 12 18:44:03 instance-1 neo4j[2003]: 2017-07-12 18:44:03.511+0000 INFO Started. 
Jul 12 18:44:08 instance-1 neo4j[2003]: 2017-07-12 18:44:08.037+0000 INFO Remote interface available at http://localhost:7474/ 
+0

如果你得到一個DNS錯誤,那麼這是不是一個真正的問題Neo4j的,是什麼呢?你還有其他可以使用的東西嗎? – manonthemat

+0

是的,我在訪問在同一實例上運行的Flask應用程序時沒有問題,但是我無法通過遠程Python腳本連接到neo4j – lordingtar

+0

聽起來好像您的防火牆規則不像您期望。正如湯姆所說,你需要在你的f/w規則中允許7687。你的實例是否有標籤?你的fw規則是否有'targetTags'包含你的實例中的標籤? –

回答

2

這裏有幾件事情要檢查:

  1. 你能從本地桌面實例?什麼是nmap -p 7474顯示(如果端口未打開的東西沒有正確設置)?
  2. 在GCE上,netstat -an是否顯示端口7474,7473和7687(!)將在0.0.0.0上聆聽?更改neo4j.conf後,您確實重新啓動了neo4j?
  3. 您還需要打開螺栓端口7687。雖然這不是您當前的問題(您至少應該看到該頁面),但瀏覽器使用螺栓連接到數據庫。所以nmap -p 7687應該顯示端口也是開放的!

希望這會有所幫助!

問候, 湯姆

+0

當我檢查netstat時,它沒有在本地地址上指定0.0.0.0。這可能是問題嗎?我更新了原始帖子中的netstat輸出。 – lordingtar