Upgrade to Pro — share decks privately, control downloads, hide ads and more …

[AWS Summit Tokyo 2017] サービス全断はダメ、ゼッタイ。途切れないテレビ...

[AWS Summit Tokyo 2017] サービス全断はダメ、ゼッタイ。途切れないテレビ会議システムを目指して 〜AWS を最大限活用して可用性を高める秘策〜 / ricoh-awssummit-2017

AWS Summit Tokyo 2017
http://www.awssummit.tokyo/summit/index.html#D2T4-2
2017/5/31 13:20 - 14:00
スピーカー:
梅原 直樹
株式会社リコー
オフィスサービス開発本部 SI開発センター 第四開発室 クラウドPFグループ
リコーでは、グローバルにインターネット経由で簡単にテレビ会議を行う「RICOH UCS」を提供しています。テレビ会議の特性上、少しの時間でも「切れる」と、ビジネス上大きな損失を生む可能性があります。私達はこのサービスを、Amazon ECS、Amazon Aurora、AWS Lambda、AWS Cloudformation 等の AWS のサービスを最大限活用して、進化させ続けています。本セッションでは、開発/インフラの裏側を具体的にご紹介します。

Naoki Umehara

May 31, 2017
Tweet

More Decks by Naoki Umehara

Other Decks in Technology

Transcript

  1. ҠߦϙϦγʔ w جຊతʹಉ͡ߏ੒ͰҠߦ͢Δ w ͨͩ͠ɺίϯςφٕज़Λ࠾༻͢Δ w ͨͩ͠ɺϚωʔδυαʔϏε͸ੵۃ࠾༻͢Δ w Ҡߦͨ͠ޙʹ࠷దԽ͢Δ w

    పఈతʹࣗಈԽ͢Δ w ΦϯϓϨͰಈ͍͍ͯͨ΋ͷΛશͯίʔυԽͯࣗ͠ಈߏங͢Δ w ࡞Γ௚ͯ͠΋ݩͱಉ͡ঢ়ଶʹͳΔ҆৺ײ
  2. ҠߦϙϦγʔ w جຊతʹಉ͡ߏ੒ͰҠߦ͢Δ w ͨͩ͠ɺίϯςφٕज़Λ࠾༻͢Δ w ͨͩ͠ɺϚωʔδυαʔϏε͸ੵۃ࠾༻͢Δ w Ҡߦͨ͠ޙʹ࠷దԽ͢Δ w

    పఈతʹࣗಈԽ͢Δ w ΦϯϓϨͰಈ͍͍ͯͨ΋ͷΛશͯίʔυԽͯࣗ͠ಈߏங͢Δ w ࡞Γ௚ͯ͠΋ݩͱಉ͡ঢ়ଶʹͳΔ҆৺ײ
  3. 3*$0)6$4ͷߏ੒֓ཁ Web App αʔό … Web Api αʔό … ө૾഑৴

    αʔό … DB αʔό … ϩʔυ όϥϯα … ϩʔυ όϥϯα … … ɾɾɾ σʔληϯλʔ1 σʔληϯλʔ2 w ձٞ͢Δ૬खʹΑͬͯར༻͢Δσʔληϯλʔ ͸มΘΔ w σʔληϯλʔؒͰ%#ؒɺ"1*ؒ౳ͷ΍ ΓऔΓΛߦ͏ w ө૾഑৴αʔό͸άϩʔόϧʹࢄΒ͹͍ͬͯ Δ w ஗ԆΛ࠷খԽ͢Δ w ֤छ8FC"1* "QQαʔό w 3VCZ +BWB౳ɺ໾ׂ͝ͱʹԾ૝αʔό΁
  4. ֤छ8FC"1* "QQͷίϯςφԽ w %PDLFS͑͋͞Ε͹ಈ͘ w σϓϩΠϩʔϧόοΫ༰қɺ༰қͳεέʔϧΞ΢τɺϚΠΫϩαʔ Ϗε w ݴޠɺόʔδϣϯΛؾʹ͠ͳͯ͘ྑ͍ʢएऀ͸৽͍͠ݴޠΛ࢖͍͍ͨʣ w

    &$4ͷ҆৺ײɺ&$3͕5PLZP3FHJPOʹ w ӡ༻࣮੷࡞͍͔ͬͯ͘͠ͳ͍ w ରԠίετॳظ౤ࢿ͸͔͔Δ͕ͦͷޙͷӡ༻ָ͕
  5. ίϯςφԽͷجຊߏ੒ w جຊ͸ɺ&-# &$ &$4 &$3 w &$3͕%FWͱ0QTͷ*'ʹͳΔ w ։ൃऀ͸%PDLFSΠϝʔδΛ164)͢

    Δ͚ͩͰσϓϩΠՄೳ w ΞϓϦέʔγϣϯͷ໾ׂʹԠͯ͡Քಇί ϯςφ਺ EFTJSFEDPVOU Λมߋ Container Instance ECS Service 1 ECS Service 2 Amazon ECR Elastic Load Balancing Amazon ECS ։ൃऀ QVTI
  6. ίϯςφԽʹΑΔՄ༻ੑ޲্ w Πϯελϯε͸յΕΔલఏͰߟ͑Δ w &-# &$ &$4 &$3 "VUP4DBMJOH DGOJOJU

    w ίϯςφ΋յΕΔલఏͰߟ͑Δ w &-#͸"VUP4DBMJOHͰ͸ͳ͘ɺ&$4ʹ͚ͭΔ w .VMUJ";ʹ͢Ε͹μ΢ϯλΠϜθϩ w յΕͯ΋ࣗಈ෮چ w 4JOHMF";Ͱ΋μ΢ϯλΠϜ਺෼ w ໾ׂʹΑͬͯ͸બ୒ࢶͱͯ͋͠Γ Container Instance ECS Service 1 ECS Service 2 Container Instance ECS Service 1 ECS Service 2 AutoScaling Availability Zone 1 Availability Zone 2
  7. σʔλετΞ͸Ͳ͏͢Δ͔ w ϚωʔδυαʔϏεͷ3%4 .Z42- Λར༻ w ݩʑ.Z42-Λར༻͍ͯͨ͠ͷͰ໰୊͸ಛʹͳ͠ w ࣗ࡞ͷӡ༻πʔϧʢϨϓϦέʔλʔ͕౳ʣ͕ෆཁʹ w

    ";ো֐Λߟྀ͢Δͱ͖͸ɺجຊ͸.VMUJ";ઃఆʹ͢Ε͹0, w Ҏલͷߏ੒Λ౿ऻͨ࣌͠ʹɺΫϩεϦʔδϣϯͷϨϓϦΧͷ.VMUJ ";͕Ͱ͖ͳ͍౳ͷ੍໿͋Γ w ͜ͷΑ͏ͳ੍໿͕ग़ͨ࣌఺Ͱߏ੒มߋݕ౼͕ඞཁ Amazon RDS
  8. "84ͷ࢓૊ΈΛ͏·͘࢖͑ͳ͍έʔε΋͋Δ w ө૾഑৴αʔό͸୯७ͳϔϧενΣοΫ͚ͩͰ͸ ෆे෼ w ෳࡶͳγʔέϯεͰձٞΛͯ͠Έͳ͍͜ͱʹ͸ਖ਼ ৗ͔Ͳ͏͔Θ͔Βͳ͍ w "VUP4DBMJOHͱ΋૬ੑ͕ѱ͍ w

    ͭͳ͕͍ͬͯΔ୺຤͕͋ΔݶΓ͸ө૾഑৴ϧʔλ ΛݮΒ͢͜ͱ͕Ͱ͖ͳ͍ w ܥ౷ຖʹ͔͠Ξοϓσʔτग़དྷͳ͍ͷͰ"84ͷ ࢓૊ΈʹͷΔ͜ͱ͕೉͍͠ ө૾഑৴αʔό ө૾഑৴ ϧʔλ ܥ౷ 1 ɾɾɾ
  9. ө૾഑৴αʔόͷ੾Γ཭͠੾Γ໭͠ w ςϨϏձٞϨϕϧͰͷ؂ࢹΛੈքதͷ 3FHJPO͔Β෼ʹճ؂ࢹΛߦ͏ w ར༻Ͱ͖ͳ͍ܥ౷͸੾Γ཭͠ɺར༻Մೳ ʹͳͬͨΒ੾Γ໭͠ w ͍ΘΏΔɺςϨϏձٞͷϩʔυόϥϯα w

    ͜ͷ࢓૊ΈʹΑΓ";୯ҐͰো֐͕ى͖ ͯ΋μ΢ϯλΠϜθϩ ө૾഑৴ ϧʔλ ܥ౷ 1 ө૾഑৴ ϧʔλ ܥ౷ 2 Container Instance ݺ੍ޚ ίϯςφ ഑৴αʔόબ୒ ؂ࢹ ΫϥΠΞϯτ ؂ࢹ ΫϥΠΞϯτ ؂ࢹ ΫϥΠΞϯτ NG NG બ୒͠ͳ͍ OK
  10. ͞Βʹ͞Βʹվળ͢Δ w 3%4.Z42-"VSPSBʹมߋ w ߴ଎ϑΣΠϧΦʔό .BSJB%#$POODUPS Ͱ࠷୹਺ඵͰ෮ؼ w )FBMUI$IFDL஋ͷ࠷దԽ w

    ࣗಈ෮ؼ͠ͳ͍ύλʔϯͷ؍ଌɾಠࣗରԠ w ؂ࢹ෮چϓϩάϥϜΛ౤ೖ w શͯ͸ݕ஌Λૣ͘ɺ෮چΛTFDͰ΋ૣ͘͢ΔͨΊʹ
  11. ར༻αʔϏε Amazon EC2 Amazon ECR Amazon ECS Amazon VPC AWS

    Lambda Elastic Load Balancing Amazon S3 Amazon DynamoDB Amazon RDS AWS DMS Amazon Route53 Amazon CloudWatch Amazon CloudFormation Amazon IAM Amazon ES Amazon API Gateway Amazon SNS Amazon SQS Amazon SES
  12. Container Instance ECS Service 1 ECS Service 2 ɾɾɾ BIGIP

    ө૾഑৴ ϧʔλ ܥ౷ 1 Region1 Region2 ɾɾɾ BIGIP ɾɾɾ ɾɾɾ Region3 αʔόϨεܥ ίϯςφܥ ө૾ܥ DBܥ ར༻Ϧʔδϣϯ  ؂ࢹ ΫϥΠΞϯτ ɾɾɾ
  13. ҠߦϙϦγʔ w جຊతʹಉ͡ߏ੒ͰҠߦ͢Δ w ͨͩ͠ɺίϯςφٕज़Λ࠾༻͢Δ w ͨͩ͠ɺϚωʔδυαʔϏε͸ੵۃ࠾༻͢Δ w Ҡߦͨ͠ޙʹ࠷దԽ͢Δ w

    పఈతʹࣗಈԽ͢Δ w ΦϯϓϨͰಈ͍͍ͯͨ΋ͷΛશͯίʔυԽͯࣗ͠ಈߏங͢Δ w ࡞Γ௚ͯ͠΋ݩͱಉ͡ঢ়ଶʹͳΔ҆৺ײ
  14. పఈతʹࣗಈԽ͢Δ w ΠϯϑϥΛίʔυԽ͢Δʢ*OGSBTUSVDUVSF"TB$PEFʣ w $MPVEGPSNBUJPO ,VNPHBUB3VCZ੡πʔϧ Λར༻ w $MPVEGPSNBUJPO ߦ,VNPHBUB

    ߦʹ w ໾ׂຖʹςϯϓϨʔτΛ෼ׂͨ͠Γɺϓϩάϥϛϯάͱಉ༷ w ؀ڥ໊ͱόʔδϣϯ͚ͩΛ౉ͤ͹ߏங͢ΔΑ͏ʹόʔδϣϯ؅ཧ w %FW؀ڥ͸Ӧۀ࣌ؒ಺ͷΈࣗಈىಈ࡟আ w ڧ੍తʹʹ͸γϟοτμ΢ϯ͞Εɺϝϯόʔ͸ؼΔ͔͠ͳ͍ w ຖ೔ߏங͞ΕΔͷͰɺόάࠞೖͷτϥοΩϯά͕͠΍͍͢