Upgrade to Pro — share decks privately, control downloads, hide ads and more …

DevOps実践事例のご紹介 / Rebirth Tohoku 2016 01

DevOps実践事例のご紹介 / Rebirth Tohoku 2016 01

『Rebirth Tohoku 2016』で講演した『DevOps実践事例のご紹介』

changeworld

June 19, 2016
Tweet

More Decks by changeworld

Other Decks in Technology

Transcript

  1. © 2016 Takashi Takebayashi Microsoft MVP for Visual Studio and

    Development Technologies Takashi Takebayashi(a.k.a @changeworlds) changesworlds.com DevOpsͷ࣮ફࣄྫͷ ͝঺հ Rebirth Tohoku 2016
  2. © 2016 Takashi Takebayashi Takashi Takebayashi @changeworlds Microsoft MVP for

    Visual Studio and Development Technologies Blog : http://changesworlds.com/ Role : Scrum Master, Agile Coach, Biz&Tech cross-functional paradigm Writing : Build Insider(ALM, DevOps), mynavinews(TeamDev) Community : εΫϥϜಓ, TFSUGίΞϝϯό Speaker
  3. © 2016 Takashi Takebayashi Why need DevOps? Practical examples Summary

    Agenda ͳͥDevOps͕ඞཁ͔ʁ ࣮ફࣄྫ ·ͱΊ
  4. © 2016 Takashi Takebayashi Tool: Automated infrastructure Tool: Shared version

    control Tool: One step build and deploy Tool: Feature flags Tool: Shared metrics Tool: IRC and IM robots Culture: Respect Culture: Trust Culture: Healthy attitude about failure Culture: Avoiding Blame
 : DevOps component DevOpsߏ੒ཁૉ
  5. © 2016 Takashi Takebayashi Tool: Automated infrastructure Tool: Shared version

    control Tool: One step build and deploy Tool: Feature flags Tool: Shared metrics Tool: IRC and IM robots Culture: Respect Culture: Trust Culture: Healthy attitude about failure Culture: Avoiding Blame
 : DevOps component DevOpsߏ੒ཁૉ Culture: จԽ
 Lean: Ϧʔϯ
 Automated: ࣗಈԽ
 Measurement: ଌఆ
 Sharing: ڞ༗
 or People: ਓ(Culture etc)
 Process: ϓϩηε
 Product: ੡඼
  6. © 2016 Takashi Takebayashi DevOps 1st step DevOps͸͡Ίͷ1า ૊৫શମͷόϦϡʔɾετϦʔϜΛ֬ೝ͢Δ ੍໿(ϘτϧωοΫ)Λݟ͚ͭΔ(ToC:

    ੍໿ཧ࿦) ΧΠθϯͷεέδϡʔϧ΍໨ඪʹ޲͔͍ͬͯΔ͔Λ ֬ೝ͢ΔϝτϦΫεΛܾΊΔ ϑΟʔυόοΫɾϧʔϓͰ܁Γฦ͢
  7. © 2016 Takashi Takebayashi DevOps 1st step DevOps͸͡Ίͷ1า ૊৫શମͷόϦϡʔɾετϦʔϜΛ֬ೝ͢Δ ੍໿(ϘτϧωοΫ)Λݟ͚ͭΔ(ToC:

    ੍໿ཧ࿦) ΧΠθϯͷεέδϡʔϧ΍໨ඪʹ޲͔͍ͬͯΔ͔Λ ֬ೝ͢ΔϝτϦΫεΛܾΊΔ ϑΟʔυόοΫɾϧʔϓͰ܁Γฦ͢ ͸͡Ίͷ1าͱ͍͚ͬͨͲ͜Ε͕͢΂ͯ
  8. © 2016 Takashi Takebayashi Case Study: Where is the bottleneck?

    ϘτϧωοΫ͸ʁ https://www.flickr.com/photos/nep/8637390485/ ҎԼͷ޻ఔͰύϯΛ࡞Δύϯ԰͞Μ͕͋ Γ·͢ɻ ʮੜ஍Λͭ͘Δʯɹɿ30ݸ/2࣌ؒ ʮύϯΛম͘ʯɹɹɿ15ݸ/࣌ؒ ʮύϯΛൢച͢Δʯɿ20ݸ/࣌ؒ 1೔8࣌ؒӦۀͰɺຖ೔মཱ͖ͯͷύϯͷച ্ΛࠓΑΓ΋͋͛Δʹ͸Ͳ͜ΛΧΠθϯ ͢Ε͹Α͍Ͱ͠ΐ͏ʁ
  9. © 2016 Takashi Takebayashi Case Study: Where is the bottleneck?

    ϘτϧωοΫ͸ʁ ҎԼͷ޻ఔͰύϯΛ࡞Δύϯ԰͞Μ͕͋ Γ·͢ɻ ʮੜ஍Λͭ͘Δʯɹɿ30ݸ/2࣌ؒ→90ݸ ʮύϯΛম͘ʯɹɹɿ15ݸ/࣌ؒ→75ݸ ʮύϯΛൢച͢Δʯɿ20ݸ/࣌ؒ→100ݸ 1೔8࣌ؒӦۀͰɺຖ೔মཱ͖ͯͷύϯͷച ্ΛࠓΑΓ΋͋͛Δʹ͸Ͳ͜ΛΧΠθϯ ͢Ε͹Α͍Ͱ͠ΐ͏ʁ DevOpsͱ͸Կ͔ʁ ͦͷπʔϧͱ૊৫จԽɺΞδϟΠϧͱͷҧ͍
  10. © 2016 Takashi Takebayashi Case Study: Where is the bottleneck?

    ϘτϧωοΫ͸ʁ ҎԼͷ޻ఔͰύϯΛ࡞Δύϯ԰͞Μ͕͋ Γ·͢ɻ ʮੜ஍Λͭ͘Δʯɹɿ30ݸ/2࣌ؒ→90ݸ ʮύϯΛম͘ʯɹɹɿ25ݸ/࣌ؒ→125ݸ ʮύϯΛൢച͢Δʯɿ20ݸ/࣌ؒ→100ݸ 1೔8࣌ؒӦۀͰɺຖ೔মཱ͖ͯͷύϯͷച ্ΛࠓΑΓ΋͋͛Δʹ͸Ͳ͜ΛΧΠθϯ ͢Ε͹Α͍Ͱ͠ΐ͏ʁ DevOpsͱ͸Կ͔ʁ ͦͷπʔϧͱ૊৫จԽɺΞδϟΠϧͱͷҧ͍
  11. © 2016 Takashi Takebayashi Case Study: Where is the bottleneck?

    ϘτϧωοΫ͸ʁ ҎԼͷ޻ఔͰύϯΛ࡞Δύϯ԰͞Μ͕͋ Γ·͢ɻ ʮੜ஍Λͭ͘Δʯɹɿ30ݸ/2࣌ؒ→90+35ݸ ʮύϯΛম͘ʯɹɹɿ25ݸ/࣌ؒ→125ݸ ʮύϯΛൢച͢Δʯɿ20ݸ/࣌ؒ→100ݸ 1೔8࣌ؒӦۀͰɺຖ೔মཱ͖ͯͷύϯͷച ্ΛࠓΑΓ΋͋͛Δʹ͸Ͳ͜ΛΧΠθϯ ͢Ε͹Α͍Ͱ͠ΐ͏ʁ 65 125 DevOpsͱ͸Կ͔ʁ ͦͷπʔϧͱ૊৫จԽɺΞδϟΠϧͱͷҧ͍
  12. © 2016 Takashi Takebayashi Case Study: Where is the bottleneck?

    ϘτϧωοΫ͸ʁ ҎԼͷ޻ఔͰύϯΛ࡞Δύϯ԰͞Μ͕͋ Γ·͢ɻ ʮੜ஍Λͭ͘Δʯɹɿ30ݸ/2࣌ؒ→90+35ݸ ʮύϯΛম͘ʯɹɹɿ25ݸ/࣌ؒ→125ݸ ʮύϯΛൢച͢Δʯɿ20ݸ/࣌ؒ→100+25ݸ 1೔8࣌ؒӦۀͰɺຖ೔মཱ͖ͯͷύϯͷച ্ΛࠓΑΓ΋͋͛Δʹ͸Ͳ͜ΛΧΠθϯ ͢Ε͹Α͍Ͱ͠ΐ͏ʁ 65 125 45 125 DevOpsͱ͸Կ͔ʁ ͦͷπʔϧͱ૊৫จԽɺΞδϟΠϧͱͷҧ͍
  13. © 2016 Takashi Takebayashi Case Study: Where is the bottleneck?

    ϘτϧωοΫ͸ʁ ҎԼͷ޻ఔͰύϯΛ࡞Δύϯ԰͞Μ͕͋ Γ·͢ɻ ʮੜ஍Λͭ͘Δʯɹɿ30ݸ/2࣌ؒ→90+35ݸ ʮύϯΛম͘ʯɹɹɿ25ݸ/࣌ؒ→125ݸ ʮύϯΛൢച͢Δʯɿ20ݸ/࣌ؒ→100+25ݸ 1೔8࣌ؒӦۀͰɺຖ೔মཱ͖ͯͷύϯͷച ্ΛࠓΑΓ΋͋͛Δʹ͸Ͳ͜ΛΧΠθϯ ͢Ε͹Α͍Ͱ͠ΐ͏ʁ 65 125 45 125 1೔ͷൢച਺͕75ݸ -> 125ݸ(1.67ഒ) DevOpsͱ͸Կ͔ʁ ͦͷπʔϧͱ૊৫จԽɺΞδϟΠϧͱͷҧ͍
  14. © 2016 Takashi Takebayashi ࠶ܝ: DevOps 1st step DevOps͸͡Ίͷ1า ૊৫શମͷόϦϡʔɾετϦʔϜΛ֬ೝ͢Δ

    ੍໿(ϘτϧωοΫ)Λݟ͚ͭΔ(ToC: ੍໿ཧ࿦) ΧΠθϯͷεέδϡʔϧ΍໨ඪʹ޲͔͍ͬͯΔ͔Λ ֬ೝ͢ΔϝτϦΫεΛܾΊΔ ϑΟʔυόοΫɾϧʔϓͰ܁Γฦ͢
  15. © 2016 Takashi Takebayashi Process or People? “;ͭ͏ͷਓʑ͔Β͢͹Β͍͠੒ՌΛ͋͛ΔΑ͏ͳɺ͢͹Β͍͠γες ϜΛϚωδϝϯτ͢ΔɻզʑͷίϯϖςΟλ͸ɺ͢͹Β͍͠ਓʑ͔Β ී௨ͷ੒ՌΛ্͛ΔΑ͏ͳɺյΕͨϓϩηεʹ࢛ۤീ͍ۤͯ͠Δɻ”

    –ு෋࢜෉(τϤλࣗಈंձ௕) “զʑ͕ग़ձ͏΄ͱΜͲ(͓ͦΒ͘90%) ͷ໰୊͸ҰൠతʹݪҼΛ1ͭʹಛ ఆͰ͖ͳ͍ෳ਺ͷӨڹͷ݁ՌͰ͋ Δɻ໰୊ͷݪҼΛҰ෦ͷਓͷ͍ͤ ʹ ͯ͠௥ڀ͢Δͷ͸શ͘ٯޮՌͩɻ ѱ͍ঢ়گΛ͞Βʹѱͯ͘͠͠·͏” - Deming
  16. © 2016 Takashi Takebayashi Process or People? “;ͭ͏ͷਓʑ͔Β͢͹Β͍͠੒ՌΛ͋͛ΔΑ͏ͳɺ͢͹Β͍͠γες ϜΛϚωδϝϯτ͢ΔɻզʑͷίϯϖςΟλ͸ɺ͢͹Β͍͠ਓʑ͔Β ී௨ͷ੒ՌΛ্͛ΔΑ͏ͳɺյΕͨϓϩηεʹ࢛ۤീ͍ۤͯ͠Δɻ”

    –ு෋࢜෉(τϤλࣗಈंձ௕) “զʑ͕ग़ձ͏΄ͱΜͲ(͓ͦΒ͘90%) ͷ໰୊͸ҰൠతʹݪҼΛ1ͭʹಛ ఆͰ͖ͳ͍ෳ਺ͷӨڹͷ݁ՌͰ͋ Δɻ໰୊ͷݪҼΛҰ෦ͷਓͷ͍ͤ ʹ ͯ͠௥ڀ͢Δͷ͸શ͘ٯޮՌͩɻ ѱ͍ঢ়گΛ͞Βʹѱͯ͘͠͠·͏” - Deming
  17. © 2016 Takashi Takebayashi Producer Dev team QA, Ops team

    νʔϜ։ൃʹ͓͚ΔόϦϡʔɾετϦʔϜͷؔ܎ऀ(Ұ෦)
  18. © 2016 Takashi Takebayashi Producer Dev team QA, Ops team

    νʔϜ։ൃʹ͓͚ΔόϦϡʔɾετϦʔϜͷؔ܎ऀͷؔ৺(Ұ෦)
  19. © 2016 Takashi Takebayashi Producer Dev team QA, Ops team

    νʔϜ։ൃʹ͓͚ΔόϦϡʔɾετϦʔϜͷؔ܎ऀͷؔ৺(Ұ෦)
  20. © 2016 Takashi Takebayashi Producer Dev team QA, Ops team

    νʔϜ։ൃʹ͓͚ΔόϦϡʔɾετϦʔϜͷؔ܎ऀͷؔ৺(Ұ෦)
  21. © 2016 Takashi Takebayashi νʔϜ։ൃʹ͓͚ΔόϦϡʔɾετϦʔϜͷؔ܎ऀͷؔ৺(Ұ෦) Producer Dev team QA, Ops

    team Excel, Word, PowerPoint Redmine, 
 JIRA Jenkins Manual, ShellScript Skype Subversion
  22. © 2016 Takashi Takebayashi Producer Dev team QA, Ops team

    Excel, Word, PowerPoint Redmine, 
 JIRA Jenkins Manual, ShellScript Skype Subversion νʔϜ։ൃʹ͓͚ΔόϦϡʔɾετϦʔϜͷؔ܎ऀͷ෦෼࠷దԽͷฐ֐(Ұ෦)
  23. © 2016 Takashi Takebayashi Producer Dev team QA, Ops team

    Excel, Word, PowerPoint Redmine, 
 JIRA Jenkins Manual, ShellScript Subversion νʔϜ։ൃʹ͓͚ΔόϦϡʔɾετϦʔϜͷؔ܎ऀͷ෦෼࠷దԽͷฐ֐(Ұ෦) Skype
  24. © 2016 Takashi Takebayashi Producer Dev team QA, Ops team

    Excel, Word, PowerPoint Redmine, 
 JIRA Jenkins Manual, ShellScript GitHub Enterprise νʔϜ։ൃʹ͓͚ΔόϦϡʔɾετϦʔϜͷؔ܎ऀͷ෦෼࠷దԽͷฐ֐(Ұ෦) Skype
  25. © 2016 Takashi Takebayashi Producer Dev team QA, Ops team

    Excel, Word, PowerPoint Redmine, 
 JIRA Jenkins Manual, ShellScript Subversion νʔϜ։ൃʹ͓͚ΔόϦϡʔɾετϦʔϜͷؔ܎ऀͷ෦෼࠷దԽͷฐ֐(Ұ෦) Skype
  26. © 2016 Takashi Takebayashi Producer Dev team QA, Ops team

    νʔϜ։ൃʹ͓͚ΔόϦϡʔɾετϦʔϜͷؔ܎ऀΛશମ࠷దͰܨ͕Δ(Ұ෦) Excel, VSTS(TFS) VSTS(TFS) VSTS(TFS) VSTS(TFS) VSTS(TFS) Team Room
  27. © 2016 Takashi Takebayashi ࠶ܝ: DevOps 1st step DevOps͸͡Ίͷ1า ૊৫શମͷόϦϡʔɾετϦʔϜΛ֬ೝ͢Δ

    ੍໿(ϘτϧωοΫ)Λݟ͚ͭΔ(ToC: ੍໿ཧ࿦) ΧΠθϯͷεέδϡʔϧ΍໨ඪʹ޲͔͍ͬͯΔ͔Λ ֬ೝ͢ΔϝτϦΫεΛܾΊΔ ϑΟʔυόοΫɾϧʔϓͰ܁Γฦ͢
  28. © 2016 Takashi Takebayashi ࠶ܝ: Case Study: Where is the

    bottleneck? ϘτϧωοΫ͸ʁ ҎԼͷ޻ఔͰύϯΛ࡞Δύϯ԰͞Μ͕͋ Γ·͢ɻ ʮੜ஍Λͭ͘Δʯɹɿ30ݸ/2࣌ؒ→90+35ݸ ʮύϯΛম͘ʯɹɹɿ25ݸ/࣌ؒ→125ݸ ʮύϯΛൢച͢Δʯɿ20ݸ/࣌ؒ→100+25ݸ 1೔8࣌ؒӦۀͰɺຖ೔মཱ͖ͯͷύϯͷച ্ΛࠓΑΓ΋͋͛Δʹ͸Ͳ͜ΛΧΠθϯ ͢Ε͹Α͍Ͱ͠ΐ͏ʁ 65 125 45 125 1೔ͷൢച਺͕75ݸ -> 125ݸ(1.67ഒ) DevOpsͱ͸Կ͔ʁ ͦͷπʔϧͱ૊৫จԽɺΞδϟΠϧͱͷҧ͍
  29. © 2016 Takashi Takebayashi DevOps is Develop Driven Business Process

    or People? Practice, practice, practice! ࣮ફ͢Δ Summary ·ͱΊ
  30. © 2016 Takashi Takebayashi DevOps is Develop Driven Business Process

    or People? Practice, practice, practice! ࣮ફ͢Δ Summary ·ͱΊ
  31. © 2016 Takashi Takebayashi DevOps is Develop Driven Business Process

    or People? Practice, practice, practice! ࣮ફ͢Δ Summary ·ͱΊ
  32. © 2016 Takashi Takebayashi Process or People? “;ͭ͏ͷਓʑ͔Β͢͹Β͍͠੒ՌΛ͋͛ΔΑ͏ͳɺ͢͹Β͍͠γες ϜΛϚωδϝϯτ͢ΔɻզʑͷίϯϖςΟλ͸ɺ͢͹Β͍͠ਓʑ͔Β ී௨ͷ੒ՌΛ্͛ΔΑ͏ͳɺյΕͨϓϩηεʹ࢛ۤീ͍ۤͯ͠Δɻ”

    –ு෋࢜෉(τϤλࣗಈंձ௕) “զʑ͕ग़ձ͏΄ͱΜͲ(͓ͦΒ͘90%) ͷ໰୊͸ҰൠతʹݪҼΛ1ͭʹಛ ఆͰ͖ͳ͍ෳ਺ͷӨڹͷ݁ՌͰ͋ Δɻ໰୊ͷݪҼΛҰ෦ͷਓͷ͍ͤ ʹ ͯ͠௥ڀ͢Δͷ͸શ͘ٯޮՌͩɻ ѱ͍ঢ়گΛ͞Βʹѱͯ͘͠͠·͏” - Deming
  33. © 2016 Takashi Takebayashi DevOps 1st step DevOps͸͡Ίͷ1า ૊৫શମͷόϦϡʔɾετϦʔϜΛ֬ೝ͢Δ ੍໿(ϘτϧωοΫ)Λݟ͚ͭΔ(ToC:

    ੍໿ཧ࿦) ΧΠθϯͷεέδϡʔϧ΍໨ඪʹ޲͔͍ͬͯΔ͔Λ ֬ೝ͢ΔϝτϦΫεΛܾΊΔ ϑΟʔυόοΫɾϧʔϓͰ܁Γฦ͢
  34. © 2016 Takashi Takebayashi νʔϜ։ൃʹ͓͚ΔόϦϡʔετϦʔϜͷؔ܎ऀͷ෦෼࠷దԽͷฐ֐(Ұ෦) Producer Dev team QA, Ops

    team Excel, Word, PowerPoint…etc Redmine, Trac, JIRA…etc GitHub, GitLab…etc Jenkins…etc Fabric, Capistrano…etc Skype, Slack, ChatWork…etc
  35. © 2016 Takashi Takebayashi Producer Dev team QA, Ops team

    νʔϜ։ൃʹ͓͚ΔόϦϡʔετϦʔϜͷؔ܎ऀΛશମ࠷దͰܨ͕Δ(Ұ෦) Excel, TFS, VSTS TFS, VSTS TFS, VSTS TFS, VSTS TFS, VSTS Team Room
  36. © 2016 Takashi Takebayashi DevOps is Develop Driven Business Process

    or People? Practice, practice, practice! ࣮ફ͢Δ Summary ·ͱΊ
  37. © 2016 Takashi Takebayashi Takashi Takebayashi @changeworlds Microsoft MVP for

    Visual Studio and Development Technologies Blog : http://changesworlds.com/ Role : Scrum Master, Agile Coach, Biz&Tech cross-functional paradigm Writing : Build Insider(ALM, DevOps), mynavinews(TeamDev) Community : εΫϥϜಓ, TFSUGίΞϝϯό Speaker
  38. © 2016 Takashi Takebayashi 10+ Deploys Per Day: Dev and

    Ops Cooperation at Flickr ALMͱDevOpsͱϦʔϯελʔτΞοϓ͸Կ͕ҧ͏ͷ͔ʁ DevOpsͱ͸Կ͔ʁ ͦͷπʔϧͱ૊৫จԽɺΞδϟΠϧͱͷҧ͍ References