メインコンテンツまでスキップ
メインコンテンツまでスキップ

AWS PrivateLink for ClickPipes

こちらを使用して、VPC、AWSサービス、オンプレミスシステム、ClickHouse Cloud間の安全な接続性を確立できます。これにより、トラフィックを公衆インターネットにさらすことなく接続できます。

この文書は、AWS PrivateLink VPCエンドポイントを設定するためのClickPipesリバースプライベートエンドポイント機能について説明します。

Supported ClickPipes data sources

ClickPipesリバースプライベートエンドポイント機能は、以下のデータソースタイプに制限されています:

  • Kafka
  • Postgres
  • MySQL

ClickPipesリバースプライベートエンドポイントは、以下のいずれかのAWS PrivateLinkアプローチで構成できます:

VPC resource

あなたのVPCリソースは、PrivateLinkを使用してClickPipesでアクセスできます。このアプローチは、データソースの前にロードバランサーを設定する必要がありません。

リソース構成は、特定のホストまたはRDSクラスタARNにターゲットを絞ることができます。 クロスリージョンはサポートされていません。

これは、RDSクラスターからデータを取り込むPostgres CDCのための推奨選択肢です。

PrivateLinkをVPCリソースでセットアップするには:

  1. リソースゲートウェイを作成します
  2. リソース構成を作成します
  3. リソース共有を作成します

Create a resource gateway

リソースゲートウェイは、VPC内の指定されたリソースへのトラフィックを受信するポイントです。

注記

リソースゲートウェイに接続されたサブネットには、十分なIPアドレスが利用可能であることを推奨します。 各サブネットには少なくとも /26 サブネットマスクを持つことが推奨されます。

各VPCエンドポイント(各リバースプライベートエンドポイント)には、AWSが各サブネットごとに連続した16のIPアドレスのブロックを要求します。(/28 サブネットマスク) この要件が満たされない場合、リバースプライベートエンドポイントは失敗状態に遷移します。

リソースゲートウェイは、AWSコンソールから作成することができます。または、以下のコマンドを使用して作成できます:

aws vpc-lattice create-resource-gateway \
    --vpc-identifier <VPC_ID> \
    --subnet-ids <SUBNET_IDS> \
    --security-group-ids <SG_IDs> \
    --name <RESOURCE_GATEWAY_NAME>

出力には、次のステップで必要となるリソースゲートウェイIDが含まれます。

次に進む前に、リソースゲートウェイがActive状態になるまで待つ必要があります。状態を確認するには、次のコマンドを実行します:

aws vpc-lattice get-resource-gateway \
    --resource-gateway-identifier <RESOURCE_GATEWAY_ID>

Create a VPC Resource-Configuration

リソース構成は、リソースゲートウェイに関連付けられ、リソースを利用可能にします。

リソース構成は、AWSコンソールから作成することができます。または、以下のコマンドを使って作成することができます:

aws vpc-lattice create-resource-configuration \
    --resource-gateway-identifier <RESOURCE_GATEWAY_ID> \
    --type <RESOURCE_CONFIGURATION_TYPE> \
    --resource-configuration-definition <RESOURCE_CONFIGURATION_DEFINITION> \
    --name <RESOURCE_CONFIGURATION_NAME>

最もシンプルなリソース構成タイプは、シングルリソース構成です。ARNを直接構成するか、公開されて解決可能なIPアドレスまたはドメイン名を共有することができます。

たとえば、RDSクラスタのARNを使って構成するには:

aws vpc-lattice create-resource-configuration \
    --name my-rds-cluster-config \
    --type ARN \
    --resource-gateway-identifier rgw-0bba03f3d56060135 \
    --resource-configuration-definition 'arnResource={arn=arn:aws:rds:us-east-1:123456789012:cluster:my-rds-cluster}'
注記

パブリックアクセス可能なクラスターのためのリソース構成を作成することはできません。 クラスターが公開可能である場合は、リソース構成を作成する前に、クラスターをプライベートに変更する必要があります または、IP allow listを代わりに使用してください。 詳細については、AWSドキュメントを参照してください。

出力には、次のステップで必要なリソース構成ARNが含まれます。また、VPCリソースとのClickPipe接続を設定するために必要なリソース構成IDも含まれます。

Create a Resource-Share

リソースを共有するには、リソース共有が必要です。これはリソースアクセスマネージャー(RAM)を通じて容易になります。

リソース構成をリソース共有に追加するには、AWSコンソールを使用するか、以下のコマンドをClickPipesアカウントID 072088201116 (arn:aws:iam::072088201116:root)を使用して実行します:

aws ram create-resource-share \
    --principals 072088201116 \
    --resource-arns <RESOURCE_CONFIGURATION_ARN> \
    --name <RESOURCE_SHARE_NAME>

出力には、VPCリソースとのClickPipe接続を設定するために必要なリソース共有ARNが含まれます。

あなたは、VPCリソースを使用してリバースプライベートエンドポイントでClickPipeを作成する準備が整いました。次のことを行う必要があります:

  • VPCエンドポイントタイプVPC Resourceに設定します。
  • リソース構成IDをステップ2で作成されたリソース構成のIDに設定します。
  • リソース共有ARNをステップ3で作成されたリソース共有のARNに設定します。

VPCリソースのPrivateLinkの詳細については、AWSドキュメントを参照してください。

MSK multi-VPC connectivity

[AWS MSKのマルチVPC接続]は、複数のVPCを単一のMSKクラスターに接続できるAWS MSKのビルトイン機能です。プライベートDNSサポートは標準で提供され、追加の設定は必要ありません。 クロスリージョンはサポートされていません。

これは、ClickPipes for MSKに推奨されるオプションです。 詳細については、はじめにガイドを参照してください。

参考

MSKクラスターのポリシーを更新し、072088201116を許可されたプリンシパルに追加してください。 詳細については、AWSガイドのクラスターポリシーの関連付けを参照してください。

ClickPipesの接続を設定する方法については、MSKセットアップガイドを参照してください。

VPC endpoint service

VPCエンドポイントサービスは、ClickPipesとデータソースを共有するための別のアプローチです。 データソースの前にNLB(ネットワークロードバランサー)を設定する必要があります そして、NLBを使用するようにVPCエンドポイントサービスを構成します。

VPCエンドポイントサービスは、プライベートDNSで構成でき、 ClickPipes VPC内でアクセス可能になります。

これは以下のための推奨される選択です:

  • プライベートDNSサポートを必要とする任意のオンプレミスKafkaセットアップ
  • Postgres CDC用のクロスリージョン接続
  • MSKクラスター用のクロスリージョン接続。サポートチームに連絡して支援を受けてください。

詳細については、はじめにガイドを参照してください。

参考

ClickPipesアカウントID 072088201116をVPCエンドポイントサービスの許可されたプリンシパルに追加してください。 詳細については、AWSガイドのアクセス権の管理を参照してください。

参考

クロスリージョンアクセス は、ClickPipesに対して構成できます。VPCエンドポイントサービスで許可されたリージョンにあなたのClickPipeリージョンを追加してください。

Creating a ClickPipe with reverse private endpoint

ClickHouse CloudサービスのSQLコンソールにアクセスします。

ClickPipes service

左側のメニューからデータソースボタンを選択し、「ClickPipeをセットアップ」をクリックします。

Select imports

データソースとしてKafkaまたはPostgresを選択します。

Select data source

リバースプライベートエンドポイントオプションを選択します。

Select reverse private endpoint

既存のリバースプライベートエンドポイントのいずれかを選択するか、新しいものを作成します。

参考

RDSのためにクロスリージョンアクセスが必要な場合、VPCエンドポイントサービスを作成する必要があります。 このガイドは、設定を開始するための良い出発点となるはずです。

同一リージョンのアクセスには、VPCリソースを作成することが推奨されます。

Select reverse private endpoint

選択したエンドポイントタイプのための必要なパラメータを提供します。

Select reverse private endpoint
  • VPCリソースの場合、構成共有ARNおよび構成IDを提供します。
  • MSKマルチVPCの場合、クラスターARNおよび作成したエンドポイントで使用される認証方法を提供します。
  • VPCエンドポイントサービスの場合、サービス名を提供します。

作成をクリックし、リバースプライベートエンドポイントが準備完了になるのを待ちます。

新しいエンドポイントを作成する場合、エンドポイントの設定には時間がかかります。 エンドポイントが準備完了になると、ページが自動的に更新されます。 VPCエンドポイントサービスでは、AWSコンソールで接続リクエストを受け入れる必要があるかもしれません。

Select reverse private endpoint

エンドポイントが準備完了になれば、DNS名を使用してデータソースに接続できます。

エンドポイントのリストに、利用可能なエンドポイントのDNS名が表示されます。 それは、ClickPipesによりプロビジョニングされた内部DNS名またはPrivateLinkサービスによって提供されたプライベートDNS名のいずれかです。 DNS名は完全なネットワークアドレスではありません。 データソースに応じてポートを追加してください。

MSK接続文字列は、AWSコンソールでアクセスできます。

DNS名の全リストを見るには、クラウドサービス設定でアクセスしてください。

Managing existing reverse private endpoints

You can manage existing reverse private endpoints in the ClickHouse Cloud service settings:

On a sidebar find the Settings button and click on it.

ClickHouse Cloud settings

Click on Reverse private endpoints in a ClickPipe reverse private endpoints section.

ClickHouse Cloud settings

リバースプライベートエンドポイントの詳細情報がフライアウトに表示されます。

ここからエンドポイントを削除できます。これにより、このエンドポイントを使用しているすべてのClickPipesに影響します。

AWS PrivateLinkサポートは、ClickPipesの特定のAWSリージョンに制限されています。 利用可能なリージョンについては、ClickPipesリージョンリストを参照してください。

この制限は、クロスリージョン接続が有効なPrivateLink VPCエンドポイントサービスには適用されません。

Limitations

ClickHouse Cloudで作成されたClickPipes用のAWS PrivateLinkエンドポイントは、ClickHouse Cloudサービスと同じAWSリージョンで作成されることは保証されていません。

現在、VPCエンドポイントサービスのみがクロスリージョン接続をサポートしています。

プライベートエンドポイントは特定のClickHouseサービスにリンクされており、サービス間での移動はできません。 単一のClickHouseサービスに対して複数のClickPipesが同じエンドポイントを再利用することができます。