Upgrade to Pro
— share decks privately, control downloads, hide ads and more …
Speaker Deck
Features
Speaker Deck
PRO
Sign in
Sign up for free
Search
Search
平成最後なのでEC2からECS+Fargateに 置き換えた話
Search
marnie0301
May 21, 2019
Technology
11
10k
平成最後なのでEC2からECS+Fargateに 置き換えた話
marnie0301
May 21, 2019
Tweet
Share
More Decks by marnie0301
See All by marnie0301
SRENEXT2022 組織にSREを実装していくまでの道のり
marnie0301
2
7.4k
EurekaのSREチームの実践してきた事と未来像
marnie0301
1
6.7k
[20210617 そろそろマネージド、クラウドネイティブで行こう! コンテナサービスへの移行祭り]Pairs, PairsエンゲージにおけるECS Fargateの移行・活用事例
marnie0301
1
250
Other Decks in Technology
See All in Technology
反実仮想機械学習とは何か
usaito
PRO
11
4.1k
アクセシビリティを考慮したUI/CSSフレームワーク・ライブラリ選定
yajihum
2
1k
Postman v10リリース後を振り返る / Looking back at Postman v10 after release
yokawasa
1
160
Cracking the KubeCon CfP
inductor
2
240
Google Cloud の AI を支える裏側のインフラを垣間見る!
maroon1st
0
340
TechFeed Experts Night#27 〜 フロントエンドフレームワーク最前線 (Svelte)
baseballyama
1
380
Compose Compiler Metricsを使った実践的なコードレビュー
tomorrowkey
1
220
ChatGPT for IT Service Management (IT Pro)
dahatake
7
1.5k
複雑な構成要素を持つUIとの向き合い方 〜新・支出グラフでの実例〜 / B43 TECH TALK
nakamuuu
0
140
KubeCon EU 2024 Recap “Kubernetes Policy Time Machine: Where to Next?”
ryysud
0
210
Google Cloud Next '24でブログを10本書いた方法と勉強会を沸かせた方法
yasumuusan
0
290
継続的な改善 x ⾮連続的な進化
sansantech
PRO
3
150
Featured
See All Featured
Designing for Performance
lara
601
67k
ピンチをチャンスに:未来をつくるプロダクトロードマップ #pmconf2020
aki_iinuma
78
42k
RailsConf & Balkan Ruby 2019: The Past, Present, and Future of Rails at GitHub
eileencodes
125
32k
Distributed Sagas: A Protocol for Coordinating Microservices
caitiem20
322
20k
Fantastic passwords and where to find them - at NoRuKo
philnash
37
2.5k
Large-scale JavaScript Application Architecture
addyosmani
504
110k
Being A Developer After 40
akosma
57
580k
How STYLIGHT went responsive
nonsquared
92
4.8k
Let's Do A Bunch of Simple Stuff to Make Websites Faster
chriscoyier
501
140k
Typedesign – Prime Four
hannesfritz
36
2.1k
Into the Great Unknown - MozCon
thekraken
10
990
Agile that works and the tools we love
rasmusluckow
325
20k
Transcript
ฏ࠷ޙͳͷͰEC2͔ΒECS+Fargateʹ ஔ͖͑ͨ @marnie ɹɹɹɹɹɹɹ JAWS-UG ίϯςφࢧ෦ ೖฤ #6
43&5FBN&OHJOFFSBUFVSFLB *OD -JLF ೣɺͶ͜ɺDBUɺΩϟοτ ࣗసं ౦ژʙઋ͍ͬͨΓ
ϩέௐ HBNFBOJNF তੜ·Ε 2 About me ɹɹMasashi Yamamoto (@marnie) 2
3 Eureka SRE Team 3 5FBN.JTTJPO7JTJPO શγεςϜͷՄ༻ੑɺ৴པੑɺੑೳɺ։ൃޮͷ্
Ϗδωεͷ࣮ݱͷ્ཱ֬Λ্͛ΔཁҼͷഉআ ࣮ۀྫ Πϯϑϥࢹܥͷߏங ίετϓϥϯχϯά ηΩϡϦςΟؔ࿈ԣஅࢪࡦܥͷ࣮ɾϦʔυ σʔλύΠϓϥΠϯͷߏஙઃܭɾϚΠΫϩαʔϏε։ൃͳͲ قઅʹΑΔ σϓϩΠ#PUύΠϓϥΠϯߏஙɾࣗಈԽͳͲ։ൃޮԽͷد༩ ΞϓϦέʔγϣϯίʔυඞཁʹԠͯ͡ॻ͖·͢ɻ Մ༻ੑ B[ minatoku-eureka-a minatoku-eureka-c minatoku-eureka-d
4 agenda 4 &$͔Β&$4 'BSHBUFʹҠߦͨ͠ എܠʙٕज़બఆ ίϯςφߏɾઃܭࢦ
σϓϩΠɺεέʔϦϯά ɺࢹͷ͓ ·ͱΊ
5 ίϯςφԽҎલͷߏ 5 QBDLFS BOTJCMFͰ࡞ͨ͠(PMEFO*NBHFΛ UFSSBGPSNͰల։͢Δӡ༻ *B$
*NNVUBCMF*OGSBTUSVDUVSF ֓ͶσʔλετΞͷ͕Ͱ͖͍ͯΔɻ 8FC4FSWFSͷεέʔϧΞτ༰қɻ ಈ࡞໘ εέʔϥϏϦςΟݎ࿚ੑ େ͖ͳ՝ͳ ͘ฏɻ
6 Q.ͳΜͰίϯςφʹͨ͠ͷʁ 6
7 ࠷ॳͷ͖͔͚ͬɿΠϯϑϥө͕ͭΒ͔ͬͨ 7 QBDLFSCVJMEdຊ൪ө·Ͱͷίετ ඞཁͳશͯͷϞδϡʔϧΛΠϯετʔϧ#VJMEͯ͠HPMEFO*NBHFΛ࡞Δ UFSSBGPSNʹBNJΛөˠ࠷ऴςετ
BVUP4DBMJOH(SPVQͷ૿ݮͰಈ࡞͍ͯ͠ΔαʔόʔΛखಈͰೖΕସ͑Δ ৽چࠞࡏ ͜ͷ··Ͱฏ͕ऴΘͬͯ͠· SZ ׂͱංେԽ͖͍ͯͯ͠ΔQMBZCPPL
8 ίϯςφྑ͍ 8 ϓϩηε୯ҐͰߏஙՄೳ ༻͢ΔϛυϧΣΞಉ࢜Ͱͷґଘੑͷڝ߹ͳͲΛؾʹ͠ͳ͍ͰࡁΉɻ मਖ਼ɾՃʹΑΔӨڹΛڱ͘ग़དྷΔɻ
ػೳՃɾमਖ਼ׂผʹίϯςφ୯ҐͰमਖ਼Ճ͕Մೳ मਖ਼ɾՃͷ୯ҐΛখ͘͞ग़དྷΔɻ ىಈɾഇغ͕ߴ εέʔϧΞτͷ্ JNNVUBCMFJOGSBTUSVDUVSFͷ࣮ફʹద͍ͯ͠Δ ΞϓϦέʔγϣϯΛσϓϩΠ͢ΔΑ͏ͳײ֮ͰΠϯϑϥσϓϩΠ͕Ͱ͖Δɻ ϙʔλϏϦςΟ FUD
9 WebServerΛίϯςφʹͯ͠ΈΑ͏ɻ 9 ՝ϕʔεͳΒίϯςφ͡Όͳͯ͘ղܾͰ͖Δ͚Ͳɺ ΑΓϕλʔͳੈքʹ࣋ͬͯߦ͚ͦ͏ɻ GBSHBUFͳΒ&$ཧෆཁ FDTPOFDͳΒىಈ
ΑΓখ͘͞࡞ΕͯϙʔλϏϦςΟͷ͋Δੈք؍ 8FC4FSWFSͳΒେ͖ͳোนͳ͍ͣ ͣ ฏ࠷ SZ ίϯςφԽ
10 ٕज़બఆ: EKS or ECS on EC2 or ECS on
Fargate 10 ىಈ୯७ͳՁ֨໘Ͱ&$PO&$4 4QPPU'MFFU ͷํ͕༏Ґ͚ͩͲʜ νʔϜͷঠྖҬ͕͍ͷͰɺͳΔ͘ӡ༻ཧ͢ΔίετΛݮΒ͍͖͍ͯͨ͠ɻ 'BSHBUF͕ཧత ࠓ࣌Ͱ&,4ΑΓ&$4ͷํ͕ӡ༻ɾ"84ͷผίϯϙʔωϯτͱͷ࿈ܞ͕ॆ࣮͍ͯ͠Δɻ LVCFSOFUFTັྗత͚ͩͲɺ%BUB1MBOFͷNBOBHFE͖ͯɺ৭ʑރΕ͖ͯͨΒʜ
11 Ͳ͏ઃܭ͍ͯ͜͠͏ʁ 11 ίϯςφԽͷϝϦοτΛڗड͍͢͠ߏΛzͰ͖Δ͚ͩz࠾Δ֤छϕετϓϥΫςΟεͷ࣮ફ 5XFMWFGBDUPS"QQ Ϟμϯͳ8FCΞϓϦέʔγϣϯΛ࣮ݱ͢ΔϕετϓϥςΫΟε
ίϯςφʹݶΒͳ͍ॏཁͳઃܭࢦɻ %PDLFS#FTU1SBDUJDF ίϯςφຖʹ̍ͭͷϓϩηε͚࣮ͩߦ ͳΔ͘খ͘͞ ίϯςφΤϑΣϝϥϧ ໋ Ͱ͋Δ͖ ഇغՄೳͰ͋Δ͜ͱ ΠϝʔδϨΠϠΛ࠷খʹɺෆཁͳͷΛஔ͔ͳ͍ɺFUDʜ
12 ίϯςφߏ 12 جຊ̍ϓϩηε̍ίϯςφ EPDLFSCFTUQSBDUJDF ֤ίϯςφͷͱαΠζΛখ͘͞ɻ
BMQJOFͳͲܰྔͳ*NBHFͷར༻ɺඞཁ࠷ݶ͔͠ೖΕͳ͍ɻ ͋͘·Ͱجຊํɺ͕ผͷΛੜΉ߹ڐ༰ɻ ίϯςφཻʹσϓϩΠཻ ҰͭҰͭͷίϯςφͷϏϧυϦϦʔε୯ҐΛখ͘͞ɻ ࢹɾੳͷػೳཁ݅ʹඞཁͳϓϩηεΛαΠυΧʔԽ 'BSHBUFͷڞ༗ϘϦϡʔϜ ্ݶ(# Λར༻ (#ͪΐͱͭΒ͍ͷͰϩʔςʔτߟྀཁɻ ݱ࣌Ͱ༰ྔؔ࿈ͷϝτϦΫε͕औΕͳ͍ͷͭΒΈɻ ͜ͷ-BZFS͔Β͜ͷΛऔΓ֎ͤΔͱঘྑ͍
13 ϙʔλϏϦςΟ 13 ֎෦Ϧιʔεͱͷ߹ͳͲͷઃఆΛڥมͰೖ 5XFMWF'BDUPS"QQ***ͷ࣮ફ ϙʔλϏϦςΟηΩϡϦςΟΛอͭɻ
&$'BSHBUFىಈλΠϓͱʹɺ"841BSBNFUFS4UPSFͷىಈ࣌ಡΈࠐΈΛαϙʔτɻ ΞϓϦέʔγϣϯଆͰಛʹ෮߸ɾڥมͷઃఆͳͲΛҙࣝͤͣɺڥมͷಡΈࠐΈ͕Մೳ σϓϩΠ؆୯ͰɺUBTLEFpOJUJPOͷઃఆʹߦॻ͚ͩ͘ɻ όʔδϣϯࢦఆͰ͖Δͱঘخ͍͠ ŧŽ
14 σϓϩΠύΠϓϥΠϯ 14 $IBU"QQ $PEF#VJME $PEF%FQMPZ#MVF(SFFO ෦తʹ-#ͷUBSHFU(SPVQͷΓସ͑
DPEF%FQMPZͷఏڙػೳͳͷͰɺ؆୯ͳઃఆͰ ࣮ݱՄೳ σϓϩΠ࣌ͷWFSTJPOࠞࡏΛආ͚ΒΕΔ HSFFOอ࣋ظؒʢdઃఆՄೳ Γ͕͠ߴɻ σϓϩΠࣗମֻ͕͔͍࣌ؒͬͯΔҹ DPEF$PNNJU DPEF1JQF-JOF࿈ܞͰϦϦʔεࣗಈ ԽՄೳɻ
15 εέʔϥϏϦςΟ 15 $MPVE8BUDI"MBSNΛͬͨDQVVUJMJ[BUJPOͷϕʔεͰࣗಈεέʔϧΞτεέʔϧΠϯ w ͦͷ࣌ͷෛՙʹଈͯ͠ඞཁͳྔͷϦιʔεΛదʹ׆༻Ͱ͖Δ w ෳϧʔϧΛΈ߹Θͤͯɺෛՙͷ্ঢ෯ʹԠͯ͡૿ݮΛίϯτϩʔϧɻ w
GBSHBUFىಈΦʔτεέʔϧͷDPPM%PXO ධՁִؒͳͲɺظͷมಈʹର͢Δݶք͋Δɻ ͋Δ࣌ؒଳʹ͓͚ΔTaskભҠ +
16 ࢹ&ϩΪϯά 16 TTI جຊతʹTTI͠ͳ͍ͰࡁΉΑ͏ʹඋ͢Δ ϩάपΓՄೳͳݶΓTUEPVU TUEFSSΛ͏
EFGBVMUͷBXTMPHTܦ༝ͰDMPVE8BUDIʹసૹ ͍͠ͷEBUBEPHʹసૹ ࢹϞχλϦϯά%BUBEPH DQV NFNPSZ BMCMBUFODZ BMC@UBSHFU@YY YY ͜ΕͰμϝͳ͕࣌དྷͨΒߟ͑Δɻ ✖
17 dockerImageͷܰྔԽ 17 ΞϓϦέʔγϣϯίϯςφͷEPDLFS*NBHFʹը૾ؚ·Ε͍ͯΔɻ EPDLFS*NBHF͍ܰʹͨ͜͠ࣄͳ͍ɻ QVTI QVMM্σϓϩΠɺىಈ
εέʔϧΞτͷ ө ΞϓϦέʔγϣϯαʔόʔԼʹ͍ͦͦΔඞཁ͕ͳ͍ɻ ը૾ϦιʔεΛ$MPVE'SPOU 4ʹϗεςΟϯάͯ͠ɺͦͦ *NBHF͔Β֎͢ɻ
18 ϩάసૹΛίϯςφ͔ΒऔΓ֎͢ 18 DMPVE8BUDI ,JOFTJT'JSF)PSTF MBNCEB 1SPT
ίϯςφૹ৴Λߟ͑ͣඪ४ग़ྗʹు͚ͩ͘ͰΑ͘ͳΔ ڞ༗ϘϦϡʔϜ͔Βͷղ์ɻ ϩάૹ৴ͷؔ৺͝ͱमਖ਼Λίϯςφͷ͔ΒऔΓআ͚Δ $POT MBNCEB pSFIPSTFͷίετ૿͑Δ োͷௐ͕ࠪࡶʹͳΒͳ͍͔ɺMBUFODZ໘ͳͲݕূத GBSHBUFͷϩάυϥΠόʔʹqVFOU͕Ճ͞ΕΔͷͰɺෆཁʹͳΔ͔
19 ·ͱΊ 19 'BSHBUFͱίϯςφྑ͍ͷ ΠϯϑϥೖΕସ͑࡞ۀͱΠϯελϯεཧ͔Βͷղ์ɻ Ϋϥελཧͱ͖߹Θͳ͍ͷͰΦʔτεέʔϧָɻ
&$4PO&$ͱൺͨݱ࣌Ͱͷػೳ໘ͷ੍ɺىಈɺՁ֨໘Ͱෆརͳࣄఱṝɻ Ձ֨໘ͰΓ&$ΑΓׂߴɻ3*ʜ ŧŽ ׂผʹίϯςφʹΓग़ͨ͠ࣄͰɺҰͭҰͭͷίϯςφʹର͢Δमਖ਼খ͘͞༰қʹͳͬͨɻ ίϯςφۜͷؙͰͳ͍ɻ ϝϦοτΛ׆͔ͤΔܗʹγεςϜͷߏΞϓϦέʔγϣϯΛม͍͑ͯ͘ඞཁ͋Δɻ 5XFMWF'BDUPS"QQྑ͍ࢦඪɻ ͍͖ͳΓશ෦ແཧͰ
20 WE ARE HIRING :) 20 ໌Δ͍৬Ͱ͢ɻ ίϯςφԽʹݶΒͣϏδωεΛࢧ͑ɺՃͤ͞Δҝͷ৽͍͠ઓɺࢿৗʹܧଓͯ͠·͢
ΧδϡΞϧ໘ஊ͍ͬͯ·͢ͷͰɺ͓ؾܰʹ IUUQTXXXXBOUFEMZDPNDPNQBOJFTFVSFLB
CONFIDENTIAL INFORMATION: Not for Public Distribution - Do Not Copy
CONFIDENTIAL INFORMATION: Not for Public Distribution - Do Not Copy 5IBOLZPV