タグ

Redisとsentinelに関するyassのブックマーク (10)

  • ElastiCache for Redisの新機能をためしてみた - クックパッド開発者ブログ

    インフラストラクチャー部 星野(@con_mame)です。 クックパッドでは、AWSを活用してサービスを行っています。 現在クックパッドでは、各種キャッシュにMemcachedやRedisを使用しています。 しかし、用途の多様化やアクセス数の増加などでこれらのサーバのインスタンス数が増加し管理コストが増加してきています。 特にRedisサーバのインスタンス数が増加しており、AWSのサービスの中でもキャッシュのサービスを提供しているElastiCache for Redisへの置換えを検討しています。 ElastiCache for Redisは、一部管理系のコマンドがrenameされており使用出来ませんが、通常のRedisと同じ物で、現在Version 2.6.13と2.8.6が使用出来ます。 SlaveにあたるものはReplication Groupという形で指定でき、Replicati

    ElastiCache for Redisの新機能をためしてみた - クックパッド開発者ブログ
    yass
    yass 2014/05/23
    " SlaveはELBにMasterはHeartbeatによるENIの移動を行なうことでFailover / 弊社でElastiCacheに切り替えが難しい理由の1つにMaintenance Windowがあります。最大30分nodeが停止する可能性があるので、そこをうまく扱う必要があります。"
  • GitHub - areina/smitty: Agent for twemproxy to work with a redis sentinel (master-slave) stack

    yass
    yass 2014/04/27
    " Smitty is an agent written in Go language fortwemproxy configured to work with redis sentinel. Smitty's purpose is to extend the HA capabilities of twemproxy even after a redis node has failed. "
  • Redis 2.8 の Sentinel の動きを検証してみた - chrone's external storage

    Redis 2.8 の redis-sentinel によるレプリケーションの自動フェイルオーバーについて、 比較的発生しそうな障害を想定して動作検証してみました。 結論から redis-server の自動再起動を構成している場合は要注意。 daemontools とか。 Master が落ちた後すぐ(例えば数秒)に再起動してきた場合、 再び Master としてレプリケーションに参加します。 よって、Master 再起動の前後でデータに差異があった場合でも、 再起動後のデータをもとに同期される為、データが破壊される可能性があります。 これを回避する為には、Sentinel により sdown/odown として認識されるのを待ってからインスタンスを復帰させるようにします。 復帰が早すぎると、障害(sdown/odown)ではなく再起動(reboot)と認識します。 レプリケーションの再

    yass
    yass 2014/03/01
    " 自動フェイルオーバーについて、 比較的発生しそうな障害を想定して動作検証してみました。/ 結論から / redis-server の自動再起動を構成している場合は要注意。"
  • Redis Sentinel で冗長構成を組む際の注意点 : DSAS開発者の部屋

    KVS界隈ではすっかりおなじみ(?)のRedisですが、当社でも徐々にそのニーズが高まってきました。 標準機能として、レプリケーション、Pub/Sub、ソート等の便利機能が満載のRedisですが、サービスに投入する際に冗長構成をどう組むかといった点が気になっている方もいるのではないでしょうか。 まだまだ検証中ではあるのですが、Redisに実装されているRedisSentinelを用いて冗長構成を組んだ際にハマった所をご紹介したいと思います。 RedisSentinelとは Redisに標準実装されている機能の一つで、Redisのステータス監視、通知、自動フェイルオーバーが行なえます。 詳細な仕様、設定に関しては以下のドキュメントをご確認下さい。 http://redis.io/topics/sentinel RedisSentinel導入前の構成 特に何の変哲も無い構成です。 Redisサ

    Redis Sentinel で冗長構成を組む際の注意点 : DSAS開発者の部屋
  • RedisのLuaで時間のかかる処理をするとどうなるか? - (ひ)メモ

    Redis は基的にシングルスレッド、イベントドリブンモデルなので、時間のかかるLua スクリプトを実行したらどうなるかというのは想像に難くないのですが確認してみました。 Redis は 2.6.14 です。 redis-cli eval 'while true do print("hello") end' 0な感じのを実行します。 実行中に、別クライアントから GET, INFO, PING すると全てブロックされて結果が返ってきません。 redis.conf で lua-time-limit 5000 と設定している場合は、5秒後に redis-server のログに [18068] 22 Jul 13:51:23.798 # Lua slow script detected: still in execution after 5000 milliseconds. You can t

    RedisのLuaで時間のかかる処理をするとどうなるか? - (ひ)メモ
  • Redis Sentinelを運用してみたお話 | GMOメディア エンジニアブログ

    こんにちは、宇津井です。 弊社ではゲソてんというゲームプラットフォームを運営しております。ゲソてんではサービスリリース当初から主にキャッシュ的な役割でRedisを導入していました。つい先日の事ですが訳あってRedis 2.6からサポートされたRedis Sentinelを採用しました。今回は、採用に至った経緯をご紹介します。 簡単なシステム構成 パフォーマンスは良いし、Memcachedには無い便利な機能を提供するRedisですが約一年間運用していくつかの問題が出てきました。 Redisサーバーが突然高負荷に陥るするとWebサーバーも高負荷に陥るRedisのReplicationは張ってるけどアプリケーション側でRedis Slaveへフェイルオーバーしない(MySQLを直接参照する)Redis落ちると恐らくMySQLサーバーが耐えられない(落ちた事無いけど)という事で対策を行ってきました

  • Redis Sentinelが動いていたらslaveof no oneしない · さよならインターネット

    March 20, 2013 色々とあれだったのでシンプルにキメうちにしました thanks: @sawanoboly update: 2013/03/22 環境 Redis version 2.6.7 Redis Sentinelは Monitoring 、 Notification 、Automatic failover の3つの機能があって、主に自動フェイルオーバ目的で利用する機会が多いと思うのですが その際に、手動でslaveof no oneを打っちゃうことで予期しない状態になるので slaveof no one打つならRedis Sentinelを止めてからにしましょう。 事前情報 こんな感じでredis-sentinel.confが設定されているとします 構成: Master:1 <=> Slave:1 sentinel monitor check_one 192.168.2

  • Redis Sentinelを試す · さよならインターネット

    January 15, 2013 某社ではRedisをKeepalivedでフェイルオーバーする構成案 / 酒日記 はてな支店 みたいな構成が使われているとか使われていないとかで、Sentinelはどうなのだろうか というお話がわいたので、カジュアルに試してみました。 参考:Redis Sentinel Documentation 6379 Port が Master 6380 Port が 6379のSlave 上記内容のRedisのセットがあるとします。 [hoge@example ~]# [hoge@example ~]# redis-cli -p 6379 info | grep role -3 latest_fork_usec:340 # Replication role:master connected_slaves:1 slave0:127.0.0.1,6380,online

  • Redis Sentinel beta released

    June 5th I started writing the first line of code for Redis Sentinel, and after more or less six weeks I'm happy to release the first public beta. This has been a fun programming sprint where I did something a bit unusual in the Redis development history: to focus on just one aspect of Redis for a number of weeks, almost ignoring everything else was not an important bug report. The reason for foll

  • High availability with Redis Sentinel

    High availability for non-clustered Redis Redis Sentinel provides high availability for Redis when not using Redis Cluster. Redis Sentinel also provides other collateral tasks such as monitoring, notifications and acts as a configuration provider for clients. This is the full list of Sentinel capabilities at a macroscopic level (i.e. the big picture): Monitoring. Sentinel constantly checks if your

  • 1