web-dev-qa-db-ja.com

ローカルマシンからAWSのNeptuneに接続する

オフィスからRDSを接続するように、オフィスのローカルマシンからAWSインスタンスのNeptune DBに接続しようとしています。ローカルマシンからNeptune dbに接続することはできますか? Neptune dbは一般に公開されていますか?開発者がNeptune dbをオフィスから接続する方法はありますか?.

10
Sreeraju V

Neptuneはパブリックエンドポイント(VPCの外部からアクセス可能なエンドポイント)をサポートしていません。ただし、VPC外のNeptuneインスタンスにアクセスできるアーキテクチャオプションはほとんどありません。それらのすべてに同じテーマがあります。VPC内に存在するプロキシ(EC2マシン、ALB、または類似のもの、あるいはこれらの組み合わせ)をセットアップし、VPCの外部からそのプロキシにアクセスできるようにします。

純粋に開発目的でインスタンスとやり取りしたいようです。そのための最も簡単なオプションは、ALBを起動し、インスタンスのIPを指すターゲットグループを作成することです。

簡単な手順(これらは意図的に詳細にはしていません。詳細な手順についてはAWSドキュメントを参照してください):

  1. Dig +short <your cluster endpoint>これにより、現在のマスターのIPアドレスがわかります。

  2. ALBを作成します(その方法についてはAWSドキュメントを参照してください)。

  3. ALBのターゲットグループが、手順1で取得したIPアドレスを指すようにします。このステップの終わりまでに、PORT-AでALBをリッスンする必要があります。ALBはIP:PORTにリクエストを転送します。ここで、IPはデータベースIP(ステップ1から)であり、PORTはデータベースポートです(デフォルトは8182)。
  4. あらゆる場所からの受信トラフィックを許可するセキュリティグループを作成します。つまり、インバウンドTCP 0.0.0.0に対するPORT-Aのルール。
  5. セキュリティグループをALBにアタッチします

開発者ボックスから、PORT-AでALBエンドポイントに接続できます。これにより、リクエストがNeptuneインスタンスに内部的に転送されます。

ALBドキュメントの作成方法とコンセプトに関する詳細については、ALBドキュメントをチェックアウトしてください。手順を詳しく説明する必要がある場合は、お気軽にお問い合わせください。

注:これは、本番環境のセットアップでは推奨されるソリューションではありません。 Neptuneインスタンスで使用されるIPは、フェイルオーバーやホストの交換により変更される可能性があります。このソリューションは、テスト目的でのみ使用してください。プロダクション用に同様の設定が必要な場合は、遠慮なく質問してください。オプションについて話し合います。

8
big-K

Neptuneでは、ローカルマシンからdbインスタンスに接続することはできません。 Neptuneと同じVPC内のEC2経由でのみNeptuneに接続できます( awsのドキュメント )。

ローカルからNeptuneにアクセスする手順:

  1. Neptuneクラスターと同じVPCにEC2インスタンスを作成します。
  2. EC2がIPからアクセスできるようにします。
  3. EC2インスタンスでApache gremlinコンソールをダウンロードします。
  4. コンソールフォルダーを解凍し、内部のNeptune-remote.yamlファイルを開きます。
  5. Yamlファイルのホスト名をNeptuneクラスターエンドポイントに変更します。
  6. Apache gremlinコンソールのbinフォルダー内のgremlin.shファイルを実行します。
  7. これでgremlinコンソールになりました。次のコマンドを使用してNeptuneクラスターにリモート接続します-:remote connect tinkerpop.server conf/Neptune-remote.yaml
  8. コマンド:remote consoleを使用して、リモートでNeptuneクラスターコンソールにアクセスします。

すべてのgremlinコマンドがNeptuneグラフで直接実行されるようになりました。

手順3〜8のAWSドキュメント

0
Priyank Agrawal

すでに述べたように、VPCの外部から直接アクセスすることはできません。
これは、SSHトンネルの別のソリューションを示しています: connecting-to-aws-Neptune-from-local-environment 。 PuTTYを使用してSSHトンネルを作成することもできます。

0
Avner Levy