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

クラウド環境(ECS)でコンテナを使う運用と構成を考えてみた

kento yoshie
January 26, 2019

 クラウド環境(ECS)でコンテナを使う運用と構成を考えてみた

クラウド環境(ECS)でコンテナを使う運用と構成を考えてみた

kento yoshie

January 26, 2019
Tweet

More Decks by kento yoshie

Other Decks in Technology

Transcript

  1. ࣗݾ঺հ   • ٢ߐ ݈ే (@yoshi_k1989)
 • AWSࣄۀ෦ॴଐ ιϦϡʔγϣϯΞʔΩςΫτ


    • ೖࣾ/AWSྺɿ໿2೥5ϲ݄
 • ۙگɿ݁ࠗΛযΔ࣌ظʹͳΓ·ͨ͠
 • ޷͖ͳAWSαʔϏε • CloudWatch • SystemsManager • ECS(New!!)
  2. ΞδΣϯμ   w &$4ͱ͸ʁ
 w &$4ͷخ͍͠ͱ͜Ζ
 w ࿩͍ͨ͠ͱ͜Ζ w

    σʔλӬଓԽ w ϞχλϦϯά w ग़ྗϩάอଘ
  3. &$4ͱ͸ʁ   • Amazon Elastic Container Service • EC2ΠϯελϯεΛίϯςφϗετΠϯελϯεΛΫϥελʔͱͯ͠ѻ͍ɺ


    DockerίϯςφΛ؆୯ʹ࣮ߦɺఀࢭɺ؅ཧͰ͖ΔඇৗʹεέʔϥϒϧͰ
 ߴ଎ͳίϯςφ؅ཧαʔϏε • جຊతʹAmazon ECRͱݺ͹ΕΔϚωʔδυܕDockerίϯςφϨδετϦ͔Β
 ίϯςφΠϝʔδΛऔಘͯ͠ίϯςφΛ࣮ߦ͢Δ • 2017೥11݄ʹ։࠵͞ΕͨAmazon Web Service re:InventͰ͸ 
 ʮAWS FargateʯͱʮAmazon EKSʯ͕ൃද • ίϯςφϗετΠϯελϯεͰEC2Λ࢖༻͠ͳ͕Βࡉ͔͍ΧελϚΠζΛߦͬͨΓɺ
 FargateΛϗετʹ͢Δ͜ͱͰ͍͍ײ͡ʹίϯςφΛಈ͔ͤΔαʔϏε
  4. &$4ͷخ͍͠ͱ͜Ζ   • γϯϓϧʹίϯςφΛಋೖ͢Δ͜ͱ͕ग़དྷΔ • ৽͘͠ίϯςφΛಋೖ͢Δํʹ͸νϡʔτϦΞϧ͕๛෋ • طʹίϯςφΛ࢖͍ͬͯΔํʹ͸dockerfileΛΞοϓϩʔυ͢Δ͚ͩͰ࢖༻Մೳ •

    AWSαʔϏεͱ࿈ܞ͕͠΍͍͢ • AWS ELBͱͷ࿈ܞ͕ग़དྷͯεέʔϦϯά͕؆୯ʹ࣮૷Մೳɺ΋ͪΖΜWAF΋࢖༻Մ • IAMRoleΛ࢖༻͢Δ͜ͱͰίϯςφͷAWSϦιʔεΞΫηεΛ੍ݶ͢Δ͜ͱ΋Մೳ • CI/CDͷऔΓ૊ΈΛಋೖ͠΍͍͢ • ίετ໘Λ཈͑΍͍͢ • EC2ΠϯελϯεΛϗετΠϯελϯεͱ͍ͯ͠Δ৔߹͸Reserved Instances΍
 εϙοτΠϯελϯεΛར༻ग़དྷΔ • Fargate͸ࠓ݄ʹେ෯஋Լ͕͛ൃද
 ࢀߟࢿྉɿ2019೥1݄ʹAWS Fargate͕େ෯஋Լ͛ͨ͠ͷͰEC2ͱͷՁ֨ൺΛ֬ೝ͠ ͯΈͨ
  5. σʔλӬଓԽ   w ίϯςφʹσʔλ͸഑ஔ͠ͳ͍ w ͜Ε͸ίϯςφΛར༻͢Δʹ͋ͨͬͯॏཁͳཁૉͱͯ͠ߟ͑Δ΂͖ ؍఺ w ίϯςφ͸ߏ଄తʹϗετΠϯελϯε্Ͱִ཭ͯ͠ىಈ͍ͯ͠Δ

    ܗʹͳΔͷͰσʔλΛอ༗͢Δ͜ͱ͕ग़དྷͳ͍ w ͦΕͰ΋σʔλΛอଘ͍ͨ͠৔߹͕͋Δ w બ୒ࢶ w %PDLFSػೳΛར༻ͯ͠ϗετΠϯελϯεͷσΟεΫྖҬΛ
 ίϯςφͱಉظ͢Δ w "84ͷετϨʔδαʔϏε "NB[PO4 "NB[PO&'4 Λ࢖༻͢Δ
  6. ϞχλϦϯά   w ίϯςφͷϞχλϦϯάΛ೉͍͠ w ίϯςφϗετΠϯελϯεϝτϦοΫ w ίϯςφϝτϦοΫ w

    εέʔϦϯάઃఆͷࡐྉ w ͲͷΑ͏ͳঢ়گͰεέʔϦϯά͍ͨ͠ʁ w ϗετΠϯελϯεෛՙঢ়گ w ίϯςφෛՙঢ়گ w &-# &MBTUJD-PBE#BMBODFS ͷϦΫΤετ਺ w "NB[PO4242VFVF਺
  7. ϞχλϦϯά   ͦ΋ͦ΋νΣοΫ͍ͨ͠ϝτϦοΫ͸ʁ w جຊతͳཉ͍͠ϝτϦοΫ͸
 $MPVE8BUDIͰࣄ଍ΓΔ w ͱ͸͍͑ɺཉ͍͠ϝτϦοΫ͸
 ૊৫ʹΑͬͯόϥόϥ


    
 w ໢ཏతʹ৘ใΛ͍࣋ͬͯͯ΋൑அͷअຐʹͳΔ͚ͩͳͷͰ
 ඞཁͳϝτϦοΫΛ೺Ѳ͢Δඞཁ͕͋Δ
 
 ࢀߟࢿྉɿॻධʮೖ໳ɹ؂ࢹʯงғؾͰ؂ࢹΛ΍͍ͬͯΔ͢΂ͯͷਓʹΦ εεϝ
  8. ϞχλϦϯά   ͜Ε͚ͩͰ͸ऴΘΕͳ͍ w ϞχλϦϯάπʔϧͰগ͠ݟ͑ͨͱ͜Ζ w 1VTI1VMMܕΞϓϩʔνͷϝϦσϝΛ೺Ѳͯ͠ಋೖ w ૊৫ͷ੓࣏͕େ͖͍ɺ؂ࢹର৅ࣗ਎

    ैۀһ ʹՔಇঢ়گΛπʔϧ ্ ࢘ ΁ใࠂͤ͞Δ͔ɺπʔϧࣗ਎͕؂ࢹର৅ʹ֬ೝΛߦͳ͏ͷ͔
 w ͍͔ͭ͘ϞχλϦϯάπʔϧΛ͝঺հ͠·͢ w 1SPNFUIFVT 1VMMܕ  w %BUB%PH 1VTIܕ  w .BDLFSFM 1VTIܕ
  9. ग़ྗϩάอଘ   w ϩάϑΝΠϧ͸ॏཁ౓͕ߴ͍ w σʔλӬଓԽͰ΋৮Ε͕ͨɺίϯςφ͸ഁغ͞ΕΔ͜ͱͰϩάΛ
 ௥͑ͳ͘ͳΔ w ϩάͷ֎෦อଘ͸༏ઌ౓͕ߴ͍

    w ͦ΋ͦ΋ͷϩά࢖్ w τϥϒϧγϡʔτ w ηΩϡϦςΟΠϯγσϯτݕ஌ w ϩά෼ੳʹΑΔαʔϏεվળ w Ͳ͏͍ͬͨϩά͕ඞཁʁ w ϗετڍಈ w ίϯςφڍಈ ΞϓϦέʔγϣϯڍಈ
  10. ग़ྗϩάอଘ   w ࢖్ʹΑͬͯϩάج൫Λબఆ͢Δͷ͕Ұ൪ w Ͳ͏͍ͬͨ࢖్ʹΑͬͯϩάج൫͸੾Γସ͑Δ͜ͱ͕͓͢͢Ί w ʮͱΓ͋͑ͣϩάʯͱ͍ͬͨงғؾͰϩάऩू͸΍Ί·͠ΐ͏ w

    ίϯςφΛಈ͔͢ج൫Λߟ͑Δͷ΋Ұͭ w "84ͰίϯςφΛಈ͔͢γεςϜͰ͸ଞιϦϡʔγϣϯͱซ༻͠ ͯ࢖ΘΕΔ͜ͱ͔Β$MPVE8BUDI-PHT༗ྗ w $MPVEXBUDI-PHTΛར༻͢Δࡍʹ஫ҙͱͯ͠͸ίετ໘ w ۓٸੑΛཁ͞ͳ͍ϩάͰ͋Ε͹'MVFOUEΛར༻ͯ͠4ʹϩάग़ྗ w ʮϕϯμʔϩοΫΠϯΛආ͚͍ͨʯؾ͕࣋ͪϛϦͰ΋͋ΔͷͰ ͋Ε͹'MVFOUE΍TZTMPHͱݴͬͨϩάπʔϧΛ࢖͏ݕ౼΋
 ඞཁ
  11. ·ͱΊ   w σʔλͷӬଓԽ w ίϯςφͷ੒Ռ෺ ӬଓԽσʔλ ͸֎ग़͠͠·͠ΐ͏ w

    ֤ʑͷΫϥ΢υαʔϏεʹ߹ͬͨετϨʔδαʔϏεΛར༻͠·͠ΐ͏ w ϞχλϦϯά w ສਓ޲͚ͷϞχλϦϯάύλʔϯ͸ଘࡏ͠ͳ͍
 ϕετϓϥΫςΟε  w ࣗ෼͕؅ཧ͍ͯ͠ΔγεςϜͰඞཁͳϝτϦοΫΛऔΔ͜ͱ͕Ұ൪ͷϕετ ϓϥΫςΟε w ϞχλϦϯάπʔϧͷੑ֨Λ஌ͬͯ؂ࢹΛߦ͏ͷ͕ঘྑ w ग़ྗϩάอଘ w ϩάอଘख๏͸༷ʑ͕ͩɺίετ໘΋ߟྀͯ͠อଘํ๏Λݕ౼ͨ͠΄͏͕ ྑ͍