Lock in $30 Savings on PRO—Offer Ends Soon! ⏳
Speaker Deck
Features
Speaker Deck
PRO
Sign in
Sign up for free
Search
Search
DevOps勉強会資料
Search
naoki-urabe
April 16, 2022
Programming
0
150
DevOps勉強会資料
naoki-urabe
April 16, 2022
Tweet
Share
More Decks by naoki-urabe
See All by naoki-urabe
無駄課金回避__lambdaでEC2定期シャットダウン.pdf
naokiurabe
0
240
django入門
naokiurabe
0
110
django入門2
naokiurabe
0
75
Other Decks in Programming
See All in Programming
配送計画の均等化機能を提供する取り組みについて(⽩⾦鉱業 Meetup Vol.21@六本⽊(数理最適化編))
izu_nori
0
150
S3 VectorsとStrands Agentsを利用したAgentic RAGシステムの構築
tosuri13
6
310
從冷知識到漏洞,你不懂的 Web,駭客懂 - Huli @ WebConf Taiwan 2025
aszx87410
2
2.3k
Microservices Platforms: When Team Topologies Meets Microservices Patterns
cer
PRO
1
1k
【CA.ai #3】ワークフローから見直すAIエージェント — 必要な場面と“選ばない”判断
satoaoaka
0
240
AIエージェントを活かすPM術 AI駆動開発の現場から
gyuta
0
400
「コードは上から下へ読むのが一番」と思った時に、思い出してほしい話
panda728
PRO
38
25k
実はマルチモーダルだった。ブラウザの組み込みAI🧠でWebの未来を感じてみよう #jsfes #gemini
n0bisuke2
0
320
20 years of Symfony, what's next?
fabpot
2
350
新卒エンジニアのプルリクエスト with AI駆動
fukunaga2025
0
210
TUIライブラリつくってみた / i-just-make-TUI-library
kazto
1
380
How Software Deployment tools have changed in the past 20 years
geshan
0
29k
Featured
See All Featured
Building Flexible Design Systems
yeseniaperezcruz
330
39k
Creating an realtime collaboration tool: Agile Flush - .NET Oxford
marcduiker
35
2.3k
Building Applications with DynamoDB
mza
96
6.8k
Learning to Love Humans: Emotional Interface Design
aarron
274
41k
KATA
mclloyd
PRO
32
15k
YesSQL, Process and Tooling at Scale
rocio
174
15k
Why You Should Never Use an ORM
jnunemaker
PRO
61
9.6k
Rails Girls Zürich Keynote
gr2m
95
14k
Reflections from 52 weeks, 52 projects
jeffersonlam
355
21k
Thoughts on Productivity
jonyablonski
73
5k
Principles of Awesome APIs and How to Build Them.
keavy
127
17k
The MySQL Ecosystem @ GitHub 2015
samlambert
251
13k
Transcript
DevOps勉強会
この勉強会の目的 目的 • DevOps文化の種まき 話す内容 • DevOpsとはなにか • どう実現するのかを伝える
DevOpsとは DevOpsとはDev(開発)とOps(品質保証、運用)を一体化して運用する手法 目的 小規模なチームが短期の開発・テストサイクルを繰り返し、ユーザからのフィードバック も踏まえて、顧客に満足してもらえるサービスを構築し、組織全体にすばやく価値をもた らす キーワード • 高品質 •
素早く • お客さんに価値を提供
DevOps採用すると具体的にどうなるのか • ソフトウェアデリバリのパフォーマンス(4keys)の向上 ◦ リードタイム(機能開発から本番適用までにどれぐらい時間がかかったのか)短縮 ◦ デプロイ頻度(何回デプロイできたか)増加 ◦ 平均修復時間(障害からどれくらい早く復旧したのか)短縮 ◦
変更失敗率(本番影響があるものがどれぐらい発生したか)低下 市場の優位性を築くことができる • コスト削減(失敗変更率低下、平均修復時間短縮) • 価値の素早い提供(デプロイ頻度増加、リードタイム短縮)
DevOpsを実現するには 組織文化 • DevOpsを実現するのは人間の習慣 ◦ 個人の意思、行動で決まってくる • 人間の行動を決めるのは周りの組織文化 ◦ まわりがやっていることは自然とそれに従う
組織文化 DevOps
DevOps実現の土台は組織文化 組織の文化は3つに分類できる。 • 権力志向な組織 恐怖で支配、組織内の政治のため、情報が隠蔽、改ざんされる • ルール志向な組織 縄張りを意識した活動、自分たちのルールに基づいて活動し、権益を守る • パフォーマンス組織
使命や任務に焦点に絞る。目標の達成方法と優れたパフォーマンスを最優先する
組織文化をどう変えるか 最初に行うのは関係者の言動、何をどう行うか 変える方法 • 継続的デリバリ:開発の手法 • リーンマネジメント:プロジェクトの管理 のプラクティスの実践
継続的デリバリー プロダクトに対するあらゆる変更を、安全、迅速、持続可能な形で提供する一まとまりの ケイパビリティ(組織全体で保持する機能や能力)からなる手法 • 品質の概念を生産工程の最初から組み込む • 作業はバッチ処理で進める • 反復作業はコンピュータに任せて、人間は問題解決に当たる •
徹底した改善努力を継続的に行う • 全員が責任を担う
品質の概念を生産工程の最初から組み込む 問題が早く見つかれば見つかるほど、低コストで対応が可能 →ツールと人員を駆使し、問題がすばやく見つけることができる組織文化の構築 • テストしっかり書く • PRをしっかりレビュー
作業はバッチ処理で進める バッチ:1回分にまとめる 作業が大きいと →レビューしづらい、リリースに時間がかかる、問題発生時の問題切り分けしづらい 問題は小さな問題に切り分ける →高速にデリバリー、フィードバックが得られる。軌道修正しやすい
反復作業はコンピュータ、人間は問題解決 CI/CDを活用して楽をする →人間は常に同じパフォーマンスを発揮できない、ミスの発生を抑制する →より本質的な問題の解決に当たれる
徹底した改善努力を継続的に行う 文化は習慣から生まれる 常に高みを目指し、それが日常作業の一部になっている
全員が責任を担う システムレベルの成果の現況を透明にする 組織内の他のすべての部署と協力して、達成可能な期限付きの目標を立てる 目標をすべてのチームが達成するように支援する
継続的なデリバリを実現する技術的基盤 • 包括的な構成管理 ソフトウェアをビルド/テスト/デプロイできる作業環境 • 継続的インテグレーション(CI:Contanious Integration) 変更が追加されるたびにテストなどのビルドプロセスを発動。 ビルドプロセスが失敗したら即座に修正する •
継続的テスト 開発プロセスにテストを組み込む。 CIのテストがすべて合格してからデプロイ作業を行う
組織文化をどう変えるか 最初に行うのは関係者の言動、何をどう行うか 変える方法 • 継続的デリバリ:開発の手法 • リーンマネジメント:プロジェクトの管理 のプラクティスの実践
リーンマネジメント リーン:筋肉質の、痩せた →無理、無駄のない管理方法 • 進行中の作業(WIP)の制限 • ワークフローの可視化 • 負担の軽い変更承認プロセス
進行中の作業(WIP)の制限 進行中の作業を制限することにより、作業の過負荷になることを防ぐ やるやらないはっきりさせる →リードタイムの削減 障害要因の明確化
ワークフローの可視化 • さまざまな指標を数値化・可視化する ◦ レスポンスタイム ◦ デプロイ頻度 ◦ リードタイム ◦
看板ボード →情報の共有、質の高いコミュニケーションの実現 • 話の前提が共有できる →同じ数値目標の共有、 • 数値設定のない目標は迷走しやすい。まずは計測から
負担の軽い変更承認プロセス • 変更承認プロセスを厳密にすることとデリバリのパフォーマンスに相関はない。むし ろ厳密にするとパフォーマンスが悪くなる • →承認まで時間がかかり、価値提供スピードに問題が発生する • →方針転換に弱い
Q.DevOpsには時間と品質のトレードオフがあるのでは? A.DevOps導入による時間と品質に相関はない。両方高めていける • DevOps導入しないことによって作業が早くなったとしても、障害などが起きた場 合、そのしわ寄せがくる • 逆に環境が整っていない分、さらに問題が大きくなる
まとめ DevOps実現には組織文化が大事 組織文化を変えていくには • 継続的デリバリ • リーンマネジメント の実践が重要
参考 LeanとDevOpsの科学