复述,主从+哨兵故障转移部署

  

<强>复述的认识

  

复述是一个键值存储系统。和Memcached类似,它支持存储值的类型相对更多,包括字符串(字符串),列表(链表),设置集(合)和zset(有序集合)。这些数据类型都支持推/流行,添加/删除及取交集并集和差集及更丰富的操作,而且这些操作都是原子性的。在此基础上,复述,支持各种不同方式的排序。与Memcached一样,为了保证效率,数据都是缓存在内存中。区别的是复述,会周期性的把更新的数据写入磁盘或者把修改操作写入追加的记录文件,并且在此基础上实现了主从(主从)同步。

  

复述,集群原理:
复述,集群好处:容错,可解决单节点复述,问题,可扩展性,多节点部署;性能提升。
1)所有的复述,节点彼此互联(乒乓球机制),内部使用二进制协议优化传输速度和带宽。
2)节点的失败是通过集群中超过半数节点检测失效才生效。
3)客户端与复述,节点直连,不需要中间代理层,客户端不需要连接集群所有节点,连接集群中任何一个节点即可。
4) redis-cluster把所有的物理节点映射到(0 - 16383)个槽槽上,集群负责维护node<鷖lot<壑蹈词?集群中内置了16384个哈希槽,当需要在复述,集群中放置一个键-值时,复述,先对关键使用crc16算法算出一个结果,然后把结果对16384求余数,这样就保证每个关键都会对应到0 - 16383之间的哈希槽,复述,会根据节点的数量大致均等的将哈希槽映射到不同的节点。

  <人力资源/>   

<强>复述,主从复制+哨兵故障转移

  

环境:
操作系统:centos
复述版本:Redis3.0以上
节点:
主192.168.10.78(复述+前哨)
slave01 192.168.10.80(复述+前哨)
slave01 192.168.10.81(复述+前哨)

  

1。复述,安装
<代码> yum安装- y让gcc gcc-c + + zlib-devel openssl openssl-devel pcre-devel内核keyutils补丁perl代码

  

192.168.10.78主   

 <代码> cd/usr/地方/redis-3.0.7/redis-master/使
  制作安装
  使测试(测试可不操作) 
  

192.168.10.80和192.168.10.80同理。

  

2.复述,配置
以主机192.168.10.78主为例。

  
 <代码>回声vm。overcommit_memory=1在祝辞/etc/sysctl.conf
  sysctl vm。overcommit_memory=1  
  

其中,“0:表示内核将检查是否有足够的可用内存供应用进程使用,1:表示内核允许分配所有的物理内存,而不管当前的内存状态如何“。

  

vim/usr/local/redis-3.0.7/redis-master/src/复述。参看
修改如下几行

  
 <代码> daemonize是的//后台运行
  端口6379
  日志文件/var/log/redis.log”
  tcp-backlog 65535 #提高tcp积压的数量
  数20000 #此值不可设置的过大,以为每个插座连接会以“文件描述符”方式被系统打开,
  所以受Linux系统”文件描述符“限制。如果超过系统设置,服务器会拒绝连接。
  maxmemory 6 gb #最好是物理内存的3/4,与maxmemory-policy配合使用
  maxmemory-policy allkeys-lru #复述,内存回收策略,内存不足时,数据清除策略。
  lru=最近更新,建议采用allkeys-lru内存回收策略。
  maxmemory-samples 3 #内存回收策略lru和ttl策略并非严禁策略,采用估算方式,
  因此选择取样方式以便检查。选择3个键,从中淘汰不经常用的。
  slave-serve-stale-data是的#让复述,奴隶可以回复客户请求,及时它没有被完全同步(同步),即如果当前服务器为奴隶,
  当奴隶与主失去通讯,是否继续为客户提供服务。
  slave-read-only是的#禁止奴隶有被不小心直接写入的可能,药膏为只读方式。
  #关闭复述,往磁盘写入,提高性能
  1 #节省900
  #节省300 10
  #保存60 10000
  min-slaves-to-write 1 #这里保障,复述,主人至少要有1个连接得上的奴隶才可被写入,用来减少复制丢数据的机会
  min-slaves-max-lag 10 #这里保障,复述,主人会停止写入,如果在10秒内收不到从奴隶的复制确认回馈 
  

192.168.10.80和192.168.10.81配置同上,修改相应端口即可。
80: slaveof 192.168.10.78 6379
81: slaveof 192.168.10.78 6379

  

3。哨兵配置
复述,哨兵是一个分布式系统,可监控(监控),提醒(通知)和自动故障迁移(自动故障转移)。
可以在一个架构中运行多个哨兵进程(进步),这些进程使用流言协议(八卦协议)来接收关于主服务器是否下线的信息,并使用投票协议协议(协议)来决定是否执行自动故障迁移,以及选择哪个从服务器作为新的主服务器。

  

192.168.10.78主要配置项说明:
vim/etc/sentinel.conf

复述,主从+哨兵故障转移部署