前哨(哨兵)是用于监控复述,集群中主状态的工具,其已经被集成在redis2.4 +的版本中、下面话不多说了,来一起看看详细的介绍吧
前哨(哨兵)是复述的高可用性解决方案:由一个或多个哨兵实例组成的哨兵系统可以监视任意多个主服务器,以及这些主服务器属下的所有从服务器,并在被监视的主服务器进入下线状态时,自动将下线主服务器属下的某个从服务器升级为新的主服务器。
例如:
在Server1掉线后:
升级Server2为新的主服务器:
在讲解哨兵哨兵集群之前,我们先来搭建一个简单的主从分离(读写分离)。
首先,我们默认大家都已经安装了复述,然后我们将复述。参看拷贝多份,并且创建多个目录,用于区分多个复述,服务:
这里面,每个目录中都有自己的复述。参看配置文件,接下来,我们先设置主服务器的配置文件。
<强>一、配置主强>
1,修改端口
#接受连接> #如果指定一个pid文件,复述,写它在启动时指定的地方 #在退出并删除它。 # #服务器运行时非监控,没有pid文件如果没有创建 #配置中指定。当服务器监控,pid文件 使用#即使未指定,默认为“/var/运行/redis.pid”。 # #创建一个pid文件是最好的努力:如果复述,是不能够创建它 #什么也没发生,服务器将启动和正常运行。 pidfile/var/run/redis_6380.pid
pidfile是我们启动复述的时候,linux为我们分配的一个pid进程号,如果这里不作修改,会影响后面复述,服务的启动
3,启动复述,
启动复述,我们可以看的到,复述,已经占领了6380端口
进入客户端
redis-cli - p 6380 127.0.0.1:6380>信息 … #复制 角色:主 connected_slaves: 0 master_repl_offset: 0 repl_backlog_active: 0 repl_backlog_size: 1048576 repl_backlog_first_byte_offset: 0 repl_backlog_histlen: 0 …
我们可以看的到,复述,现在的角色是一个主启动的服务。
<强>二,配置奴隶强>
和上面配置主一样,我们需要修改端口号和pid文件,在修改完之后,我们有两种方法配置从服务
1,在配置文件中配置从服务
################################# 复制 ################################# #主从复制。使用slaveof复述实例的副本 #另一个复述,服务器。几件事情要尽快了解复述,复制。 # # 1)复述,复制是异步的,但是您可以配置一个主人 #停止接受写道如果它似乎不是与至少 #一个给定数量的奴隶。 # 2)复述,奴隶能够执行的部分再同步 #主如果复制链接是相对少量的丢失 #时间。你可能想要配置复制积压大小(见下一个 #的这个文件)和一个合理的价值取决于> #如果主密码保护(使用“requirepass”配置 #下面的指令)可以告诉奴隶进行身份验证 #开始复制同步过程,否则主人会 #拒绝奴隶的请求。 # # masterauth & lt; master-password>
启动复述,服务:
我们可以看的到,现在有两个现在在运行,我们进入6381的客户端,看一下他的状态,
#复制 角色:奴隶 master_host: 127.0.0.1 master_port: 6380 master_link_status: master_last_io_seconds_ago: 1 master_sync_in_progress: 0 slave_repl_offset: 71 slave_priority: 100 slave_read_only: 1 connected_slaves: 0 master_repl_offset: 0 repl_backlog_active: 0 repl_backlog_size: 1048576 repl_backlog_first_byte_offset: 0 repl_backlog_histlen: 0Linux学习教程之复述,哨兵集群详解