CentOS配置Redis
查看、打开和关闭防火墙
查看防火墙:sudo systemctl status firewalld
关闭防火墙:sudo systemctl stop firewalld
打开防火墙:sudo systemctl start firewalld
防火墙状态:Active: active (running)为正在运行,inactive (dead)为已关闭
开启SSH Server服务
查看是否安装SSH:rpm -qa | grep ssh
安装:yum install openssh-server
启动SSH:systemctl start sshd
停止SSH:systemctl stop sshd
重启SSH:systemctl restart sshd
查看22端口是否启用:netstat -antp | grep sshd
设置SSH开机启动:systemctl enable sshd
关闭SSH开机启动:systemctl disable sshd
windows连接Linux
SSH连接:ssh 用户名@ip
例子:ssh root@192.168.1.1
如果登录不上可以查看/var/log/secure文件,这里保存这系统日志,包括登录不上的信息
CentOS安装Redis
redis下载地址:http://download.redis.io/releases/
1、安装C语言环境
C语言运行环境:yum install -y gcc-c++
在线下载:yum install -y wget
2、下载安装Redis
1、wget redis下载地址链接
例子:wget http://download.redis.io/releases/redis-5.0.4.tar.gz
2、解压安装redis
解压:tar -zxf redis-5.0.4.tar.gz
进入redis:cd redis-5.0.4
执行:make && make install PREFIX=/server/redis
xxx为想安装的路径
复制配置文件:cp redis.conf /server/redis/bin
将redis-5.0.4文件夹里的redis.conf复制到安装好的redis的bin目录下
守护进程启动:修改redis.conf
修改daemonize no 改为daemonize yes
修改bind 127.0.0.1 改为#bind 127.0.0.1
修改protected-mode yes改为protected-mode no
运行:进入安装好的redis的bin目录下./redis-server redis.conf
ps -ef | grep redis
进入Redis:
./redis-cli -h 127.0.0.1 -p 6379
若进入不了cli,强关redis 服务,再开启一次试试。
kill -9 [pid]
Redis相关
进入redis-cli
1、info memory 查看内存参数
used_memory 实际内存使用量(可能使用虚拟缓存)
used_memory_rss redis进程占用内存
mem_fragmentation_ratio进程利用率 最好情况1.03
mem_allocator 内存分配器类型
mem_fragmentation_ratio= used_memory_rss/used_memory
_human尾缀的为人性化展示数据
2、内存分配器默认为jemalloc,jemalloc对减少内存碎片效果最好
除此之外还有libc、tcmalloc
3、命令
String类型
存入:set [key] [value]
去除:get [key] [value]
存入同时取出:getset [key] [value]
value为证书数据时,可以使用数值增减命令:
递增数字: incy [key] (默认从1开始,每次执行会+1)
数值增加num:incy [key] [num]
递减数字:decr [key]
sadd [key] [value(集合类型)]
hset [key] [value(hash类型)]
lpush [key] [value(数组类型)]
lrange [key] [start(起始位置)] [end(终止位置)]
编码类型:object encoding [key]
引用数:object refcount [key]
空闲时间:object idletime [key]
设置过期时间:expire [key] [秒数]
redisObject对象大小为16Byte
type:4bit+encoding:4bit+lru:24bit+共享数:4Byte+内容指针:8Byte
RDB及AOF相关
命令:save进行默认rdb存储
在bin目录下生成dump.rdb文件
启动AOF存储:修改redis.conf
修改appendonly no 改为appendonly yes
在bin目录下会生成appendonly.aof文件
混合模式设置:
修改aof-use-rdb-preamble no 改为aof-use-rdb-preamble yes
主从模型
从机第一次上线时会全量同步,之后是增量同步
1、开启主机redis
2、复制修改redis.conf
replicaof <masterip> <masterport>
改为
主机所在ip+端口
例:192.198.193.30 6379
主从哨兵模型
一般为1主2从3哨兵
复制一个redis
复制配置文件:cp sentinel.conf /server/redis/bin
将redis-5.0.4文件夹里的sentinel.conf复制到新复制的redis的bin目录下
修改sentinel.conf文件
端口默认26379
修改daemonize no 改为daemonize yes
修改sentinel down-after-milliseconds mymaster 30000最后的数字为多少毫秒后进行主从迁移
sentinel parallel-syncs mymaster 1最后的数字为一次进行迁移多少个从节点
启动:./redis-sentinel sentinel.conf
Cluster集群(相同主机)
主节点既是主节点也是哨兵
注意:第一次做集群时不能有数据,请先删除所有dump.rdb,appendonly.aof及nodes.conf文件
1、修改redis.conf文件
修改port 6379改为不重复的端口号
修改#cluster-enabled yes前的#去除
2、复制redis,至少需要三个做为主节点,三个从节点。
修改每个redis的端口号不重复
3、分别启动后,进入到任意一个redis的bin目录执行集群命令:
例:
./redis-cli --cluster create 127.0.0.1:8001 127.0.0.1:8002 127.0.01:8003 127.0.0.1:8004 127.0.0.1:8005 127.0.0.1:8006 --cluster-replicas 1
4、进入redis-cli: ./redis-cli -p 8006 -c
注意:一定要加-c
查看info信息cluster info
查看节点信息cluster nodes
–cluster-replicas 1 代表设置一个从节点
其他
查看对应端口主从角色
./redis-cli -p 6379 info|grep role