本站以分享各种运维经验和运维所需要的技能为主
《python零基础入门》:python零基础入门学习
《python运维脚本》: python运维脚本实践
《shell》:shell学习
《terraform》持续更新中:terraform_Aws学习零基础入门到最佳实战
《k8》从问题中去学习k8s
《docker学习》暂未更新
《ceph学习》ceph日常问题解决分享
《日志收集》ELK+各种中间件
《运维日常》运维日常
《linux》运维面试100问
《DBA》db的介绍使用(mysql、redis、mongodb...)
一、redis数据迁移(单节点扩展为集群)
0.前提
# 此操作针对生产中已存在数据,但是只是单节点环境,需要对redis扩展为集群,但是数据是直接存储为rdb文件,并没有集群的槽位的概念,所以需要借助工具实现。 · 可在集群已构建好的环境中实现,直接将单节点加入到集群中来
1.安装迁移工具
#1.安装依赖 [root@db02 ~]# yum install -y automake libtool autoconf bzip2#2.拉取工具 [root@db02 ~]# git clone https://github.com/vipshop/redis-migrate-tool #或者上传包#3.安装 [root@db02 ~]# cd redis-migrate-tool/ [root@db02 redis-migrate-tool]# autoreconf -fvi [root@db02 redis-migrate-tool]# ./configure [root@db02 redis-migrate-tool]# make
2.编写数据迁移脚本
[root@db02 redis-migrate-tool]# vim tocluster.sh[source] type: single servers:- 172.16.1.52:6381 # 单节点ip和端口[target] type: redis cluster servers:- 172.16.1.51:6379 # 集群的任意服务器ip和端口,主哦记得是。[common] listen: 0.0.0.0:8888 # 这里不用定义,按照这里默认即可
3.单节点生成数据
# 模拟单节点中存在的数据 [root@db03 ~]# vim data.sh #!/bin/bash for i in {1001..2000};doredis-cli -c -p 6381 -h 172.16.1.52 set k${i} v${i} done[root@db03 ~]# sh data.sh # 执行完后可以去redis中bgsave一下,生成rdb文件
4.迁移数据
# 使用此操作为关键,可将单节点中数据均匀分片到集群中,在生产中,如web端已经连接了此redis,可稍等数据分片完成后, 将地址修改为新集群redis地址。这里数据一直在迁移,就算有新的数据写入,也会帮助数据继续分片至集群中。 [root@db02 redis-migrate-tool]# src/redis-migrate-tool -c tocluster.sh &
二、数据审计
0.前提
数据审计一般为数据清理,如有些键值对占用空间较大,使用
1.安装工具
#1.安装依赖 [root@db02 ~]# yum install -y python-pip python-devel#2.安装工具(指定阿里源方式去安装 ) [root@db01 ~]# pip install rdbtools python-lzf -i http://mirrors.aliyun.com/pypi/simple/ --trusted-host mirrors.aliyun.com#3.下载或上传 [root@db02 ~]# git clone https://github.com/sripathikrishnan/redis-rdb-tools #或者上传 [root@db02 ~]# tar xf redis-rdb-tools.tar.gz#4.安装 [root@db02 ~]# cd redis-rdb-tools [root@db02 redis-rdb-tools]# python setup.py install
2.确认生成rdb文件
[root@db02 6381]# redis-cli -p 6381 127.0.0.1:6381> bgsave Background saving started 127.0.0.1:6381> quit [root@db02 6381]# ll total 44 -rw-r--r-- 1 root root 26206 Aug 7 15:18 dump.rdb
3.使用工具分析文件
#使用工具生成CSV表格,下载下来进行分析,可对键值对的字节数,占用长度进行分析 [root@db02 6381]# rdb -c memory ./dump.rdb -f memory.csv