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 创建一个权限为777C目录

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相同,只是通过PgUpPgOn键来控制

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         高亮显示,A5行,B5

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防火墙

  1. 永久关闭防火

chkconfig iptables off   关闭

chkconfig iptables on    开启

  1. 临时关闭防火墙

如果当前虚拟机重启之后,防火墙依然开启.

 

service iptables stop 关闭

service iptables start 开启

  1. 启动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

  1. 解压redis

[root@localhost src]# tar -xvf redis-5.0.4.tar.gz

  1. 编译/安装redis

 

编译: make

 

安装: make install

 

  1. 启动redis

redis-server

 

2.1.1 Redis常规操作命令

  1. 启动redis

redis-server redis.conf

 

  1. 进入客户端

redis-cli -p 6379

 退出客户端: ctrl+c /exit/quit

 

  1. 关闭客户端

redis-cli -p 6379 shutdown

 

说明:如果操作的redis是默认的端口号6379 则命令可以简化

redis-cli    redis-cli shutdown

2.1.2 Redis分片搭建步骤

说明:分别准备3redis节点 名称6379/6380/6381

2.1.2.1 关闭原有redis服务器

Redis-cli shutdown

2.1.2.2 部署3服务器

Mkdir shards

 

2.1.2.3 复制3redis.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 RedisRDB模式

  1. 关于持久化命令

3.1save  立即持久化. 当在进行持久化操作时,客户端会陷入阻塞状态.

3.2bgsave 开启后台运行的持久化方式.不会造成阻塞.

2.1.5 RedisAOF模式

说明: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

  1. 实现主从配置

规划: 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 哨兵高可用测试


  测试步骤:

  1. 启动哨兵 redis-sentinel sentinel.conf

 

  1. 校验哨兵启动 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 通过脚本编辑启动/关闭指令

  1. 创建启动脚本  vim start.sh
  2. 编辑关闭的脚本    vim  shutdown.sh
  3. 启动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主从哨兵分片集群

Redis简介

Redis复制和redis分片(集群)的区别

Redis-分片

redis分片

redis分片技术