Chinaunix首页 | 论坛 | 博客
  • 博客访问: 2809456
  • 博文数量: 587
  • 博客积分: 6356
  • 博客等级: 准将
  • 技术积分: 6410
  • 用 户 组: 普通用户
  • 注册时间: 2008-10-23 10:54
个人简介

器量大者,福泽必厚

文章分类

全部博文(587)

文章存档

2019年(3)

2018年(1)

2017年(29)

2016年(39)

2015年(66)

2014年(117)

2013年(136)

2012年(58)

2011年(34)

2010年(50)

2009年(38)

2008年(16)

分类: LINUX

2015-11-26 18:38:15

Redis切换到codis:

遇到了3个问题

1:redis无法将数据无缝抽到codis ,解决方法如下:

./redis-port sync  -f 127.0.0.1:6379 -t 10.10.x.25:19000 -n 4 -p 32  --sockfile=test.tmp --filesize=32GB  加入蓝色字体部分问题即可解决。

2:由于研发同事没有将配置完全修改,导致一部分数据依然写到原来的redis库中,为什么开始测试的时候是正常的?原因:当时redis-port进程在运行,由于它是个后台进程,可以动态监控redis里面key的变化情况,只要有该进程在,redis key发生了任何变化,就可以将key同步到codis里面去,故就算相关配置不修改,也不会影响网站的运行,后来将redis-port进程给关闭了,导致写入到redis里面的Key(不修改codis配置,数据就写入到redis里面)无法被同步到codis,造成了问题,后来修改为codis配置后,程序即可正常

3:在配置codis时遇到如下的报错:

[error]: dashboard already exists: {"addr": "localhost:18087", "pid": 29496}

需要到zookeeper里面清理这个节点:

[root@yw-0-0 keepalived]# cat deletedashboard.sh 

/usr/local/zookeeper/bin/zkCli.sh  -server 127.0.0.1:2181 <

rmr /zk/codis/db_datagroup/dashboard

EOF

官方给出的解决方法如下:##我就是由于自己关机导致dashboard没有被删除,故不得已必须通过脚本自行删除!

无论是proxy还是dashboard,都会在zk上注册自己的节点,同时在程序正常退出的时候会删掉对应的节点,但如果异常退出或试用kill -9 {pid}就会导致zk的节点无法删除,在下一次启动的时候会报“zk: node already exists”的错误。

因此关闭服务的时候直接用kill {pid}不要-9,同时如果无法启动并且确认没有其他运行中的进程占用zk上的节点,可以在zk上手动删除/zk/codis/db_test/dashboard 或/zk/codis/db_test/fence/{host:port}.

创建zk节点的目的: zk节点的目的是防止起两个dashboard

阅读(3483) | 评论(0) | 转发(0) |
给主人留下些什么吧!~~