aws上redhat安装redis服务记
1.准备
官网下载
或者
wget http://download.redis.io/releases/redis-3.0.7.tar.gz
2、Redis编译
通过
cd redis-3.0.7/
进入Redis源码目录内,执行make编译Redis;
报错1
处理
yum install gcc
报错2
make MALLOC=libc
(错误解决URL:http://www.phperz.com/article/14/1219/42002.html)
3、Redis安装配置
安装Redis,cd进去src目录执行
make install
会将生成的可执行文件拷贝到/usr/local/bin目录下;
执行初始化服务
./utils/install_server.sh
配置Redis配置之后Redis能随系统启动。
其他配置选项默认就好,executable path 要手动输入。
使用install_server.sh 快速初始化,可以快速配置conf文件,log文件pid文件和配置服务器启动就初始化启动redis,用这脚本启动的是6379.conf配置
6379.conf注意点如下
(直接 /usr/local/bin/redis-server redis.conf也可以直接启动默认的6379端口)
4、Redis服务查看、开启、关闭
1、通过ps -ef|grep redis命令查看Redis进程;
确认已经启动,通过kill -9 3284可以关闭
2、开启Redis服务操作通过
1.直接启动(执行文件 ./redis-server即可)
2.后台启动
/usr/local/bin/redis-server /etc/redis/6379.conf
/usr/local/bin/redis-server:执行文件客户端
/etc/redis/6379.conf 上面配置的配置文件
# 默认情况下 redis 不是作为守护进程运行的,如果你想让它在后台运行,你就把配置文件(6379.conf)里
daemonize
改成 yes。
# 当redis作为守护进程运行的时候,它会写一个 pid 到 /var/run/redis.pid 文件里面。
测试,进入客户端执行文件目录,执行./redis-cli可直接执行操作
3、关闭Redis服务操作通过/
./redis-cli -p 6379 shutdown
5.配置多个实例
1、一个redis对应一个节点,一个节点一个端口号,每个节点对应一个redis.conf文件,找到自己redis.conf文件位置进行复制操作:
找到
pidfile /var/run/redis_6379.pid
port 6379
logfile /var/log/redis_6379.log
dir /var/lib/redis/6379
3.另外还要建立/var/lib/redis/6380空文件夹
4.启动新实例
/usr/local/bin/redis-server /etc/redis/6380.conf
发现已经有实例
5,。观察相关文件已经自动建立
6.使用客户端连接操作
./redis-cli -p 6380
成功
6.主从配置
准备.新建一个实例6381
1、运行关联
进入slave(从)redis:
redis-cli -p 6381
运行:slaveof 127.0.0.1 6380 (设定主数据库)
完成,但是使用这种方式,一旦从库挂掉重启,他们的复制关系将终止。
2、配置关联(长期关联)
到服务器配置文件目录,找到从库的配置文件,执行修改操作
2.1修改 6381.conf文件
2.2.重启实例测试
在6380实例插入一个数据,自动同步到6381了
然后再测试在6381插入数据,提示只读,成功
7.sentinel
1.增加多一个实例6382,,拷贝安装包的sentinel.conf文件,增加3个sentinel
2.修改以下配置
sentinel_26379.conf
port 26379
sentinel monitor mymaster 127.0.0.1 6380 2
daemonize yes
logfile /var/log/sentinel_26379_log.log
sentinel_26380.conf
port 26380
sentinel monitor mymaster 127.0.0.1 6380 2
daemonize yes
logfile /var/log/sentinel_26380_log.log
sentinel_26381.conf
port 26381
sentinel monitor mymaster 127.0.0.1 6380 2
daemonize yes
logfile /var/log/sentinel_26381_log.log
daemonize yes :后台线程启动
3.启动
/usr/local/bin/redis-sentinel /home/ec2-user/soft/redis307/redis-conf/sentinel_26379.conf
/usr/local/bin/redis-sentinel /home/ec2-user/soft/redis307/redis-conf/sentinel_26380.conf
/usr/local/bin/redis-sentinel /home/ec2-user/soft/redis307/redis-conf/sentinel_26381.conf
4.查看
已经启动
日志自动创建了
8.redis 客户端操作
找到程序
./redis-cli -h 127.0.0.1 -p 6379
-h 主机地址
-p 端口
9.总结
以上配置就是
单实例
redis 6379
主从
redis 6380 master
redis 6381 ,6380的slave
redis 6382 ,6380的slave
集群哨兵
sentinel 26379
sentinel 26380
sentinel 26381
集群监听 master redis 6380和他的slave6381,slave6382的哨兵。
注:
install_server.sh 配置启动的实例是开机启动,新加的实例和哨兵没开机启动,待设置
最简单创建新实例并且配置开机启动等可以修改install_server.sh文件的端口字段即可。。