os:centos6.4node
redis:3.0.5redis
使用下载好的包redis-3.0.5.tar.gz或直接命令下载:
wget http://download.redis.io/releases/redis-3.0.5.tar.gz数据库
将安装包放到/soft/目录下:mv redis-3.0.5.tar.gz /soft/vim
cp /soft/redis-3.0.5/redis.conf /data/redis-cluster/7000/centos
cp /soft/redis-3.0.5/redis.conf /data/redis-cluster/7001/ruby
cp /soft/redis-3.0.5/redis.conf /data/redis-cluster/7002/app
cp /soft/redis-3.0.5/redis.conf /data/redis-cluster/7003/测试
cp /soft/redis-3.0.5/redis.conf /data/redis-cluster/7004/ui
cp /soft/redis-3.0.5/redis.conf /data/redis-cluster/7005/命令行
vim /data/redis-cluster/7000/redis.conf
分别修改以上路径的配置文件内容项:7000-7005
daemonize yes pidfile /var/run/redis_7000.pid port 7000 cluster-enabled yes cluster-config-file nodes_7000.conf cluster-node-timeout 15000 appendonly yes
cp /soft/redis-3.0.5/src/redis-trib.rb /usr/local/redis/bin/
/usr/local/redis/bin/redis-trib.rb create --replicas 1 127.0.0.1:7000 127.0.0.1:7001 127.0.0.1:7002 127.0.0.1:7003 127.0.0.1:7004 127.0.0.1:7005
使用create命令 --replicas 1 参数表示为每一个主节点建立一个从节点,其余参数是实例的地址集合
建立成功:
9.1测试存取值
客户端链接集群redis-cli须要带上 -c ,redis-cli -c -p 端口号
发如今几个节点中跳来跳去。
9.2测试集群节点选举
查看集群目前情况:/usr/local/redis/bin/redis-cli -c -p 7000 cluster nodes
能够看出7000,7001,7002为master节点,7003,7004,7005为对应从节点
如今杀掉7001节点的进程,再看看集群情况:
能够看到,节点7001为fail状态,它的从节点7004被选举为master节点
如今咱们将7001节点从新启动,看是否会自动加入集群中以及充当master节点仍是slave节点。
能够看到7001节点恢复了,成为了7004节点的从节点。
daemonize:如须要在后台运行,把该项的值改成yes
pdifile:把pid文件放在/var/run/redis.pid,能够配置到其余地址
bind:指定redis只接收来自该IP的请求,若是不设置,那么将处理全部请求,在生产环节中最好设置该项
port:监听端口,默认为6379
timeout:设置客户端链接时的超时时间,单位为秒
loglevel:等级分为4级,debug,revbose,notice和warning。生产环境下通常开启notice
logfile:配置log文件地址,默认使用标准输出,即打印在命令行终端的端口上
database:设置数据库的个数,默认使用的数据库是0
save:设置redis进行数据库镜像的频率
rdbcompression:在进行镜像备份时,是否进行压缩
dbfilename:镜像备份文件的文件名
dir:数据库镜像备份的文件放置的路径
slaveof:设置该数据库为其余数据库的从数据库
masterauth:当主数据库链接须要密码验证时,在这里设定
requirepass:设置客户端链接后进行任何其余指定前须要使用的密码
maxclients:限制同时链接的客户端数量
maxmemory:设置redis可以使用的最大内存
appendonly:开启appendonly模式后,redis会把每一次所接收到的写操做都追加到appendonly.aof文件中,当redis从新启动时,会从该文件恢复出以前的状态
appendfsync:设置appendonly.aof文件进行同步的频率
vm_enabled:是否开启虚拟内存支持
vm_swap_file:设置虚拟内存的交换文件的路径
vm_max_momery:设置开启虚拟内存后,redis将使用的最大物理内存的大小,默认为0
vm_page_size:设置虚拟内存页的大小
vm_pages:设置交换文件的总的page数量
vm_max_thrrads:设置vm IO同时使用的线程数量