Share
Embed
エンジニアの持つ「不安」に立ち向かう 〜 僕らにできること/gbdaitokai-2017
合同勉強会 in 大都会岡山 -2017 Winter-( https://gbdaitokai.connpass.com/event/58025/ )で使用した発表資料です。
Daisuke Inoue
December 23, 2017
Transcript
41 slides
-
ΤϯδχΞͷ࣋ͭʮෆ҆ʯʹ ཱ͔ͪ͏ ʙ ΒʹͰ͖Δ͜ͱ ʙ גࣜձࣾͯͳɹҪ্େีʢ@a_know ʣ 2017-12-23 ߹ಉษڧձ in
େձԬࢁ -2017 Winter-ɹɹɹɹɹɹɹɹɹɹɹɹɹɹɹɹɹɹɹɹɹɹɹɹɹɹɹɹɹɹɹɹɹɹɹɹɹɹɹɹɹɹ 1 -
ࣗݾհ • Ҫ্େีʢ@a_know / Hatena id:a-know ʣ • ԬࢁݝԬࢁࢢग़ •
גࣜձࣾͯͳ MackerelνʔϜ CREʢCustomer Reliability Engineerʣ • ུྺ • ܥSIerʹ৽ଔೖࣾʢ20064݄ʣ • ιʔγϟϧήʔϜܥόοΫΤϯυΤϯδχΞɺBtoB WebΞϓϦέʔγϣ ϯΤϯδχΞΛܦͯݱ৬ 2017-12-23 ߹ಉษڧձ in େձԬࢁ -2017 Winter-ɹɹɹɹɹɹɹɹɹɹɹɹɹɹɹɹɹɹɹɹɹɹɹɹɹɹɹɹɹɹɹɹɹɹɹɹɹɹɹɹɹɹ 2 -
Mackerel ͱ • ͯͳ͕։ൃɾఏڙ͍ͯ͠ΔαʔόʔཧɾࢹΫϥυαʔϏεʢSaaSʣ • 2001ۀͷWebاۀɾͯͳ ͕ഓ͖ͬͯͨαʔόʔཧɾࢹɾӡ༻ͷ ϊϋΛɺ੯͠Ή͜ͱͳ͍͘Ͱ͍ΔϓϩμΫτ • ಛ
• ؍తͳ UI / UX • 1Ͱऴ͑ΒΕΔ΄Ͳ؆୯ͳηοτΞοϓ • ϩʔϯνҎ߱3ؒ ຖि࿈ଓϦϦʔεɹͳͲ 2017-12-23 ߹ಉษڧձ in େձԬࢁ -2017 Winter-ɹɹɹɹɹɹɹɹɹɹɹɹɹɹɹɹɹɹɹɹɹɹɹɹɹɹɹɹɹɹɹɹɹɹɹɹɹɹɹɹɹɹ 4 -
ΤϯδχΞͷ࣋ͭʮෆ҆ʯ • ͍Ζ͍Ζ͋Δ • όά • ো • ݈߁ •
etc. 2017-12-23 ߹ಉษڧձ in େձԬࢁ -2017 Winter-ɹɹɹɹɹɹɹɹɹɹɹɹɹɹɹɹɹɹɹɹɹɹɹɹɹɹɹɹɹɹɹɹɹɹɹɹɹɹɹɹɹɹ 6 -
ΤϯδχΞͷ࣋ͭʮෆ҆ʯ • ͍Ζ͍Ζ͋Δ • όά • ো • ݈߁ ←
• etc. 2017-12-23 ߹ಉษڧձ in େձԬࢁ -2017 Winter-ɹɹɹɹɹɹɹɹɹɹɹɹɹɹɹɹɹɹɹɹɹɹɹɹɹɹɹɹɹɹɹɹɹɹɹɹɹɹɹɹɹɹ 7 -
ͦͷ݁ՌͲ͏Ͱ͔ͨ͠ʁ • ྫ͑ɺ݈߁அͷ݁Ռ͕ҎԼͷ5छྨʹྨ͞ΕΔͱͯ͠... 1. ਖ਼ৗ 2. ཁҙ 3. ཁ؍ 4.
ཁਫ਼ີݕࠪ 5. ଈೖӃ 2017-12-23 ߹ಉษڧձ in େձԬࢁ -2017 Winter-ɹɹɹɹɹɹɹɹɹɹɹɹɹɹɹɹɹɹɹɹɹɹɹɹɹɹɹɹɹɹɹɹɹɹɹɹɹɹɹɹɹɹ 10 -
͠ࢲ͕ʰ3. ཁ؍ʱͩͬͨ߹ • ͜ΜͳΛͲ͏ࢥ͍·͔͢ʁ • ʮ͓େࣄʹ...ʯ • ʮϚγͳํͰ͢Ͷʯ • ʮ·ͩ·ͩΠέΔʯ
• etc. 2017-12-23 ߹ಉษڧձ in େձԬࢁ -2017 Winter-ɹɹɹɹɹɹɹɹɹɹɹɹɹɹɹɹɹɹɹɹɹɹɹɹɹɹɹɹɹɹɹɹɹɹɹɹɹɹɹɹɹɹ 11 -
ͦͷ݁Ռ...... • ύλʔϯA • Ұࡢʰ4. ཁਫ਼ີݕࠪʱ • ڈʰ4. ཁਫ਼ີݕࠪʱ •
ࠓʰ3. ཁ؍ʱ ← • ύλʔϯB • Ұࡢʰ1. ਖ਼ৗʱ • ڈʰ1. ਖ਼ৗʱ • ࠓʰ3. ཁ؍ʱ ← 2017-12-23 ߹ಉษڧձ in େձԬࢁ -2017 Winter-ɹɹɹɹɹɹɹɹɹɹɹɹɹɹɹɹɹɹɹɹɹɹɹɹɹɹɹɹɹɹɹɹɹɹɹɹɹɹɹɹɹɹ 13 -
ͦͷ݁Ռ...... • ύλʔϯA ͩͬͨͳΒ • ͪΐͬͱͣͭྑ͘ͳ͖ͬͯͯΔʁ • ύλʔϯB ͩͬͨͳΒ •
͜ͷ··Ͱ·͍ͣ 2017-12-23 ߹ಉษڧձ in େձԬࢁ -2017 Winter-ɹɹɹɹɹɹɹɹɹɹɹɹɹɹɹɹɹɹɹɹɹɹɹɹɹɹɹɹɹɹɹɹɹɹɹɹɹɹɹɹɹɹ 14 -
ఆظతɾܧଓతͳड͕େࣄ • ͜ͷ1ͷա͝͠ํ͕݈߁ʹ༩͑ͨӨڹ • ͜͏1ΛͲͷΑ͏ʹա͍͖͔ͯ͘͝͠ • ......ͱ͍͏͜ͱΛΔ্Ͱ͔ܽͤͳ͍ͷ 2017-12-23 ߹ಉษڧձ in
େձԬࢁ -2017 Winter-ɹɹɹɹɹɹɹɹɹɹɹɹɹɹɹɹɹɹɹɹɹɹɹɹɹɹɹɹɹɹɹɹɹɹɹɹɹɹɹɹɹɹ 16 -
ΤϯδχΞͷ࣋ͭʮෆ҆ʯ • ͍Ζ͍Ζ͋Δ • όά ← • ো • ݈߁
• etc. 2017-12-23 ߹ಉษڧձ in େձԬࢁ -2017 Winter-ɹɹɹɹɹɹɹɹɹɹɹɹɹɹɹɹɹɹɹɹɹɹɹɹɹɹɹɹɹɹɹɹɹɹɹɹɹɹɹɹɹɹ 17 -
ʮόάʯͱ͍͏ෆ҆ͷର߅ࡦ • ςετʂ • ҰੲલʹൺʮίʔυΛॻ͘ͱ͖ςετॻ͘ʯ͜ͱ Ұൠతͱͳͬͨ 2017-12-23 ߹ಉษڧձ in େձԬࢁ
-2017 Winter-ɹɹɹɹɹɹɹɹɹɹɹɹɹɹɹɹɹɹɹɹɹɹɹɹɹɹɹɹɹɹɹɹɹɹɹɹɹɹɹɹɹɹ 18 -
ςετܧଓతʹ͓͜ͳ͏͜ͱ͕ॏཁ • CIʢContinuous Integration / ܧଓతΠϯςάϨʔγϣϯʣͷɹ ࣮ࢪ • ίʔυʹมߋ͕ೖΔɺʢࣗಈతʹʣςετ࣮ߦΛ͓͜ͳ͏ •
Ϗϧυ͕յΕͨͱ͖ʹɺ͙͢ʹؾͮ͘͜ͱ͕Ͱ͖Δ • ͦΕΛิॿͯ͘͠ΕΔπʔϧɾαʔϏεɺࠓͨ͘͞Μɻ • Jenkins, CircleCI, TravisCI, etc. 2017-12-23 ߹ಉษڧձ in େձԬࢁ -2017 Winter-ɹɹɹɹɹɹɹɹɹɹɹɹɹɹɹɹɹɹɹɹɹɹɹɹɹɹɹɹɹɹɹɹɹɹɹɹɹɹɹɹɹɹ 19 -
ΤϯδχΞͷ࣋ͭʮෆ҆ʯ • ͍Ζ͍Ζ͋Δ • όά • ো ← • ݈߁
• etc. 2017-12-23 ߹ಉษڧձ in େձԬࢁ -2017 Winter-ɹɹɹɹɹɹɹɹɹɹɹɹɹɹɹɹɹɹɹɹɹɹɹɹɹɹɹɹɹɹɹɹɹɹɹɹɹɹɹɹɹɹ 20 -
ͰʮোʯͲ͏͔ʁ • ͍ΘΏΔʮγεςϜোʯʮαʔϏεোʯΛࢦ͢ • γεςϜαʔϏε͕ਖ਼ৗʹɾշదʹར༻Ͱ͖ͳ͍ঢ়ଶ 2017-12-23 ߹ಉษڧձ in େձԬࢁ -2017
Winter-ɹɹɹɹɹɹɹɹɹɹɹɹɹɹɹɹɹɹɹɹɹɹɹɹɹɹɹɹɹɹɹɹɹɹɹɹɹɹɹɹɹɹ 21 -
γεςϜαʔϏε͕ਖ਼ৗʹར༻Ͱ͖ͳ͍ঢ়ଶ • ͦͷཧ༝͞·͟· • αʔόʔμϯ • αʔόʔϦιʔεͷෆɾރׇ • ϓϩηεɾαʔϏεͷμϯ •
ΞϓϦέʔγϣϯΤϥʔ • etc. 2017-12-23 ߹ಉษڧձ in େձԬࢁ -2017 Winter-ɹɹɹɹɹɹɹɹɹɹɹɹɹɹɹɹɹɹɹɹɹɹɹɹɹɹɹɹɹɹɹɹɹɹɹɹɹɹɹɹɹɹ 22 -
γεςϜαʔϏε͕ਖ਼ৗʹར༻Ͱ͖ͳ͍ঢ়ଶ • ͦͷཧ༝͞·͟· • αʔόʔμϯ ← • αʔόʔϦιʔεͷෆɾރׇ • ϓϩηεɾαʔϏεͷμϯ
← • ΞϓϦέʔγϣϯΤϥʔ ← • etc. 2017-12-23 ߹ಉษڧձ in େձԬࢁ -2017 Winter-ɹɹɹɹɹɹɹɹɹɹɹɹɹɹɹɹɹɹɹɹɹɹɹɹɹɹɹɹɹɹɹɹɹɹɹɹɹɹɹɹɹɹ 23 -
ʰͦͷ࣌ͦͷ࣌ͷͷ༗ແͷνΣοΫΛ͢Δʱ͜ͱͰ ؾ͕͚ͭΔͷ • νΣοΫ ≒ OK or NG • αʔόʔͷԠঢ়ଶ
• ϓϩηεɾαʔϏεͷՔಇঢ়ଶ • ʢக໋తͳʣΞϓϦέʔγϣϯΤϥʔͷ༗ແ 2017-12-23 ߹ಉษڧձ in େձԬࢁ -2017 Winter-ɹɹɹɹɹɹɹɹɹɹɹɹɹɹɹɹɹɹɹɹɹɹɹɹɹɹɹɹɹɹɹɹɹɹɹɹɹɹɹɹɹɹ 24 -
ʰͦͷ࣌ͦͷ࣌ͷͷ༗ແͷνΣοΫΛ͢Δʱ͜ͱͰ ؾ͕͚ͭΔͷ • ͜ΕΒɺʮνΣοΫͷλΠϛϯάͰ͕ੜ͍ͯ͡ͳ͚Ε ͦΕͰ͍͍͠ɺͳΒࢸٸରԠʹҠΕΑ͍ʯͷ • ͋ͱͦͷසʢ1࣌ؒʹ1ճʁ1ʹ1ճʁ10ඵʹ1ճʁʣͷ 2017-12-23 ߹ಉษڧձ
in େձԬࢁ -2017 Winter-ɹɹɹɹɹɹɹɹɹɹɹɹɹɹɹɹɹɹɹɹɹɹɹɹɹɹɹɹɹɹɹɹɹɹɹɹɹɹɹɹɹɹ 25 -
γεςϜαʔϏε͕ਖ਼ৗʹར༻Ͱ͖ͳ͍ঢ়ଶ • ͦͷཧ༝͞·͟· • αʔόʔμϯ • αʔόʔϦιʔεͷෆɾރׇ ← • ϓϩηεɾαʔϏεͷμϯ
• ΞϓϦέʔγϣϯΤϥʔ • etc. 2017-12-23 ߹ಉษڧձ in େձԬࢁ -2017 Winter-ɹɹɹɹɹɹɹɹɹɹɹɹɹɹɹɹɹɹɹɹɹɹɹɹɹɹɹɹɹɹɹɹɹɹɹɹɹɹɹɹɹɹ 26 -
ͦͷ࣌ͦͷ࣌ͷʮαʔόʔϦιʔεͷঢ়گʯΛऔಘ͢Δͱ...ʁ • CPU༻ • ex. ༻85% • σΟεΫ༻ • ex.
80% ༻ࡁΈ • ॲཧͪϓϩηεͷʢLoadAvarageʣ • ex. 1.5 2017-12-23 ߹ಉษڧձ in େձԬࢁ -2017 Winter-ɹɹɹɹɹɹɹɹɹɹɹɹɹɹɹɹɹɹɹɹɹɹɹɹɹɹɹɹɹɹɹɹɹɹɹɹɹɹɹɹɹɹ 27 -
ͦΕͧΕͷࣈ͕ʮ͍ʯͷ͔ʮ͘ͳ͍ʯͷ͔ʁ • ͜ͷࣈ͚ͩͰΘ͔Γ·͔͢ʁ • Θ͔Βͳ͍ʂ 2017-12-23 ߹ಉษڧձ in େձԬࢁ -2017
Winter-ɹɹɹɹɹɹɹɹɹɹɹɹɹɹɹɹɹɹɹɹɹɹɹɹɹɹɹɹɹɹɹɹɹɹɹɹɹɹɹɹɹɹ 28 -
αʔόʔϦιʔεͷνΣοΫͷ߹ • ୯Ұͷʹண͢ΔͷͰͳ͘... • ʰܧଓతʹͷऔಘΛ͓͜ͳ͏͜ͱʱ • ʰͦͷ݁ՌΛهͱͯ͢͜͠ͱʱ • ʰ݁ՌશମΛ࣌ܥྻͰ֬ೝ͢Δ͜ͱʱ •
ͱ͍ͬͨࣄฑηοτͰ࣮ࢪͯ͠͡Ίͯҙຯ͕͋Δʂ • ʢଞͷ߲ͱͷ߹ΘٕͤͰݟ͑ͯ͘Δ͜ͱ͋Δʣ 2017-12-23 ߹ಉษڧձ in େձԬࢁ -2017 Winter-ɹɹɹɹɹɹɹɹɹɹɹɹɹɹɹɹɹɹɹɹɹɹɹɹɹɹɹɹɹɹɹɹɹɹɹɹɹɹɹɹɹɹ 29 -
αʔόʔϦιʔεͷνΣοΫʹ͓͍ͯॏཁͳ͜ͱ • ͜ͷΑ͏ʹɺʰαʔόʔͷঢ়گΛܧଓతʹऔಘʱ͠ɺʰͦͷ݁ՌΛ ͢͜ͱʱʰ݁ՌΛ࣌ܥྻͰଊ͑ɺΛಡΈऔΔ͜ͱʱ͕ॏཁʂ • ʮαʔόʔࢹʯʮαʔόʔϞχλϦϯάʯ • ʮγεςϜʹର͢ΔܧଓతΠϯςάϨʔγϣϯʯ͕αʔόʔࢹʂ • ࢹͱܧଓతͳςετͰ͋Δ
~ ԞҰึʢh2o ։ൃऀʣ1 1 http://developer.cybozu.co.jp/archives/kazuho/2010/01/cronlog-52f2.html 2017-12-23 ߹ಉษڧձ in େձԬࢁ -2017 Winter-ɹɹɹɹɹɹɹɹɹɹɹɹɹɹɹɹɹɹɹɹɹɹɹɹɹɹɹɹɹɹɹɹɹɹɹɹɹɹɹɹɹɹ 33 -
Α͋͘Δ࣭ʮCPUͷ༻ɺ͍͘Β͘Β͍ʹ ͳΔͱ·͍ͣͰ͔͢Ͷʁʯ • A. ʮରͷγεςϜαʔϏεʹΑΔɻҰ֓ʹݴ͑ͳ͍ʯ • ࣗͷαʔϏεɾγεςϜʹͱͬͯͷฏৗ࣌ͷঢ়ଶʗҟৗ࣌ ͷঢ়ଶͱͲ͏͍͏ঢ়ଶͳͷ͔ɺΛΔʂ • ͔ͦ͜Βαʔόʔࢹ࢝·Δʂ
2017-12-23 ߹ಉษڧձ in େձԬࢁ -2017 Winter-ɹɹɹɹɹɹɹɹɹɹɹɹɹɹɹɹɹɹɹɹɹɹɹɹɹɹɹɹɹɹɹɹɹɹɹɹɹɹɹɹɹɹ 35 -
αʔόʔࢹΛࢧ͑ͯ͘ΕΔπʔϧɾαʔϏεͨ͘͞Μ͋Δ • OSS • nagios • Zabbix • Prometheus •
etc. 2017-12-23 ߹ಉษڧձ in େձԬࢁ -2017 Winter-ɹɹɹɹɹɹɹɹɹɹɹɹɹɹɹɹɹɹɹɹɹɹɹɹɹɹɹɹɹɹɹɹɹɹɹɹɹɹɹɹɹɹ 36 -
αʔόʔࢹΛࢧ͑ͯ͘ΕΔπʔϧɾαʔϏεͨ͘͞Μ͋Δ • ΫϥυαʔϏεɾSaaS • Datadog • NewRelicʢInfrastructureʣ • Mackerel •
etc. 2017-12-23 ߹ಉษڧձ in େձԬࢁ -2017 Winter-ɹɹɹɹɹɹɹɹɹɹɹɹɹɹɹɹɹɹɹɹɹɹɹɹɹɹɹɹɹɹɹɹɹɹɹɹɹɹɹɹɹɹ 37 -
αʔόʔࢹΛࢧ͑ͯ͘ΕΔπʔϧɾαʔϏεͨ͘͞Μ͋Δ • ͍ͣΕૉΒ͍͠πʔϧɾαʔϏεɻ • ᘳͳͷແͯ͘ʢ͖ͬͱʣɺͲΕʹಘҙෆಘҙ͋Δ • ͲͷπʔϧɾαʔϏεɺͰ͖Δ͚ͩଟ͘ͷέʔεͰ࠷ద ͳιϦϡʔγϣϯͱͳΕΔΑ͏ɺʑ᛭ୖຏ͍ͯ͠Δ 2017-12-23 ߹ಉษڧձ
in େձԬࢁ -2017 Winter-ɹɹɹɹɹɹɹɹɹɹɹɹɹɹɹɹɹɹɹɹɹɹɹɹɹɹɹɹɹɹɹɹɹɹɹɹɹɹɹɹɹɹ 38 -
Mackerel ͱ͍͏બࢶ • ʰܧଓతͳνΣοΫΛ͢Δ͜ͱʱʰͦΕΛهʹ͢͜ͱʱʰ͞Ε ͨهΛݟ͘͢ɾѻ͍͍͢ܗͰఏڙ͢Δ͜ͱʱΛαϙʔτ͠·͢ • ↓ͳਓʹͦͬͯ͜Έͯ΄͍͠αʔϏεͰ͢ • ʮࢹͬͯͦ͠͏ʯʮΑ͘Θ͔Βͳ͍ʯ •
ʮΠϯϑϥ୲ͷਓ͕ͬͯ͘ΕΔͷͰ͠ΐʯ • ʮΒͳ͖Όͱࢥ͍ͭͭͬͯ·ͤΜ......ʯ 2017-12-23 ߹ಉษڧձ in େձԬࢁ -2017 Winter-ɹɹɹɹɹɹɹɹɹɹɹɹɹɹɹɹɹɹɹɹɹɹɹɹɹɹɹɹɹɹɹɹɹɹɹɹɹɹɹɹɹɹ 39 -
Mackerel ͱ͍͏બࢶ • ࢲͷΑ͏ʹɺϢʔβʔͷํʹͰ͖Δ͚͍ͩۙͱ͜ΖͰҰॹʹ ՝ʹऔΓΉ͜ͱΛϛογϣϯͱ͢ΔਓʢCREʣ͕͍Δɺ ͱ͍͏͜ͱɺMackerel ͷαʔϏεͷҰ෦Ͱ͢ • ͥͻ͓ؾܰʹΛֻ͚͍ͯͩ͘͞ !
2017-12-23 ߹ಉษڧձ in େձԬࢁ -2017 Winter-ɹɹɹɹɹɹɹɹɹɹɹɹɹɹɹɹɹɹɹɹɹɹɹɹɹɹɹɹɹɹɹɹɹɹɹɹɹɹɹɹɹɹ 40 -
·ͱΊ • ݈߁ɾόάɾোɺͦΕͧΕͷෆ҆ͷର߅ࡦɺఆظతͳ νΣοΫΛܧଓతʹ͓͜ͳ͏͜ͱʂ • ͦͷνΣοΫͷ݁ՌΛ͞Βʹ࣌ܥྻʹه͠၆ᛌͯ͠ଊ͑Δ ͜ͱͰɺʮରͷʯͱʮݱ࣌Ͱͷঢ়ଶʯ͕ΑΓΘ͔Γ ͘͢ͳΔ • ରʹͱͬͯͷฏৗ࣌ɾҟৗ͕࣌ͲͷΑ͏ͳঢ়ଶͰ͋Δͷ͔
ΛΔͱ͜Ζ͔Β࢝ΊͯΈ·͠ΐ͏ʂ 2017-12-23 ߹ಉษڧձ in େձԬࢁ -2017 Winter-ɹɹɹɹɹɹɹɹɹɹɹɹɹɹɹɹɹɹɹɹɹɹɹɹɹɹɹɹɹɹɹɹɹɹɹɹɹɹɹɹɹɹ 41