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
11k
平成最後なのでEC2からECS+Fargateに 置き換えた話
marnie0301
May 21, 2019
Tweet
Share
More Decks by marnie0301
See All by marnie0301
SRENEXT2022 組織にSREを実装していくまでの道のり
marnie0301
2
7.6k
EurekaのSREチームの実践してきた事と未来像
marnie0301
1
7.7k
[20210617 そろそろマネージド、クラウドネイティブで行こう! コンテナサービスへの移行祭り]Pairs, PairsエンゲージにおけるECS Fargateの移行・活用事例
marnie0301
1
280
Other Decks in Technology
See All in Technology
依存パッケージの更新はコツコツが勝つコツ! / phpcon_nagoya2025
blue_goheimochi
3
200
Cracking the Coding Interview 6th Edition
gdplabs
14
28k
2025-02-21 ゆるSRE勉強会 Enhancing SRE Using AI
yoshiiryo1
1
460
Swiftの “private” を テストする / Testing Swift "private"
yutailang0119
0
140
コンピュータビジョンの社会実装について考えていたらゲームを作っていた話
takmin
1
570
JavaにおけるNull非許容性
skrb
1
880
Perlの生きのこり - エンジニアがこの先生きのこるためのカンファレンス2025
kfly8
1
240
Exadata Database Service on Cloud@Customer セキュリティ、ネットワーク、および管理について
oracle4engineer
PRO
2
1.5k
わたしがEMとして入社した「最初の100日」の過ごし方 / EMConfJp2025
daiksy
13
3.8k
Iceberg Meetup Japan #1 : Iceberg and Databricks
databricksjapan
0
290
PHPカンファレンス名古屋-テックリードの経験から学んだ設計の教訓
hayatokudou
2
530
OPENLOGI Company Profile for engineer
hr01
1
20k
Featured
See All Featured
Bash Introduction
62gerente
611
210k
Building Adaptive Systems
keathley
40
2.4k
Building Better People: How to give real-time feedback that sticks.
wjessup
367
19k
Distributed Sagas: A Protocol for Coordinating Microservices
caitiem20
330
21k
How to Think Like a Performance Engineer
csswizardry
22
1.4k
Embracing the Ebb and Flow
colly
84
4.6k
Site-Speed That Sticks
csswizardry
4
400
Automating Front-end Workflow
addyosmani
1368
200k
What’s in a name? Adding method to the madness
productmarketing
PRO
22
3.3k
It's Worth the Effort
3n
184
28k
CSS Pre-Processors: Stylus, Less & Sass
bermonpainter
356
29k
Sharpening the Axe: The Primacy of Toolmaking
bcantrill
40
2k
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