Skip to content

How do I complete an ElastiCache self-service update?

4 minute read
1

I received a notification about an Amazon ElastiCache self-service update and I want to know what actions I must take.

Short description

ElastiCache uses the following methods to notify you of available updates:

You might receive multiple notifications for the service update during its lifecycle. The number of notifications that you receive for a service update depends on whether the update is optional or mandatory. Notifications also depend on the actions that you perform on the cluster. For example, you don't receive a notification when you apply the mandatory update before the deadline.

Note: ElastiCache doesn't send a notification when you launch or replace nodes after the release date that's specified on the ElastiCache console.

Resolution

Note: If you receive errors when you run AWS Command Line Interface (AWS CLI) commands, then see Troubleshooting errors for the AWS CLI. Also, make sure that you're using the most recent AWS CLI version.

Check for recent service updates

You can use either the ElastiCache console or AWS CLI to apply service updates.

ElastiCache console

Complete the following steps:

  1. Open the ElastiCache console.
  2. Choose Service updates.
  3. Choose Update status to view all service updates, update descriptions, and the status for your ElastiCache fleet.
  4. Find the update with the latest Release date.

AWS CLI

Run the following describe-service-updates command to list all available updates and sort by release date:

aws elasticache describe-service-updates \
    --service-update-status available \
    --query 'reverse(sort_by(ServiceUpdates,&ServiceUpdateReleaseDate))'

Note: The describe-service-updates command retrieves all available service updates, but not all of them apply to your ElastiCache cluster.

To check updates for your cluster, run the following describe-update-actions command:

aws elasticache describe-update-actions

You can also run the describe-update-actions command to list updates that are in the Pending state.

Apply the service update

Note: Service updates are always cumulative. If you have more than one service update for the same cluster, then apply the latest one to include all previous updates.

If the Auto-update after due date attribute is set to Yes, then the service update is mandatory. ElastiCache sends a notification 1 week before the new service update time. If you don't want to update the service at the scheduled time, then you can change the maintenance window.

You can apply service updates when the status is Available or Scheduled.

After you receive a service update notification, it's a best practice to apply the update as soon as possible.

You can use the ElastiCache console or AWS CLI to apply service updates.

ElastiCache console

Complete the following steps:

  1. Open the ElastiCache console.
  2. Choose Service Updates.
  3. Choose the service update that you want to apply, and then choose Apply now.

AWS CLI

Run the following batch-apply-update-action command:

aws elasticache batch-apply-update-action --service-update ServiceUpdateNameToApply=sample-service-update --cluster-names cluster-1 cluster2

For more information, see Service updates in ElastiCache.

Understand service update behavior

For Redis nodes, the service update occurs on one node at a time within each shard. Each updated node experiences downtime for a few seconds. The rest of the Redis cluster continues to serve traffic. The node update process might take longer depending on your current instance configuration and traffic patterns. For example, if Redis primary nodes have high write traffic or limited available memory, then the update takes longer to complete.

For Memcached nodes, the update process creates a new empty new node and terminates the old node. During the switch, the new node is briefly unavailable. The new node starts with an empty cache. When your application rebuilds the cache, you might experience slower performance. To minimize disruption, updates occur on one node at a time. Because they don't synchronize data, Memcached nodes complete faster than Redis nodes regardless of size.

Note: The update process doesn't change your Redis or Memcached cluster configuration. During updates, there might be temporary delays in your Amazon CloudWatch metrics reporting.

Manually replace nodes when the service update expired

If you didn't apply an optional service update before the expiration date, then ElastiCache marks the update as complete. To get the latest updates, manually replace existing nodes. ElastiCache applies the updates during the next maintenance window. To manually replace nodes, see Replacing nodes (Valkey and Redis OSS) and Replacing nodes (Memcached). If you create a new node, then ElastiCache applies all applicable updates.

Contact AWS Support with service update issues

If you experience an issue during or after a service update, then contact AWS Support.

Related information

Amazon ElastiCache managed maintenance and service updates help page

AWS OFFICIALUpdated a year ago