Redis+Keepalived内存数据库集群配置
Redis是一个开源的使用ANSI C语言编写、支持网络、可基于内存亦可持久化的日志型、Key-Value数据库,并提供多种语言的API。
前言:Redis是一个开源的使用ANSI C语言编写、支持网络、可基于内存亦可持久化的日志型、Key-Value数据库,并提供多种语言的API。
Redis是一个key-value存储系统。和Memcached类似,它支持存储的value类型相对更多,包括string(字符串)、list(链表)、set(集合)、zset(sorted set --有序集合)和hash(哈希类型)。
Redis是一种高级key-value数据库。它跟memcached类似,不过数据可以持久化,而且支持的数据类型很丰富。有字符串,链表,集合和有序集合。支持在服务器端计算集合的并,交和补集(difference)等,还支持多种排序功能。所以Redis也可以被看成是一个数据结构服务 器。
Redis的所有数据都是保存在内存中,然后不定期的通过异步方式保存到磁盘上(这称为“半持久化模式”);也可以把每一次数据变化都写入到一个usr/localend only file(aof)里面(这称为“全持久化模式”)。
为了提升redis高可用性,我们除了备份redis dump数据之外,还需要创建redis主从架构,可以利用从将数据库持久化(数据持久化通俗讲就是把数据保存到磁盘上,保证不会因为断电等因素丢失数据。
redis需要经常将内存中的数据同步到磁盘来保证持久化。redis支持两种持久化方式,一种是 Snapshotting(快照)也是默认方式,另一种是Append-only file(缩写aof)的方式。)
什么是redis的主从复制呢?
Redis主从复制,当用户往Master端写入数据时,通过Redis Sync机制将数据文件发送至Slave,Slave也会执行相同的操作确保数据一致;且实现Redis的主从复制非常简单。同时slave上还可以开启二级slave,三级slave从库,跟MySQL的主从类似。
安装redis可以参考上一次课程哦,这里直接安装slave,只需要在slave redis.conf配置文件中加入如下语句即可:
slaveof 192.168.33.10 6379 # slaveofmaster的ip master的端口。
一、安装Keepalived:
tar zxf keepalived-1.2.1.tar.gz
cd keepalived-1.2.1&&./configure --with-kernel-dir=/usr/src/kernels/2.6.18* &&make&& make install
DIR=/usr/local/ ;cp $DIR/etc/rc.d/init.d/keepalived /etc/rc.d/init.d/
cp $DIR/etc/sysconfig/keepalived /etc/sysconfig/ &&mkdir -p /etc/keepalived
cp $DIR/sbin/keepalived /usr/sbin/
二、配置Keepalived:
vi /etc/keepalived/keepalied.conf
! Configuration File for keepalived
global_defs {
notification_email{
wgkgood@139.com
}
notification_email_fromwgkgood@139.com
smtp_server127.0.0.1
smtp_connect_timeout30
router_idLVS_DEVEL
}
# VIP1
vrrp_instance VI_1 {
state BACKUP
interface eth0
lvs_sync_daemon_inteface eth0
virtual_router_id151
priority 100
advert_int 5
nopreempt
authentication {
auth_typePASS
auth_pass2222
}
virtual_ipaddress{
192.168.33.100
}
}
virtual_server 192.168.33.100 6379 {
delay_loop 6
lb_algo wrr
lb_kind DR
persistence_timeout60
protocol TCP
real_server 192.168.33.10 6379 {
weight 100
notify_down/data/sh/redis.sh
TCP_CHECK {
connect_timeout10
nb_get_retry3
delay_before_retry3
connect_port6379
}
}
}
三、从Keepalived配置:
Redis从服务器配置keepalived.conf跟master一样,只需要把Realserver IP修改成:
real_server 192.168.33.11 ;优先级从100改成90即可。
vi /etc/keepalived/keepalied.conf
! Configuration File for keepalived
global_defs {
notification_email{
wgkgood@139.com
}
notification_email_fromwgkgood@139.com
smtp_server127.0.0.1
smtp_connect_timeout30
router_idLVS_DEVEL
}
# VIP1
vrrp_instance VI_1 {
state BACKUP
interface eth0
lvs_sync_daemon_inteface eth0
virtual_router_id151
priority 90
advert_int 5
nopreempt
authentication {
auth_typePASS
auth_pass2222
}
virtual_ipaddress{
192.168.33.100
}
}
virtual_server 192.168.33.100 6379 {
delay_loop 6
lb_algo wrr
lb_kind DR
persistence_timeout60
protocol TCP
real_server 192.168.33.11 6379 {
weight 100
notify_down/data/sh/redis.sh
TCP_CHECK {
connect_timeout10
nb_get_retry3
delay_before_retry3
connect_port6379
}
}
}
四、创建切换脚本:
在master、slave数据库上创建/data/sh/redis.sh脚本,内容为:
/etc/init.d/keepalived stop
然后分别重启两台Redis数据库上keepalived服务即可。
最后测试停止master Mysql服务,,是否会自动切换到Backup上即可。
下面关于Redis的文章您也可能喜欢,不妨参考下:
Ubuntu 14.04下Redis安装及简单测试
Redis主从复制基本配置
Redis集群明细文档
Ubuntu 12.10下安装Redis(图文详解)+ Jedis连接Redis
Redis系列-安装部署维护篇
CentOS 6.3安装Redis
Redis安装部署学习笔记
Redis配置文件redis.conf 详解
Redis 的详细介绍:请点这里
Redis 的下载地址:请点这里
本文永久更新链接地址:

Outils d'IA chauds

Undresser.AI Undress
Application basée sur l'IA pour créer des photos de nu réalistes

AI Clothes Remover
Outil d'IA en ligne pour supprimer les vêtements des photos.

Undress AI Tool
Images de déshabillage gratuites

Clothoff.io
Dissolvant de vêtements AI

AI Hentai Generator
Générez AI Hentai gratuitement.

Article chaud

Outils chauds

Bloc-notes++7.3.1
Éditeur de code facile à utiliser et gratuit

SublimeText3 version chinoise
Version chinoise, très simple à utiliser

Envoyer Studio 13.0.1
Puissant environnement de développement intégré PHP

Dreamweaver CS6
Outils de développement Web visuel

SublimeText3 version Mac
Logiciel d'édition de code au niveau de Dieu (SublimeText3)

Avec le développement rapide d’Internet, le problème de la concurrence élevée est devenu de plus en plus important. En réponse à ce problème, l'émergence de Redis est devenue une solution importante. Elle résout le problème de la pression excessive de lecture et d'écriture dans les bases de données relationnelles traditionnelles grâce à la lecture et à l'écriture de la mémoire. Cependant, Redis à nœud unique présente toujours des goulots d'étranglement en termes de performances dans des conditions de concurrence élevée, des clusters Redis doivent donc être utilisés. Cet article décrira comment utiliser ThinkPHP6 pour implémenter un cluster Redis. 1. Introduction à Redis Cluster Redis Cluster est un cluster officiel fourni par Redis.

Solution cluster pour Redis et Node.js : Comment atteindre une haute disponibilité Introduction : Avec le développement rapide d'Internet, le traitement des données est devenu de plus en plus volumineux et complexe. Afin de garantir la haute disponibilité et l'évolutivité du système, nous devons utiliser une architecture de cluster distribuée pour répondre aux besoins de stockage et de traitement de grandes quantités de données. Redis, en tant que base de données en mémoire hautes performances, combinée à Node.js comme langage de programmation back-end, peut créer une solution de cluster distribué hautement disponible. Cet article explique comment utiliser Redis et Node.js pour implémenter

Comment implémenter le déploiement en cluster du cache de données PHP via Redis ? Introduction : Lorsque les applications PHP sont confrontées à une concurrence élevée et à un trafic important, elles rencontrent souvent des goulots d'étranglement dans les performances des bases de données. À l'heure actuelle, l'utilisation de la technologie de mise en cache peut considérablement améliorer les performances et la concurrence du système. En tant que base de données clé-valeur en mémoire hautes performances, Redis est largement utilisé dans la mise en œuvre de solutions de mise en cache. Cet article explique comment implémenter le déploiement en cluster du cache de données PHP via Redis pour améliorer encore les performances et l'évolutivité. 1. Présentation du cluster Redis Redis

Redis est une puissante base de données de stockage de paires clé-valeur en mémoire. Il offre des performances plus élevées et une meilleure évolutivité que les SGBDR (système de gestion de bases de données relationnelles) classiques. L’un des avantages de Redis est qu’il peut être utilisé comme technologie de base des systèmes distribués. Dans cet article, nous explorerons le concept de Redis Cluster et comment utiliser Redis Cluster en PHP. Qu'est-ce que le cluster Redis ? En termes simples, un cluster Redis est une agrégation de plusieurs instances Redis. Le cluster Redis nous permet

Apprenez les fonctions de base de données en langage Go et implémentez les opérations de lecture et d'écriture dans le cluster Redis Introduction : La base de données est un élément indispensable des applications Internet actuelles, et le langage Go, en tant que langage de programmation simple et efficace, possède également de bonnes capacités d'exploitation de base de données. Cet article expliquera comment utiliser les fonctions de base de données en langage Go et implémenter les opérations de lecture et d'écriture dans le cluster Redis. 1. Fonctions de base de données en langage Go Les opérations de base de données en langage Go sont principalement implémentées via le package database/sql. Ce package fournit des données de base

Solution de cluster de Redis et PHP : Comment atteindre une haute disponibilité et une évolutivité Introduction : Redis est une base de données en mémoire open source hautes performances qui est souvent utilisée pour créer des applications rapides et évolutives. En tant que langage de script côté serveur populaire, PHP peut être utilisé avec Redis pour obtenir des solutions de cluster haute disponibilité et évolutivité. Cet article présentera comment utiliser Redis et PHP pour créer un cluster à haute disponibilité et évolutif, et expliquera en détail à travers des exemples de code. 1. Construction, installation et configuration du cluster Redis Re

Comment utiliser les langages Redis et Julia pour implémenter des fonctions de cluster à haute disponibilité Introduction : Avec le développement des activités Internet, les exigences en matière de disponibilité du système sont de plus en plus élevées. Pour garantir que les systèmes puissent continuer à fournir des services en cas de panne, la haute disponibilité est devenue l'une des exigences clés dans diverses industries. Cet article expliquera comment utiliser les langages Redis et Julia pour implémenter des fonctions de cluster à haute disponibilité et fournira des exemples de code spécifiques. 1. Qu'est-ce qu'un cluster haute disponibilité ? Un cluster haute disponibilité organise plusieurs nœuds ensemble pour former un système global.

Redis est un service de stockage de données en mémoire open source hautes performances. Il est de plus en plus privilégié par les développeurs en raison de sa vitesse de lecture et d'écriture rapide, de son stockage persistant et de sa prise en charge de plusieurs structures de données. À mesure que l’activité continue de croître, la capacité de stockage de Redis ne peut plus répondre à la demande et doit être étendue. Cet article présentera le plan d'expansion du cluster Redis et ses détails de mise en œuvre. Le concept de cluster Redis Le cluster Redis fait référence à la connexion de plusieurs instances Redis ensemble pour former un grand ensemble d'instances Redis, ce qui peut améliorer Redis
