Amazon ElastiCache for Redis | Redis Cluster Flashcards

1
Q

Can I use the Backup and Restore feature if I am running ElastiCache in a VPC?

Redis Cluster

Amazon ElastiCache for Redis | Database

A

Yes.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
2
Q

What is ElastiCache for Redis Cluster?

Redis Cluster

Amazon ElastiCache for Redis | Database

A

ElastiCache for Redis Cluster allows customers to create and run managed Redis Clusters with multiple shards. It is compatible with open source Redis 3.2 and comes with a number of enhancements for a more stable and robust experience (see the “enhanced engine” section below for additional details on these enhancements).

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
3
Q

Why would I need a scale out Redis environment?

Redis Cluster

Amazon ElastiCache for Redis | Database

A

There are three main scenarios for running a scale out Redis environment. First, if the total memory size of your Redis data exceeds or is projected to exceed the memory capacity of a single VM. Second, if the write throughput of your application to Redis exceeds the capacity of a single VM. Third, if you would like to spread the data across multiple shards so that any potential issue that comes up with a single node will have a smaller impact on the overall Redis environment.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
4
Q

Why would I run my Redis Cluster workload on Amazon ElastiCache?

Redis Cluster

Amazon ElastiCache for Redis | Database

A

Amazon ElastiCache provides a fully managed distributed in-memory Redis environment, from provisioning server resources to installing the engine software and applying any configuration parameters you choose. It uses enhancements to the Redis engine developed by Amazon, which results in a more robust and stable experience (see “enhanced engine” section for more details). Once your Redis environment is up and running, the service automates common administrative tasks such as failure detection and recovery, backups and software patching. It also provides a robust Multi-AZ solution with automatic failover. In case of a failure of one or more primary nodes in your cluster, Amazon ElastiCache will automatically detect the failure and respond by promoting the most up to date replica to primary. This process is automated and does not mandate any manual work on your behalf. Amazon ElastiCache also provides detailed monitoring metrics associated with your ElastiCache nodes, enabling you to diagnose and respond to issues very quickly.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
5
Q

Is ElastiCache for Redis Cluster compatible with open source Redis?

Redis Cluster

Amazon ElastiCache for Redis | Database

A

Yes, Amazon ElastiCache for Redis Cluster is compatible with open source Redis 3.2. You can use the open source Redis Cluster clients to access scale-out clusters on ElastiCache for Redis.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
6
Q

Can I modify the number of shards once the cluster is created?

Redis Cluster

Amazon ElastiCache for Redis | Database

A

Currently you cannot modify the number of shards in a cluster once it’s created.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
7
Q

What is the upgrade path from current ElastiCache for Redis 2.8.x to ElastiCache for Redis Cluster (version 3.2.4)?

Redis Cluster

Amazon ElastiCache for Redis | Database

A

If you are using Redis 3.2 with cluster_mode parameter disabled, you can simply choose the node or cluster you wish to upgrade and modify the engine version. ElastiCache will provision a Redis 3.2.4 cluster and migrate your data to it, while maintaining the endpoint.

If you are using Redis 3.2 with cluster_mode enabled, you can migrate to Redis Cluster by first creating a snapshot of your data using the backup and restore feature. Then, select the created snapshot and click on “Restore Snapshot” to create a Redis 3.2 cluster using the snapshotted data. Finally, update the new endpoint in your client. Note that to use Redis 3.2 in cluster mode you would need to switch to a Redis Cluster client.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
8
Q

Is the pricing for clustered configuration different from non-clustered configuration?

Redis Cluster

Amazon ElastiCache for Redis | Database

A

No. Amazon ElastiCache for Redis provides the flexibility of clustered and non-clustered configuration at the same price. Customers can now enjoy enhanced engine functionality within Amazon ElastiCache for Redis and use full feature support for clustered configuration and scalability at the same price.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
9
Q

What is Multi-AZ for ElastiCache for Redis Cluster?

Redis Cluster

Amazon ElastiCache for Redis | Database

A

Each shard of an ElastiCache for Redis cluster consists of a primary and up to five read replicas. Redis asynchronously replicates the data from the primary to the read replicas. During certain types of planned maintenance, or in the unlikely event of ElastiCache node failure or Availability Zone failure, Amazon ElastiCache will automatically detect the failure of a primary, select a read-replica, and promote it to become the new primary.

ElastiCache for Redis Cluster provides enhancements and management for Redis 3.x environments. When running an unmanaged Redis environment, in a case of primary node failure, the cluster relies on a majority of masters to determine and execute a failover. If such majority doesn’t exist, the cluster will go into failed state, rejecting any further reads and writes. This could lead to major availability impact on the application, as well as requiring human intervention to manually salvage the cluster. ElastiCache for Redis Multi-AZ capability is built to handle any failover case for Redis Cluster with robustness and efficiency.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
10
Q

How is Multi-AZ in ElastiCache for Redis Cluster different than in ElastiCache for Redis versions 2.8.x?

Redis Cluster

Amazon ElastiCache for Redis | Database

A

Redis 3.x works with intelligent clients that store a node map with all the cluster nodes’ endpoints. During a failover, the client updates the node map with the IP endpoint for the new primary. This provides up to 4x faster failover time than with ElastiCache for Redis 2.8.x.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
11
Q

How does Multi-AZ work for Redis Cluster?

Redis Cluster

Amazon ElastiCache for Redis | Database

A

You can use Multi-AZ if you are using an ElastiCache for Redis Cluster with each shard having 1 or more read-replicas. If a primary node of a shard fails, ElastiCache will automatically detect the failure, select one of the available read-replicas, and promote it to become the new primary. The Redis 3.x client will update the promoted replica as primary, no application change is required. ElastiCache will also spin up a new node to replace the promoted read-replica in the same Availability Zone of the failed primary. In case the primary failed due to a temporary Availability Zone failure, the new replica will be launched once that Availability Zone has recovered.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
12
Q

What is a backup in ElastiCache for Redis Cluster?

Redis Cluster

Amazon ElastiCache for Redis | Database

A

An ElastiCache for Redis Cluster backup is a series of snapshots of the cluster’s shards, stored together to keep a copy of your entire Redis data around a certain time frame.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
13
Q

How is a backup in ElastiCache for Redis Cluster different from a snapshot in ElastiCache for Redis?

Redis Cluster

Amazon ElastiCache for Redis | Database

A

Since a non-clustered ElastiCache for Redis environment has a single primary node, a backup is a single file which contains a copy of the Redis data. ElastiCache for Redis Cluster can have one or more shards, thus a backup might contain multiple files.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
14
Q

How do I specify which ElastiCache for Redis nodes to backup in each shard?

Redis Cluster

Amazon ElastiCache for Redis | Database

A

You cannot manually specify a node to backup within each shard. When initiating a backup, ElastiCache will automatically select the most up-to-date read replica in each shard and take a snapshot of its data.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
15
Q

How does ElastiCache for Redis Cluster Backup and Restore work?

Redis Cluster

Amazon ElastiCache for Redis | Database

A

When a backup is initiated, ElastiCache will take a backup of a specified cluster; that backup can later be used for recovery or archiving. The backup will include a copy of each of the cluster’s shards, thus a full backup contains a series of files. You can initiate a backup anytime you choose or set a recurring daily backup with retention period of up to 35 days.

When you choose a backup to restore, a new ElastiCache for Redis cluster will be created and populated with the backup’s data. Also, you can use this feature for an easy migration path to a managed Redis Cluster experience on ElastiCache. If you are running self-managed Redis on EC2, you can take RDB snapshots or your existing workloads (both Redis Cluster and single-shard Redis) and store them in S3. Then simply provide them as input for creating a sharded Redis Cluster on ElastiCache, and the desired number of shards. ElastiCache will do the rest.

Currently, ElastiCache uses Redis’ native mechanism to create and store an RDB file for each shard as the backup.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
16
Q

Is the backup in ElastiCache for Redis Cluster a point-in-time snapshot?

Redis Cluster

Amazon ElastiCache for Redis | Database

A

When you initiate a backup, ElastiCache will trigger backups of all of the shards of your cluster at the same time. In rare cases there might be a need to retake a snapshot of one or more nodes that did not complete successfully the first time. ElastiCache does that automatically and no user intervention is required. But in such a case, while each individual snapshot is a point-in-time representation of the node it was taken from, not all the cluster’s snapshots would be taken at the same time.

17
Q

How can I specify when a backup will take place?

Redis Cluster

Amazon ElastiCache for Redis | Database

A

Through the AWS Management Console, CLI or APIs you can specify when to start a single backup or a recurring backup. Users are able to:

Take a backup right now (through “Create Snapshot” console button or CreateSnapshot API)

Set up an automatic daily backup. The backup will take place during your preferred backup window. You can set that up through Creating/Modifying cluster via console or the CreateReplicationGroup and ModifyReplicationGroup API’s.