View a markdown version of this page

连接到 Amazon Neptune 集群 - Amazon Neptune

本文属于机器翻译版本。若本译文内容与英语原文存在差异,则一律以英文原文为准。

连接到 Amazon Neptune 集群

创建 Neptune 集群后,您必须设置网络访问权限,以便您的应用程序可以访问集群终端节点。以下各节描述了网络连接选项。有关在连接后查询数据的更多信息,请参阅访问图形数据

网络连接选项

Amazon Neptune 数据库集群只能 在 Amazon Virtual Private Cloud (Amazon VPC) 中创建。除非您为数据库集群启用和设置 Neptune 公共终端节点,否则只能在该 VPC 内访问其终端节点

您可以通过多种方式在 Neptune 数据库集群的 VPC 中设置网络访问权限:

验证您的连接

设置网络访问后,您可以通过调用实例状态终端节点来验证您的连接是否正常运行。成功响应确认您的客户端可以访问 Neptune 集群。

AWS CLI

运行如下命令:

aws neptunedata get-engine-status \ --endpoint-url https://your-neptune-endpoint:port \ --region us-east-1

有关更多信息,请参阅《命令参考》中的 get-engine-stat us。 AWS CLI

SDK
import boto3 from botocore.config import Config client = boto3.client( 'neptunedata', endpoint_url='https://your-neptune-endpoint:port', config=Config(read_timeout=10, retries={'total_max_attempts': 1}) ) response = client.get_engine_status() print(response)
awscurl
awscurl https://your-neptune-endpoint:port/status \ --region us-east-1 \ --service neptune-db
注意

此示例假设您的 AWS 证书是在您的环境中配置的。us-east-1替换为 Neptune 集群的区域。

有关awscurl与 IAM 身份验证配合使用的更多信息,请参阅使用带有临时证书的 awscurl 安全地连接到启用 IAM 身份验证的数据库集群

curl

运行如下命令:

curl -G https://your-neptune-endpoint:port/status
注意

只有在您的集群上未启用 IAM 身份验证时,此命令才起作用。如果启用了 IAM 身份验证,请 AWS CLI 改用awscurl或。

运行良好的集群会返回包含以下内容的 JSON 响应"status": "healthy"。例如:

{ "status": "healthy", "startTime": "Thu Aug 24 21:07:13 UTC 2023", "dbEngineVersion": "1.3.1.0.R1", "role": "writer", "dfeQueryEngine": "viaQueryHint", "gremlin": { "version": "tinkerpop-3.7.2" }, "sparql": { "version": "sparql-1.1" }, "opencypher": { "version": "Neptune-9.0.20190305-1.0" }, "labMode": { ... }, "features": { ... }, "settings": { ... } }

如果您无法访问终端节点,请验证您的网络配置是否允许端口 8182(或您配置的端口)上的流量,以及您的安全组规则是否允许来自您的客户端的入站连接。有关更多信息,请参阅 确保安全地访问 Neptune。有关设置 AWS CLI、SDK 或的帮助curl,请参阅使用命令行工具