Qu’est-ce qu’Amazon ElastiCache for Redis ? - Amazon ElastiCache for Redis

Qu’est-ce qu’Amazon ElastiCache for Redis ?

Bienvenue dans le Guide de l'utilisateur Amazon ElastiCache for Redis. Amazon ElastiCache est un service web qui facilite la configuration, la gestion et la mise à l'échelle d'un environnement distribué de stockage de données en mémoire ou de cache dans le cloud. Il fournit une solution de cache performante, évolutive et économique. Dans le même temps, il permet de supprimer la complexité associée au déploiement et à la gestion d'un environnement de cache distribué.

Note

Amazon ElastiCache prend en charge les moteurs de cache Memcached et Redis. Utilisez le guide pour le moteur qui vous intéresse. Si vous n'êtes pas sûr du moteur que vous souhaitez utiliser, consultez Comparaison de Memcached et Redis dans ce guide.

Présentation d’ElastiCache for Redis

Les applications existantes qui utilisent Redis peuvent faire appel à ElastiCache sans presque aucune modification. Vos applications ont simplement besoin d'informations sur les noms d'hôte et les numéros de port des nœuds Elasticache que vous avez déployés.

ElastiCache for Redis possède plusieurs fonctionnalités qui contribuent à rendre le service plus fiable pour les déploiements de production critiques :

  • Détection automatique et récupération après une défaillance de nœud de cache.

  • Fonction Multi-AZ d'un cluster principal défaillant vers un réplica en lecture dans des clusters Redis prenant en charge la réplication.

  • Redis (mode cluster activé) prend en charge le partitionnement de vos données sur jusqu’à 500 groupes de nœuds.

  • Pour Redis version 3.2 et ultérieure, toutes les versions prennent en charge le chiffrement en transit et le chiffrement au repos avec authentification. Cette prise en charge vous aide à développer des applications conformes à la loi HIPAA.

  • Placement flexible des zones de disponibilité de nœuds et de clusters pour une tolérance aux pannes accrue.

  • Intégration avec d'autres services AWS tels qu'Amazon EC2, Amazon CloudWatch, AWS CloudTrail et Amazon SNS. Cette intégration permet de fournir une solution gérée de mise en cache en mémoire hautes performances et hautement sécurisée.

  • ElastiCache for Redis gère les sauvegardes, les correctifs logiciels, la détection automatique des pannes et la récupération.

  • Vous pouvez avoir des sauvegardes automatiques lorsque vous en avez besoin, ou créer manuellement votre propre instantané de sauvegarde. Vous pouvez utiliser ces sauvegardes pour restaurer un cluster. Le processus de restauration ElastiCache for Redis est fiable et efficace.

  • Vous pouvez obtenir une haute disponibilité avec une instance principale et une instance secondaire synchrone vers laquelle vous pouvez effectuer le basculement quand le problème se produit. Vous pouvez aussi utiliser les réplicas en lecture pour augmenter la mise à l'échelle de la lecture.

  • Vous pouvez contrôler l'accès à vos clusters ElastiCache for Redis en utilisantAWS Identity and Access Managementpour définir les utilisateurs et les autorisations. Vous pouvez aussi aider à protéger vos clusters en les plaçant dans un Virtual Private Cloud (VPC).

  • Avec la fonction Global Datastore for Redis, vous pouvez profiter d'une réplication dans les régions AWS entièrement gérée, rapide, fiable et sécurisée. Grâce à cette fonction, vous pouvez créer des clusters de réplicas en lecture entre régions pour ElastiCache for Redis afin de permettre les lectures à faible latence et la reprise après sinistre dans les régions AWS.

  • La hiérarchisation des données fournit une option de rapport qualité-prix pour les charges de travail Redis en utilisant des disques SSD (Solid State Drive) moins coûteux dans chaque nœud de cluster, en plus du stockage des données en mémoire. Elle est parfaitement adaptée aux charges de travail qui accèdent régulièrement jusqu’à 20 % de leur jeu de données, et pour les applications qui peuvent tolérer une latence supplémentaire lors de l’accès aux données sur SSD. Pour plus d’informations, consultez Mise à niveau des données.

Clusters

La construction de base d'ElastiCache for Redis est le cluster. Un cluster est une collection d'un ou plusieurs nœuds de cache, qui exécutent tous une instance du logiciel de moteur de cache pris en charge Redis. Lorsque vous créez un cluster, vous spécifiez le moteur et la version que tous les nœuds utiliseront. Vos instances ElastiCache for Redis sont conçues pour être accessibles via une instance Amazon EC2. Vous pouvez créer et modifier un cluster en utilisant l'AWS CLI, l'API ElastiCache for Redis ou l'AWS Management Console.

Chaque cluster ElastiCache for Redis exécute une version du moteur Redis. Chaque version du moteur Redis a ses propres fonctions prises en charge. En outre, chaque version de moteur Redis possède un ensemble de paramètres au sein d'un groupe de paramètres qui contrôle le comportement des clusters qu'il gère.

Les capacités de calcul et de mémoire d'une instance de base de données sont déterminées par sa classe d'instance ou de nœud. Vous pouvez sélectionner le type de nœud qui correspond le mieux à vos besoins. Si vos besoins évoluent au fil du temps, vous pouvez modifier les types de nœuds. Pour plus d'informations, consultez Types de nœuds pris en charge.

Vous pouvez également tirer parti de la hiérarchisation des données lorsque vous considérez les besoins de vos types de nœuds. La hiérarchisation des données est une fonction dans laquelle certaines données les moins fréquemment utilisées sont stockées sur disque pour atténuer les limitations de mémoire sur les applications pouvant tolérer une latence supplémentaire lorsque les données sur SSD (disques SSD) sont accessibles.

Note

Pour plus d'informations sur la tarification des classes d'instance ElastiCache, consultez la Tarification d’Amazon ElastiCache.

Deux types de stockage de nœuds de cluster sont disponibles : standard et à mémoire optimisée. Ces options se différencient par leurs performances et leurs tarifs, ce qui vous permet d'adapter vos performances de stockage et vos coûts en fonction de vos besoins. Chaque instance dispose d'exigences de stockage minimal et maximal en fonction du type de stockage. Il est important de disposer d'un stockage suffisant pour que vos clusters puissent devenir plus importantes. De plus, grâce à un stockage suffisant, les fonctions ont de l'espace pour écrire des contenus ou des entrées de journal.

Vous pouvez exécuter un cluster sur un Virtual Private Cloud (VPC) à l'aide du service Amazon Virtual Private Cloud (Amazon VPC). Lorsque vous utilisez un VPC, vous disposez d'un contrôle total sur l'environnement de réseau virtuel. Vous pouvez choisir votre propre plage d'adresses IP, créer des sous-réseaux et configurer le routage et les listes de contrôle d'accès. ElastiCache gère les sauvegardes, les correctifs logiciels, la détection automatique des pannes et la récupération. Il n'y a pas de frais supplémentaires pour exécuter votre cluster dans un VPC. Pour de plus amples informations sur l'utilisation d'Amazon VPC avec ElastiCache for Redis, consultezSécurité des VPC Amazon et ElastiCache.

AWSRégions et Zones de disponibilité

Les ressources du cloud computing Amazon sont hébergées dans des installations de centres de données hautement disponible de différentes régions du monde (par exemple, Amérique du Nord, Europe et Asie). Chaque emplacement de centre de données est appelé région AWS.

Chaque région AWS contient plusieurs emplacements distincts appelés zones de disponibilité ou AZ en anglais. Chaque zone de disponibilité est conçue pour être isolée des défaillances dans d'autres zones de disponibilité. Chacune est conçue pour fournir une connectivité réseau économique à faible latence à d'autres zones de disponibilité de la même région AWS. En lançant des instances dans des zones de disponibilité distinctes, vous pouvez protéger vos applications de la défaillance d'un seul emplacement. Pour plus d'informations, consultez la page Choix des régions et zones de disponibilité. Vous pouvez créer votre cluster dans plusieurs zones de disponibilité, option appelée déploiement Multi-AZ. Lorsque vous choisissez cette option, Amazon effectue automatiquement la mise en service et la maintenance d'une instance de base de données de secours secondaire dans une autre zone de disponibilité. Votre instance de nœud primaire est répliquée de manière asynchrone entre les zones de disponibilité (AZ) dans l'instance secondaire. Cette approche permet de fournir la redondance des données et le support de basculement, élimine les figements d'I/O et minimise les pics de latence pendant les sauvegardes du système. Pour de plus amples informations, veuillez consulter Réduction des temps d'arrêt dans ElastiCache for Redis avec Multi-AZ.

Security

Un groupe de sécurité contrôle l'accès à un cluster. Il y parvient en autorisant l'accès aux plages d'adresses IP ou aux instances Amazon EC2 que vous spécifiez. Pour de plus amples informations sur les groupes de sécurité, veuillez consulter Sécurité dans ElastiCache pour Redis.

Surveillance d'un cluster ElastiCache for Redis

Il existe plusieurs façons dont vous pouvez suivre les performances et l'état d'un cluster ElastiCache for Redis. Vous pouvez utiliser le service CloudWatch pour surveiller les performances et l'état d'un cluster. Les graphiques de performances CloudWatch s'affichent dans la console ElastiCache for Redis. Vous pouvez également vous abonner aux événements ElastiCache pour Redis pour être informé des modifications apportées à un cluster, un instantané, un groupe de paramètres ou un groupe de sécurité. Pour plus d’informations, consultez Surveillance de l’utilisation avec les métriques CloudWatch.