Nginx Redis redis分片 redis哨兵 redis集群 等 常用命令
Posted lizhiwei666
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了Nginx Redis redis分片 redis哨兵 redis集群 等 常用命令相关的知识,希望对你有一定的参考价值。
nginx Redis redis分片 redis哨兵 redis集群 等 常用命令
1.1.1 Nginx命令
前提:nginx的命令执行,必须在nginx的根目录中完成
命令:
1.启动nginx start nginx
2.重启nginx nginx -s reload
3.关闭nginx nginx -s stop
Linux命令
1.1.2 cd命令集
ifconfig 检查IP地址
cd命令是linux中最基本的命令语句,必须熟练掌握
cd / 返回根目录
cd ~ 用户主目录
cd . 当前目录
cd ..返回到上一级目录
cd /usr/ 进入到usr目录
cd – 返回上一个目录
cd 直接回家
1.1.3 ls目录和文件
ls –l 详细格式,文件权限,时间
ll 和ls –l作用相同
ls *.txt 查看所有的txt类型文档
1.1.4 目录操作
mkdir 创建目录
mkdir a 创建 a目录
mkdir -p a/b 创建 a目录,并在a目录里创建b目录
mkdir -m 777 c 创建一个权限为777的C目录
rmdir 删除目录(如果目录里有文件,则不能用此命令)
1.1.5 Vi/vim创建/查看/编辑文件
命令行:Esc切换到命令行模式。
编辑模式:
按i,在光标前开始编辑
按a,在光标后开始编辑
按o,在当前行的下一行开始编辑
底行模式:按 shift+:冒号。
:q! 不保存退出
:wq 保存退出
:/world 从当前光标处,向上查找world关键字
:?world 从当前光标处,向后查找world关键字
1.1.6 删除文件
rm 删除文件
rm n.txt 提示y删除n放弃
rm –f n.txt 不提示
rm –rf dirname 不提示递归删除目录下所以内容
rm –rf * 删除所有文件
rm –rf /* 删除所有子目录所有和文件
1.1.7 复制和移动文件
cp复制文件
cp nginx.conf n.txt
cp –R tomcat1 tomcat2 #复制整个目录
mv 修改文件名,移动文件
mv n.txt m.txt
1.1.8 浏览文件
cat 输出文件所有的内容
more 输出文档所有的内容,分页输出,空格浏览下一屏,q退出
less 用法和more相同,只是通过PgUp、PgOn键来控制
tail 用于显示文件后几号,使用频繁
tail -10 nginx.conf 查看nginx.conf的最后10行
tail –f nginx.conf 动态查看日志,方便查看日志新增的信息
ctrl+c 结束查看
1.1.9 打包命令
tar命令位于/bin目录下,它能够将用户所指定的文件或目录打包成一个文件,但不做压缩。一般Linux上常用的压缩方式是选用tar将许多文件打包成一个文件,再以gzip压缩命令压缩成name.tar.gz的文件。
-c 创建一个新的tar文件
-v 显示运行过程的信息
-f 指定文件名
-z 调用gzip压缩命令进行压缩
-t 查看压缩文件的内容
-x 解开tar文件
tar –cvf n.tar ./* 压缩当前目录下的所有文件和目录,文件名为n.tar
tar –xvf n.tar 解压压缩包中的文件到当前目录(如果长时间未解压成功 Ctrl+C推出)
tar –cvzf m.tar ./* 解压m.tar文件到当前目录
1.1.10 grep命令
grep root /etc/passwd 在文件中查找关键字root
grep root /etc/passwd –-color 高亮显示
grep root /etc/passwd –A5 –B5 高亮显示,A后5行,B前5行
grep -n root /etc/passwd 查找并显示行数
grep -v root /etc/passwd 取反,查出不含root的数据
1.1.11 上传JDK安装包
说明:将JDK安装包上传到指定文件目录下/usr/local/src下
命令: tar -xvf jdk-7u51-linux-x64.tar.gz
1.1.12 配置环境变量
说明:修改Linux系统中环境变量需要修改/etc/profile文件
命令:vim /etc/profile
1.1.13 检测JDK是否生效
命令:java -version
1.1.14 关闭Linux防火墙
- 永久关闭防火墙
chkconfig iptables off 关闭
chkconfig iptables on 开启
- 临时关闭防火墙
如果当前虚拟机重启之后,则防火墙依然开启.
service iptables stop 关闭
service iptables start 开启
- 启动tomcat服务器
java -jar 8080.war
2.查询全部服务命令
ps -ef | grep java*
2.杀死进程项
kill PID 杀死进程
kill 5816 (尝试)
kill -15 5916 杀死进程,可以执行后续操作.
kill -9 5816 强制杀死
1.1.15 批量启动tomcats
java -jar 8080.war & java -jar 8081.war &
2 Redis
- 解压redis
[root@localhost src]# tar -xvf redis-5.0.4.tar.gz
- 编译/安装redis
编译: make
安装: make install
- 启动redis
redis-server
2.1.1 Redis常规操作命令
- 启动redis
redis-server redis.conf
- 进入客户端
redis-cli -p 6379
退出客户端: ctrl+c /exit/quit
- 关闭客户端
redis-cli -p 6379 shutdown
说明:如果操作的redis是默认的端口号6379 则命令可以简化
redis-cli redis-cli shutdown
2.1.2 Redis分片搭建步骤
说明:分别准备3台redis节点 名称6379/6380/6381
2.1.2.1 关闭原有redis服务器
Redis-cli shutdown
2.1.2.2 部署3台服务器
Mkdir shards
2.1.2.3 复制3个redis.conf文件
cp redis.conf shards/6379.conf
cp redis.conf shards/6380.conf
cp redis.conf shards/6381.conf
2.1.2.4 修改配置文件的端口号
:/port 查找
:wq 保存
2.1.2.5 启动多台redis
redis-server 6379.conf
redis-server 6380.conf
redis-server 6381.conf
2.1.3 Redis持久化策略
2.1.4 Redis的RDB模式
- 关于持久化命令
3.1save 立即持久化. 当在进行持久化操作时,客户端会陷入阻塞状态.
3.2bgsave 开启后台运行的持久化方式.不会造成阻塞.
2.1.5 Redis的AOF模式
说明:aof模式是异步的.
appendfsync always 用户操作一次.持久化一次
appendfsync everysec 每秒持久化一次
appendfsync no 不做记录(有操作系统空间)
2.1.6 内存优化
2.1.6.1 LRU算法 和LFU算法
1.volatile-lru: 设定了超时时间的数据,使用LRU算法实现数据内存优化.
2.allkeys-lru : 在全部数据中采用LRU算法.
3.volatile-lfu:超时时间的数据采用lfu算法 5以后的版本
4.allkeys-lfu:全部数据采用lfu算法
5.volatile-random: 设定了超时时间的数据采用随机算法
6.allkeys-random:所有的数据采用随机算法
7.volatile-ttl: 照着剩余的存活时间排序,之后删除.
8.noeviction: 默认规则 redis自己不删除数据,如果内存满足,则报错返回.
3.Redis哨兵机制
3.1复制哨兵目录
cp -r shards sentinel
- 实现主从配置
规划: 6379主 6380/6381从机.
命令: saveof 主机IP 主机端口号
查询命令:info replication
2.1.6.2 准备哨兵配置文件
复制哨兵的配置文件到sentinel目录中.
cp sentinel.conf sentinel
2.1.6.3 关闭保护模式
protected-mode no 17行
2.1.6.4 开启后台启动
daemonize yes 26行
2: 哨兵投几票,选举生效. 84行
sentinel monitor mymaster 127.0.0.1 6379 1
2.1.6.5 添加超时时间
113行
sentinel down-after-milliseconds mymaster 10000
2.1.6.6 添加选举超时时间
146行
sentinel failover-timeout mymaster 20000
2.1.7 哨兵高可用测试
测试步骤:
- 启动哨兵 redis-sentinel sentinel.conf
- 校验哨兵启动 ps -ef |grep redis
2.1.7.1 关闭哨兵服务
ps -ef |grep redis
kill -9 哨兵的PID
2.1 Redis集群
2.1.1 集群搭建计划
主从划分:
3台主机 3台从机共6台 端口划分7000-7005
1.准备集群文件夹
Mkdir cluster
1.1.1 复制配置文件
说明:
将redis根目录中的redis.conf文件复制到cluster/7000/ 并以原名保存
cp redis.conf cluster/7000/
1.1.2 通过脚本编辑启动/关闭指令
- 创建启动脚本 vim start.sh
- 编辑关闭的脚本 vim shutdown.sh
- 启动redis节点
sh start.sh
1.1.3 创建redis集群
#5.0版本执行
redis-cli --cluster create --cluster-replicas 1 192.168.222.129:7000 192.168.222.129:7001 192.168.222.129:7002 192.168.222.129:7003 192.168.222.129:7004 192.168.222.129:7005
以上是关于Nginx Redis redis分片 redis哨兵 redis集群 等 常用命令的主要内容,如果未能解决你的问题,请参考以下文章
Redis个人笔记:Redis应用场景,Redis常见命令,Reids缓存击穿穿透,Redis分布式锁实现方案,秒杀设计思路,Redis消息队列,Reids持久化,Redis主从哨兵分片集群