マスタn対スレーブ1   レプリケーションの      作り方     ~あれから~2013/04/17   MySQL Casual Talks vol.4 do_aki
do_aki (どぅーあき)|所属| > 株式会社もしも      (ドロップシッピング・アフィリエイトASP)|仕事| > インフラ(サーバ管理)兼     Webアプリケーション開発|出現| > 渋谷・山手線沿線|特性| > PHPer  ...
マスタn対スレーブ1 レプリケーション
カジュアルなマスタ分割        Master           JOIN           Master          A              不可               BSlave            Slave...
カジュアルなマスタ分割        Master           JOIN           Master          A              不可               BSlave            Slave...
カジュアルなマスタ併合         Master           Master           A                BSlave   Slave     Slave      Slave   Slave        ...
n:1 レプリケーション Master           Master   A                B          Slave          A+B
n:1 レプリケーション      Master           Master        A                B CHANGEMATER TO               Slaveでマスタを               ...
n:1 レプリケーション      Master           Master        A                B CHANGEMATER TO               Slaveでマスタを               ...
n:1 レプリケーション Master           Master   A                B                     詳しくは、Vol.2の                     スライドを参照     ...
発表者do_akiからのメッセージをお読みください
本トークの注意事項 真新しい話は一切無し このネタ正直もう飽きた (・ω・\)SAN値!           (/・ω・)/ピンチ!想定以上に安定稼働しすぎネタ無いのに主催に半強制的に発表 させられてるなんて言えない
稼働歴
2011年 7月 稼働開始2011年 8月 MySQL Casual Talks Vol.22011年11月 障害停止         (max_allowed_packet 不足)2012年 4月 MySQL Casual Talks Vol...
エラーログ膨らむ
130415 20:55:11 [ERROR] Error reading packet from server: Lost connectionto MySQL server during query ( server_errno=2013)...
pt-online-schema-change と相性悪い
pt-online-schema-change• オンラインでスキーマ変更• 全スレーブをチェック (本実行時のみ)• 遅延状況によってWait (負荷低減)• マスタ切り替え中にチェックが走るとタ イミングによっては待ち続ける
まとめ
ネタ切れ
•   ほんとに安定稼働中•   運用コストがほとんど無くてびっくり•   興味あるならコードはこちら•   https://github.com/do-aki/SwitchMaster• 信じられないだろ、こんな適当なコード  で動いてるんだ...
ありがとうございました
マスタN対スレーブ1レプリケーションの作り方 ~あれから~
Upcoming SlideShare
Loading in …5
×

マスタN対スレーブ1レプリケーションの作り方 ~あれから~

5,444 views

Published on

Published in: Technology
0 Comments
7 Likes
Statistics
Notes
  • Be the first to comment

No Downloads
Views
Total views
5,444
On SlideShare
0
From Embeds
0
Number of Embeds
3,171
Actions
Shares
0
Downloads
10
Comments
0
Likes
7
Embeds 0
No embeds

No notes for slide

マスタN対スレーブ1レプリケーションの作り方 ~あれから~

  1. 1. マスタn対スレーブ1 レプリケーションの 作り方 ~あれから~2013/04/17 MySQL Casual Talks vol.4 do_aki
  2. 2. do_aki (どぅーあき)|所属| > 株式会社もしも (ドロップシッピング・アフィリエイトASP)|仕事| > インフラ(サーバ管理)兼 Webアプリケーション開発|出現| > 渋谷・山手線沿線|特性| > PHPer http://do-aki.net/
  3. 3. マスタn対スレーブ1 レプリケーション
  4. 4. カジュアルなマスタ分割 Master JOIN Master A 不可 BSlave Slave Slave Slave A1 A2 B1 B2
  5. 5. カジュアルなマスタ分割 Master JOIN Master A 不可 BSlave Slave Slave Slave A1 A2 B1 B2
  6. 6. カジュアルなマスタ併合 Master Master A BSlave Slave Slave Slave Slave A2 B1 B2 A1 A+B
  7. 7. n:1 レプリケーション Master Master A B Slave A+B
  8. 8. n:1 レプリケーション Master Master A B CHANGEMATER TO Slaveでマスタを A+B定期切替
  9. 9. n:1 レプリケーション Master Master A B CHANGEMATER TO Slaveでマスタを A+B定期切替
  10. 10. n:1 レプリケーション Master Master A B 詳しくは、Vol.2の スライドを参照 Slave http://www.slideshare.n A+B et/do_aki/20110809-my- sql-casual-talks-vol2
  11. 11. 発表者do_akiからのメッセージをお読みください
  12. 12. 本トークの注意事項 真新しい話は一切無し このネタ正直もう飽きた (・ω・\)SAN値! (/・ω・)/ピンチ!想定以上に安定稼働しすぎネタ無いのに主催に半強制的に発表 させられてるなんて言えない
  13. 13. 稼働歴
  14. 14. 2011年 7月 稼働開始2011年 8月 MySQL Casual Talks Vol.22011年11月 障害停止 (max_allowed_packet 不足)2012年 4月 MySQL Casual Talks Vol.32012年10月 計画停止(マスタ切替)2012年12月 計画停止(Disk 拡張)2013年 4月 MySQL Casual Talks Vol.4
  15. 15. エラーログ膨らむ
  16. 16. 130415 20:55:11 [ERROR] Error reading packet from server: Lost connectionto MySQL server during query ( server_errno=2013)130415 20:55:11 [Note] Slave I/O thread killed while reading event130415 20:55:11 [Note] Slave I/O thread exiting, read up to log mysql-bin.003284, position 585650324130415 20:55:11 [Note] Error reading relay log event: slave SQL thread waskilled130415 20:55:11 [Note] CHANGE MASTER TO executed. Previous statemaster_host=master host1, master_port=3306, master_log_file=mysql-bin.003284, master_log_pos=585650324. New state master_host=masterhost2, master_port=3306, master_log_file=mysql-bin.001770,master_log_pos=996447621.130415 20:55:11 [Note] Slave SQL thread initialized, starting replication in logmysql-bin.0001770 at position 996447621, relay log ./relay-bin.000001position: 4130415 20:55:11 [Note] Slave I/O thread: connected to master slaveuser@master host2:3306,replication started in log mysql-bin.001770 atposition 996447621
  17. 17. pt-online-schema-change と相性悪い
  18. 18. pt-online-schema-change• オンラインでスキーマ変更• 全スレーブをチェック (本実行時のみ)• 遅延状況によってWait (負荷低減)• マスタ切り替え中にチェックが走るとタ イミングによっては待ち続ける
  19. 19. まとめ
  20. 20. ネタ切れ
  21. 21. • ほんとに安定稼働中• 運用コストがほとんど無くてびっくり• 興味あるならコードはこちら• https://github.com/do-aki/SwitchMaster• 信じられないだろ、こんな適当なコード で動いてるんだぜ、これ
  22. 22. ありがとうございました

×