தখاۀʹ͓͚ΔAWS׆༻ࣄྫ
View Slide
ࣗݾհ
• ॴଐ ༗ݶձࣾεΫϥονιϑτ• ໊લ ࿏ོٛʢ͔Θ͡Α͔ͨ͠ʣ• AWSྺ ̔• ͖ͳAWSαʔϏε Route53ɺEC2 Spot Fleet API
AWSͱͷग़ձ͍2010ϦϦʔεͨ͠ιʔγϟϧήʔϜ͕େڹɻଈʹαʔόʔෛՙͰϩάΠϯ͢ΒࠔͰΫϨʔϜ͕2chʹॻ͖ࠐ·ΕԌ্ɻඞࢮͳύϑΥʔϚϯεɾνϡʔχϯάɺαʔόʔௐୡʹΘΕΔɻ͋Δ࣌ɺαʔόʔ͕खݩͷPC͔Βॠ࣌ʹௐୡͰ͖Δͱฉ͖ڻ͘ɻௐΕௐΔ΄Ͳڵຯਂ͘ɺ2011ʹ໊ݹͰJAWS-UGͱ͍͏ษڧձΛ։࠵ʹࢸΔɻ
ຊ͢༰
ΞδΣϯμ• AWSΛར༻͢ΔϝϦοτ• ࣄྫհ• AWSΛར༻͢Δࡍʹҙ͓͖͍ࣝͯͨ͜͠ͱ
AWSΛར༻͢ΔϝϦοτ• ੜ࢈ੑ• ӡ༻ίετ• ηΩϡϦςΟ
ੜ࢈ੑ• ͜͜Ͱͷ ੜ࢈ੑ ͱ։ൃऀ͕ϓϩδΣΫτ։͔࢝ΒγεςϜΛϦϦʔε͢Δ·ͰͷޮΛࢦ͠·͢ɻ
ੜ࢈ੑʢैདྷΑ͋͘Δ࢟ʣ• ։ൃऀνʔϜʹҰ։ൃαʔόʔ͕༩͑ΒΕςετγεςϜͷೖΕସֻ͚͑ʴλΠϛϯάௐ͕ඞཁ• ։ൃαʔόʔຊ൪αʔόʔͷڥͱ͜ͱͳΓεϖοΫ͘ɺ߹ʹΑͬͯϥΠηϯείετͷͰOS͢ΒҟͳΔ or όʔδϣϯ͕ͦΖ͍ͬͯͳ͍ɻ• ຊ൪ϦϦʔεʹ͚ͨڥߏஙɺ͋Δఔࣅ͍ͯΔڥԼͰߦ͏ͨΊɺυΩυΩ͠ͳ͕ΒϦϦʔε࡞ۀΛߦ͏ɻ
ੜ࢈ੑʢAWSར༻ʣ• ։ൃऀҰਓͻͱΓʹຊ൪ڥͱಉҰͷͷΛ͢͜ͱ͕Մೳɻ• AWSڥεΫϦϓτͰߏஙͰ͖ΔͨΊɺʑࢼ͠ଓ͚ΒΕͨεΫϦϓτΛࣗ৴Λ࣋ͬͯຊ൪ڥద༻Ͱ͖Δɻ• ϋʔυௐୡʹ͚ͨݟੵͿΕΛۃʹڪΕΔඞཁ͕ͳ͘ͳΔɻ(͋ͱͰม͑Δ͜ͱ͕༰қ)
ӡ༻ίετ• ͜͜Ͱͷ ӡ༻ίετ ͱαʔόʔػثͳͲͷҡ࣋ɾमસɺʑͷ҆ఆͨ͠γεςϜՔಇʹ͚ͯඞཁͳਓతϦιʔεΛࢦ͠·͢ɻ
ӡ༻ίετʢैདྷΑ͋͘Δ࢟ʣ• ϋʔυΣΞোͷରԠۀऀΛݺͼ͚ͭେࢸٸௐୡɻ ߴֹͳ্ɺ෮چਝͰͳ͍έʔε͕ଟ͍ɻ• ো࣌ͷΓ͚ͳͲߴεΩϧΛอ࣋ͨ͠ΤϯδχΞͷஅ͕ඞཁͱͳΔ͜ͱ͕ଟʑ͋ΔɻͦͷΑ͏ͳਓࡐΛৗ࣌ஔ͍͓ͯ͘͜ͱ͕ίετ໘Ͱݫ͍͜͠ͱɻ• αʔόʔػثɺճઢͷϥϯχϯάίετ͕ఆ͞ΕΔதͰߴ͍ਫ४Ͱ༻ҙ͞Ε͍ͯΔඞཁ͕͋Γʢ͋ͱͰΓͤͳ͍ҝʣߴֹʹͳΓ͍͢ɻ
ӡ༻ίετʢAWSར༻ʣ• AWSΛࢧ͑ΔੈքதͷΤϯδχΞ͕̎̐࣌ؒ̏̒̑ػ͍ͯ͠Δ҆৺ײɻ ສ͕Ұͷোʹ͓͚ΔରࡦAWSଆΠϯϑϥʹ͍ͭͯϢʔβʔଆͷίετෛ୲ෆཁɻ• αϙʔτΛར༻͢Δ͜ͱͰAWSଆͱͷΓ͚͕ਝʹߦ͑Δɻʢαϙʔτܖ༗ྉʣ• શͳैྔ՝ۚํࣜͰ͋ΔͨΊɺඞཁͳͱ͖ඞཁͳ͚ͩͷࢧ͍ʹίετΛ͑Δ͜ͱ͕Ͱ͖Δɻ
ηΩϡϦςΟ• ͜͜Ͱͷ ηΩϡϦςΟ ͱίϯϓϥΠΞϯεཁ͔݅Βൃੜ͢Δج४Λຬͨ͢͜ͱɺWEBͷҰൠతͳηΩϡϦςΟΛࢦ͠·͢ɻ
ηΩϡϦςΟʢैདྷΑ͋͘Δ࢟ʣ• ϦϦʔε࣌ʹͳΜͱ͔νΣοΫϦετΛΫϦΞ͢Δͷͷɺӡ༻࣌ʹݟ͞Εͣࠪલʹ߄ͯͯ֬ೝɻ• ͦͦίετ໘͔ΒηΩϡϦςΟɾਓࡐͷಋೖ͕ݟૹΒΕ͕ͪɻ ʢϢʔβʔ͕ࣗݟੵ࣌ʹෆཁͱݴͬͯঝೝ͞Εʹ͍͘έʔεʣ
ηΩϡϦςΟʢAWSར༻ʣ• AWSʹαʔυύʔςΟΛಋೖ͢ΔҎ֎ʹඪ४ͰηΩϡΞͳσʔληϯλʔɺػೳ͕͍ͭͯ͘Δɻ ʢར༻ऀ͕୲อ͠ແͯ͘ͳΒͳ͍ൣғଘࡏ͢ΔͨΊҙʣ
ηΩϡϦςΟʢAWSར༻ʣ֤छίϯϓϥΠΞϯεཁ݅ΛΫϦΞͨ͠σʔληϯλʔɾαʔϏεɾΨΠυϥΠϯΛར༻Ͱ͖Δɻ
ηΩϡϦςΟʢAWSར༻ʣ๛ͳػೳϑΝΠΞʔΥʔϧ 4FDVSJUZ(SPVQ8"' "848"'%%P4 ֤छαʔϏεʹΑΔ؇ػೳ҉߸Խ 4ͳͲͷετϨʔδαʔϏε3%4ϞχλϦϯά $MPVE8BUDIϩΪϯά $MPVE5SBJM 'MPX-PHTΞΫηεݖݶ *".ڴҖݕग़ "NB[PO(VBSE%VUZ
AWSͷαʔϏε͔ΒݟΔҠߦϝϦοτ• ίετ໘ S3, ELB+EC2• Ҡߦ༰қ͞ EC2, RDS• ࢹɾࠪ CloudWatch Logs, CloudWatch ϝτϦΫε
ίετ໘• ʑಡΊͳ͍τϥϯβΫγϣϯΛ๊͍͑ͯΔγεςϜʹ Φʔτεέʔϧ• λΠϛϯά͕͔͍ͬͯΔߴෛՙʹ εέʔϧΞοϓ• ߴٱੑɾՁ֨ͰσʔλΛอଘ͍ͨ͠ͳΒ S3
Ҡߦ༰қ͞• ΦϯϓϨϛεͷγεςϜͰҰൠతʹར༻͞ΕΔ αʔόʔɺ σʔλϕʔε EC2ɺ RDS ʹஔ͖͑Λݕ౼ɻ
ࢹɾࠪ• γεςϜΛ҆ఆՔಇͤ͞ΔͨΊʹࢹ͕ඞཁɻ ࠪͱͯ͠ظؒʹΓγεςϜূΛ͓ͯ͘͜͠ͱ͕ٻΊΒΕΔɻ• ᮢΛϕʔεʹΞϥʔτΛڍ͍͛ͨͳΒCloudWatchϝτϦΫε• ϩάϕʔεͰࢹɺࠪ༻ʹอଘ͢ΔͳΒCloudWatchLogs
Ҡߦࣄྫհ
طଘۀΛΫϥυҠߦ͢Δࣄྫ• খౡϓϨεۀגࣜձ༷ࣾ GREEN-EDIࣄྫ• தখاۀʹίετͳEDIɾΞϓϦέʔγϣϯΛఏڙ͍ͨ͠• 2018ϦϦʔε༧ఆͷZEDIΛར༻ͯ͠ࢧ͍ɾೖۚফࠐۀΛࢧԉ͢Δ࣮ূத
ZEDIͷհ• શࠃۜߦڠձ͕ࠓՄಈͤ͞Δ༧ఆͷαʔϏεɻ• ಛͱͯ݅͠ΛΫϦΞͨ͠ιϦϡʔγϣϯ͔ΒͳΒ࣮ࡍͷޱ࠲͔Βࢧ͍Λߦ͑Δɻ• ࢧ͍σʔλͷதʹ֤छྲྀใΛؚΊΔ͜ͱ͕Ͱ͖Δ• ੲͷΑ͏ʹΫϥυةݥ͔ͩΒଓΛೝΊͳ͍ʂͳͲͱ͍͏റΓͳ͍ͱͷ͜ͱɻ
՝• தখاۀγεςϜ͕ߴֹͰಋೖͰ͖ͳ͍ࣄ͕ଟ͍ɻ• αϓϥΠνΣʔϯͷதͰ֤छͷ Web EDI ͷೖྗΛ͚ٛΒΕΔҝɺࣗࣾͷใ͕ࢄɻ• Ұ෦ۀʹطଘιϑτ͕ར༻͞Ε͍ͯΔ͜ͱ͋ΓɺϢʔβʔۀશͯΛΫϥυԽͰͳ͘ϋΠϒϦουͳӡ༻ඞཁɻ
ߏ• ॳظࢿෆཁͳAWSڥʹͯఏڙɻ• طଘͷΞϓϦέʔγϣϯͱ͍ͯ݁ͯ͠͠ΔWebEDIͰͳ͘ଞγεςϜͱͷϝοηʔδަΛՄೳͱ͢ΔEDIͱΞϓϦέʔγϣϯͷΈ߹Θͤͱ͢Δ͜ͱͰɺଟछଟ༷ͳऔҾσʔλͷΓऔΓΛՄೳͱ͢Δ• ֤ࣾɾۀքʹΑΔΞϓϦέʔγϣϯ෦ͷΧελϜϞδϡʔϧಋೖΛՄೳʹ͢Δ
ߏ"ࣾ #ࣾ$ࣾ%ࣾ
ߏʢোൃੜʣ"ࣾ #ࣾ$ࣾ%ࣾ#ࣾͷαʔόʔ͕ݪҼෆ໌ͷτϥϒϧൃੜʂʂ
ߏʢ෮چʣ"ࣾ #ࣾ$ࣾ%ࣾ #ࣾ༻ΠϯελϯεΛ৽ن্ཱͪ͛ ܽଛτϥϯβΫγϣϯσʔλΛ" $͔ࣾΒऔಘ͠෮چ֤ࣾͷྲྀσʔλऔҾઌ͕͍ͬͯΔશࢄγεςϜͱͯ͠ΞϓϦɾ%#Λ֤ࣾʹ༻ҙ͠ɺαϓϥΠνΣʔϯશମ͕ఀࢭ͢Δ͜ͱΛආ͚Δ
طଘγεςϜͷҠߦࣄྫ• ݐஙࢪձ༷ࣾॴ༗ͷܭଌΞϓϦέʔγϣϯࣄྫ• ݻఆͷPCͰ͔͠ར༻Ͱ͖ͳ͍ΈΛϢʔβʔʹαʔϏεఏڙ͢ΔͨΊΫϥυͷҠߦΛݕ౼
ߏ3FNPUF"QQػೳʹΑΓΞϓϦέʔγϣϯΛఏڙ4&$ݱ͔ΒϦΞϧλΠϜʹܭଌσʔλΛΞοϓϩʔυ8JOEPXT .BD J1BEͳͲͰৗʹܭଌσʔλΛӾཡՄೳ
Ҡߦखॱ• ݱઃஔࡁΈͷܭଌPCʹ AWS SDK Λར༻ͨ͠σʔλΞοϓϩʔυΞϓϦέʔγϣϯΛ։ൃɻ• Windows2012αʔόʔΛEC2Ͱ༻ҙɻ AppStreamͱ͍͏ΞϓϦέʔγϣϯ৴αʔϏεΛݕ౼͕ͨ͠iPadͰར༻͍ͨ͠ཁ͕͋Γஅ೦ɻ• Ϣʔβʔ͔Βͷ৽نηογϣϯཱ֬࣌ʹ S3 ͔ΒܭଌσʔλΛऔಘ͢ΔεΫϦϓτΛߏங
৽نߏஙࣄྫ
εϚʔτάϦουϓϩδΣΫτ• খౡϓϨεۀגࣜձ༷ࣾ εϚʔτάϦουγεςϜࣄྫ• اۀͷిྗधཁΛՄࢹԽɾ༧ଌ͠ɺاۀؒిྗ༥௨Λࢦ͢• ిؾྉۚΛԼ͛ΔͨΊʹσϚϯυधཁ༧ଌΛ͢ΔͨΊʹ֤ϙΠϯτ͔Βిྗར༻ྉΛऔಘ͠ՄࢹԽ
ܭଌର• ଠཅޫൃి• PHVॆిث(ిؾࣗಈं͚)• ࣄॴ• • ΤϨϕʔλʔ• ͳͲͳͲ
ߏεϚʔτϝʔλʔ֎෦ͷσʔλૹ৴&$&$3%4
CtoC௨ΞϓϦ։ൃ• CtoCͰར༻Մೳͳ௨ΞϓϦߏஙҊ݅• αʔϏεϦϦʔεޙͷधཁʹ߹Θͤͯεέʔϧ͢ΔγεςϜΛرɻ• ϢʔβʔʹΑΔ՝͕ۚൃੜ͢ΔͨΊτϥϯβΫγϣϯσʔλΛ͔ͬ͠ΓकΓ͍ͨ
ߏ&-#ʹΑΔΦʔτεέʔϧઃఆՄ༻ੑΛҙࣝͨ͠";ߏ%#3%4Λ࠾༻͠ϦʔυϨϓϦΧʹΑΔෛՙࢄ
֎ग़ࢧԉαϙʔτγεςϜߏங• εϚʔτϑΥϯΞϓϦΛར༻ͯ͠֎ग़ΛεϜʔζʹߦ͏͜ͱ͕Ͱ͖ΔαϙʔτηϯλʔγεςϜߏங• αϙʔτηϯλʔͷΦϖϨʔλʔPC͑͋͞Εۀ͕Մೳ• Ϣʔβʔ͔Βͷண৴͕͋ΔͱݱࡏҐஔɾաڈରԠཤྺͳͲ͕දࣔ͞Εɺ࣌ࠁදɾΠϕϯτใΛར༻ͯ͠εϜʔζͳ֎ग़ࢧԉΛߦ͏
ۤ࿑ͨ͠• εϚϗΞϓϦͱίʔϧηϯλʔΛϦΞϧλΠϜʹίϛϡχέʔγϣϯͤ͞ΔͨΊʹWebSocketଓΛඞཁͱ͍ͯͨͨ͠Ίɺ࣌ͷELBͰएׯͷ͕ඞཁͩͬͨɻ ʢίωΫγϣϯλΠϜΞτ͕͋Δҝʣ
ߏ8FC4PDLFUଓΛෛՙࢄ͢Δߏ ֤αʔόʔ͕$MPVE8BUDIʹରͯ͠ݱঢ়ͷଓΛਃࠂɻ ৽نଓϢʔβʔ͕དྷͨΒݱࡏͷଓ͕গͳ͍αʔόʔৼΔ
ߏ"-#͕৽نαʔϏεͱͯ͠ϦϦʔε͞Ε8FC4PDLFUαϙʔτʂʂݱࡏͰͳΜͷۤͳ͘ߏஙͰ͖·͢ɻ
ࠓޙAWSΛಋೖ͞ΕΔࡍʹҙ͍ࣝͨ͜͠ͱ
ͳͥҠߦ͍ͨ͠ͷ͔ʁΛ໌֬ʹ͢Δ͜ͱ͕ޭͷൿ݃ɻ• ͙̑Β͍લʮ͕ࣾΫϥυʹҠߦ͠Ζʂʂʯͱݴ͍ͬͯΔͷͰɻଟ͔ͬͨɻ• ࠷ۙͰɺʮεέʔϧ͢Δߏʹ͍ͨ͠ʯɺʮηΩϡϦςΟपΓΛগ͠ͰAWSʹͤͯӡ༻͍ͨ͠ʯͳͲ۩ମతʹͳ͖͍ͬͯͯ·͢ɻ• త͕ͳ͍ͱޭࣦഊஅͰ͖ͳ͍ͨΊੋඇҠߦཧ༝Λཧ͠·͠ΐ͏ɻ
طଘγεςϜߏͷνΣοΫϙΠϯτ• ΞϓϦέʔγϣϯɾαʔόʔʹϢʔβʔ͕࡞ͨ͠σʔλΛอ͍࣋ͯ͠ͳ͍͔ʁ• σʔλϕʔεRDSʹҠߦՄೳ͔ʁ → αϙʔτ֎ͷDBΛར༻͍ͯ͠Δ߹DBҠߦΛݕ౼ɻ DMS Λར༻ͯ͠ҠߦʴΞϓϦվम• େ༰ྔͳσʔλΛѻ͍ͬͯΔ͔ʁ → ΠϯλʔωοτճઢΛར༻ͨ͠ΞοϓϩʔυͰͳ͘AWS Snowball Λݕ౼͢Δ͜ͱඞཁɻ
AWS Well-ArchitectedϑϨʔϜϫʔΫ• ৽نߏஙͰ͋Ε·ͣΛ௨ͯ͠ઃܭ͍ͨ͠• طଘγεςϜͷҠߦ͕༏ઌ͞ΕΔ߹ɺఆظతͳվળΛߦͬͯϕετϓϥΫςΟεʹد͍ͤͯ͘ྗΛɻ
͝ਗ਼ௌ͋Γ͕ͱ͏͍͟͝·ͨ͠