Atlas Stream Processing supports creating Private Link connections to AWS Lambda using the $externalFunction stage. Select an option to display the procedure to add the connection using your preferred interface:
Add an AWS Lambda Private Link Connection through the Atlas Administration API
To add an AWS Lambda Private Link connection to your stream processing workspace through the Atlas Administration API, follow these steps:
Create AWS resources.
Follow the procedure described in the $externalFunction documentation.
Configure a Service Account.
Create a service account.
Grant this service account the following roles within your Atlas Stream Processing project:
Create the Private Link Connection.
The Atlas Administration API provides an endpoint to Create One Private Link
For an $externalFunction Private Link connection, set the following key-value pairs:
Key | Value |
|---|---|
|
|
|
|
| The AWS region in which you create the endpoint. |
|
|
Use Return All Private Link Connections to check the state of your endpoint. When it reaches a DONE state, note the value of the _id field and proceed to the next step.
Create the AWS Lambda connection.
The Atlas Administration API provides an endpoint to Create One Connection.
For an AWS Lambda Private Link connection, set the following key-value pairs:
Key | Value |
|---|---|
| The name you want to give to the connection. |
|
|
| Value of the ARN noted in an earlier step. |
| "PRIVATE_LINK" |
| The |
Add an AWS Lambda Private Link Connection through the Atlas CLI
To add an AWS Lambda Private Link connection to your stream processing workspace through the Atlas CLI, follow these steps:
Create AWS resources.
Follow the procedure described in the $externalFunction documentation.
Configure a Service Account.
Create a service account.
Grant this service account the following roles within your Atlas Stream Processing project:
Create the Private Link Connection.
To a Private Link endpoint for a stream processor connection using the Atlas CLI, run the following command:
atlas streams privateLinks create [options]
To learn more about the command syntax and parameters, see the Atlas CLI documentation for atlas streams privateLinks create.
In your configuration file, set the following key-value pairs:
Key | Value |
|---|---|
|
|
|
|
| The AWS region in which you create the endpoint. |
|
|
Use atlas streams privateLinks list command to check the state of your endpoint. When it reaches a DONE state, note the value of the _id field and proceed to the next step.
Create the AWS Lambda connection.
To create one connection for the stream processing workspace you specify using the Atlas CLI, run the following command:
atlas streams connections create [connectionName] [options]
To learn more about the command syntax and parameters, see the Atlas CLI documentation for atlas streams connections create.
In your configuration file, set the following key-value pairs:
Key | Value |
|---|---|
| The name you want to give to the connection. |
|
|
| Value of the ARN noted in an earlier step. |
| "PRIVATE_LINK" |
| The |
Add an AWS Lambda Private Link Connection through the Atlas UI
To add an AWS Lambda Private Link connection to your stream processing workspace through the Atlas UI, follow these steps:
In Atlas, go to the Database & Network Access page for your project.
If it's not already displayed, select the organization that contains your project from the Organizations menu in the navigation bar.
If it's not already displayed, select your project from the Projects menu in the navigation bar.
In the sidebar, click Database & Network Access under the Security heading.
The Database & Network Access page displays.
Set up Unified AWS Access.
Follow the procedure described in Set Up Unified AWS Access.
Note the ARN value in Statement.Principal.AWS to use later in this procedure.
In Atlas, go to the Users page.
If it's not already displayed, select your desired organization from the Organizations menu in the navigation bar.
Click All Projects in the sidebar under the Identity & Access section, and select your desired project.
Click Project Identity & Access in the sidebar under the Security section.
The Users page displays.
In Atlas, go to the Stream Processing page for your project.
If it's not already displayed, select the organization that contains your project from the Organizations menu in the navigation bar.
If it's not already displayed, select your project from the Projects menu in the navigation bar.
In the sidebar, click Stream Processing under the Streaming Data heading.
The Stream Processing page displays.
Add a new connection.
Select an AWS Lambda connection.
Provide a Connection Name. Each connection name must be unique within a stream processing workspace. This is the name used to reference the connection in Atlas Stream Processing aggregations.
Click the PrivateLink button. Then, toggle Enable PrivateLink networking.
From the dropdown menu, select the private endpoint you created earlier.
From the AWS IAM Role ARN dropdown, select the ARN of the unified access role you authorized in a prior step.
Click Add connection.