AWS PrivateLink for ClickPipes

It is a recommended option for ClickPipes for MSK.
See the [getting started](https://docs.aws.amazon.com/msk/latest/developerguide/mvpc-getting-started.html) guide for more details.

References

Update your MSK cluster policy and add `072088201116` to the allowed principals to your MSK cluster.
See AWS guide for [attaching a cluster policy](https://docs.aws.amazon.com/msk/latest/developerguide/mvpc-cluster-owner-action-policy.html) for more details.

Follow our [MSK setup guide for ClickPipes](/docs/knowledgebase/aws-privatelink-setup-for-msk-clickpipes) to learn how to set up the connection.

### VPC endpoint service[​](#vpc-endpoint-service "Direct link to VPC endpoint service")

[VPC endpoint service](https://docs.aws.amazon.com/vpc/latest/privatelink/privatelink-share-your-services.html) is another approach to share your data source with ClickPipes.
It requires setting up a NLB (Network Load Balancer) in front of your data source
and configuring the VPC endpoint service to use the NLB.

VPC endpoint service can be [configured with a private DNS](https://docs.aws.amazon.com/vpc/latest/privatelink/manage-dns-names.html), that will be accessible in a ClickPipes VPC.

It's a preferred choice for:

- Any on-premise Kafka setup that requires private DNS support
- [Cross-region connectivity for Postgres CDC](/docs/knowledgebase/aws-privatelink-setup-for-clickpipes)
- Cross-region connectivity for MSK cluster. Please reach out to the ClickHouse support team for assistance.

See the [getting started](https://docs.aws.amazon.com/vpc/latest/privatelink/privatelink-share-your-services.html) guide for more details.

References

Add ClickPipes account ID `072088201116` to the allowed principals to your VPC endpoint service.
See AWS guide for [managing permissions](https://docs.aws.amazon.com/vpc/latest/privatelink/configure-endpoint-service.html#add-remove-permissions) for more details.

References

[Cross-region access](https://docs.aws.amazon.com/vpc/latest/privatelink/privatelink-share-your-services.html#endpoint-service-cross-region)
can be configured for ClickPipes. Add [your ClickPipe region](#aws-privatelink-regions) to the allowed regions in your VPC endpoint service.

## Creating a ClickPipe with reverse private endpoint[​](#creating-clickpipe "Direct link to Creating a ClickPipe with reverse private endpoint")

Access the SQL Console for your ClickHouse Cloud Service.

Access the SQL Console for your ClickHouse Cloud Service.

Select the `Data Sources` button on the left-side menu and click on "Set up a ClickPipe"

Select the `Data Sources` button on the left-side menu and click on "Set up a ClickPipe"

Select either Kafka or Postgres as a data source.

Select either Kafka or Postgres as a data source.

Select the `Reverse private endpoint` option.

Select the `Reverse private endpoint` option.

Select any of existing reverse private endpoints or create a new one.

Select any of existing reverse private endpoints or create a new one.

References

If cross-region access is required for RDS, you need to create a VPC endpoint service and
[this guide should provide](/docs/knowledgebase/aws-privatelink-setup-for-clickpipes) a good starting point to set it up.

For same-region access, creating a VPC Resource is the recommended approach.

Provide the required parameters for the selected endpoint type.

Provide the required parameters for the selected endpoint type.

- For VPC resource, provide the configuration share ARN and configuration ID.
- For MSK multi-VPC, provide the cluster ARN and authentication method used with a created endpoint.
- For VPC endpoint service, provide the service name.

Click on `Create` and wait for the reverse private endpoint to be ready.

Click on `Create` and wait for the reverse private endpoint to be ready.

If you're creating a new endpoint, it will take some time to set up the endpoint.
The page will refresh automatically once the endpoint is ready.
VPC endpoint service might require accepting the connection request in your AWS console.

Once the endpoint is ready, you can use a DNS name to connect to the data source.

Once the endpoint is ready, you can use a DNS name to connect to the data source.

On a list of endpoints, you can see the DNS name for the available endpoint.
It can be either an internally ClickPipes provisioned DNS name or a private DNS name supplied by a PrivateLink service.
DNS name isn't a complete network address.
Add the port according to the data source.

MSK connection string can be accessed in the AWS console.

To see a full list of DNS names, access it in the cloud service settings.

## Managing existing reverse private endpoints[​](#managing-existing-endpoints "Direct link to 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.

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

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

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

Reverse private endpoint extended information is shown in the flyout.

Endpoint can be removed from here. It will affect any ClickPipes using this endpoint.

## Supported AWS regions[​](#aws-privatelink-regions "Direct link to Supported AWS regions")

AWS PrivateLink support is limited to specific AWS regions for ClickPipes.
Please refer to the [ClickPipes regions list](/docs/integrations/clickpipes#list-of-static-ips) to see the available regions.

This restriction doesn't apply to PrivateLink VPC endpoint service with a cross-region connectivity enabled.

## Limitations[​](#limitations "Direct link to Limitations")

AWS PrivateLink endpoints for ClickPipes created in ClickHouse Cloud aren't guaranteed to be created
in the same AWS region as the ClickHouse Cloud service.

Currently, only VPC endpoint service supports
cross-region connectivity.

Private endpoints are linked to a specific ClickHouse service and aren't transferable between services.
Multiple ClickPipes for a single ClickHouse service can reuse the same endpoint.

AWS MSK supports only one PrivateLink (VPC endpoint) per MSK cluster per authentication type (SASL\_IAM or SASL\_SCRAM). As a result, multiple ClickHouse Cloud services or organizations cannot create separate PrivateLink connections to the same MSK cluster using the same auth type.

### Automatic cleanup of inactive endpoints[​](#automatic-cleanup "Direct link to Automatic cleanup of inactive endpoints")

Reverse private endpoints that remain in a terminal state are automatically removed after a defined grace period.
This ensures unused or misconfigured endpoints do not persist indefinitely.

The following grace periods apply based on the endpoint status:

|  |  |  |  |  |  |  |  |  |  |  |  |  |  |  |
| --- | --- | --- | --- | --- | --- | --- | --- | --- | --- | --- | --- | --- | --- | --- |
| Status Grace Period Description|  |  |  |  |  |  |  |  |  |  |  |  | | --- | --- | --- | --- | --- | --- | --- | --- | --- | --- | --- | --- | | **Failed** 7 days The endpoint encountered an error during provisioning.|  |  |  |  |  |  |  |  |  | | --- | --- | --- | --- | --- | --- | --- | --- | --- | | **Pending Acceptance** 1 day The endpoint connection has not been accepted by the service owner.|  |  |  |  |  |  | | --- | --- | --- | --- | --- | --- | | **Rejected** 1 day The endpoint connection was rejected by the service owner.|  |  |  | | --- | --- | --- | | **Expired** Immediate The endpoint has already expired and is removed promptly. | | | | | | | | | | | | | | |

Once the grace period elapses, the endpoint and all associated resources are automatically deleted.

To prevent automatic removal, resolve the underlying issue before the grace period expires.
For example, accept a pending connection request in your AWS console,
or recreate the endpoint if it has entered a failed state.