Skip to main content
This guide walks you step-by-step through creating an Amazon DAX (DynamoDB Accelerator) cluster and highlights configuration choices to consider for development and production environments. It covers node sizing, networking, IAM, encryption, parameter groups, monitoring, and operational best practices. Key topics: Amazon DAX, DynamoDB Accelerator, cluster creation, DAX endpoint, security groups, IAM policies, encryption, parameter group, monitoring, maintenance. Prerequisites
  • AWS account with permissions to create DAX clusters, IAM roles/policies, and VPC/subnet/security-group resources.
  • A VPC with at least one subnet in each Availability Zone you plan to use.
  • Applications or compute (EC2, ECS, EKS, Lambda in VPC) able to reach the DAX endpoint on the required port.
Useful references

Step-by-step cluster creation

  1. Open the DynamoDB console, choose Clusters, then Create cluster.
    Enter a cluster name — this example uses cluster1.
  2. Choose a DAX node type (instance family and size). DAX supports families tuned for different workloads: Select the instance size that fits your memory and CPU requirements. For demos or cost-sensitive tests, dax.t2.small (one vCPU) is a common choice.
  3. Select the number of nodes. Recommendations:
    • Development/testing: single-node clusters are possible for quick trials (console will warn).
    • Production: use a multi-node cluster (AWS recommends a minimum of three nodes) to ensure availability and replication.
  4. Create or pick a subnet group for DAX. Provide a name (for example, DAX subnet group), choose the VPC to deploy into (the default VPC can be used for demos), and add the subnets that will host cluster nodes.
A screenshot of the AWS Management Console showing a "New subnet group" form (for creating a DAX cluster), with several subnet IDs and regions selected and listed.
  1. Configure security groups and network access. Make sure inbound rules allow clients to reach the DAX cluster on the DAX port:
    • Port 8111 for DAX client traffic (TLS-enabled clients still use port 8111).
    • If you perform any management or custom networking that references different ports, document and open them only as required.
A screenshot of the AWS Management Console during Amazon DAX cluster creation showing the "Access control" section with a security group selector and a notice to open inbound port 8111 (or 9111 if encrypted). The lower part shows Availability Zones options and navigation buttons (Cancel, Previous, Next).
Make sure your application instances (EC2, ECS tasks, Lambda functions in a VPC, etc.) are allowed to reach the DAX cluster on the required port. If using encryption in transit, ensure clients are configured to use TLS when connecting.
  1. Availability Zones (AZs): choose whether AWS should select AZs automatically (recommended for even distribution) or choose specific AZs manually to meet locality or compliance requirements.
  2. IAM role and policies:
    • Create a service-linked role for DAX and attach an IAM policy that grants DAX access to DynamoDB tables.
    • Decide scope:
      • Read-write access when DAX should handle both reads and writes.
      • Read-only access when DAX is used strictly for caching reads.
    • For security, scope policies to only the required table ARNs rather than granting access to all tables.
Turn on encryption settings according to your security requirements:
  • Encryption at rest (protects data stored on DAX nodes).
  • Encryption in transit (TLS between client and DAX). Note: clients still connect on port 8111 when TLS is enabled.
A screenshot of the AWS Management Console on the DynamoDB DAX cluster creation page showing IAM role/policy settings (Read/write, new policy name DAXFullAccess-DynamoDBDax) and table access set to All tables. Encryption options are visible below and navigation buttons (Cancel, Previous, Next) appear at the bottom.
  1. Parameter group: choose the default parameter group or create a custom one. Parameter groups control runtime settings such as:
    • Item TTL (how long an item remains in the DAX cache).
    • Query TTL (how long query results are cached).
Review default TTLs and create/attach a custom parameter group if you require different cache durations or other tuning parameters.
A screenshot of the AWS Management Console showing the "Parameter group" page for creating a new DAX cluster parameter group, with fields for Group name, description, and item/query TTL settings. The left sidebar shows setup steps and the top bar displays region and account info.
  1. Maintenance window: choose “No preference” or specify a preferred maintenance window for DAX patches and upgrades to minimize disruption.
  2. Review all settings and click Create cluster.
After cluster creation, open the cluster details page to find important operational information:
  • Cluster endpoint (use this in your DAX-enabled SDK client configuration so requests route through DAX).
  • Cluster ARN and node list.
Example: configuring a Node.js DAX client (using the Amazon DAX client)
A screenshot of the AWS console showing a DAX/DynamoDB cluster page for "cluster1," with general information (endpoint, ARN) and node details. The cluster status is shown as "Available" and a node list is visible.

Monitoring, events, and settings

Monitoring: the Monitoring tab provides metrics per node and for the cluster, such as CPU utilization, cache memory usage, network throughput, estimated DB size, request counts, errors, throttles, and item cache hits/misses. Use these metrics to:
  • Tune node sizes.
  • Adjust TTLs and parameter-group settings.
  • Detect cache effectiveness (hit/miss ratio).
A screenshot of the Amazon Web Services DynamoDB/DAX console. It shows a monitoring dashboard with metric charts for CPU utilization, cache memory, network bytes in/out, estimated DB size, and request/error counts.
Events: the Events tab tracks lifecycle and node events (creation, node adds/removals, restarts). Use it to audit operational changes and correlate with monitoring alerts.
A screenshot of the AWS DynamoDB console showing a DAX cluster named "cluster1" with the Events tab open. The events list shows entries like "Cluster created," "Added node cluster1-a," and node restarts with timestamps.
Settings: on the Settings page you can change the parameter group, edit the subnet group, update security configuration, set maintenance windows, and manage tags. Cluster actions such as deleting the cluster are also available here.
A screenshot of the AWS DynamoDB console on the DAX cluster "cluster1" Settings page showing parameter group, network configuration, security configuration, and maintenance window sections. Action buttons like Change group, Edit subnet group, and Delete cluster are also visible.

Cleanup and cost control

When finished experimenting, delete any test clusters to avoid ongoing charges.
For production deployments, use a multi-node cluster (minimum three nodes) for availability and replication, restrict IAM policies to only necessary tables, and secure network access with tightly scoped security group rules.

Watch Video