Amazon Redshift is a high-performance, fully managed cloud data warehouse designed for rapid query execution and storage of petabyte-scale datasets. This high-performance solution combines speed and scalability, making it ideal for businesses seeking efficient and flexible analytics capabilities in the cloud.
Below you can find the Aembit configuration required to work with Amazon Redshift as a Server Workload using the AWS or SQL-compatible CLI, application, or a library.
Prerequisites
Section titled “Prerequisites”Before proceeding with the configuration, ensure you have an AWS tenant (or sign up for one) and an Amazon Redshift managed cluster. If you have not created a cluster before, you can follow the steps in the next section. For more information on creating Amazon Redshift resources, please refer to the official Amazon documentation.
Create a cluster with Amazon Redshift
Section titled “Create a cluster with Amazon Redshift”- Sign in to the AWS Management Console and navigate to the Amazon Redshift console and choose Clusters in the navigation pane.
- Click on Create Cluster and configure the cluster according to your preferences. Below are key choices:
- Under Cluster configuration, enter a name for the cluster identifier; this will be used in the endpoint.
- In Database configurations, set an Admin user name, and either auto-generate or provide an Admin password. Save this information for future use.
- In Additional configuration, you may turn off Use defaults and customize settings further.
- In Network and security, find the Publicly Accessible option and check the box for Turn on Publicly accessible.
:warning: Setting the Publicly Accessible option to Yes is done here purely for demonstration purposes. In normal circumstances, it is recommended to keep the instances not publicly accessible for enhanced security.
- In Network and security, ensure the VPC security group (firewall) configuration is in place to allow Client Workload/Agent Proxy communication.
- In Database configurations, specify a Database name and verify the Database Port is set to 5439.
- After making all of your selections, click Create cluster.
Server Workload Configuration
Section titled “Server Workload Configuration”To retrieve the connection information for a cluster in the Amazon Redshift Console:
-
Sign in to the AWS Management Console and navigate to the Amazon Redshift console.
-
In the left navigation pane, select Clusters to view your clusters.
-
Click on the name of the cluster to view details.
-
In General Information copy the endpoint (excluding port and database name).
- Create a new Server Workload.
- Name - Choose a user-friendly name.
- Configure the service endpoint:
- Host -
<cluster-name>.<account-id>.<region>.redshift.amazonaws.com
(Provide the endpoint copied from AWS) - Application Protocol - Redshift
- Port - 5439
- Forward to Port - 5439
- Authentication method - Password Authentication
- Authentication scheme - Password
Credential Provider Configuration
Section titled “Credential Provider Configuration”- Create a new Credential Provider.
- Name - Choose a user-friendly name.
- Credential Type - Username & Password
- Username - Provide login ID for the admin user of your cluster.
- Password - Provide the admin password of your cluster.
Client Workload Configuration
Section titled “Client Workload Configuration”Aembit now handles the credentials required to access the Server Workload, eliminating the need for you to manage them directly. You can safely remove any previously used credentials from the Client Workload.
If you access the Server Workload through an SDK or library, it is possible that the SDK/library may still require credentials to be present for initialization purposes. In this scenario, you can provide placeholder credentials. Aembit will overwrite these placeholder credentials with the appropriate ones during the access process.
Access Policy
Section titled “Access Policy”- Create an access policy for a Client Workload to access the Amazon RDS for MySQL Server Workload and assign the newly created Credential Provider to it.