Redis on EC2

Preview:

DESCRIPTION

JAWS UG #18 DB祭で話した、RedisをEC2上で使う時のいろいろLT

Citation preview

Redis on EC2

星野 豊 (@con_mame)

クックパッド株式会社 インフラストラクチャー部

AWS / MySQL / DataStore etc...

http://d.conma.me/

http://facebook.com/conmame

redis

使ってますか?

×

×

×今日は話しません!!!

×

Architecture

app

redismaster(standby)

redismaster(active) redis

slave

replication

app

redismaster(standby)

redismaster(active) redis

slave

replication

app

redismaster(standby)

redismaster(active) redis

slave

replication

Sentinelで制御してもOK

Trouble

_人人人人人人人人人_

> MAX CONNECTION <

‾Y^Y^Y^Y^Y^Y^Y^Y^Y^Y‾

想定Max connection

1,000 - 1,500

設定値

4,000

頻繁に増減するインスタンス

Terminate時に正しく切断されない

redisは健気にESTABLISHとして認識

AutoScalingで立ち上がるインスタンス

貯まるconnection

_人人人人人人人人人_

> MAX CONNECTION <

‾Y^Y^Y^Y^Y^Y^Y^Y^Y^Y‾

redis 127.0.0.1:6379> CONFIG SET timeout 1800

redis.conf

timeout 1800

接続元でプーリングしてる

場合はreconnectを意識

他にも

×

設定によるがIOが多くなるのでPIOPS EBSの方

が安定かつ安くなる場合も 特にAOF ON

バックアップはdb or aofファイルを

S3に転送

xen上だとfork遅いと言われてるけど問題に

なったことはない

Conclusion

Maintenance Window気になるならEC2で

IOやバック・アップもケアして

AutoScaling環境はtimeoutも気をつける

Slaveの分散はInternal ELBでらくらく

ElastiCacheは出来ない (twemproxy使えば出来る

けど・・・)

Thank you!!