さくらインターネットでは ISUCON9 (Iikanjini Speed Up Contest) のポータルサイトと本戦の問題作成を担当しました。 ポータルサイトも本戦の問題もDockerを使ってデプロイしています。
ISUCON9でのサーバ運用をテーマに、大規模ではない環境でDockerを使うメリットとノウハウを共有します。 テーマ:Docker Compose・Minikube
Docker-),ISUCON8;39.2019-11-05@+*1/0Docker/Kubernetes625 #2( !$%'#&%#'%"+*12:3;745 CISO
View Slide
2*+-,03I;JA # $'! CISO*(+• -,0/VPSAPI/DB/89=F• sakura.io[email protected])C1JF452(89=F&%)(3ICG&%)• 89=F/>J;:I;J"*./+• CSAJ U22DH6GEI67I=9? • Home NOC Operators’ Group (AS59105)
37&8• [email protected]= (W5) / NHKUNBV• 1/3#.• • 12"$#-• SECCON CTF 2014 4• ISUCON5/ISUSON7/ISUCON86ISUCON94• ICTSC7 GXP708• FKI>?=?VDJ=• NW/SC/DBEMCQTEI• +)(/%;,;FKI>?=7*8'/ /!/3/LUASOVA/:<99
4• *46$0/ͱ• ϙʔλϧαΠτͷΈ• ։ൃͰ%PDLFS$PNQPTFΛ͏• σϓϩΠʹ%PDLFS$PNQPTFΛ͏• %PDLFS $PNQPTFͰͷ՝• σϓϩΠʹ,VCFSOBUFTΛ͏• *46$0/ͷΛ%PDLFS$PNQPTFͰఏڙ͢Δ• ·ͱΊ
2019/11/5 ©SAKURA internet Inc. 5*46$0/ͱ
6• ఏڙ͞ΕͨΣϒΞϓϦέʔγϣϯΛߴԽ͢Δ• -*/&ओ࠵Ͱ͔Β։࠵• ۚສԁ
7
8
9
10
11
12
2019/11/5 ©SAKURA internet Inc. 13*46$0/ϙʔλϧαΠτͱ
14• (JU)VCೝূ• νʔϜࢀՃొ• ϝϯόʔͷՃ• ΞΠίϯొ• "MJCBCB$MPVEΞΧϯτ*%ొ ༧બͷΈ• ίϯςετ༻04Πϝʔδڞ༗ ༧બͷΈ• ϕϯνϚʔΫ࣮ߦ• είΞάϥϑɾϥϯΩϯάදࣔ
15
16• ϕϯνϚʔΫ࣮ߦ• δϣϒͷೖ νʔϜ͔Β• ϕϯνϚʔΧʔͷδϣϒͷׂΓͯ• ϩάͷ݁Ռදࣔ
17
18
2019/11/5 ©SAKURA internet Inc. 19*46$0/ϙʔλϧͷΈ
20/HJOYEKBOHP3FEJTHJUIVCDPN1PTUHSF42-P"VUIೝূ
21• /HJOY• ϦόʔεϓϩΩγͱ੩తϑΝΠϧ৴• %KBOHP• 8FCΞϓϦέʔγϣϯຊମ• 3FEJT• άϥϑσʔλͷΩϟογϡ• 1PTUHSF42-• σʔλϕʔε
22IUUQTHJUIVCDPNJTVDPOJTVDPOGJOBMIUUQTHJUIVCDPNJTVDPOJTVDPOQPSUBM
2019/11/5 ©SAKURA internet Inc. 23։ൃʹ%PDLFS$PNQPTFΛ͏
24• ։ൃڥखݩͷNBD04ͳͲ• ͍ΖΜͳ։ൃΛฒߦͯ͠ߦ͏ͨΊɺڥߏங͕େม• σʔλϕʔεɺ3FEJTɺ1ZUIPOͷόʔδϣϯɺFUDʜ• %PDLFS $PNQPTFΛ͏͜ͱͰ؆୯ʹ• ίϯςφΛ͏ͨΊಠཱͨ͠ڥ͕༻ҙͰ͖Δ• ଞͷڥʹӨڹ͠ͳ͍ɺյ͞ͳ͍• ॳΊ࣮ͯߦ͢ΔਓίϚϯυͭ• AEPDLFSDPNQPTFCVJMEAAEPDLFSDPNQPTFVQAͷΈ• EPDLFSDPNQPTFZNMʹશͯॻ͍ͯ͋Δ• আҰߦ AEPDLFSDPNQPTFSNA
25• HJU DMPOF HJU!HJUIVCDPNJTVDPOJTVDPOQPSUBMHJU• DE JTVDPOQPSUBM• EPDLFSDPNQPTFCVJME• EPDLFSDPNQPTF VQ• IUUQMPDBMIPTU Λ։͘
2019/11/5 ©SAKURA internet Inc. 27%PDLFS$PNQPTFͰͷσϓϩΠ
28%PDLFS$PNQPTFͱ4ZTUFNEΛ͏• ύοέʔδͷΠϯετʔϧ• EPDLFS EPDLFSDPNQPTF• ιʔείʔυΛ࣋ͬͯདྷΔ• EPDLFSDPNQPTFZNM ؚ͕·Ε͍ͯΔ• 4ZTUFNEʹαʔϏεొ͢Δ
29• ιʔείʔυߋ৽ͷ࣌ʹɺμϯλΠϜ͕ൃੜ͢Δ• ΄Ͳ͕ͩɺίϯςετதӨڹେˣϩʔϦϯάΞοϓσʔτ͋Δ͍ϒϧʔɾάϦʔϯσϓϩΠ͕ཉ͍͠
2019/11/5 ©SAKURA internet Inc. 30,VCFSOBUFTͰͷσϓϩΠ
31• ,VCFOBUFTͷΠϯετʔϧ• ͜Ε͕େม• NJOJLVCFͳΒ؆୯• ιʔείʔυΛ࣋ͬͯདྷΔ• LVCFDUM BQQMZίϚϯυͰઃఆΛಡΈࠐΉ• ΠϝʔδͷόʔδϣϯΛม͑ΔͱϩʔϦϯάΞοϓσʔτ͞ΕΔ
32• ઃఆ• 4FDSFUϦιʔεΛ࡞• ֤छίϯςφ• %FQMPZNFOUϦιʔε࡞• /HJOYɺ%KBOHPɺ3FEJTɺ1PTUHSF42-• %KBOHP3FQMJDBʹϨϓϦΧΛࢦఆ• )551OPEF1PSUͰ4FSWJDFϦιʔε࡞• ӬଓԽσʔλ• IPTU1BUIͰ1FSTJTUFOU7PMVNFΛ࡞• σʔλϕʔεɺΞοϓϩʔυϑΝΠϧɺ੩తϑΝΠϧ
33NginxNginx Service Portal ServiceDjangoDjangoDjangoDjangoDjangoDjangoDjangoNginxPostgreSQLRedisdbdatastaticfiles mediafilesPodServicePV.JOJLVCF
2019/11/5 ©SAKURA internet Inc. 34%PDLFS$PNQPTFͰͷͷσϓϩΠ
935ଟݴޠͰఏڙ͞ΕΔ• (PMBOHɺ1ZUIPOɺ1FSMɺ1)1 ຊઓͷ߹• ҰͭͷαʔόʹશݴޠͷڥΛೖΕΔඞཁ͕͋Δ• ࢀՃऀ͕؆୯ʹݴޠΛΓସ͑Δ͜ͱ͕Ͱ͖Δˣ%PDLFS$PNQPTF4ZTUFNE Ͱ σϓϩΠ
936ݴޠຖʹ%PDLFSGJMFͱEPDLFSDPNQPTFϑΝΠϧΛ࡞͢Δ
937ݴޠຖʹTFSWJDFϑΝΠϧΛ༻ҙ͢Δ
38ίϯςφΛ͏ͱ։ൃڥͷڞ༗ָ͕ʹͳΔEPDLFSDPNQPTFখ͞ͳσϓϩΠʹ͑Δ,VCFSOBUFTγϯάϧϊʔυͰ͏ҙٛ͋ΔίϯςφΛීஈ͔ΒΘͳ͍खແ͍
39ϩʔϦϯάΞοϓσʔτ%PDLFS4XBSNͰͰ͖Δͣ