Upgrade to Pro
— share decks privately, control downloads, hide ads and more …
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
230
django入門
naokiurabe
0
99
django入門2
naokiurabe
0
72
Other Decks in Programming
See All in Programming
開発チーム・開発組織の設計改善スキルの向上
masuda220
PRO
19
11k
1から理解するWeb Push
dora1998
7
1.8k
Go言語での実装を通して学ぶLLMファインチューニングの仕組み / fukuokago22-llm-peft
monochromegane
0
120
AIコーディングAgentとの向き合い方
eycjur
0
270
Tool Catalog Agent for Bedrock AgentCore Gateway
licux
6
2.3k
アルテニア コンサル/ITエンジニア向け 採用ピッチ資料
altenir
0
100
Amazon RDS 向けに提供されている MCP Server と仕組みを調べてみた/jawsug-okayama-2025-aurora-mcp
takahashiikki
1
110
Ruby Parser progress report 2025
yui_knk
1
430
請來的 AI Agent 同事們在寫程式時,怎麼用 pytest 去除各種幻想與盲點
keitheis
0
110
250830 IaCの選定~AWS SAMのLambdaをECSに乗り換えたときの備忘録~
east_takumi
0
390
ユーザーも開発者も悩ませない TV アプリ開発 ~Compose の内部実装から学ぶフォーカス制御~
taked137
0
140
Android端末で実現するオンデバイスLLM 2025
masayukisuda
1
130
Featured
See All Featured
[Rails World 2023 - Day 1 Closing Keynote] - The Magic of Rails
eileencodes
36
2.5k
Documentation Writing (for coders)
carmenintech
74
5k
10 Git Anti Patterns You Should be Aware of
lemiorhan
PRO
656
61k
The Invisible Side of Design
smashingmag
301
51k
Making Projects Easy
brettharned
117
6.4k
Faster Mobile Websites
deanohume
309
31k
YesSQL, Process and Tooling at Scale
rocio
173
14k
VelocityConf: Rendering Performance Case Studies
addyosmani
332
24k
Building a Scalable Design System with Sketch
lauravandoore
462
33k
Stop Working from a Prison Cell
hatefulcrawdad
271
21k
Testing 201, or: Great Expectations
jmmastey
45
7.6k
Reflections from 52 weeks, 52 projects
jeffersonlam
352
21k
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の科学