概要
要件
- 各内部サービス(GitLab、Artifactory など)をフロントする、お客様の AWS アカウント内の Network Load Balancer(NLB)
- NLB をターゲットとして使用する VPC Endpoint Service
- 各 Endpoint Service のサービス名
- Cognition の AWS アカウントを含めた Allowed principal の設定
- 各サービスでサポートされているポートに関する確認情報
- Devin がプライベートに名前解決する必要があるドメインの DNS 情報
- Allowed principal に追加する AWS アカウント ID
- Interface Endpoint のターゲットとなる VPC とサブネット情報
- 接続が確立された後に Devin 側で行う DNS 設定
クロスリージョン PrivateLink(サービスが別リージョンにある場合)
お客様側での手順
- Network Load Balancer を新規作成するか既存のものを再利用する NLB は、Devin がアクセスする必要がある内部システムをターゲットにする必要があります。NLB は、必要なすべてのポートをサポートしていなければなりません。
- NLB から VPC Endpoint Service を作成する これにより、そのサービスが PrivateLink 経由で利用可能になります。
-
クロスリージョン(リージョン間)サポートを有効化する
AWS コンソールで次を実行します:
Cognition テナントがデプロイされているリージョンを追加します。 CLI の例:
-
許可されたプリンシパルとして Cognition の AWS アカウントを追加する
-
以下の情報を Cognition に提供する
- Endpoint Service の名前
例:com.amazonaws.vpce.us-west-2.vpce-svc-0abc123 - サービスが受け付けるポート
- PrivateLink 経由で解決させたいドメイン
- Endpoint Service の名前
この後の流れ
- 提供されたサービス名を使用して、専用テナント VPC 内に Interface VPC エンドポイント を作成します。
- 承認が必要な 接続リクエストを送信 します(手動で承認するか、設定されている場合は自動承認が行われます)。
- 指定したドメインが Devin 環境内でプライベートに名前解決されるように、DNS を構成 します。
アーキテクチャ図
Cognition から顧客の社内サービスへのリージョン間 PrivateLink 接続
重要な考慮事項
| Topic | Guidance |
|---|---|
| Required setup | ドメインごとに 1 つの Endpoint Service と 1 つの Interface Endpoint が必要 |
| Cross region support | Cross-region サポートは、Endpoint Service で明示的に有効化する必要がある |
| Allowed principals | お客様側で Cognition の AWS アカウント ID を追加する必要がある |
| DNS | お客様のドメインは、Cognition 側のプライベートな Interface Endpoint の IP アドレスに解決される |
| Ports | NLB リスナーは、各サービスへアクセスする際に Devin が使用するポートと一致させる必要がある |
| Availability | NLB とその背後のターゲットは、複数の Availability Zone にまたがるように構成しておく必要がある |
| Latency | トラフィックが AWS バックボーン内にとどまるため、わずかな Cross-region レイテンシ増加が発生する場合がある |
Cognition に提供する情報
- 各内部ドメイン向けの AWS Endpoint Service 名
- クロスリージョン対応が有効化されていることの確認(該当する場合)
- Allowed principal 設定が完了していること
- NLB で公開しているポート
- PrivateLink 経由でルーティングすべきドメインの一覧
