AWS移行に向けたクックパッドの取り組み

31,807 views

Published on

AWS移行に向けたクックパッドの取り組み

  1. 1. AWS ⾏行行
  2. 2. ⾃自⼰己•  o  AWS o  ⽤用 ⽤用•  o  AWS •  elasticfox-ec2tag IAM Fox R53 Fox o  Ruby •  zipruby libarchive rua…etc
  3. 3. • •  AWS ⽤用•  AWS•  ⾏行行
  4. 4. •  1000 ⼈人 ⽤用•  94•  ⽉月 PV 4.9 PV•  Ruby on Rails + MySQL
  5. 5. •  PC o  cookpad.com
  6. 6. •  o  m.cookpad.com
  7. 7. •  iPhone•  Android
  8. 8. PV 0:00 1:00 2:00 3:00 4:00 5:00 6:00 7:00 8:00 9:0010:0011:00 ⼀一⽇日 PV12:0013:0014:0015:0016:0017:0018:0019:0020:0021:0022:0023:00
  9. 9. PVPV 4⽉月 5⽉月 6⽉月 7⽉月 8⽉月 9⽉月 10⽉月 11⽉月 12⽉月 1⽉月 2⽉月 3⽉月
  10. 10. AWS ⽤用
  11. 11. AWS ⽤用
  12. 12. AWS ⽤用 o 
  13. 13. AWS ⽤用 o  ⼊入 o  ⾃自
  14. 14. AWS ⽤用 o  ⾜足 ⼤大
  15. 15. AWS ⽤用 o  AWS 10
  16. 16. AWS ⽤用 o 
  17. 17. AWS ⽤用
  18. 18. AWS ⽤用 AWS ⽤用
  19. 19. AWS ⽤用 o  •  •  o  AWS •  • 
  20. 20. AWS ⽤用 o  EC2 ⾼高
  21. 21. AWS ⽤用
  22. 22. AWS ⽤用 iDC ⼤大 ⾦金金
  23. 23. AWS ⽤用 AWS ⾦金金
  24. 24. AWS ⽤用 o  EC2 o  ⾦金金 •  ⼤大 o 
  25. 25. DNS AMI ⻑⾧長MySQL
  26. 26. o  o DNS AMI ⻑⾧長MySQL
  27. 27. EC2DNS AMI ⻑⾧長MySQL
  28. 28. o  o DNS ⽤用 AMI ⻑⾧長MySQL
  29. 29. DNS o  ⼆二 AMI •  Basic •  ⻑⾧長MySQL
  30. 30. DNS AMI ⻑⾧長MySQL
  31. 31. o  BasicDNS •  ping icmp AMI •  http o  ⻑⾧長 •  ⽣生 NagiosMySQL •  Munin
  32. 32. DNS AMI ⻑⾧長MySQL
  33. 33. DNS o  AMI •  ⼠士 •  Basic ⻑⾧長MySQL
  34. 34. o  App DBDNS AMI ⻑⾧長MySQL
  35. 35. o  Basic DNSDNS AMI ⻑⾧長MySQL
  36. 36. o  IP o  Elastic Load BalancingDNS 10.0.0.0/8 AMI •  IP •  ⻑⾧長 o  iptablesMySQL •  ⼈人
  37. 37. DNS o  EC2 IP AMI •  ⽌止 IP o  DNS IP ⻑⾧長MySQL
  38. 38. o  DNS Active-Active 2 •  Elastic IP o  resolv.conf 2DNS AMI ⻑⾧長MySQL
  39. 39. o  DNS NameDNS ) Name:dev AMI dev.ap-northeast-1.compute.internal ⻑⾧長MySQL
  40. 40. o  resolv.conf cron •  IP resolv.confDNS •  DNS ⽚片⽅方 ⽌止 resolv.conf AMI ⻑⾧長MySQL
  41. 41. o  cron DNS Public DNS Name Public DNS Name Elastic IPDNS AMI ⻑⾧長MySQL
  42. 42. o  Public DNS Name IP DNS IPDNS AMI ⻑⾧長MySQL
  43. 43. o  IP resolv.conf o  resolv.confDNS AMI ⻑⾧長MySQL
  44. 44. DNS o  CentOS5.5 AMI o  EBS o  32bit 64bit 64bit ⼀一 ⻑⾧長MySQL
  45. 45. o  AMI AMI o  AMIDNS o  Chef ⼊入 AMI ⻑⾧長MySQL
  46. 46. DNS o  ⽣生 AMI •  Nagios + nrpe o  ⻑⾧長 •  MuninMySQL
  47. 47. o  Nagios ⽣生 o  Munin CPU ⽤用DNS AMI ⻑⾧長MySQL
  48. 48. o  ⾃自 Nagios Munin o DNS AMI ⻑⾧長MySQL
  49. 49. DNS o  ⽤用 ⽅方 AMI •  Elastic IP ⽤用 •  Nagios AMI ⻑⾧長MySQL
  50. 50. Elastic IP ⽤用 o  Nagios LDAP ⻑⾧長 ⽤用DNS AMI ⻑⾧長MySQL
  51. 51. o  Elastic IP Public DNS NameDNS AMI ⻑⾧長MySQL
  52. 52. o  IP ⾃自 ⾏行行 o  ⾃自DNS ⾏行行 o  AMI ⾏行行 ⻑⾧長MySQL
  53. 53. o  ⾃自 Elastic IPDNS o  Elastic IP AMI ⻑⾧長MySQL
  54. 54. Nagios AMI o  Nagios AMIDNS o  Munin ⽤用 AMI ⻑⾧長MySQL
  55. 55. o  Elastic IP ⽤用DNS •  ⽤用 AMI o  Nagios AMI •  5 10 ⻑⾧長 ⽤用MySQL
  56. 56. DNS o  keepalived ⽐比 AMI ⻑⾧長 o  Heartbeat ⻑⾧長 ⾏行行 ⻑⾧長MySQL
  57. 57. DNS AMI ⻑⾧長MySQL
  58. 58. o  EC2 Slave o  EBS o  ⽇日 SnapshotDNS AMI ⻑⾧長MySQL
  59. 59. o  SnapshotDNS AMI ⻑⾧長MySQL
  60. 60. o  Snapshot Position o DNS AMI ⻑⾧長MySQL
  61. 61. ⾏行行
  62. 62. ⾏行行
  63. 63. ⾏行行o  DNS EC2 iDCo  DB Read EC2o  DB Write iDC ⾏行行
  64. 64. ⾏行行MasterDB EC2 ⾏行行
  65. 65. ⾏行行o  MasterDB EC2 ⾏行行o  iDCo  iDC

×