注意
Atlas は、 AWS、Google Cloud、Azure でホストされている専有クラスターと、マルチクラウドのシャーディングされたクラスターにおけるネットワークピアリング接続をサポートしています。
ネットワークピアリングで、Atlas VPC とクラウドプロバイダーの VPC の間で確立されるプライベート接続では、パブリック ネットワークのトラフィックを分離することで、セキュリティが強化されます。Atlas Stream Processing は、2 種類のネットワークピアリング接続をサポートします。
アウトバウンド: Stream Processing ワークスペースが、クラウドプロバイダーの VPC にピアリングリクエストを送信する VPC 接続。この接続タイプは、外部 VPC に対して完全な管理アクセス権を持ち、その接続リクエストを承認できるシナリオに適しています。
インバウンド: クラウドプロバイダーの VPC が Stream Processing ワークスペースにピアリングリクエストを送信する VPC 接続です。この接続タイプは、Atlas の VPC 内でのみ承認を必要とするため、クラウドプロバイダーの VPC への完全な管理アクセス権がないシナリオに適しています。
警告
Atlas では、異なるクラウドプロバイダーの単一リージョンに配置されるクラスター間のネットワークピアリングはサポートしていません。たとえば、AWS の単一リージョンでホストされている Atlas クラスターと、GCP の単一リージョンでホストされているアプリケーションとの間には、ネットワークピアリングを構成できません。
このページの手順では、アウトバウンドVPC接続の作成、Stream Processing ワークスペースへの受信 VPC ピアリング接続の作成、受け入れ、拒否、削除について説明します。
前提条件
接続を作成および構成するには、次のものが必要です。
Atlasプロジェクト
Atlas user
Project Owner接続レジストリを管理するためのProject Stream Processing Ownerまたは ロールを持つ注意
Project Ownerロールでは、データベース配置の作成、プロジェクト アクセスとプロジェクト設定の管理、IP アクセス リスト エントリの管理などを行うことができます。Project Stream Processing Ownerのロールは、Stream Processing ワークスペースの閲覧、作成、削除、編集、接続レジストリ内の VPC ピアリング接続の作成、更新、削除などの Atlas Stream Processing アクションを可能にします。2 つのロールの違いの詳細については、「プロジェクト ロール」を参照してください。
Atlas クラスター
アウトバウンドVPCピアリング接続の作成
Stream Processing ワークスペースに対する発信 VPCピアリング接続を作成するには、次の手順に従います。
Stream Processing ワークスペースからクラウドプロバイダーの VPC への発信 VPC ピアリング接続を作成するには、Atlas UI を使用します。詳細は、「Atlas Stream Processing 接続の追加を参照し、接続タイプとしてApache Kafka、インターフェースとしてAtlas UIを選択してください。
VPCピアリング接続のセキュリティプロトコルとして SASL_SSL を選択する必要があります。
APIを使用して Stream Processing ワークスペースへの発信 VPC ピアリング接続を作成するには、「1 つのプロジェクトのすべてのネットワークピアリング接続を返す」を参照してください。
VPCピアリング接続のセキュリティプロトコルとして SASL_SSL を選択する必要があります。
Confluent から受信 VPC ピアリング接続リクエストを生成します。
Confluent アカウントから開始される AWS VPC ピアリング接続を設定および構成するには、次の手順に従います。
Atlas Cloud API を使用する API キーを生成します。
Atlas で、 Project Access Manager ページに移動します。
まだ表示されていない場合は、以下から目的の組織を選択しますナビゲーション バーのOrganizationsメニュー
まだ表示されていない場合は、ナビゲーション バーのProjectsメニューから目的のプロジェクトを選択します。
次のいずれかの手順を行います。
ナビゲーション バーのAccess ManagerメニューからProject Accessを選択します。
Projectsメニューの横にある次を展開します[ Options ] メニューで [] をクリックし、サイドバーの [ Access Manager Project Settingsをクリックします。
プロジェクト アクセス マネージャーページが表示されます。
[Applications] をクリックします。
[Create API Key] をクリックします。
Create API Key ページで、API キー情報を入力します。
APIキー情報を保存してください。
[Done] をクリックします。
Atlas Cloud AWSアカウントID、 VPC ID、および CIDR ブロックを取得します。
サンプルAPIリクエストは、次のようになります。
curl \ -s --user "ajarafoc:a98a3a67-7400-4d6f-94b2-20a64118524d" \ --digest \ --header 'Accept: application/vnd.atlas.2024-11-13+json' \ --header 'Content-Type: application/json' \ --request GET \ "https://cloud.mongodb.com/api/atlas/v2/groups/671a86f4cfc9da7d7c31b14f/streams/accountDetails?cloudProvider=aws®ionName=US_EAST_1"
次の例のパラメーター値に注意してください。
Parameter values | 説明 |
|---|---|
ajarafoc:a98a3a67-7400-4d6f-94b2-20a64118524d | API公開キーと秘密キー |
671a86f4cfc9da7d7c31b14f | AtlasプロジェクトID |
Amazon Web Services | クラウドプロバイダー |
US_EAST_1 | AWS リージョン名 |
サンプル出力は次のようになります。
{ "awsAccountId": "974404375205", "cidrBlock": "192.168.248.0/21", "vpcId": "vpc-0ef7efa5ceca36e2f" }
[ Confluent VPCピアリング ネットワーク構成VPC Peering ] を開き、 をクリックします。
VPCピアリング接続リクエストは、潜在的な遅延の後に Atlas に表示されます。
Atlas アカウントで保留中のリクエストを確認するには、次のような API リクエストを実行してください。
curl \ -s --user "ojarafoc:1ecf4c70-98ea-4168-8e44-fd67dba0f3ba" \ --digest \ --header 'Accept: application/vnd.atlas.2023-02-01+json' \ --header 'Content-Type: application/json' \ --request GET \ "https://cloud.mongodb.com/api/atlas/v2/groups/671a86f4cfc9da7d7c31b14f/streams/vpcPeeringConnections?requesterAccountId=417601102659"
次の例のパラメーター値に注意してください。
Parameter values | 説明 |
|---|---|
ajarafoc:a98a3a67-7400-4d6f-94b2-20a64118524d | API公開キーと秘密キー |
671a86f4cfc9da7d7c31b14f | AtlasプロジェクトID |
417601102659 | ステップ 7 で取得された Confluent AWS アカウント ID |
サンプル出力は次のようになります。
{ "links": [ { "href": "https://cloud.mongodb.com/api/atlas/v2/groups/671a86f4cfc9da7d7c31b14f/streams/vpcPeeringConnections?requesterAccountId=417601102659&pageNum=1&itemsPerPage=100", "rel": "self" } ], "results": [ { "_id": "6759e61aa6cf0a5476e233d1", "accepterAccountId": "974404375205", "accepterVpcId": "vpc-0ddfd37072cc5ed61", "cloudStatus": "pending-acceptance", "expirationTime": "2024-12-18T19:20:37Z", "groupId": "671a86f4cfc9da7d7c31b14f", "localStatus": "NONE", "name": "pcx-09277e1e81d0751c1", "requesterAccountId": "417601102659", "requesterCidr": "10.0.0.0/16", "requesterVpcId": "vpc-0d13eb6a2f0377854" } ], "totalCount": 1 }
受信VPCピアリング接続リクエストを受け入れます。
cloudStatusの値がpending-acceptanceであることにご注意ください。
次のAPIリクエストを実行します。
curl \ -s --user "ojarafoc:1ecf4c70-98ea-4168-8e44-fd67dba0f3ba" \ --digest \ --header 'Accept: application/vnd.atlas.2023-02-01+json' \ --header 'Content-Type: application/json' \ -d '{"requesterVpcId": "vpc-0d13eb6a2f0377854", "requesterAccountId":"417601102659"}' \ --request POST \ "https://cloud.mongodb.com/api/atlas/v2/groups/671a86f4cfc9da7d7c31b14f/streams/vpcPeeringConnections/pcx-09277e1e81d0751c1:accept"
次の例のパラメーター値に注意してください。
Parameter values | 説明 |
|---|---|
ajarafoc:a98a3a67-7400-4d6f-94b2-20a64118524d | API公開キーと秘密キー |
{"requesterVpcId": "vpc-0d13eb6a2f0377854", "requesterAccountId":"417601102659"} | これは、リクエスタの VPC IDとリクエスタの AWS アカウント ID を含む書き込みペイロードです。この場合、「リクエスタ」は Confluent です。 |
671a86f4cfc9da7d7c31b14f | AtlasプロジェクトID |
pcx-09277e1e81d0751c1 | 前のステップで取得した受信 VPC 接続名 |
プロジェクトのAmazon Web ServicesアカウントIDとVPC IDを取得
Stream Processing ワークスペースへの受信 VPC ピアリング接続を作成する場合は、まず AWS アカウント ID、AWS VPC ID、Atlas プロジェクトに関連付けられている CIDR ブロックを検索して、外部のクラウド環境から VPC ピアリングリクエストを開始する必要があります。
AWS アカウント ID、AWS VPC ID、および CIDR ブロックを Atlas プロジェクト用に Atlas Administration API を使用して検索するには、「指定されたグループとリージョンのアカウント ID と VPC ID を返す」を参照してください。
インバウンドVPCピアリング接続を一覧表示する
Atlas Administration API を使用して Stream Processing ワークスペースへのすべての受信 VPC ピアリング接続を一覧表示するには、「すべての VPC ピアリング接続を返す」をご覧ください。
インバウンドVPCピアリング接続の受け入れ
Atlas Administration API を使用して Stream Processing ワークスペースへの受信 VPC ピアリング接続を受け入れるには、「受信 VPC ピアリング接続の受け入れを要求する」をご覧ください。
サンプルAPIリクエストは、次のようになります。
curl \ -s --user "ojarafoc:1ecf4c70-98ea-4168-8e44-fd67dba0f3ba" \ --digest \ --header 'Accept: application/vnd.atlas.2023-02-01+json' \ --header 'Content-Type: application/json' \ -d '{"requesterVpcId": "vpc-0d13eb6a2f0377854", "requesterAccountId":"417601102659"}' \ --request POST \ "https://cloud.mongodb.com/api/atlas/v2/groups/671a86f4cfc9da7d7c31b14f/streams/vpcPeeringConnections/pcx-09277e1e81d0751c1:accept"
次の例のパラメーター値に注意してください。
Parameter values | 説明 |
|---|---|
ajarafoc:a98a3a67-7400-4d6f-94b2-20a64118524d | API公開キーと秘密キー |
{"requesterVpcId": "vpc-0d13eb6a2f0377854", "requesterAccountId":"417601102659"} | リクエストのVPC IDとAmazon Web ServicesアカウントIDを含む POST ペイロード |
671a86f4cfc9da7d7c31b14f | AtlasプロジェクトID |
pcx-09277e1e81d0751c1 |
インバウンドVPCピアリング接続の拒否
Atlas Administration API を使用して Stream Processing ワークスペースへの受信 VPC ピアリング接続を拒否するには、「受信 VPC ピアリング接続の拒否を要求する」を参照してください。
インバウンドVPCピアリング接続の削除
Atlas Administration API を使用して Stream Processing ワークスペースへの受信 VPC ピアリング接続を削除するには、「受信 VPC ピアリング接続を削除する」を参照してください。