Articles of redis

Redis复制中的静态主机

我正在运行复制的Redis,其中包括一个主站和一个从站。 我的目标是实现一个复制(使用Redis哨兵),在主站closures的情况下从站成为主站,但是当主站恢复时,还会将旧主站升级回来。 初始设置很简单。 我在主服务器上使用一个哨兵,在服务器上使用两个哨兵。 在两个法定数量的情况下,从服务器上的两个哨兵在主服务器不可用时促使从服务器进行主服务器。 当老主人回来,它重新连接到老奴隶(已被提升主),并成为其奴隶。 之后,照常营业。 除了我想推动奴隶(老主人)掌握原来布局的方式。 这可以使用redis-cli手动完成(因此与cron,我认为),但有没有办法用哨兵configuration或除蛮力cronjob以外的其他方法吗? 我的意图基本上是有一个由从机备份的静态主机,一旦原来的主机再次可用,它将返回主机状态。

如何与厨师安装Redis?

我正在尝试与厨师安装Redis。 我想,这很容易,因为我只想要默认configuration。 所以,我添加到一个Berksfile: 网站:opscode 食谱“apt” 菜谱“节点” cookbook'rvm',:git =>“https://github.com/fnichol/chef-rvm” 菜谱“runit” 食谱“redis” 然后,我运行:stream浪汉提供 但是我得到这个: 2013-12-11T21:18:23 + 00:00] DEBUG:chef_gem [rvm]已经安装 – 无事可做 [2013-12-11T21:18:23 + 00:00] DEBUG:加载配方rvm :: vagrant via include_recipe [2013-12-11T21:18:23 + 00:00] DEBUG:在食谱rvmfindstream浪食谱 [2013-12-11T21:18:23 + 00:00]警告:从先前资源(CHEF-3694)克隆组[rvm]的资源属性 [2013-12-11T21:18:23 + 00:00]警告:上一组[rvm]:/tmp/vagrant-chef-1/chef-solo-1/cookbooks/rvm/recipes/system.rb:33:在`from_file' [2013-12-11T21:18:23 + 00:00]警告:当前组[rvm]:/tmp/vagrant-chef-1/chef-solo-1/cookbooks/rvm/recipes/vagrant.rb:34:在`from_file' [2013-12-11T21:18:23 + 00:00] DEBUG:通过include_recipe加载配方redis [2013-12-11T21:18:23 + 00:00] DEBUG:在食谱redis中发现食谱默认 [2013-12-11T21:18:23 + 00:00] DEBUG:通过include_recipe加载配方metachef [2013-12-11T21:18:23 + 00:00] […]

RedisToGo – 远程Redis服务器。 何时使用?

我喜欢依靠托pipe我的数据的第三方服务的概念,但通过远程托pipe使用超快NoSQL存储的重点是什么? 它可能在不同的数据中心甚至国家! 与本地存储相比,networking通话总是花费很多。 还是应该使用这样的服务,以防万一我不经常查询它?

需要采取哪些步骤才能确保超过1024个客户端可以连接到redis?

我需要一次将超过1024个客户端连接到单个redis实例。 我的redis进程以ubuntu用户身份运行。 我编辑了/etc/security/limits.conf来指定: ubuntu soft nofile 65535 ubuntu hard nofile 65535 我也确保redis.conf中的maxclients参数被注释掉了。 我必须采取哪些其他步骤来确保超过1024个客户端可以连接到我的Redis实例? 谢谢! 编辑2014年8月:看到这个问题的步骤,你将需要做的,以使这个工作在Ubuntu 2014.04 LTS: 为什么在更新到limits.conf之后,redis会报告1024个文件的限制?

使用IPTablesclosures某些端口上的所有_existing_ TCP连接?

假设我有一个快速的networking分区testing,我想运行它,比如断开一个ReDiS集群的两半 ,我想用IPTables来暂时断开一组服务器与其他组的连接。 这与fedora邮件列表上提出的问题非常相似: https://www.redhat.com/archives/rhl-list/2006-January/msg03380.html 如果我没有看到一个已经存在的EXISTING,RELATED的iptables –list的输出,我是否必须担心这个? 在fedora邮件列表上的下面的答案似乎是说,是的,现有的连接将closures,如果我没有看到一个存在EXISTING,RELATED的输出从iptables –list 。 https://www.redhat.com/archives/rhl-list/2006-January/msg03396.html 对于那些自反的旗手来说,这个问题,更重要的是,它的答案将会讨论IPTable在更新规则时是否会放弃现有的联系。 就我所知,在这个网站上,关于这个主题的其他问题并没有解决现有的和尝试的连接之间的差异: 如何closures除IPTABLES列出的所有networking的某些TCP / UDP端口(传入) 我在以下URL链接的页面中find了Googlesearch的大部分研究结果: https://duckduckgo.com/?q=iptables+close+existing+connections

将Redis作为OS X的服务与Homebrew一起启动

我通过brew install redis安装了Redis,并尝试通过以下方式将其添加为服务: ln -sfv /usr/local/opt/redis/*.plist ~/Library/LaunchAgents launchctl load ~/Library/LaunchAgents/homebrew.mxcl.redis.plist 这些没有产生任何错误; 然而,看起来Redis没有启动。 如果我运行redis-cli ping ,我回来了Could not connect to Redis at 127.0.0.1:6379: Connection refused 。 我可以在另一个terminal窗口中手动运行redis-server ,但是我想让Redis在login时自动启动。 我也尝试卸载Redis,重新安装它,并使用brew services来pipe理服务( brew services适用于MongoDB和Cassandra的安装)。 我还没有看到别人有这个问题,所以我不知道如何诊断。 如果有人有任何build议,非常感谢!

我是否使用太多内存? (带有Resque的EC2上的Rails)

我正在研究Rails应用程序的内存使用情况(它通过Resque使用后台进程),而且由于“有多less工作人员太多”这个问题的常见问题是“testing和看见”,所以我运行了一些内存命令如果有人可以帮助确定内存使用是否足够高,或者我仍然可以添加一些额外的工人。 所以(这是所有的最大负载下): $ free -t -m total used free shared buffers cached Mem: 1756 1532 223 0 12 229 -/+ buffers/cache: 1291 464 Swap: 895 10 885 Total: 2652 1543 1108 $ vmstat procs ———–memory———- —swap– —–io—- -system– —-cpu—- rb swpd free buff cache si so bi bo in cs us sy id wa 0 […]

如何configurationredis以允许我通过SOCKS代理进行连接?

我的远程机器上运行了一个redis服务器。 它目前只设置绑定127.0.0.1。 我可以用ssh -D 9999 mydomainwhatever.net打开一个SOCKS代理,然后configuration我的操作系统的networking首选项来使用这个代理来连接所有的连接。 然后可以使用在本地机器上运行的redis-cli连接到远程机器上运行的redis服务器? 我试图使用redis-py作为客户端,但这与我的想法无关。 我不想把redis暴露给互联网。

在服务器上安装多个redis实例是个好主意吗?

正如标题所说。 我正在考虑使用redis创build一个状态服务农场,我想要处理多个“区域” – 这样,如果一个服务closures,只有一个区域应该受到影响。 这看起来似乎是一个好主意,但我宁愿事先知道如果: 安装redis的多个并行实例是个好主意? Redis只将数据存储在RAM中? 典型的redis实例使用多less内存? (我知道这可能是一个反复的问题,但是我喜欢一些猜测)

Cron没有将Redis置于从属模式

我的组织有Redis以主/从configuration运行,使用Keepalived在两者之间切换。 发现当Slave实例因某种原因死亡时,Keepalived不会重新启动它。 我开始写一个cron作业来检查redis是否正在运行,如果从站死了,重新启动它。 #!/bin/bash #redis_cron_restart.sh ######variables######## REDIS_IP="10.19.105.229" REDIS_CONF="/var/lib/redis/redis.conf" #Check to see if Redis is running killall -0 redis-server if [ $? -eq 1 ] then date >> /var/lib/redis/log.txt echo redis-server not running. Checking redis master >> /var/lib/redis/log.txt redis-cli -h ${REDIS_IP} PING if [ $? -eq 1 ] then echo redis master not running. Doing nothing. […]