Slide 1

Slide 1 text

؂ࢹೖ໳ʂ ؂ࢹͰࠔͬͯ·ͤΜ͔ʁ αϙʔλʔζCoLabษڧձ Jun 20 2018 ଜҪ ᠳଠ࿕

Slide 2

Slide 2 text

͖ΐ͏͸ͳ͢͜ͱ 1. ࣗݾ঺հ 2. ؂ࢹͱ͸ 3. ؂ࢹઓུΛ࿅Δ 4. ৭ʑͳ؂ࢹͷํ๏΍πʔϧͷ঺հ 5. ࢀߟࢿྉ

Slide 3

Slide 3 text

ࣗݾ঺հ

Slide 4

Slide 4 text

ࣗݾ঺հ • ଜҪᠳଠ࿕ • @Show_murai • גࣜձࣾ LOB • Site Reliability Engineer ※ຊ೔ͷൃද͸ݸਓͷݟղͰ͋Γɺॴଐ͢Δ૊৫ͷެࣜݟղͰ͸͋Γ·ͤΜ

Slide 5

Slide 5 text

ࣗݾ঺հ • ژ౎ग़਎ ౦ژࡏॅ • ࣾձਓ 6೥໨ • ֶੜͷࠒ͸ը૾ೝࣝɺ
 ίϯϐϡʔλϏδϣϯΛݚڀͯ͠·ͨ͠ • ৽ଔͰωοτϫʔΫػثͷ
 αʔόʔαΠυΤϯδχΞ΍ͬͯ·ͨ͠ • લ৬͸αΠόʔΤʔδΣϯτͰΠϯϑϥΤϯδχΞ • झຯ͸ཱྀߦ

Slide 6

Slide 6 text

؂ࢹͱ͸

Slide 7

Slide 7 text

؂ࢹΛ͢Δ໨త • γεςϜͷঢ়ଶΛ஌Δ • ݈߁਍அͷΑ͏ͳ΋ͷ • ࠓͷঢ়ଶ͕ద੾͔Ͳ͏͔Λ஌Δ • γεςϜো֐Λݕ஌͢Δ • ো֐࣌ʹ͍ͪૣ͘γεςϜͷ෮چΛ໨ࢦ͢ • ϘτϧωοΫΛ୳͢ • γεςϜͷύϑΥʔϚϯε࠷େԽ͢Δॿ͚ͱͳΔ • ଏʹݴ͏ύϑΥʔϚϯεΤϯδχΞϦϯά

Slide 8

Slide 8 text

؂ࢹΛ͢ΔϨΠϠʔ • γεςϜϦιʔεϨΠϠʔ • ϋʔυ΢ΣΞɺωοτϫʔΫ • OSɺCPUɺMemoryɺDisk࢖༻ྔ • ΞϓϦέʔγϣϯ/ϛυϧ΢ΣΞϨΠϠʔ • γεςϜσʔϞϯϓϩηεɺMySQLɺNginxɺ؂ࢹΤʔδΣϯτ • JavaɺRailsΞϓϦέʔγϣϯɺΤϥʔϩά • αʔϏεϨΠϠʔ • HTTPϦΫΤετ͕ਖ਼ৗ͔ɺMySQLͷΫΤϦ͕࣮ߦग़དྷ͍ͯΔ͔ • ΞΫηεͷԠ౴࣌ؒʹ஗Ԇ͕ൃੜ͍ͯ͠ͳ͍͔

Slide 9

Slide 9 text

؂ࢹʹؔ͢Δ༻ޠ • ؂ࢹϝτϦΫε • औಘ͢Δ஋ͷ͜ͱ • ᮢ஋(͖͍ͪ͠) • ʮ80%Λ௒͑ͨΒʓʓ͢Δʯͷ80%ͷ͜ͱ • τϦΨʔ • ؂ࢹͯ͠ಛఆͷ৚݅ʹ౰ͯ͸·ͬͯ
 Կ͔ΞΫγϣϯΛ͢Δ͜ͱΛݴ͏ • Ξϥʔτ • τϦΨʔ৚݅ʹ౰ͯ͸·ͬͨ৔߹ɺ௨஌Λߦ͏(On-callɺSMSɺϝʔϧɺSlack…)

Slide 10

Slide 10 text

؂ࢹઓུΛཱͯΔ

Slide 11

Slide 11 text

؂ࢹͷઓུ • γεςϜʹͱͬͯԿ͕Ұ൪ॏཁ͔Λߟ͑Δ • ϏδωεతͳॏཁͳϙΠϯτΛεςʔΫϗϧμʔʹ֬ೝ͢Δ • HTTPϦΫΤετͷԠ౴଎౓͸ઈର1ඵҎԼ • ϩάͷফࣦ͸ઈରμϝ • σʔλϕʔεͷॻ͖ࠐΈ͸ઈରʹམͱͤͳ͍ • ؂ࢹ͢Δ߲໨/؂ࢹ͠ͳ͍߲໨ΛܾΊΔ • ؂ࢹ͸γεςϜෛՙʹ΋ͳΔ৔߹͕͋Δ • ؂ࢹ߲໨͕ଟ͗ͯ͢ԿΛݟΕ͹Α͍͔ΘΒ͔ͳ͘ͳΔ • ਖ਼͍͠ᮢ஋ͷઃఆ • ؂ࢹϝτϦΫεͷҙຯΛਖ਼͘͠ཧղ͢Δ • ฏۉɺ࠷େ/࠷খ஋ɺύʔηϯλΠϧ

Slide 12

Slide 12 text

ϝτϦΫεͷҙຯΛཧղ͢Δ • ϝτϦΫεͷҙຯΛਖ਼͘͠ཧղ͢Δ • ϩʔυΞϕϨʔδ • ࣮ߦதͷεϨουͱ࣮ߦ͞ΕΔͷΛ଴ͬͯΩϡʔΠϯά͞Ε͍ͯΔεϨου ͷ߹ܭ஋ϩʔυΞϕϨʔδ • CPUͷ౷ܭ৘ใ(vmstat) • Ϣʔβ࣌ؒɿΧʔωϧίʔυҎ֎ͷ࣮ߦ࣌ؒ • γεςϜ࣌ؒɿΧʔωϧίʔυͷ࣮ߦ࣌ؒ • ΞΠυϧ࣌ؒɿͳʹ΋࣮ߦ͍ͯ͠ͳ͍࣌ؒ • I/O଴ͪ࣌ؒɿεϨου͕σΟεΫI/OͷͨΊʹϒϩοΫ͞Εͯ଴͍ͬͯΔ࣌ؒ • ౪·Εͨ࣌ؒɿԾ૝؀ڥͰ΄͔ͷςφϯτʹαʔϏεΛఏڙͨ࣌ؒ͠

Slide 13

Slide 13 text

ద੾ͳᮢ஋ͷܾఆ • ؅ཧ͢ΔγεςϜʹͱͬͯ“ద੾”ͳᮢ஋ • ex. ϝϞϦΛଟ͘ফඅ͢ΔΑ͏ͳγεςϜͷ৔߹ɺ
 ϝϞϦ࢖༻཰ͷᮢ஋͸ߴΊʹઃఆ͓ͯ͘͠ • “ΦΦΧϛগ೥”ΛݮΒ͢ • ᮢ஋ʹΑΓΞϥʔτ௨஌͕ͨ͘͞Μ͖ͯɺ
 ຊདྷΩϟονΞοϓ͍ͨ͠௨஌Λݟಀ͞ͳ͍Α͏ʹ͢Δ • ᮢ஋͸దٓมߋͰ͖ΔΑ͏ʹ͓ͯ͘͠ • ex. ΞϓϦέʔγϣϯͷઃܭมߋͰϝϞϦ࢖༻཰্͕͕Δ͔΋͠Εͳ͍

Slide 14

Slide 14 text

ϨΠϠʔ͝ͱͷ؂ࢹ • ୭͕ͲͷϨΠϠʔΛରԠ͢Δ͔༧ΊܾΊ͓ͯ͘ • γεςϜϦιʔεϨΠϠʔ • CPUɺϝϞϦɺσΟεΫɺωοτϫʔΫ… • ରԠऀɿΠϯϑϥΤϯδχΞɺΞϓϦέʔγϣϯΤϯδχΞ • ΞϓϦέʔγϣϯ/ϛυϧ΢ΣΞϨΠϠʔ • ϓϩηε؂ࢹɺΞϓϦέʔγϣϯϩά؂ࢹɺ࣮ߦ࣌ؒ؂ࢹɺ஗Ԇ؂ࢹ • ରԠऀɿΞϓϦέʔγϣϯΤϯδχΞɺӡ༻୲౰ऀ • αʔϏεϨΠϠʔ • ࢮ׆؂ࢹɺΤϯυϙΠϯτ؂ࢹ • ରԠऀɿ͢΂ͯͷΤϯδχΞɺϓϩδΣΫτϚωʔδϟʔ

Slide 15

Slide 15 text

ো֐࣌ͷӡ༻ϑϩʔΛܾΊΔ • ΤεΧϨʔγϣϯϙϦγʔͷ࡞੒ • ো֐௨஌Λड͚औΔਓͷ༏ઌ౓ΛܾΊΔ • ΞϥʔτΛड͚औͬͯԿ͔Βௐࠪ͢Δ͔ • Α͘ൃੜ͢ΔΞϥʔτ͸༧ΊରԠϑϩʔΛ༻ҙ͓ͯ͘͠ • ex. υΩϡϝϯτͳͲΛ࡞੒͢Δ • ো֐ͷ؅ཧ • ͍ͭɺͲͷΑ͏ͳো֐͕Կ݅ൃੜ͔ͨ͠؅ཧ͢Δ • ౷ܭ৘ใΛऔಘͯ͠܏޲Λ෼ੳ͢Δ

Slide 16

Slide 16 text

؂ࢹπʔϧͷ঺հ

Slide 17

Slide 17 text

ϞχλϦϯάπʔϧͷ঺հ • Zabbix • Φʔϓϯιʔεͷ؂ࢹπʔϧ • ΠϯϑϥϞχλϦϯάʹ޲͍͍ͯΔ • ΧελϜεΫϦϓτΛ࡞Δ͜ͱͰॊೈʹ؂ࢹ͕Մೳ • Datadog • ༗ྉͷSaaSܕ؂ࢹπʔϧ • ओཁΫϥ΢υαʔϏεͱͷ࿈ܞ΋ॆ࣮ • APM΋2017೥΋ϦϦʔε͞Εͨ

Slide 18

Slide 18 text

ϞχλϦϯάπʔϧͷ঺հ • mackerel • ͸ͯͳ͕։ൃɺఏڙ͍ͯ͠Δ༗ྉͷSaaSܕ؂ࢹαʔϏε • αϙʔτ΍υΩϡϝϯτ͕೔ຊޠͳͷͰ҆৺ • Prometheus • Φʔϓϯιʔεͷ؂ࢹπʔϧ • Googleͷ؂ࢹπʔϧ”Borgmon”Λࢀߟʹ࡞ΒΕͨ • άϥϑͳͲͷ࡞੒͸GrafanaͳͲΛՄࢹԽπʔϧ͕ඞཁ

Slide 19

Slide 19 text

ϞχλϦϯάπʔϧͷ঺հ • New Relic • ༗ྉͷSaaSܕϞχλϦϯάαʔϏε • ΞϓϦέʔγϣϯ؂ࢹ(APM)Ͱओʹར༻͞Ε͍ͯΔҹ৅ • ֤ݴޠͷίʔυ಺ʹSDKΛೖΕΔ͜ͱͰࣗಈͰ
 ΞϓϦέʔγϣϯͷϝτϦΫεΛϞχλϦϯάͰ͖Δ

Slide 20

Slide 20 text

ϞχλϦϯάπʔϧͷ঺հ • Pingdom • ࢮ׆؂ࢹαʔϏε • άϩʔόϧΤϯυϙΠϯτʹରͯ͠
 HTTP(S)ϦΫΤετΛ౤͛ͯ֎ܗ؂ࢹΛߦ͏ • PagerDurty • Πϕϯτ௨஌Λ͢ΔͨΊͷSaaSܕ؂ࢹ௨஌αʔϏε • On-callɺSMSɺϝʔϧɺSlackͳͲʹରԠ • ΤεΧϨʔγϣϯϙϦγʔͳͲ࡞੒Մೳ

Slide 21

Slide 21 text

ੈքͷ؂ࢹπʔϧࣄ৘ • SREcon 18ͰͷΞϯέʔτ݁Ռ

Slide 22

Slide 22 text

ࢀߟࢿྉ

Slide 23

Slide 23 text

؂ࢹʹ͍ͭͯ΋ͬͱΑ͘஌Δ • ৄղ γεςϜɾύϑΥʔϚϯε • Brendan Greggஶɺ੢࿬ ༃ߛ ؂༁ɺ௕ඌ ߴ߂ ༁ • ύϑΥʔϚϯεΤϯδχΞϦϯάʹ͍ͭͯͷຊ
 ؂ࢹઃܭ͢ΔͷʹඇৗʹࢀߟʹͳΔ • Monitoring Modern Infrastructure by Datadog • ͜Ε͔ΒͷϞχλϦϯά͸Ͳ͏ͨ͠Β͍͍͔ • Ϋϥ΢υ؀ڥΛ࢖͍ͬͯͯಈతʹϦιʔε͕
 มԽ͢Δ৔߹ͷ؂ࢹํ๏ͳͲࢀߟʹͳΔ

Slide 24

Slide 24 text

Q & A

Slide 25

Slide 25 text

͋Γ͕ͱ͏͍͟͝·ͨ͠