Slide 1

Slide 1 text

ා͘ͳ͍γεςϜϓϩάϥϛϯά ۙ౻Ӊஐ࿕(.01FQBCP *OD ৽ଔΤϯδχΞ࠲ֶ ίϯςφ͸༑ͩͪʂ

Slide 2

Slide 2 text

ΤϯδχΞ ۙ౻Ӊஐ࿕!VE[VSB ٕज़෦ٕज़ج൫νʔϜ ޷͖ͳϥʔϝϯ͸ΒʔΊΜ޻๪ཾ (.0ϖύϘॴଐ

Slide 3

Slide 3 text

ࠓ೔ͷΞδΣϯμ w ϓϩηεͱ͸ԿͩΖ͏ʁ w ίϯςφͱ͸ԿͩΖ͏ʁ w ΈΜͳ΋ίϯςφʹͳͬͯΈΑ͏ʁʁʁ

Slide 4

Slide 4 text

ϓϩηεͱ͸ʁ

Slide 5

Slide 5 text

'SPN෼ް͍ຊ w-*/69ϓϩάϥϛϯάΠϯλʔϑΣʔε
 ΦϥΠϦʔ ͜ͷதͰ΋Ұ൪෼ް͍ຊ

Slide 6

Slide 6 text

ϓϩηεͱ͸ϓϩάϥϜͷ࣮ߦதͷ࢟Ͱ͢ ʮϓϩηεͱ͸ɺϓϩάϥϜͷ࣮ߦʹඞཁ ͳγεςϜϦιʔεΛׂΓ౰ͯΔͨΊɺΧʔ ωϧ͕ఆٛ͢Δந৅ΤϯςΟςΟͰ͋Δʯͱ ΋ݴ͍׵͑ΒΕ·͢ɻ ʰ-JOVYϓϩάϥϛϯάΠϯλʔϑΣʔεʱষϓϩηε

Slide 7

Slide 7 text

ϓϩηεͱ৮Ε߹͏ wʮϓϩάϥϜͷ࣮ߦʹඞཁͳϦιʔεʯΛ೷͍ͯΈΔ wͦΕ͕ɺ͢ͳΘͪϓϩηεଐੑͰ΋͋Δ wྫ w 1*%ɺ਌1*% w εςʔλεʢ࣮ߦՄೳɺ*0଴ͪɺʣ w ؀ڥม਺ w ϑΝΠϧσΟεΫϦϓλςʔϒϧ w 6TFS*%(SPVQ*% w ݖݶʢ,FSOFM$BQBCJMJUZʣ w ΧϨϯτσΟϨΫτϦ w ϝϞϦϚοϐϯά

Slide 8

Slide 8 text

TUSVDUUBTL@TUSVDU

Slide 9

Slide 9 text

QSPDQSPDGT wγεςϜ΍ϓϩηεͷ৘ใΛऔಘͰ͖ΔಛघϑΝΠϧγεςϜ wQSPDͷԼʹ࠷ॳ͔ΒϚ΢ϯτ͞Ε͍ͯΔ৔߹͕ଟ͍ɻ wϚ΢ϯτ͞Ε͍ͯͳ͍ͱ࢖͑ͳ͍πʔϧ΋͋ΔʢQTɺUPQͦͷଞʣ

Slide 10

Slide 10 text

த਎ΛݟͯΈΑ͏ wԋश ௕͘ଘࡏ͢ΔΑ͏ͳϓϩηεΛ࡞ͬͯΈΑ͏ɻ w ͦͷϓϩηεͷ1*%Λಛఆ͠Α͏ɻ w ͦͷϓϩηεʹ͍ͭͯɺҎԼͷ৘ใΛऔಘͯ͠ΈΑ͏ɻ w ΧϨϯτσΟϨΫτϦ IJOUQSPD1*%DXE w ؀ڥม਺ IJOUQSPD1*%FOWJSPO w ϝϞϦϚοϐϯά IJOUQSPD1*%NBQT w εϨουͷ਺ IJOUQSPD1*%UBTL

Slide 11

Slide 11 text

ίϯςφͱ͸ʁ

Slide 12

Slide 12 text

Ծ૝ԽͷछྨʢҰྫʣ wϋΠύʔόΠβܕʢωΠςΟϒϋΠύʔόΠβʣ wઐ༻ͷ04΍ɺ-JOVY,FSOFMࣗମΛϋΠύʔόΠβͱͯ͠࢖͍ɺͦͷ ্Ͱ04Λ૸ΒͤΔ wϗετ04ܕʢϗετϋΠύʔόΠβʣ w൚༻తͳ04ͷ্ʹɺ7JSUVBM#PYͷΑ͏ͳԾ૝ԽͷͨΊͷઐ༻ιϑτ ΢ΣΞΛೖΕͯ૸ΒͤΔ wίϯςφܕˠ

Slide 13

Slide 13 text

ίϯςφͱ͸ wখ͞ͳಠཱͨ͠؀ڥΛɺҰͭͷ04ͷ্ʹ࡞Δٕज़ɻ wͨͩ͠ɺԾ૝Խٕज़ͷΑ͏ʹѻΘΕΔ͕ɺԿ͔ΛԾ૝తʹ࡞͍ͬͯΔ ͱ͍͏͜ͱͰ͸ͳ͍

Slide 14

Slide 14 text

ίϯςφ͸ ಛघͳϓϩηεͰ͋Δ

Slide 15

Slide 15 text

͜Ε͚֮ͩ͑ͯؼͬͯ͘Εʂʂ̍

Slide 16

Slide 16 text

ίϯςφͷ࣮૷ w%PDLFS(PMBOH੡ɻ,VCFSOFUFTͳͲͱ࿈ܞ͠ɺঃʑʹ׆༻γʔϯ ͕޿·͍ͬͯΔ w-9$-9%ΧʔωϧͷίϯςφϨϑΝϨϯε࣮૷తཱͪҐஔɻ$੡ w)BDPOJXBNSVCZ$ݴޠͰͰ͖ͨίϯςφɻ3VCZͷ%4-Ͱίϯ ςφΛఆٛͰ͖Δɻ(.0ϖύϘͱ͍͏ձ͕ࣾϚωʔδυΫϥ΢υͷ όοΫΤϯυʹ࠾༻͠࿩୊ʹɻ

Slide 17

Slide 17 text

ίϯςφ͸Ͳ͏΍ͬͯ࡞ΒΕ͍ͯΔ͔ wࠓ͋͛ͨ-JOVYίϯςφͷ࣮૷Ͱ͸ɺجຊతʹಉ͡ΧʔωϧͷػೳΛ ૊Έ߹Θͤͯɺʮখ͘͞ಠཱͨ͠؀ڥʯΛ࡞͍ͬͯΔɻ wͦͷػೳ͕ద༻͞Ε͍ͯΔ͔͍ͳ͍͔͸ɺϓϩηεͷଐੑͰ΋͋Δͷ ͰɺQSPDͷԼͳͲ͔Β֬ೝ͢Δ͜ͱ͕Ͱ͖·͢

Slide 18

Slide 18 text

%PDLFSͰίϯςφΛ࡞ͬͯΈΑ͏

Slide 19

Slide 19 text

QSPD1*%OTͷԼΛݟͯΈΑ͏

Slide 20

Slide 20 text

͜Ε͸ɺଞͷϓϩηεͱҧ͍ͬͯΔ wͱ͍͏͜ͱΛ֬ೝ͢Δ

Slide 21

Slide 21 text

͜Ε͸ɺଞͷϓϩηεͱҧ͍ͬͯΔ wͱ͍͏͜ͱΛ֬ೝ͢Δ ◀ ◀ ◀ ◀ ◀

Slide 22

Slide 22 text

-JOVY/BNFTQBDF

Slide 23

Slide 23 text

-JOVY/BNFTQBDFͱ͸ wΧʔωϧ͸ɺάϩʔόϧͰ؅ཧ͍ͯ͠ΔϦιʔε͕ͨ͘͞Μ͋Δɻ wͦ͏͍͏Ϧιʔεͷ͏ͪҰ෦͸ɺ໊લۭؒΛ੾ͬͯɺಛఆͷϓϩηε ͨͪͷͨΊʹผͷϦιʔεΛ֬อ͢Δ͜ͱ͕Ͱ͖Δ w654/BNFTQBDFϗετ໊ͳͲ w1*%/BNFTQBDFϓϩηε*% w/FUXPSL/BNFTQBDFωοτϫʔΫઃఆʢ/*$ଞʣ wͳͲͳͲɻ࠷৽ͷ-JOVYͰ͸ਓͷࣆͭͷ/BNFTQBDF

Slide 24

Slide 24 text

QSPD1*%OTͱ͸ wʮͦͷϓϩηε͕ॴଐ͢Δ/BNFTQBDFΛදݱ͢ΔϑΝΠϧʯΛ
 ݟ͚ͭΔ͜ͱ͕Ͱ͖ΔσΟϨΫτϦ w͋Δϓϩηεͱɺผͷϓϩηε͕ҧ͏ϑΝΠϧʢJOPEF൪߸ʣΛ
 ͍ࠩͯ͠Ε͹ɺͦͷϓϩηεͨͪ͸ผʑͷ໊લۭؒʹ͍ΔͶɺ
 ͱ֬ೝͰ͖Δ

Slide 25

Slide 25 text

DHSPVQ

Slide 26

Slide 26 text

QSPD1*%DHSPVQͱ͍͏ϑΝΠϧ wͳʹ΍Βಛघͳจࣈྻ͕ॻ͔Ε͍ͯΔ

Slide 27

Slide 27 text

࣮ࡍͷσΟϨΫτϦʹରԠ͢Δ wTZTGTDHSPVQͱ͍͏ͱ͜ΖΛௐ΂Δͱ

Slide 28

Slide 28 text

͜Ε͕DHSPVQ wDHSPVQ͸ɺ΋ͱ΋ͱϓϩηεΛάϧʔϐϯά͢ΔͨΊͷػೳɻ wϓϩηεͷάϧʔϓຖʹɺ$16ͷར༻཰Ͱ͋ͬͨΓɺϝϞϦͰ͋ͬͨ Γɺ1*%ͷ਺Ͱ͋ͬͨΓɺͷ੍ݶΛ͔͚Δ͜ͱ͕Ͱ͖Δɻ͋Δ͍͸ɺ άϧʔϓผͷར༻ঢ়گΛ֬ೝͨ͠Γ΋Ͱ͖Δ wDHSPVQʹؔ͢Δૢ࡞͸ɺDHSPVQGTͱ͍͏ಛघϑΝΠϧγεςϜΛ ܦ༝ͯ͠Ͱ͖Δ

Slide 29

Slide 29 text

࣮ࡍͷ੍ݶΛ֬ೝ •docker run --pids-limit=128 -ti debian:jessie /bin/bash wͷΑ͏ͳίϚϯυͰɺϓϩηε਺ͷDHSPVQ੍ݶΛ͔͚ΒΕΔ w͜ͷγΣϧͰɺGPSLCPNC߈ܸΛͯ͠΋ɺؼͬͯ͘Δ

Slide 30

Slide 30 text

No content

Slide 31

Slide 31 text

ΈΜͳ΋ίϯςφʹ ͳͬͯΈΑ͏ʁʁʁ

Slide 32

Slide 32 text

͜͜·Ͱͷ·ͱΊ wίϯςφ͸ͨͩͷ ϓϩηεɻා͘ͳ͍Αʂ

Slide 33

Slide 33 text

ͱ͍͏͜ͱͰ wίϯςφΛܰʙ͘ϋϯυϝΠυͯ͠Έ·͠ΐ͏͔ɻ

Slide 34

Slide 34 text

ಠཱͨ͠SPPUʹ͸͍Δ wEFCPPUTUSBQͱݴ͏ίϚϯυͰɺ%FCJBOͷϑΝΠϧγεςϜ͚ͩΛ
 ४උͰ͖Δɻ wDISPPUͱݴ͏ίϚϯυͰɺͦͷதʹೖΔ͜ͱ͕Ͱ͖·͢ w ࣮͸%PDLFSͳ͠Ͱ΋ɺ6CVOUV౳ͷதͰ%FCJBO؀ڥΛಘΔ͜ͱ͸Ͱ͖Δ mkdir /root/7th-engineer debootstrap --variant=minbase \ jessie \ /root/7th-engineer \ http://ftp.jp.debian.org/debian

Slide 35

Slide 35 text

No content

Slide 36

Slide 36 text

/BNFTQBDFΛ෼཭͢Δ wVOTIBSFͱݴ͏ίϚϯυΛ࢖͏ͱͰ͖Δ •unshare --fork --pid --mount --uts wͷΑ͏ʹͯ͠ɺ1*%OBNFTQBDFɺ.PVOU/BNFTQBDFɺ654 /BNFTQBDFΛ෼཭Ͱ͖Δ

Slide 37

Slide 37 text

DHSPVQͷ੍ݶΛ͔͚Δ w৽͍͠DHSPVQ͸ɺ
 NLEJSͳͲͰ؆୯ʹ࡞ΕΔ wࣗ෼Λॴଐͤ͞Δʹ͸ɺUBTLTͱ͍͏ϑΝΠϧʹࣗ෼ͷ1*%Λॻ͖ࠐ Ί͹0,ɻ •echo $$ > /sys/fs/cgroup/cpu/7th-engineer/tasks

Slide 38

Slide 38 text

Ұ࿈ͷॲཧΛͭͳ͛Δɻॱ൪஫ҙ mkdir -p /sys/fs/cgroup/cpu/7th-engineer unshare --fork --pid --mount --uts echo $$ > /sys/fs/cgroup/cpu/7th-engineer/tasks chroot /root/7th-engineer cd / mount -t proc proc /proc hostname 7th-engineer.example bash -l ʮ͓·͡ͳ͍ʯతॲཧΛ௥Ճɻ্͔Βೖྗ࣮ͯ͠ߦͯ͠ΈΑ͏

Slide 39

Slide 39 text

͜Ε͸ίϯςφʁ wγεςϜ͕%FCJBOͰ͋Δ wϓϩηε͕ಠཱ͍ͯ͠Δ wϗετ໊΋ҧ͏

Slide 40

Slide 40 text

ԋशͦͷ w ઌ΄Ͳͷʮࣗ࡞ίϯςφʯʹ͍ͭͯɺ
 ผͷλʔϛφϧ͔ΒϗετʹೖΓɺҎԼΛ͔֬ΊͯΈΑ͏ɻ w ϗετ͔Βݟͯίϯςφ͕ʮϓϩηεʯͰ͋Δ͜ͱ w 1*%ɺ.PVOUɺ654/BNFTQBDF͕෼཭͍ͯ͠Δ͜ͱ w ίϯςφ಺Ͱ$16Λ͍͘Β࢖ͬͯ΋ɺϗετͷ$16Λ͔͠ ࢖Θͳ͘ͳΔΑ͏ɺDHSPVQΛઃఆͯ͠ΈΑ͏ɻ·ͨɺ֬ೝ͠Α͏
 IJOUIUUQTBDDFTTSFEIBUDPNEPDVNFOUBUJPOKB+13FE@)BU@&OUFSQSJTF@-JOVY [email protected]@(VJEFTFDDQVIUNM

Slide 41

Slide 41 text

·ͱΊ

Slide 42

Slide 42 text

֮͑ͱ͘͜ͱͭ w-JOVYʹ͓͍ͯ͸ɺϓϩηεʹؔ͢Δͨ͘͞Μͷ৘ใ͕QSPDͷԼʹ ͋Δ͜ͱ w-JOVYίϯςφ͸ɺΧʔωϧͷϦιʔεʮ෼཭ʯͱʮ੍ݶʯͷػೳΛ ࢖ͬͨϓϩηεͰ͋Δ͜ͱ

Slide 43

Slide 43 text

֮͑ͱ͘͜ͱͭ w-JOVYʹ͓͍ͯ͸ɺϓϩηεʹؔ͢Δͨ͘͞Μͷ৘ใ͕QSPDͷԼʹ ͋Δ͜ͱ w-JOVYίϯςφ͸ɺΧʔωϧͷϦιʔεʮ෼཭ʯͱʮ੍ݶʯͷػೳΛ ࢖ͬͨϓϩηεͰ͋Δ͜ͱ wͲΜͳʹ೉ͦ͠͏ͳπʔϧͰ΋ɺ୭͔͕ॻ͍ͨ΋ͷͰ͋Γɺ
 ͦͯ͠044Ͱ͋ΔݶΓ͸த਎Λਂ͘஌Δ͜ͱ͕Ͱ͖Δͱ͍͏͜ͱ

Slide 44

Slide 44 text

ࠓ೔࿩͞ͳ͔ͬͨ͜ͱ wίϯςφؔ࿈ͷͦͷଞͷػೳͷօ͞Μ wQJWPU@SPPU w,FSOFM$BQBCJMJUZ w3FTPVSDF-JNJU SMJNJU wTFDDPNQ#1' w."$ 4&-JOVY"QQ"SNPS ΍-JOVY4FDVSJUZ.PEVMFT -4.

Slide 45

Slide 45 text

͞ΒͳΔਂΈ w͋ͷ!SZΛҭͯͨ ڈ೥ͷ࠲ֶࢿྉ wIUUQTTQFBLFSEFDLDPNVE[VSBUIFTLFMUPOPGXIBMFT