页面“Zabbix 5 4 and 3 LTS安装入门教程”与“Redis批量删除key”之间的差异

来自linux中国网wiki
(页面间的差异)
跳到导航 跳到搜索
 
 
第1行: 第1行:
==站内资源==
+
[[category:ops]] [[category:redis]] 
[[Zabbix 调用API 批量添加主机]]
 
== zabbix server ==
 
===pre ===
 
这些是官网官方安装文档,记得一定要看
 
  
https://www.zabbix.com/documentation/3.0/manual/installation/install
+
[[Redis-bigkeys]]
 
+
=redis cluster 批量删除key=
https://www.zabbix.org/wiki/InstallOnCentOS_RHEL
 
 
 
<pre>wget -c https://jaist.dl.sourceforge.net/project/zabbix/ZABBIX%20Latest%20Stable/3.0.8/zabbix-3.0.8.tar.gz
 
wget -c http://tenet.dl.sourceforge.net/project/zabbix/ZABBIX%20Latest%20Stable/2.2.13/zabbix-2.2.13.tar.gz</pre>
 
 
 
===#配置php变量===
 
<pre>vi /etc/php.ini
 
date.timezone = Asia/Shanghai
 
post_max_size = 32M
 
max_execution_time = 300
 
max_input_time = 300
 
注:更改完之后需要重启nginx和php</pre>
 
 
 
===#安装zabbix所需的组件 ===
 
<pre>yum -y install net-snmp-devel curl-devel
 
#yum -y install curl curl-devel net-snmp net-snmp-devel perl-DBI php-gd php-xml php-bcmath
 
groupadd zabbix && useradd -g zabbix zabbix
 
tar xvf zabbix-3.0.8.tar.gz && cd zabbix-3.0.8
 
#tar xvf zabbix-2.2.13.tar.gz && cd zabbix-2.2.13
 
 
 
#./configure –enable-server –enable-agent –with-mysql –enable-ipv6 –with-net-snmp –with-libcurl –with-libxml2
 
 
 
##或者默认安装路径 make是不用的
 
./configure --sysconfdir=/etc/zabbix --enable-server --enable-proxy --enable-agent --with-mysql=/usr/local/mysql/bin/mysql_config --with-net-snmp --with-libcurl --with-libxml2 && make install
 
</pre>
 
===添加zabbix服务对应的端口(可以省略,但是官方建议有)===
 
<pre>cat >>/etc/services<< EOF
 
zabbix-agent 10050/tcp #Zabbix Agent
 
zabbix-agent 10050/udp #Zabbix Agent
 
zabbix-trapper 10051/tcp #Zabbix Trapper
 
zabbix-trapper 10051/udp #Zabbix Trapper
 
EOF</pre>
 
 
 
===配置文件===
 
<pre>##好像是这个起效果的呢 –sysconfdir=/etc/zabbix 有这个,不用下面的命令了
 
#vim /usr/local/etc/zabbix_server.conf
 
#cd zabbix-2.0.7
 
 
 
#mkdir /etc/zabbix
 
#cp conf/*.conf /etc/zabbix
 
 
 
mkdir /var/log/zabbix ;chown zabbix:zabbix /var/log/zabbix;
 
 
 
 
 
#zabbix web代码
 
mkdir -p /data/www/zabbix;
 
cp -r frontends/php/* /data/www/zabbix
 
 
 
修改zabbix连接的数据库的用户名和密码
 
vi /etc/zabbix/zabbix_server.conf
 
 
 
DBHost=127.0.0.1
 
DBName=zabbix
 
DBUser=zabbix
 
DBPassword='123'
 
DBPort=3306 #如果数据库是用sock文件的方式,这里可以是sock文件的路径
 
 
 
添加数据库Lib文件位置到/etc/ld.so.conf中,并使其生效
 
echo ‘/usr/local/mysql/lib/mysql/’ >> /etc/ld.so.conf
 
 
 
ldconfig
 
 
 
为zabbix的启动、关闭和重启的脚本文件做链接,方便系统可以找得到
 
 
 
给zabbix服务端程序做软链接 我用默认的config 应该是不用的
 
cd /usr/local/zabbix/bin/
 
for i in *;do ln -s /usr/local/zabbix/bin/${i} /usr/bin/${i};done
 
cd /usr/local/zabbix/sbin/
 
for i in *;do ln -s /usr/local/zabbix/sbin/${i} /usr/sbin/${i};done
 
 
 
拷贝zabbix服务端和客户端启动脚本到/etc/init.d目录下.
 
cd misc/init.d/
 
cp fedora/core/zabbix_server /etc/init.d/
 
cp fedora/core/zabbix_agentd /etc/init.d/
 
chmod +x /etc/init.d/zabbix_agentd
 
chmod +x /etc/init.d/zabbix_server</pre>
 
 
 
===3 Create Zabbix database===
 
<pre>SQL scripts are provided for creating database schema and inserting the dataset
 
#https://www.zabbix.com/documentation/3.0/manual/appendix/install/db_scripts
 
#https://www.zabbix.com/documentation/2.2/manual/appendix/install/db_scripts
 
 
 
mysql>create database zabbix character set utf8 collate utf8_bin;;grant all on zabbix.* to zabbix@localhost identified by '123';flush privileges;
 
 
 
将zabbix源码包中的数据导入到新建的zabbix数据库
 
##这个和老的版本有点不同 第一个是zabbix的数据库表结构,要先导入。
 
 
 
. /etc/profile
 
cd ../..
 
mysql -uroot -p'evan' zabbix< database/mysql/schema.sql
 
mysql -uroot -p'evan' zabbix< database/mysql/images.sql
 
mysql -uroot -p'evan' zabbix< database/mysql/data.sql
 
 
 
vi /etc/init.d/zabbix_server # 的可以不改,修改一下变量的值 因为我是默认用 configure
 
# base zabbix dir
 
BASEDIR=/usr/local
 
# binary file
 
ZABBIX_SUCKERD=$BASEDIR/sbin/zabbix_server<pre>
 
 
 
===fping的安装和使用详解===
 
<pre>http://rickie622.blog.163.com/blog/static/2123881120121121111720941/
 
http://netsecurity.51cto.com/art/201101/242200.htm
 
#当然 下载zip包也是可以的
 
git clone https://github.com/schweikert/fping.git
 
cd fping
 
./autogen.sh
 
./configure
 
make -j2 && make install
 
 
 
#修改一下配置文件
 
vim /etc/zabbix_server.conf
 
#vim /usr/local/etc/zabbix_server.conf
 
FpingLocation=/usr/local/sbin/fping</pre>
 
 
 
===启动zabbix,并且添加开机自启动===
 
<pre>service zabbix_server start
 
service zabbix_agentd start #启动服务
 
 
 
chkconfig zabbix_server on
 
chkconfig zabbix_agentd on #开机自启动
 
 
 
在Nginx服务中添加zabbix虚拟主机
 
#vim /usr/local/nginx/conf/vhosts/monitor.conf
 
 
 
这些都不要,不然没有web安装向导的
 
#cd zabbix/conf
 
#cp zabbix.conf.php.example zabbix.conf.php ;
 
#chmod 777 zabbix.conf.php
 
 
 
iptables -I INPUT -p tcp –dport 80 -j ACCEPT
 
 
 
zabbix server is not running
 
Zabbix Server is not running: the information displayed may not be current
 
http://song49.blog.51cto.com/4480450/1200151</pre>
 
 
 
===(4)设置zabbix服务IP和端口,name可以忽略===
 
<pre>
 
ps:
 
post_max_size = 16M
 
PHP option “max_execution_time” 30 300 Fail
 
PHP option “max_input_time” 60 300 Fail
 
PHP option “date.timezone” unknown Fai
 
date.timezone = Asia/Shanghai
 
 
 
PHP option “always_populate_raw_post_data” must be set to “-1”
 
 
 
port 10051
 
 
 
Zabbix frontend is ready! The default user name is Admin, password zabbix.</pre>
 
===超级用户密码修改 ===
 
 
<pre>
 
<pre>
2.2 用户名第一个字母要大写 也就是Admin
+
#June 19 2020  有空结果一下原来的版本再优化一下
默认的用户名:admin 密码:zabbix
+
cat redis_del_key.sh
 
+
#!/bin/bash
哪里改登录用户和密码呢
+
# Usage
use zabbix;
+
#redis_list=("host:post" "host:post")
select userid,alias,passwd from users; #查看
 
 
 
+--------+------------+----------------------------------+
 
| userid | alias      | passwd                          |
 
+--------+------------+----------------------------------+
 
|      1 | Admin      | 5fce1b3e34b520afeffb37ce08c7cd66 |
 
  
 +
redis_list=( "172.16.200.12:7003" "172.16.200.7:7004" "172.16.200.7:7005" "172.16.200.13:7000" "172.16.200.13:7001" "172.16.200.12:7002")
 +
#redis_list=( "172.16.200.13:7000" "172.16.200.13:7001" "172.16.200.12:7002")
 +
#redis_list=("172.16.200.7:7004")
 +
password="3636password"
  
#如果为zabbix 3.0 直接这样就行了
+
for info in ${redis_list[@]}
update users set passwd=MD5('12345') where userid=1;
+
    do
 +
        echo "开始执行:$info"  
 +
        ip=`echo $info | cut -d : -f 1`
 +
        port=`echo $info | cut -d : -f 2`
  
 +
      for  loop in  `cat key.txt`
 +
        do
 +
        #echo $loop  |xargs -t -n1 redis-cli -c  -h $ip -p $port -a $password -c del
 +
        echo $loop  |xargs -t -n1 redis-cli -c  -h $ip -p $port -a $password -c keys
 +
        done
  
#zabbix 2.x
+
    done
重新开个终端,生成一个MD5加密的密码,这里密码设置的是redhat
+
    echo "success done完成"
  
[root@localhost ~]# echo -n 12345678 |openssl md5 #-n就表示不输入回车符,不加-n,否则就不是这个结果了。
+
# cat key.txt
(stdin)= 25d55ad283aa400af464c76d713c07ad
+
infnce:wonderfulCache
 +
ext_info
  
接着上面的为admin用户设定一个密码
 
  
mysql> update users set passwd='25d55ad283aa400af464c76d713c07ad' where userid = '1';
 
#或者直接使用update users set passwd=md5(“12345678”) where userid=’1′;
 
Query OK, 1 row affected (0.01 sec)
 
Rows matched: 1 Changed: 1 Warnings: 0
 
  
mysql> flush privileges;
+
#原来的版本
Query OK, 0 rows affected (0.01 sec)
 
  
mysql> quit
+
del hello_user_*
Bye
 
  
zabbix登陆账户admin密码修改
+
redis-cli keys
http://pvbutler.blog.51cto.com/7662323/1734003
 
  
yum install ntp ntpdate -y
 
chkconfig ntpd on
 
/etc/init.d/ntpd start
 
  
*/30 * * * * /usr/sbin/ntpdate pool.ntp.org
+
redis-cli keys "hello_user_*" | xargs redis-cli del
  
在29行这后添加
 
sed -i ’29a user=mysql’ /etc/my.cnf
 
sed -i ’29a character-set-server=utf8′ /etc/my.cnf
 
sed -i ’29ainnodb_file_per_table=1′ /etc/my.cnf
 
重启mysqld</pre>
 
  
===防火墙设置 ===
+
./redis-cli -h IP -p PORT -a PASSWORD keys 'key*' | xargs  ./redis-cli -h IP  -p PORT -a PASSWORD del
<pre>这个要看一下先,尽量用严格些的防火墙设置
 
  
#on zabbix-agent
+
redis-cli    -c  -h    172.31.22.218  -p 7000  -a pass keys 'hello_user_*'| xargs -i redis-cli    -c  -h    172.31.22.218  -p 7000  -a pass  del {}
 +
redis-cli    -c  -h    172.31.22.218  -p 7001  -a pass keys 'hello_user_*'| xargs -i redis-cli    -c  -h    172.31.22.218  -p 7001  -a pass  del {}
  
iptables -A INPUT -s zabbixserverip -p tcp -m tcp --dport 10050 -m comment --comment "zabbix_server listen " -j ACCEPT
+
redis-cli    -c  -h    172.31.16.135 -p 7002  -a pass keys 'hello_user_*'| xargs -i  redis-cli    --h    172.31.16.135  -p 7002 -a pass  del {}
#iptables -A INPUT -s zabbixserverip -p tcp -m tcp --dport 10050 -m comment --comment "zabbix_agentd listen " -j ACCEPT
+
redis-cli    --h    172.31.16.135 -p 7003  -a pass keys 'hello_user_*'| xargs  -i redis-cli    --h    172.31.16.135  -p 7003 -a pass  del {}
  
#这下面的防火墙rule 不要用
+
redis-cli    --h    172.31.23.43  -p 7004  -a pass keys 'hello_user_*'| xargs -i  redis-cli    --h    172.31.23.43  -p 7004 -a pass  del {}
vi /etc/sysconfig/iptables
+
redis-cli    --h    172.31.23.43  -p 7005  -a pass keys 'hello_user_*'| xargs -i  redis-cli    --h    172.31.23.43  -p 7005 -a pass  del {}
-A INPUT -m state –state NEW -m tcp -p tcp –dport 22 -j ACCEPT
 
-A INPUT -m state –state NEW -m tcp -p tcp –dport 80 -j ACCEPT
 
-A INPUT -m state –state NEW -m tcp -p tcp –dport 10050 -j ACCEPT
 
-A INPUT -m state –state NEW -m tcp -p tcp –dport 10051 -j ACCEPT
 
  
/etc/init.d/iptables restart
 
  
中文在右上角的用户里面哦
 
  
Starting php_fpm /usr/local/php/bin/php-cgi: error while loading shared libraries: libiconv.so.2: cannot open shared object file: No such file or directory
+
#!/bin/bash
failed
+
redis_comm=/usr/local/redis-5.0.3/bin/redis-cli
 +
redis_ser01=192.168.50.175
 +
redis_ser02=192.168.50.174
 +
$redis_comm -c -h $redis_ser01  -p 7001 -a xxx  keys $1 | xargs -i $redis_comm -c -h $redis_ser01  -p 7001 -a xxx del {}
 +
$redis_comm -c -h $redis_ser02  -p 7001 -a xxx  keys $1 | xargs -i $redis_comm -c -h $redis_ser02  -p 7001 -a xxx del {}
  
by default install the daemon binaries (zabbix_server, zabbix_agentd, zabbix_proxy) in /usr/local/sbin and the client binaries (zabbix_get, zabbix_sender) in /usr/local/bin.</pre>
+
运行:
  
===4.0图像显示字体乱码的解决方法===
+
./redis_del_key.sh  匹配的key*
<pre>
 
  
#传输字体
+
err  
  cp  /root/STKAITI.TTF  /usr/share/zabbix/assets/fonts
 
 
 
#修改 指定的字体 或者直接把你的家体改成和默认同名,而默认的那个先删除 连重启都不用 反正在docker
 
  grep  -rn  BX_GRAPH_FONT_NAM  /usr/share/zabbix/include/defines.inc.php
 
67:define('ZBX_GRAPH_FONT_NAME', 'DejaVuSans'); // font file name
 
  
修改
+
-i {} 都是一定要的
define('ZBX_GRAPH_FONT_NAME',          'simkai'); 
 
</pre>
 
===zabbix-get===
 
<pre>
 
root@zabbix-server ~]#zabbix_get -s 10.3.10.139 -k "system.hostname"
 
dev-hello-market
 
  
 +
redis-cli -n 0 keys "test*" | xargs redis-cli -n 0 del
 +
(error) CROSSSLOT Keys in request don't hash to the same slot
  
不过使用zabbix_get时必须开启客户端被动模式,要求暴露客户端监听端口。
 
 
</pre>
 
</pre>
[https://blog.csdn.net/cx55887/article/details/83818696 自动化监控--zabbix-get安装使用详解]
 
 
==第二 agent==
 
<pre>
 
#4.0 #centos7 快速安装和自动配置 2019年 8月23日 星期五 11时45分01秒 CST
 
 
#国外
 
rpm -ivh http://repo.zabbix.com/zabbix/4.0/rhel/7/x86_64/zabbix-release-4.0-1.el7.noarch.rpm
 
 
#国内
 
https://mirrors.aliyun.com/zabbix/zabbix/4.0/rhel/7/x86_64/zabbix-release-4.0-1.el7.noarch.rpm
 
 
yum install zabbix-agent -y
 
 
yum install ntp  -y
 
timedatectl set-ntp true
 
 
HOSTNAME=prod-java-02
 
 
#config
 
sed -i "s/^Server=127.0.0.1/Server=172.16.1.9/ " /etc/zabbix/zabbix_agentd.conf
 
 
sed -i "s/^ServerActive=127.0.0.1/ServerActive=172.16.1.9/"  /etc/zabbix/zabbix_agentd.conf
 
sed  -i "s/^Hostname=Zabbix server/Hostname=test-market/"  /etc/zabbix/zabbix_agentd.conf
 
 
 
 
#这个用了HOSTNAME 变量  而上面的要指定hostname
 
sed  -i 's/127.0.0.1/23.67.81.95/g'  /etc/zabbix/zabbix_agentd.conf
 
sed  -i "s/Hostname=Zabbix server/Hostname=${HOSTNAME}/g"  /etc/zabbix/zabbix_agentd.conf
 
grep "^\s*[^# \t].*$" /etc/zabbix/zabbix_agentd.conf
 
 
systemctl  enable  zabbix-agent.service
 
systemctl restart zabbix-agent
 
 
 
下面是老的信息 和解说
 
 
cat /etc/zabbix/zabbix_agentd.conf
 
Hostname=主机名
 
Server=zabbix server ip
 
LogFile= 可以不改
 
 
##最好这样3个
 
Server=10.6.1.181
 
ServerActive=10.6.1.181
 
Hostname=zabbix-client-1
 
 
 
#rpm -ivh http://repo.zabbix.com/zabbix/3.0/rhel/6/x86_64/zabbix-release-3.0-1.el6.noarch.rpm
 
#rpm -ivh http://repo.zabbix.com/zabbix/2.2/rhel/6/x86_64/zabbix-release-2.2-1.el6.noarch.rpm
 
#http://repo.zabbix.com/zabbix/2.0/rhel/5/x86_64/zabbix-release-2.0-1.el5.noarch.rpm
 
 
 
rpm -ivh http://repo.zabbix.com/zabbix/3.0/rhel/7/x86_64/zabbix-release-3.0-1.el7.noarch.rpm
 
 
</pre>
 
===agent on debian===
 
<pre>
 
#用系统的源
 
apt-get install zabbix-agent
 
 
 
#config 其实和yum的也一样 只是启动不一样而已
 
HOSTNAME=wiki
 
sed -i "s/^Server=127.0.0.1/Server=207.148.106.229/ " /etc/zabbix/zabbix_agentd.conf
 
 
sed -i "s/^ServerActive=127.0.0.1/ServerActive=207.148.106.229/"  /etc/zabbix/zabbix_agentd.conf
 
sed  -i "s/^Hostname=Zabbix server/Hostname=wiki/"  /etc/zabbix/zabbix_agentd.conf
 
 
grep "^\s*[^# \t].*$" /etc/zabbix/zabbix_agentd.conf
 
 
service zabbix-agent start
 
 
 
zabbix_get -s 138.68.59.0 -k "system.hostname"
 
 
 
#用zbx的源
 
  https://repo.zabbix.com/zabbix/4.0/debian/pool/main/z/zabbix-release/zabbix-release_4.0-3+buster_all.deb       
 
dpkg -i zabbix-release_stretch_all.deb
 
# apt-get update
 
</pre>
 
https://www.zabbix.com/documentation/3.2/manual/installation/install_from_packages/repository_installation
 
 
https://www.zabbix.com/documentation/4.0/zh/manual/installation/install_from_packages/rhel_centos#%E5%AE%89%E8%A3%85_agent
 
 
==docker zabbix==
 
 
[https://juejin.im/entry/57be598d0a2b58006cd17c0f 用 Zabbix 和 Docker 搭建监控平台]
 
 
== 故障及回顾==
 
<pre>
 
问题1.  zabbix server 没有打开 10051端口 前端图形没显示
 
 
版本zabbix 2.2
 
 
 
 
没有看到 10051 是因为 
 
 
DBPassword=‘123’ 改为 DBPassword=123
 
 
 
日志查看
 
tail  /tmp/zabbix_server.log
 
 
14659:20170525:171042.257 [Z3001] connection to database 'zabbix' failed: [1045] Access denied for user 'zabbix'@'localhost' (using password: YES)
 
 
 
正确如下
 
[root@ zabbix]# netstat  -nlpt
 
Active Internet connections (only servers)
 
Proto Recv-Q Send-Q Local Address              Foreign Address            State      PID/Program name 
 
tcp        0      0 0.0.0.0:10051
 
</pre>
 
 
==参考==
 
 
[https://www.howtoforge.com/tutorial/install-zabbix-monitoring-server-and-agent-on-debian-9/ Install Zabbix Monitoring Server and Agent on Debian]
 
 
 
[http://blog.51cto.com/guoxh/2089204 Zabbix 3.0 详解:从添加主机到发送报警通知]
 
  
[https://my.oschina.net/zhouyuntai/blog/1788830 Zabbix监控系统 (3) 之 添加自定义监控项目、配置邮件告警、测试告警]
+
=see also=
  
http://blog.linuxchina.net/?p=1711
 
  
[https://www.cnblogs.com/enjoycode/p/zabbix_3_installation_on_centos_7.html  Zabbix 3.0 with apache安装笔记]
+
[https://blog.csdn.net/yangyangye/article/details/100523387 redis集群批量删除模糊key shell脚本]
  
[https://www.cnblogs.com/zhenglisai/p/6547402.html 【zabbix】自定义监控项key值]
+
[https://www.cnblogs.com/feng0520/p/11067025.html redis cluster集群批量删除中的key]
  
 +
[https://my.oschina.net/u/1255588/blog/1563672 Redis集群批量删除key]
  
[https://blog.csdn.net/zhengchaooo/article/details/79499991 zabbix添加自定义py脚本]
+
[https://blog.csdn.net/zj20142213/article/details/80879744  redis集群批量删除指定的key]
  
 [[category:zabbix]]
+
https://blog.csdn.net/qq_36090419/article/details/80537684

2020年6月22日 (一) 11:37的版本


Redis-bigkeys

redis cluster 批量删除key

#June 19 2020   有空结果一下原来的版本再优化一下 
cat redis_del_key.sh
#!/bin/bash
# Usage 
#redis_list=("host:post" "host:post")

redis_list=( "172.16.200.12:7003" "172.16.200.7:7004" "172.16.200.7:7005" "172.16.200.13:7000" "172.16.200.13:7001" "172.16.200.12:7002")
#redis_list=( "172.16.200.13:7000" "172.16.200.13:7001" "172.16.200.12:7002")
#redis_list=("172.16.200.7:7004")
password="3636password"

for info in ${redis_list[@]}
    do
        echo "开始执行:$info"  
        ip=`echo $info | cut -d : -f 1`
        port=`echo $info | cut -d : -f 2`

      for  loop in  `cat key.txt`
         do
         #echo $loop  |xargs -t -n1 redis-cli -c  -h $ip -p $port -a $password -c del
         echo $loop  |xargs -t -n1 redis-cli -c  -h $ip -p $port -a $password -c keys 
         done

    done
    echo "success done完成"

# cat key.txt 
infnce:wonderfulCache
ext_info



#原来的版本

del hello_user_* 

redis-cli keys


 redis-cli keys "hello_user_*" | xargs redis-cli del


./redis-cli -h IP -p PORT -a PASSWORD keys 'key*' | xargs  ./redis-cli -h IP  -p PORT -a PASSWORD del

redis-cli    -c  -h    172.31.22.218   -p 7000  -a pass keys 'hello_user_*'| xargs -i redis-cli    -c  -h    172.31.22.218   -p 7000  -a pass  del {}
redis-cli    -c  -h    172.31.22.218   -p 7001  -a pass keys 'hello_user_*'| xargs -i redis-cli    -c  -h    172.31.22.218   -p 7001  -a pass  del {}

redis-cli    -c  -h    172.31.16.135  -p 7002  -a pass keys 'hello_user_*'| xargs -i  redis-cli    -c  -h    172.31.16.135   -p 7002 -a pass  del {}
redis-cli    -c  -h    172.31.16.135  -p 7003  -a pass keys 'hello_user_*'| xargs  -i redis-cli    -c  -h    172.31.16.135   -p 7003 -a pass  del {}

redis-cli    -c  -h     172.31.23.43   -p 7004  -a pass keys 'hello_user_*'| xargs -i  redis-cli    -c  -h    172.31.23.43   -p 7004 -a pass  del {}
redis-cli    -c  -h     172.31.23.43   -p 7005  -a pass keys 'hello_user_*'| xargs -i  redis-cli    -c  -h    172.31.23.43   -p 7005 -a pass  del {}



#!/bin/bash
redis_comm=/usr/local/redis-5.0.3/bin/redis-cli
redis_ser01=192.168.50.175
redis_ser02=192.168.50.174
$redis_comm -c -h $redis_ser01  -p 7001 -a xxx  keys $1 | xargs -i $redis_comm -c -h $redis_ser01  -p 7001 -a xxx del {}
$redis_comm -c -h $redis_ser02  -p 7001 -a xxx  keys $1 | xargs -i $redis_comm -c -h $redis_ser02  -p 7001 -a xxx del {}

运行:

./redis_del_key.sh  匹配的key*

err  

-i  {} 都是一定要的 

redis-cli -n 0 keys "test*" | xargs redis-cli -n 0 del
(error) CROSSSLOT Keys in request don't hash to the same slot

see also

redis集群批量删除模糊key shell脚本

redis cluster集群批量删除中的key

Redis集群批量删除key

redis集群批量删除指定的key

https://blog.csdn.net/qq_36090419/article/details/80537684