coldsmog运维笔记
Linux 中间件部署
升级MySQL至最新版本
Zabbix与Zabbix-agent2部署
Galera-Cluster-MySQL 部署
JDK8 部署
FastDFS 部署
MySQL 主从备搭建
RabbitMQ 部署
Redis 部署
Nginx 部署
Gitlab + Jenkins + Sonarqube 部署
Docker 部署
keepalive的安装
Gitlab-ce 部署
Graalvm 部署
Nacos 部署
Kafka 部署
PostgreSQL 部署
MongoDB 部署
Fizz网关搭建
Vue项目部署(Nginx)
CentOS 运维笔记
centos 添加自定义服务
Linux 系统挂载
MySQL命令行
故障排查
Docker 运维笔记
keepalived 配置笔记
win 编辑EFI
本文档使用 MrDoc 发布
-
+
首页
Redis 部署
## 下载Redis Redis下载网址 - http://www.redis.cn/download.html 图形管理界面下载网址 - QuickRedis https://gitee.com/quick123official/quick_redis_blog/releases/ - RedisView https://github.com/cc20110101/RedisView/releases ## docker安装redis 编写docker-compose.yml ``` version: '3' services: redis: image: 'redis:6.0' restart: always container_name: redis environment: - TZ=Asia/Shanghai command: redis-server --requirepass yourPassword --appendonly yes ports: - "6379:6379" volumes: - ./data:/data ``` `docker-compose up -d` 启动 ## yum安装Redis 配置文件`/etc/redis`, 启动文件`/usr/bin/redis-server` ``` yum install redis -y systemctl start redis systemctl enable redis ``` ## 编译安装Redis 1. Redis需要gcc环境(如果已经有该环境跳过此步骤) ` yum install gcc-c++` 2. 在/usr/local下创建redis文件夹 ``` mkdir -p /usr/local/redis ``` 3. 下载、解压、编译Redis: ``` cd /usr/local/src wget http://download.redis.io/releases/redis-5.0.4.tar.gz tar xzf redis-5.0.4.tar.gz cd redis-5.0.4 # 指定内存池类型,提高性能 make MALLOC=libc cd src make PREFIX=/usr/local/redis install ``` 4. 拷贝redis.conf配置文件到特定目录,单台环境下用此区分集群; ``` mkdir -p /usr/local/redis/6379 cp redis.conf /usr/local/redis/6379/ ``` 5. 添加redis到命令到全局变量,方便在任何目录执行; ``` vi /etc/profile # 在最后行添加: export PATH="$PATH:/usr/local/redis/bin" ``` 6. 将 redis-trib.rb 复制到 /usr/local/bin 目录下 ``` cd src cp redis-trib.rb /usr/local/redis/bin/ ``` 7. 对redis.conf文件修改如下 ``` #设置占用最大内存 数字为bytes 该值为0.75G maxmemory 751619276 # redis 内存回收机制 默认noeviction:拒绝更多内存,当前为回收已经过期的key,并且优先回收存活时间(TTL)较短的键 maxmemory-policy volatile-ttl # 开启AOF持久化 appendonly yes # AOF追写策略 appendfsync everyse #是否同步重写问件 yes性能更好,有概率丢失文件 no-appendfsync-on-rewrite no # 设置AOF增长比例和最小触发文件大小,即至(64*100% + 64)mb时触发重写文件 auto-aof-rewrite-percentage 100 auto-aof-rewrite-min-size 64mb # 注释掉RDB持久化参数 #save 900 1 #save 300 10 #save 60 10000 # 删除目录下的dump.rdb rm -rf dump.rdb # 手动重写AOF 执行 bgrewriteaof ``` 8. 启动验证redis ``` /usr/local/redis/bin/redis-server /usr/local/redis/bin/6379/redis.conf ``` 9. 性能测试 ``` # 启动5个连接,发起100000个请求,每个请求的大小为10bytes bin/redis-benchmark -t get -h localhost -p 6379 -c 5 -n 100000 -d 10 ``` 10. 设置开机自启 编写脚本 ``` vi /lib/systemd/system/redis.service # 填入以下内容 [Unit] Description=Redis persistent key-value database After=network.target After=network-online.target Wants=network-online.target [Service] ExecStart=/usr/local/redis/bin/redis-server /usr/local/redis/bin/6379/redis.conf --supervised systemd Type=notify User=redis Group=redis RuntimeDirectory=redis RuntimeDirectoryMode=0755 [Install] WantedBy=multi-user.target ``` 启动&自启 ``` systemctl start redis systemctl enable redis ``` ## 集群化 - 在redis文件夹下创建redis-cluster,并且在redis-cluster文件夹下创建7004 7005 7006文件夹 - 将redis5.0.4的文件夹下redis.conf文件复制到刚刚创建的7004 7005 7006文件夹下 ``` cp redis.conf /usr/local/redis/redis-cluster/7004 cp redis.conf /usr/local/redis/redis-cluster/7005 cp redis.conf /usr/local/redis/redis-cluster/7006 ``` - 修改刚刚复制的三个配置文件redis.conf ``` port 7000 //端口7000,7002,7003 bind 本机ip //默认ip为127.0.0.1 需要改为其他节点机器可访问的ip 否则创建集群时无法访问对应的端口,无法创建集群 daemonize yes //redis后台运行 pidfile /var/run/redis_7000.pid //pidfile文件对应7000,7001,7002 cluster-enabled yes //开启集群 把注释#去掉 cluster-config-file nodes_7000.conf //集群的配置 配置文件首次启动自动生成 7000,7001,7002 把注释#去掉 cluster-node-timeout 15000 //请求超时 默认15秒,可自行设置 把注释#去掉 appendonly yes //aof日志开启 有需要就开启,它会每次写操作都记录一条日志 ``` - 在/usr/local/redis/bin目录下启动各个节点 ``` ./redis-server /usr/local/redis/redis-cluster/7004/redis.conf ./redis-server /usr/local/redis/redis-cluster/7005/redis.conf ./redis-server /usr/local/redis/redis-cluster/7006/redis.conf ``` - 检查redis启动情况 ``` ps -ef | grep redis //查看redis启动情况 netstat -tnlp | grep redis//查看redis端口开启情况 ``` 另一个服务器也执行相同操作,分别创建7001 7002 7003节点 ### 创建集群 ``` ./redis-cli --cluster create --cluster-replicas 1 10.104.132.37:7001 10.104.132.37:7002 10.104.132.37:7003 10.104.132.52:7004 10.104.132.52:7005 10.104.132.52:7006 ``` 其中,前三个 ip:port 为第一台机器的节点,剩下三个为第二台机器 ### 验证集群 在第一台机器上连接集群的7001端口的节点,在另外一台连接7005节点,连接方式为 ``` ./redis-cli -h 10.104.132.37 -c -p 7001 ./redis-cli -h 10.104.132.52 -c -p 7005 ``` ### Redis集群操作命令 关闭所有节点 ``` pkill -9 redis ```
寒烟濡雨
2021年9月22日 12:34
转发文档
收藏文档
上一篇
下一篇
手机扫码
复制链接
手机扫一扫转发分享
复制链接
关于 MrDoc
觅思文档MrDoc
是
州的先生
开发并开源的在线文档系统,其适合作为个人和小型团队的云笔记、文档和知识库管理工具。
如果觅思文档给你或你的团队带来了帮助,欢迎对作者进行一些打赏捐助,这将有力支持作者持续投入精力更新和维护觅思文档,感谢你的捐助!
>>>捐助鸣谢列表
微信
支付宝
QQ
PayPal
Markdown文件
分享
链接
类型
密码
更新密码