翻訳は機械翻訳により提供されています。提供された翻訳内容と英語版の間で齟齬、不一致または矛盾がある場合、英語版が優先します。
Amazon EC2を手動で接続する
トピック
以下の手順は、 前提条件トピックの手順を完了していることを前提としています。
ステップ 1: Amazon EC2インスタンスを作成する
このステップでは、同じ リージョンと Amazon に Amazon EC2インスタンスを作成しVPC、後で Amazon DocumentDB クラスターのプロビジョニングに使用します。
-
Amazon EC2コンソールで、インスタンスの起動 を選択します。
-
名前とタグセクションにある名前フィールドに名前または識別子を入力します。
-
Amazon マシンイメージ (AMI) ドロップダウンリストで、Amazon Linux 2 AMIを見つけて選択します。
-
インスタンスタイプのドロップダウンリストから t3.micro を見つけて選択します。
-
「キーペア (ログイン)」セクションで、既存のキーペアの識別子を入力するか、「新しいキーペアの作成」を選択します。
Amazon EC2キーペアを指定する必要があります。
Amazon EC2キーペアがある場合:
-
キーペアを選択し、リストからご自身のキーペアを選択します。
-
Amazon EC2インスタンスにログインするには、プライベートキーファイル (.pem または .ppk ファイル) が既に必要です。
Amazon EC2キーペアがない場合:
-
「新しいキーペアの作成」を選択すると、「キーペアの作成」ダイアログボックスが表示されます。
-
キーペア名フィールドに名前を入力します。
-
キーペアタイプ とプライベートキーファイル形式 を選択します。
-
[キーペアの作成] を選択します。
注記
セキュリティ上の理由から、 SSHとEC2インスタンスへのインターネット接続の両方にキーペアを使用することを強くお勧めします。
-
-
「ネットワークシーティング」セクションの「ファイアウォール (セキュリティグループ)」で、「セキュリティグループの作成」または「既存のセキュリティグループの選択」を選択します。
既存のセキュリティグループを選択する場合は、共通セキュリティグループドロップダウンリストから選択します。
新しいセキュリティグループを作成することを選択した場合は、以下を実行します。
EC2 接続に適用されるすべてのトラフィック許可ルールを確認してください。
IP フィールドで、My IP を選択するか、Custom を選択して、CIDRブロック、プレフィックスリスト、またはセキュリティグループのリストから選択します。EC2 インスタンスが分離されたネットワーク上にある場合を除き、Anywhere を選択としてお勧めしません。これは、EC2インスタンスへの IP アドレスアクセスを許可するためです。
-
概要セクションで、EC2設定を確認し、正しい場合はインスタンスの起動を選択します。セキュリティグループを編集します。
ステップ 2: セキュリティグループを作成する
デフォルトの Amazon に新しいセキュリティグループを作成しますVPC。セキュリティグループdemoDocDB
を使用すると、Amazon インスタンスからポート 27017 (Amazon DocumentDB のデフォルトポート) で Amazon DocumentDB クラスターに接続できます。 EC2
-
Amazon EC2マネジメントコンソール
のネットワークとセキュリティ で、セキュリティグループ を選択します。 -
[Create Security Group] を選択します。
-
「基本の詳細」セクションで、次の操作を行います。
[Security group name (セキュリティグループ名)] に「
demoDocDB
」と入力します。[説明] に説明を入力します。
の場合VPC、デフォルトの の使用を受け入れますVPC。
-
[インバウンドルール] セクションで、[ルールの追加] を選択します。
タイプ で、カスタムTCPルール を選択します。
[ポート範囲] には、
27017
を入力します。Destination(送信先) については、[Custom (カスタム)] を選択します。その横にあるフィールドで、先ほど
demoEC2
と名前を付けたセキュリティグループを検索します。demoEC2
ソース名を自動入力するには、Amazon EC2コンソールのブラウザを更新する必要がある場合があります。
-
他のすべてのデフォルトを受け入れ、セキュリティグループの作成 を選択します。
ステップ 3: Amazon DocumentDB クラスターを作成する
Amazon EC2インスタンスのプロビジョニング中に、Amazon DocumentDB クラスターを作成します。
-
Amazon DocumentDB コンソールに移動し、ナビゲーションペインから クラスター を選択します。
-
[Create] (作成) を選択します。
-
クラスタータイプ設定は、インスタンスベースのクラスター のデフォルトのままにします。
-
インスタンスの数 については、1 を選択します。これにより、コストが最小限に抑えられます。他の設定はデフォルトのままにします。
-
接続 の場合、デフォルト設定のEC2「コンピューティングリソースに接続しない」のままにします。
注記
EC2 コンピューティングリソースに接続すると、クラスターへのEC2コンピューティングリソース接続のセキュリティグループが自動的に作成されます。前のステップでこれらのセキュリティグループを手動で作成したため、2 番目のセキュリティグループセットを作成しないように、EC2コンピューティングリソースに接続しないを選択する必要があります。
-
[認証] には、サインイン認証情報を入力します。重要:後のステップでクラスターを認証するには、ログイン認証情報が必要です。
-
[アドバンスト設定の表示] を有効化します。
-
ネットワーク設定セクションの Amazon VPC セキュリティグループ で、demoDocDB を選択します。
-
[クラスターを作成] を選択します。
ステップ 4: Amazon EC2インスタンスに接続する
mongo シェルをインストールするには、まず Amazon EC2インスタンスに接続する必要があります。Mongo シェルをインストールすると、Amazon DocumentDB クラスターに接続してクエリを実行できます。以下のステップを実行します。
-
Amazon EC2コンソールで、インスタンスに移動し、作成したインスタンスが実行中かどうかを確認します。その場合は、インスタンス ID をクリックしてインスタンスを選択します。
-
[接続]を選択します。
-
接続方法には、Amazon EC2 Instance Connect、Session Manager、SSHクライアント、EC2シリアルコンソールの 4 つのタブオプションがあります。いずれかを選択し、その指示に従わなければなりません。完了したら、接続 を選択します。
注記
このチュートリアルの開始後に IP アドレスが変更された場合、または後で環境に戻る場合は、demoEC2
セキュリティグループのインバウンドルールを更新して、新しいAPIアドレスからのインバウンドトラフィックを有効にする必要があります。
ステップ 5: mongo シェルをインストールします
これで、Mongo シェルをインストールできます。これは、Amazon DocumentDB クラスターに接続してクエリするために使用するコマンドラインのユーティリティです。以下の手順に従って、オペレーションシステム用の Mongo Shell をインストールします。
ステップ 6: Amazon DocumentDB を管理する TLS
次のコード wget https://truststore.pki.rds.amazonaws.com/global/global-bundle.pem
を使用して Amazon DocumentDB の CA 証明書をダウンロードします。
注記
Transport Layer Security (TLS) は、すべての新しい Amazon DocumentDB クラスターでデフォルトで有効になっています。詳細については、Amazon DocumentDB クラスターTLS設定の管理」を参照してください。
ステップ 7: Amazon DocumentDB クラスターに接続する
-
Amazon DocumentDB コンソールのクラスター で、クラスターを見つけます。クラスター識別子 をクリックして、作成したクラスターを選択します。
-
接続とセキュリティ タブで、Connect ボックスの mongo シェルを使用してこのクラスターに接続する を見つけます。
提供された接続文字列をコピーし、ターミナルに貼り付けます。
次の変更を加えます。
文字列に正しいユーザー名があることを確認してください。
を省略
<insertYourPassword>
すると、接続時に mongo シェルによってパスワードの入力を求められます。
接続文字列は、次のようになります。
mongo --ssl host docdb-2020-02-08-14-15-11. cluster.region.docdb.amazonaws.com:27107 --sslCAFile global-bundle.pem --username demoUser --password
-
ターミナルで Enter キーを押します。これで、パスワードの入力を求められます。パスワードを入力します。
-
パスワードを入力し、
rs0:PRIMARY>
プロンプトが表示されたら、Amazon DocumentDB クラスターに正常に接続されています。
接続に問題がありますか。Amazon DocumentDB のトラブルシューティング を参照してください。
ステップ 8: データの挿入とクエリ
クラスターに接続できたので、いくつかのクエリを実行して、ドキュメントデータベースの使用に慣れることができます。
-
1 つのドキュメントを挿入するには、次のように入力します。
db.collection.insert({"hello":"DocumentDB"})
-
次の出力が返ります。
WriteResult({ "nInserted" : 1 })
-
findOne()
コマンドで書き込んだドキュメントを読み取ることができます (一つのドキュメントしか返さないため)。以下を入力します。db.collection.findOne()
-
次の出力が返ります。
{ "_id" : ObjectId("5e401fe56056fda7321fbd67"), "hello" : "DocumentDB" }
-
さらにいくつかのクエリを実行するには、ゲームプロファイルのユースケースを検討してください。まず、「
profiles
」というタイトルのコレクションにエントリをいくつか挿入します。以下を入力します。db.profiles.insertMany([ { "_id" : 1, "name" : "Matt", "status": "active", "level": 12, "score":202}, { "_id" : 2, "name" : "Frank", "status": "inactive", "level": 2, "score":9}, { "_id" : 3, "name" : "Karen", "status": "active", "level": 7, "score":87}, { "_id" : 4, "name" : "Katie", "status": "active", "level": 3, "score":27} ])
-
次の出力が返ります。
{ "acknowledged" : true, "insertedIds" : [ 1, 2, 3, 4 ] }
-
find()
コマンドを使用して、プロファイルコレクション内のすべてのドキュメントを返します。以下を入力します。db.profiles.find()
-
ステップ 5 で入力したデータに一致する出力が得られます。
-
フィルターを使用して 1 つのドキュメントに対して1つのクエリを使用します。以下を入力します。
db.profiles.find({name: "Katie"})
-
この出力を返す必要があります。
{ "_id" : 4, "name" : "Katie", "status": "active", "level": 3, "score":27}
-
それでは、プロファイルを探して、それを
findAndModify
コマンドで変更してみましょう。次のコードを使用して、ユーザー Matt に10 ポイント追加します。db.profiles.findAndModify({ query: { name: "Matt", status: "active"}, update: { $inc: { score: 10 } } })
-
次のような出力が得られます (Mattのスコアはまだ上がっていないことに注意してください) 。
{ "_id" : 1, "name" : "Matt", "status" : "active", "level" : 12, "score" : 202 }
-
次のクエリを使用して、Matt のスコアが変更されたことを確認できます。
db.profiles.find({name: "Matt"})
-
次の出力が返ります。
{ "_id" : 1, "name" : "Matt", "status" : "active", "level" : 12, "score" : 212 }
ステップ 9: 環境情報の確認
お疲れ様でした。Amazon DocumentDB のクイックスタートガイドを正常に完了しました。
次のステップ この強力なデータベースを一般的な特徴をいくつか使って十分に活用する方法を学びましょう。
注記
コストを節約するために、Amazon DocumentDB クラスターを停止してコストを削減するか、クラスターを削除することができます。デフォルトでは、30 分間何も操作しないと、 AWS Cloud9 環境は基盤となる Amazon EC2インスタンスを停止します。