Amazon DocumentDB
開発者ガイド

Amazon VPC 外部からの Amazon DocumentDB クラスターへの接続

Amazon DocumentDB (MongoDB 互換) クラスターは Amazon Virtual Private Cloud (Amazon VPC) 内にデプロイされます。それらのクラスターには、同じ Amazon VPC にデプロイされている Amazon EC2 インスタンスや他の AWS のサービスから直接アクセスできます。また、Amazon DocumentDB には、同じ AWS リージョン内で (VPC ピア接続を介すれば別の AWS リージョン間で) 異なる VPC にある、EC2 インスタンスや他の AWS のサービスからアクセスできます。

ただし、お客様のユースケースで、お客様 (またはお客様のアプリケーション) が、クラスターの VPC の外部から Amazon DocumentDB リソースにアクセスする必要があるとします。その場合は、SSH トンネリング (ポート転送とも呼ばれる) を使用して、Amazon DocumentDB リソースにアクセスできます。

SSH トンネリングに関する詳細な説明は、このトピックでは扱いません。SSH トンネリングの詳細については、次のドキュメントを参照してください。

SSH トンネルを作成するには、Amazon DocumentDB クラスターと同じ Amazon VPC で実行中の Amazon EC2 インスタンスが必要です。クラスターと同じ VPC で既存の EC2 インスタンスを使用するか、新しい EC2 インスタンスを作成できます。詳細については、以下でオペレーティングシステムに該当するトピックを参照してください。

通常、以下のコマンドを使用して EC2 インスタンスに接続します。

> ssh -i "ec2Access.pem" ubuntu@ec2-34-229-221-164.compute-1.amazonaws.com

その場合、ローカルコンピューターで以下のコマンドを実行して Amazon DocumentDB クラスター sample-cluster.cluster-cu52jq5kfddg.us-east-1.docdb.amazonaws.com に SSH トンネルを設定できます。ローカルポートの転送を行う場合は、-L フラグを使用します。

> ssh -i "ec2Access.pem" -L 27017:sample-cluster.cluster-cu52jq5kfddg.us-east-1.docdb.amazonaws.com:27017 ubuntu@ec2-34-229-221-164.compute-1.amazonaws.com -N

SSH トンネルが作成されると、localhost:27017 に対して発行するすべてのコマンドは、Amazon VPC で実行中の Amazon DocumentDB クラスター sample-cluster に転送されます。Transport Layer Security (TLS) が Amazon DocumentDB クラスターで有効になっている場合は、https://s3.amazonaws.com/rds-downloads/rds-combined-ca-bundle.pem から Amazon DocumentDB のパブリックキーをダウンロードする必要があります。以下のオペレーションでは、rds-combined-ca-bundle.pem という名前のファイルをダウンロードします。

> wget https://s3.amazonaws.com/rds-downloads/rds-combined-ca-bundle.pem

注記

TLS は、新しい Amazon DocumentDB クラスターに対してデフォルトで有効になっています。ただし、無効にすることができます。詳細については、「Amazon DocumentDB クラスターの TLS 設定の管理」を参照してください。

Amazon VPC の外部から Amazon DocumentDB クラスターに接続するには、以下のコマンドを使用します。

> mongo --sslAllowInvalidHostnames --ssl --sslCAFile rds-combined-ca-bundle.pem --username <yourUsername> --password <yourPassword>