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.
  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.
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.
  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.
  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)

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).
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.
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.

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