运行 DC/OS 集群上的 Shell Arango

Running Arango Shell on DC/OS cluster

我刚刚通过 Microsoft Azure 设置了一个 DC/OS 集群,并使用 DC/OS 仪表板(通过 ssh 隧道)在集群上安装了 Arango 3.0。我能够通过 SSH 进入集群并与 Arango 集群通信:

$ curl --dump - http://localhost:8529/_api/gharial
HTTP/1.1 200 OK
Content-Type: application/json; charset=utf-8
Server: ArangoDB
Connection: Keep-Alive
Content-Length: 38

{"error":false,"graphs":[],"code":200}

问题 #1:即使在我使用 POST 所要求的 here in the docs 插入图表后,Arango 仪表板(通过 DC/OS 通过 ssh 隧道的仪表板)不显示图形。这是为什么?这是 "evidence" 创建的图表 social

$ curl -X POST --data-binary @- --dump - http://localhost:8529/_api/gharial/social/vertex/male <<EOF
> {
>     "name" : "social",
>     "edgeDefinitions" : [
>       {
>         "collection" : "relation",
>         "from" : [
>           "female",
>           "male"
>         ],
>         "to" : [
>           "female",
>           "male"
>         ]
>       }
>     ]
> }
> EOF
HTTP/1.1 202 Accepted
Etag: 129726
Content-Type: application/json; charset=utf-8
Server: ArangoDB
Connection: Keep-Alive
Content-Length: 89

$ curl --dump - http://localhost:8529/_api/gharial
HTTP/1.1 200 OK
Content-Type: application/json; charset=utf-8
Server: ArangoDB
Connection: Keep-Alive
Content-Length: 226

{"error":false,"graphs":[{"_key":"social","_id":"_graphs/social","_rev":"125906","edgeDefinitions":[{"collection":"relation","from":["female","male"],"to":["female","male"]}],"orphanCollections":["otherVertices"]}],"code":200}

我在使用 Arango shell 时也遇到了问题。即使服务器上明确安装了 Arango(如上面的 curl 所示),Arango shell 仍然无法识别:

$ arangosh
arangosh: command not found

问题 #2:即使我已经通过 DC/OS 仪表板安装了 Arango,我是否必须手动将 Arango 安装到这台机器上?如果是这样,我应该如何获得 Arango? (我尝试使用 apt-get 但存在不同版本的问题)。或者是否有另一种我缺少的与此集群通信的方式?

(基本上,我正在尝试将大图批量导入 Arango。我觉得应该有一种直接从文件导入的方法——即不通过 HTTP——因为这可能更快/更有效率)。

#1 图

如果我没记错的话,你只是创建了图形定义;您的图表中还没有数据。因此它将显示在图表列表中,但屏幕将是空白的。

如果你想创建一个包含内容的图表,你可以either do this using arangosh一旦你得到它运行宁,或者点击“+添加图表”,选择'Example Graphs'选项卡,选择一个,按'Create'。请注意,其中一些图表可能会与您已经创建的空图表发生冲突,因此您可能希望先将其删除。

#2 - 阿兰戈什

DC/OS 代理在 docker 容器内部署 ArangoDB。这些 docker 个容器还将包含 arangosh(和 arangoimp)。 如果我没看错,你是在通过 ssh 连接到代理主机吗? 正如您所尝试的,您在主机中 could install the arangodb3-client package - 您需要先添加存储库 URL。

这可能是获取arangosh最方便的方式;另一种可能性是附加 arango docker 容器并将其 运行 放在其中。您需要确保正确连接协调器主机;这就是为什么在代理主机上安装 arangosh 更舒服的原因。