AWS CloudFormation を使用して Streams コンシューマーアプリケーションでレプリケーションを設定する Neptune-to-Neptune - Amazon Neptune

翻訳は機械翻訳により提供されています。提供された翻訳内容と英語版の間で齟齬、不一致または矛盾がある場合、英語版が優先します。

AWS CloudFormation を使用して Streams コンシューマーアプリケーションでレプリケーションを設定する Neptune-to-Neptune

AWS CloudFormation テンプレートを使用して、レプリケーションをサポートする Neptune-to-Neptune Neptune ストリームコンシューマーアプリケーションをセットアップできます。

リージョンの AWS CloudFormation テンプレートを選択する

AWS CloudFormation コンソールで適切な AWS CloudFormation スタックを起動するには、使用するリージョンに応じて AWS 、次の表の起動スタックボタンのいずれかを選択します。

リージョン ビュー デザイナーで表示 起動する
米国東部 (バージニア北部) 表示 デザイナーで表示 Orange button labeled "Launch Stack" with an arrow icon.
米国東部 (オハイオ) 表示 デザイナーで表示 Orange button labeled "Launch Stack" with an arrow icon.
米国西部 (北カリフォルニア) 表示 デザイナーで表示 Orange button labeled "Launch Stack" with an arrow icon.
米国西部 (オレゴン) 表示 デザイナーで表示 Orange button labeled "Launch Stack" with an arrow icon.
カナダ (中部) 表示 デザイナーで表示 Orange button labeled "Launch Stack" with an arrow icon.
南米 (サンパウロ) 表示 デザイナーで表示 Orange button labeled "Launch Stack" with an arrow icon.
欧州 (ストックホルム) 表示 デザイナーで表示 Orange button labeled "Launch Stack" with an arrow icon.
欧州 (アイルランド) 表示 デザイナーで表示 Orange button labeled "Launch Stack" with an arrow icon.
欧州 (ロンドン) 表示 デザイナーで表示 Orange button labeled "Launch Stack" with an arrow icon.
欧州 (パリ) 表示 デザイナーで表示 Orange button labeled "Launch Stack" with an arrow icon.
欧州 (フランクフルト) 表示 デザイナーで表示 Orange button labeled "Launch Stack" with an arrow icon.
中東 (バーレーン) 表示 デザイナーで表示 Orange button labeled "Launch Stack" with an arrow icon.
中東 (UAE) 表示 デザイナーで表示 Orange button labeled "Launch Stack" with an arrow icon.
イスラエル (テルアビブ) 表示 デザイナーで表示 Orange button labeled "Launch Stack" with an arrow icon.
アフリカ (ケープタウン) 表示 デザイナーで表示 Orange button labeled "Launch Stack" with an arrow icon.
アジアパシフィック (東京) 表示 デザイナーで表示 Orange button labeled "Launch Stack" with an arrow icon.
アジアパシフィック (香港) 表示 デザイナーで表示 Orange button labeled "Launch Stack" with an arrow icon.
アジアパシフィック (ソウル) 表示 デザイナーで表示 Orange button labeled "Launch Stack" with an arrow icon.
アジアパシフィック (シンガポール) 表示 デザイナーで表示 Orange button labeled "Launch Stack" with an arrow icon.
アジアパシフィック (シドニー) 表示 デザイナーで表示 Orange button labeled "Launch Stack" with an arrow icon.
アジアパシフィック (ムンバイ) 表示 デザイナーで表示 Orange button labeled "Launch Stack" with an arrow icon.
中国 (北京) 表示 デザイナーで表示 Orange button labeled "Launch Stack" with an arrow icon.
中国 (寧夏) 表示 デザイナーで表示 Orange button labeled "Launch Stack" with an arrow icon.
AWS GovCloud (米国西部) 表示 デザイナーで表示 Orange button labeled "Launch Stack" with an arrow icon.
AWS GovCloud (米国東部) 表示 デザイナーで表示 Orange button labeled "Launch Stack" with an arrow icon.

[Create Stack (スタックの作成)] ページで、[Next (次へ)] を選択します。

作成中の Neptune Streams コンシューマースタックの詳細の追加

[Specify Stack Details (スタック詳細の指定)] ページには、アプリケーションの設定を制御するために使用できるプロパティとパラメータがあります。

スタック名 – 作成する新しい AWS CloudFormation スタックの名前。通常は、デフォルト値、NeptuneStreamPoller を使用できます。

[Parameters (パラメータ)] で、以下を指定します。

ストリームコンシューマーが実行される VPC のネットワーク設定
  • VPC – ポーリング Lambda 関数を実行する VPC の名前を指定します。

  • SubnetIDs - ネットワークインターフェースが確立されるサブネット。Neptune クラスターに対応するサブネットを追加します。

  • SecurityGroupIds – ソース Neptune DB クラスターへの書き込みインバウンドアクセスを許可するIDsセキュリティグループの を提供します。

  • RouteTableIds – これはVPC、Neptune に Amazon DynamoDB エンドポイントをまだ作成していない場合に必要です。サブネットIDsに関連付けられたルートテーブルのカンマ区切りリストを指定する必要があります。

  • CreateDDBVPCEndPoint – Dynamo DB VPCエンドポイントを作成する必要があるかどうかを示すtrue、デフォルトで に設定されたブール値。DynamoDB エンドポイントを で作成済みfalseである場合にのみ、 に変更する必要がありますVPC。

  • CreateMonitoringEndPoint – モニタリングVPCエンドポイントを作成する必要があるかどうかを示すtrue、デフォルトで に設定されたブール値。モニタリングエンドポイントを で作成済みfalseである場合にのみ、 に変更する必要がありますVPC。

ストリームポーラー
  • ApplicationName –  通常は、この設定をデフォルト (NeptuneStream) のままにしておくことができます。別の名前を使用する場合は、一意である必要があります。

  • LambdaMemorySize - Lambda ポーラー関数で使用可能なメモリサイズを設定するために使用されます。デフォルト値は 2,048 メガバイトです。

  • LambdaRuntime – ストリームから項目を取得する Lambda 関数で使用される言語。これは python3.9 または java8 どちらにも設定できます。

  • LambdaS3Bucket — Lambda コードのアーティファクトを含む Amazon S3 バケット。別の Amazon S3 バケットからロードするカスタム Lambda ポーリング関数を使用している場合を除き、空白のままにしておきます。

  • LambdaS3Key — Lambda コードのアーティファクトに対応する Amazon S3 キー。カスタム Lambda ポーリング関数を使用している場合を除き、空白のままにしておきます。

  • LambdaLoggingLevel – 通常、デフォルト値 (INFO) のままにしておきます。

  • ManagedPolicies — Lambda 関数の実行に使用する管理ポリシーを一覧表示します。カスタム Lambda ポーリング関数を使用している場合を除き、通常は空白のままにしておきます。

  • StreamRecordsHandler – Neptune ストリーム内のレコードにカスタムハンドラを使用している場合を除き、通常は空白のままにしておきます。

  • StreamRecordsBatchSize — ストリームからフェッチされるレコードの最大数。このパラメータを使用して、パフォーマンスを調整できます。デフォルト (5000) は、開始に適しています。最大許容値は 10,000 です。数値が大きいほど、ストリームからレコードを読み取るために必要なネットワークの呼び出しは少なくなりますが、レコードを処理するために必要なメモリは多くなります。このパラメータの値を小さくすると、スループットが低下します。

  • MaxPollingWaitTime — 2 回のポーリング間の最大待機時間 (秒単位)。Neptune ストリームをポーリングするために Lambda ポーラーが呼び出される頻度を決定します。連続ポーリングの場合は、この値を 0 に設定します。最大値は 3,600 秒 (60 分) です。グラフデータの変化速度に応じて、デフォルト値 (60 秒) は開始に適しています。

  • MaxPollingInterval — 最大連続ポーリング時間 (秒単位)。これを使用して、Lambda ポーリング関数のタイムアウトを設定します。値は 5 秒から 900 秒の範囲でなければなりません。デフォルト値 (600 秒) は、開始に適しています。

  • StepFunctionFallbackPeriod – ポーラーを待機する の step-function-fallback-periodユニット数。その後、ステップ関数は Amazon CloudWatch Events を介して呼び出され、障害から復旧します。デフォルト (5 分) は、開始に適しています。

  • StepFunctionFallbackPeriodUnit - 直前の StepFunctionFallbackPeriodUnit の測定に使用される時間単位 (minuteshours、または days)。通常は、デフォルト (minutes) で十分です。

Neptune Stream
  • NeptuneStreamEndpoint — (必須) Neptune ソースストリームのエンドポイント。: これは次の 2 つの形式のいずれかになります。

    • https://your DB cluster:port/propertygraph/stream (またはそのエイリアス https://your DB cluster:port/pg/stream)。

    • https://your DB cluster:port/sparql/stream.

  • Neptune Query Engine – Gremlin、openCypher、または を選択しますSPARQL。

  • IAMAuthEnabledOnSourceStream – Neptune DB クラスターがIAM認証を使用している場合は、このパラメータを に設定しますtrue

  • StreamDBClusterResourceId – Neptune DB クラスターがIAM認証を使用している場合は、このパラメータをクラスターリソース ID に設定します。リソース ID はクラスター ID と同じではありません。正確には、28 文字の英数字が続く cluster- です。Neptune コンソールの [Cluster Details] (クラスターの詳細) で確認できます。

ターゲットの Neptune DB クラスター
  • TargetNeptuneClusterEndpoint — ターゲットのバックアップクラスターのクラスターエンドポイント (ホスト名のみ)。

    TargetNeptuneClusterEndpoint を指定した場合、TargetSPARQLUpdateEndpoint も指定することはできません。

  • TargetNeptuneClusterPort — ターゲットクラスターのポート番号。

    TargetSPARQLUpdateEndpoint を指定した場合、TargetNeptuneClusterPort の設定は無視されることに注意してください。

  • IAMAuthEnabledOnTargetCluster – ターゲットクラスターでIAM認証を有効にする場合は true に設定します。

  • TargetAWSRegion – などのターゲットバックアップクラスターの AWS リージョンus-east-1)。このパラメータは、クロスリージョンレプリケーションの場合と同様に、ターゲットバックアップクラスターの AWS リージョンが Neptune ソースクラスターのリージョンと異なる場合にのみ指定する必要があります。ソースリージョンとターゲットリージョンが同じ場合、このパラメータはオプションです。

    TargetAWSRegion 値が Neptune が をサポートしている有効な AWS リージョンではない場合、プロセスは失敗することに注意してください。

  • TargetNeptuneDBClusterResourceIdオプション : これは、ターゲット DB クラスターでIAM認証が有効になっている場合にのみ必要です。ターゲットクラスターのリソース ID に設定します。

  • SPARQLTripleOnlyMode — トリプルオンリーモードを有効にするかどうかを決定するブール型フラグ。トリプルオンリーモードでは、名前付きグラフの複製は行われません。デフォルト値は false です。

  • TargetSPARQLUpdateEndpoint - など、SPARQL更新対象のエンドポイントURLの https://abc.com/xyz。このエンドポイントは、クワッドまたはトリプルをサポートする任意のSPARQLストアにすることができます。

    TargetNeptuneClusterEndpoint を指定した場合、TargetNeptuneClusterPort も指定することはできず、TargetSPARQLUpdateEndpoint の設定は無視されることに注意してください。

  • BlockSparqlReplicationOnBlankNode – ブールフラグ。 に設定すると、 SPARQL (RDF) データ BlankNode 内の のレプリケーションtrueが停止します。デフォルト値は false です。

アラーム
  • Required to create Cloud watch Alarm – 新しいスタックの CloudWatch アラームを作成するtrue場合は、これを に設定します。

  • SNS Topic ARN for Cloudwatch Alarm Notifications – ARN CloudWatch アラーム通知を送信するSNSトピック (アラームが有効になっている場合にのみ必要)。

  • Email for Alarm Notifications - アラーム通知の送信先の E メールアドレス (アラームが有効な場合のみ必要)。

アラーム通知の送信先については、 SNS のみ、 E メールのみ、または SNSと E メールの両方を追加できます。

AWS CloudFormation テンプレートの実行

これで、次のように、Neptune ストリームコンシューマーアプリケーションインスタンスをプロビジョニングするプロセスを完了できます。

  1. で AWS CloudFormation、スタックの詳細を指定ページで、次へ を選択します。

  2. [Options(オプション)] ページで、[Next(次へ)] を選択します。

  3. レビューページで、最初のチェックボックスをオンにして、 AWS CloudFormation がIAMリソースを作成することを確認します。新しいスタックの CAPABILITY_AUTO_EXPAND を確認する 2 つ目のチェックボックスをオンにします。

    注記

    CAPABILITY_AUTO_EXPAND は、スタックの作成時に事前の確認なしにマクロが展開されることを明示的に確認します。ユーザーは、処理されたテンプレートから変更セットを作成することが多いため、実際にスタックを作成する前にマクロによって行われた変更を確認できます。詳細については、 AWS CloudFormation APIリファレンスの AWS CloudFormation CreateStackAPI「」を参照してください。

    次に [作成] を選択します。

最新の Lambda アーティファクトでストリームポーラーを更新するには

最新の Lambda アーティファクトで次のようにストリームポーラーを更新できます。

  1. で AWS Management Console、 に移動 AWS CloudFormation し、メイン親 AWS CloudFormation スタックを選択します。

  2. スタックの[Update] (更新) オプションを選択します。

  3. [Replace current template] (現在のテンプレートを置換) を選択します。

  4. テンプレートソースで Amazon Amazon S3 URL を選択し、次の S3 を入力しますURL。

    https://aws-neptune-customer-samples.s3.amazonaws.com/neptune-stream/neptune_to_neptune.json
  5. AWS CloudFormation パラメータを変更せずにへを選択します。

  6. [Update Stack] を選択します。

これで、スタックは Lambda アーティファクトを最新のアーティファクトで更新します。