SlideShare a Scribd company logo
Submit Search
Upload
15分で分かる NoOps
Report
Hiromasa Oka
Software Architect at ZOZO Technologies Inc.
Follow
•
18 likes
•
30,559 views
1
of
51
15分で分かる NoOps
•
18 likes
•
30,559 views
Download Now
Download to read offline
Report
Software
2018/9/12開催の NoOps Meetup Tokyo #1 でのセッション資料です。
Read more
Hiromasa Oka
Software Architect at ZOZO Technologies Inc.
Follow
Recommended
At least onceってぶっちゃけ問題の先送りだったよね #kafkajp
Yahoo!デベロッパーネットワーク
13.3K views
•
15 slides
マイクロにしすぎた結果がこれだよ!
mosa siru
132.5K views
•
32 slides
どうやって決める?kubernetesでのシークレット管理方法(Cloud Native Days 2020 発表資料)
NTT DATA Technology & Innovation
3.3K views
•
51 slides
デプロイメントパイプラインって何?
ke-m kamekoopa
11.7K views
•
26 slides
ヤフー発のメッセージキュー「Pulsar」のご紹介
Yahoo!デベロッパーネットワーク
12.2K views
•
65 slides
Consumer Driven Contractsで REST API/マイクロサービスをテスト #m3tech
Toshiaki Maki
5.2K views
•
39 slides
More Related Content
What's hot
品質を加速させるために、テスターを増やす前から考えるべきQMファンネルの話(3D版)
Yasuharu Nishi
19.9K views
•
17 slides
[Aurora事例祭り]Amazon Aurora を使いこなすためのベストプラクティス
Amazon Web Services Japan
56.6K views
•
64 slides
Dockerからcontainerdへの移行
Akihiro Suda
7.4K views
•
36 slides
Dockerからcontainerdへの移行
Kohei Tokunaga
16.6K views
•
36 slides
分散トレーシング技術について(Open tracingやjaeger)
NTT Communications Technology Development
23.2K views
•
25 slides
Docker Compose 徹底解説
Masahito Zembutsu
61.1K views
•
123 slides
What's hot
(20)
品質を加速させるために、テスターを増やす前から考えるべきQMファンネルの話(3D版)
Yasuharu Nishi
•
19.9K views
[Aurora事例祭り]Amazon Aurora を使いこなすためのベストプラクティス
Amazon Web Services Japan
•
56.6K views
Dockerからcontainerdへの移行
Akihiro Suda
•
7.4K views
Dockerからcontainerdへの移行
Kohei Tokunaga
•
16.6K views
分散トレーシング技術について(Open tracingやjaeger)
NTT Communications Technology Development
•
23.2K views
Docker Compose 徹底解説
Masahito Zembutsu
•
61.1K views
sveltekit-ja.pdf
ssuser65180a
•
600 views
マイクロサービス 4つの分割アプローチ
増田 亨
•
41.3K views
ストリーム処理プラットフォームにおけるKafka導入事例 #kafkajp
Yahoo!デベロッパーネットワーク
•
6.3K views
Sonar qubeでちょっと楽しい静的解析
政雄 金森
•
24K views
Amazon Aurora - Auroraの止まらない進化とその中身
Amazon Web Services Japan
•
22.2K views
NTTデータ流Infrastructure as Code~ 大規模プロジェクトを通して考え抜いた基盤自動化の新たな姿~(NTTデータ テクノロジーカンフ...
NTT DATA Technology & Innovation
•
10K views
Spring starterによるSpring Boot Starter
Ryosuke Uchitate
•
3.1K views
イケてない開発チームがイケてる開発を始めようとする軌跡
NTT Communications Technology Development
•
6K views
世界一わかりやすいClean Architecture
Atsushi Nakamura
•
47K views
リファクタリングで実装が○○分短縮した話
infinite_loop
•
1.5K views
MQTTとAMQPと.NET
terurou
•
39.8K views
MicrometerとPrometheusによる LINEファミリーアプリのモニタリング
LINE Corporation
•
3.7K views
PostgreSQLをKubernetes上で活用するためのOperator紹介!(Cloud Native Database Meetup #3 発表資料)
NTT DATA Technology & Innovation
•
3.6K views
NoOpsが目指す未来とコンテナ技術
Hiromasa Oka
•
3.3K views
Similar to 15分で分かる NoOps
de:code 2019 SP07 実践NoOps
Hiromasa Oka
1.9K views
•
56 slides
リーン原則とソフトウェア開発
You&I
2.3K views
•
40 slides
NoOps で変わる 人とシステムの関わりかた
Hiromasa Oka
1.5K views
•
62 slides
Osc tokyo20141019
Kiyoshi Ogawa
1.3K views
•
46 slides
Milano ops-meetup報告会
Sampath Priyankara
537 views
•
7 slides
運用効率化・運用自動化の実現方式とは?
Hinemos
1K views
•
26 slides
Similar to 15分で分かる NoOps
(20)
de:code 2019 SP07 実践NoOps
Hiromasa Oka
•
1.9K views
リーン原則とソフトウェア開発
You&I
•
2.3K views
NoOps で変わる 人とシステムの関わりかた
Hiromasa Oka
•
1.5K views
Osc tokyo20141019
Kiyoshi Ogawa
•
1.3K views
Milano ops-meetup報告会
Sampath Priyankara
•
537 views
運用効率化・運用自動化の実現方式とは?
Hinemos
•
1K views
Out systemsaichiusermeeting#5 lt2
潤司 渡部
•
201 views
運用効率化・運用自動化の実現方式とは?
Hinemos
•
937 views
スクラムプロジェクト準備(公開用) No.31
Sukusuku Scrum
•
2.2K views
オープンソース統合運用管理ツール『Hinemos』 --- その利便性及びインシデント管理について ---
Open Source Software Association of Japan
•
4K views
リーン開発の本質 公開用
ESM SEC
•
20.4K views
運用効率化・運用自動化を実現するHinemosのご紹介
Hinemos
•
858 views
Redmineの活用事例‐多様なプロジェクト管理に対するツールの適用
Reiko Rikuno
•
8.3K views
MicroserviceでのNoOps戦略 - NoOps Meetup Tokyo #2 #NoOpsJP
Yusuke Suzuki
•
8.6K views
ベンチマーク勉強会#01
milk hanakara
•
1.6K views
Ruby コミュニティの文化に学ぶエンタープライズシステム開発の処方箋
Ayumu Aizawa
•
1.6K views
運用管理ツールに求められる、運用効率化・運用自動化の実現方式とは?
Hinemos
•
2.1K views
運用効率化・運用自動化を実現するHinemosのご紹介
Hinemos
•
537 views
NoOps Meetup Tokyo #3 Opening
Hiromasa Oka
•
1.3K views
運用効率化・運用自動化の実現方式とは?
Hinemos
•
693 views
More from Hiromasa Oka
ZOZOTOWNのアーキテクトという役割を紹介します
Hiromasa Oka
1.5K views
•
23 slides
ZOZOTOWNのマルチクラウドへの挑戦と挫折、そして未来
Hiromasa Oka
1.6K views
•
44 slides
NoOps Meetup Tokyo #9 Opening
Hiromasa Oka
633 views
•
39 slides
クラウドネイティブトランスフォーメーションのススメ
Hiromasa Oka
1.2K views
•
57 slides
NoOps Meetup Tokyo #8 1st Anniversary - Opening
Hiromasa Oka
1.3K views
•
40 slides
NoOps Meetup Tokyo #7 Opening
Hiromasa Oka
1.5K views
•
36 slides
More from Hiromasa Oka
(20)
ZOZOTOWNのアーキテクトという役割を紹介します
Hiromasa Oka
•
1.5K views
ZOZOTOWNのマルチクラウドへの挑戦と挫折、そして未来
Hiromasa Oka
•
1.6K views
NoOps Meetup Tokyo #9 Opening
Hiromasa Oka
•
633 views
クラウドネイティブトランスフォーメーションのススメ
Hiromasa Oka
•
1.2K views
NoOps Meetup Tokyo #8 1st Anniversary - Opening
Hiromasa Oka
•
1.3K views
NoOps Meetup Tokyo #7 Opening
Hiromasa Oka
•
1.5K views
ZOZOTOWN の Cloud Native Journey
Hiromasa Oka
•
2.4K views
もう「効率化」なんてゴミ箱に捨ててしまおう
Hiromasa Oka
•
7.5K views
NoOps Meetup Tokyo #6 Opening
Hiromasa Oka
•
2.4K views
NoOps Meetup Tokyo #5 Opening
Hiromasa Oka
•
1.5K views
NoOps Meetup Tokyo #4 Opening
Hiromasa Oka
•
2K views
NoOps Meetup Tokyo #2 Opening
Hiromasa Oka
•
1.7K views
勝てる「開発プロセス」のつくり方
Hiromasa Oka
•
4.1K views
NoOps Meetup Tokyo #1 Opening
Hiromasa Oka
•
938 views
新世代の価値観へ越境せよ
Hiromasa Oka
•
3.2K views
ゼンアーキテクツ「ものづくり」五つの掟
Hiromasa Oka
•
829 views
[旧版] ゼンアーキテクツ「ものづくり」五つの掟
Hiromasa Oka
•
1.2K views
NoOpsへ舵を切れ
Hiromasa Oka
•
6K views
クラウド時代のデータストア選択"秘伝の書"
Hiromasa Oka
•
2.5K views
NoOpsへの挑戦
Hiromasa Oka
•
8.7K views
15分で分かる NoOps
1.
15分でわかる NoOps ~ テクノロジの進化と価値観の変化を知る
~ NoOps Meetup Tokyo #1 2018.09.12
2.
1. NoOps の目指すもの 2.
なぜ今 NoOps なのか 3. NoOps のつくりかた ミドルウェア / アプリケーション / 組織 [付録] NoOpsを支える技術 Agenda
3.
システム運用の “嬉しくない” ことをなくそう
4.
NoOps の目指すもの 1. ユーザーの体験を妨げないシステム運用保守の実現 •
障害時のダウン、計画停止、負荷集中時の性能低下、etc.. 2. 運用保守の現場で発生する「トイル」の最小化 • リリース手続き、パッチの適用、リソース監視、待機、etc.. 3. システム運用保守のリソースとコストの最適化 • 余剰資源を持たない、適正品質、時間外勤務、人材活用、etc.. システム運用保守に関する「嬉しくないもの」を取り除く活動
5.
そこに立ちはだかる Ops改善のジレンマ
6.
コスト増(人・設備)現場の負担増 and/or
7.
サービス低下 and/or コスト増 (設備・アウトソース)
8.
サービス低下 現場の負担激増 and/or
10.
NoOps の目指すもの 1. ユーザーの体験を妨げないシステム運用保守の実現 •
障害時のダウン、計画停止、負荷集中時の性能低下、etc.. 2. 運用保守の現場で発生する「トイル」の最小化 • リリース手続き、パッチの適用、リソース監視、待機、etc.. 3. システム運用保守のリソースとコストの最適化 • 余剰資源を持たない、適正品質、時間外勤務、人材活用、etc.. システム運用保守に関する「嬉しくないもの」を取り除く活動
12.
いまから10年前、「堅牢さ=信頼性」だった 商用 UNIX Server
14.
進化
15.
「高い復元力」 実現の鍵は 回復性 = 障害から回復して動作を続行するシステムの能力 障害の回避が目的ではなく、ダウンタイムやデータ損失を回避すべく障害に対応することを目指す。 回復性設計の目的は、障害発生時にもアプリケーションが完全に機能している状態を維持することである。
16.
“取り回しの軽さ”
17.
Robustness から Resiliency
への 価値観の転換 「壊れない」 「いつでも回復できる」
18.
「復元力」 壊れても、動き続けるための能力
19.
高 低 なし (秒単位で回復) (数十分~数時間で回復) (回復不能) 復元力 (Resiliencability)
20.
復元力 (Resiliencability) サーバレス コンテナ 仮想マシン(VM) 非冗長物理構成 物理機器 秒単位 数分~ 数時間 ~数日 復旧不能 高 低 なし
22.
しかも、それだけじゃない。
23.
- Self Healing -
In-Flight Renewing – Adaptive Scale 「高い回復性」を持つことによる可能性の広がり
25.
NoOps システムが備えるべき 3つの能力 NoOps Failure
26.
NoOps へ向かう最もシンプルなソリューション 仕様には書かれていない。 目利きが必要
27.
でも、NoOps ってクラウドが前提なんでしょ? https://www.slideshare.net/yokawasa/kubernetes-x-paas-noops
28.
しかしミドルウェアだけでは不十分
29.
アプリケーションにも回復力を持たせる必要がある
30.
データベース アプリサーバ アプリアプリ アプリ メッセージングサービ ス アプリケーション プラットフォーム Monitor Monitor Automation Automation Monitor Automation Monitor Automation システム全体のNoOpsを実現するには、プラットフォームだけでなく アプリケーションの回復性も必要 システム利用者 アプリケーションの 「復元力(Resiliencability)」は 設計指針によって実装される アプリケーション向けの カスタム回復メカニズム 復元力 Monitor Automation プラットフォーム向けのカスタム 回復メカニズム プラットフォームの 「復元力」は、主にHA機構として既に 有していることが多い。 復元力 プラットフォームの備える 回復メカニズム
31.
回復性のためのアプリケーション設計原則 1回の大きな処理よりも複数の小さな処理を選ぶ 処理はステートレスで設計する 非同期処理を前提に設計する 処理の冪等(べきとう)性を担保する 全ての処理結果を記録する
32.
① 処理データの リクエスト ③注文ステータス更新処理 10万回ループ Database 仮想マシン ④ 処理結果の書き込み ②
10万件のデータ取得
33.
① 処理データの リクエスト Database Serverless ② 10万件のデータ ④
Jobを1件ずつ キューに投入 ⑤(可能であれば) Jobの並列実行 Serverless ファーム Monitor Automation カスタム回復メカニズム Jobとキューの監視と回復処理 ③ 10万件の個別処理に分離 ⑥ 処理結果の書き込み
34.
https://github.com/NoOps-jp/functions-batch-handson https://github.com/zenarchitects/functions-batchapps ハンズオンマテリアル サンプルコード Share on
35.
NoOps を実現するチーム
36.
DevOps 伝統的運用保守 (ITIL型) Design for Robustness (堅牢さを前提とした設計) Design
for Failure (故障を前提とした設計) NoOps Design for Resiliency (回復性設計) SRE (信頼性エンジニアリング) アジャイルによる 価値観の転換 クラウドによる 価値観の転換 しっかりと計画され、厳密に 管理された運用保守業務。 正常稼働していることが通常状態。 故障や不具合は例外処理として設計。 故障や不具合も通常状態として扱い、 発生時を想定して設計する。 開発と運用保守を一体として扱い、 状況の変化に柔軟に対応できる組織。 1990年代~ 2008年 運用保守アプローチ 運用保守もエンジニアリング業務として扱う。 ヒューマンエラーを最小化し、システムの信頼性 を維持するための継続的改善活動。 復旧作業時のヒューマンエラーを最小化する ため、障害の発生から正常稼働状態への復旧 まで想定して設計する。 システム設計アプローチ 2014年 現在
37.
Design for Resiliency SRE NoOps
= DevOps
38.
NoOpsの活動ライフサイクル 回復性設計 アーキテクト システム エンジニアリング 基本設計 NoOps活動 自律運用 手動運用 システム 運用保守 エンジニアリング 自律運用 システム SREチーム開発チーム 非機能要求 「人間による運用保守作業を最小化する」 アーキテクチャの変更 システムに回復性を後から備えさせることは困難 基本設計時点で回復性を持たせることが重要 システムは変化し続ける前提で 継続的に運用保守を改善する活動機能の追加・変更 自動化の促進 手動運用の 増加 システムの初期開発時
39.
「OSやミドルウェアのメンテナンスは サービス無停止で行う」 「ハードウェアの交換も、もちろんサービス無停止」
40.
「OSやミドルウェアのメンテナンスは サービス無停止で行う」 「ハードウェアの交換も、もちろんサービス無停止」
43.
「回復性」のレベルは、後から変更できない 技術の進化とともに、 「要求」も「設計」も進化しなければならない
44.
システム運用の “嬉しくない” ことをなくそう システムに関わる全ての人が ハッピーになるために。
45.
http://tech.nikkeibp.co.jp/atcl/nxt/column/18/00263/041900001/ https://www.slideshare.net/hiromasaoka/noops-88082246 https://noops.connpass.com https://www.slideshare.net/hiromasaoka/noops-98595318
46.
Thank You!
48.
NoOps システムが備えるべき 3つの能力 NoOps Failure
49.
Resiliencability ConfigurabilityObservability NoOps Landscape NoOps Ready
Solutions Application Platform Database Messaging Container Serverless Runbook CI/CD Image Build/Repository Coordination Monitor Log Azure Web Apps Azure Functions Azure Monitor Log Analytics Azure Automation Cosmos DB Azure DB for MySQL/PostgreSQL Service Fabric AKS Data Analysis AWS Lambda GKE Google Cloud Functions AWS Cloudwatch Google AppEngine Container Based Solution with - Self Healing - In-Flight Renewing - Adaptive Scale and API Based Configration/Provisioning ability. Platform with High Resiliency. Azure Event Grid NoOps Landscape 絶賛定義中 でも、自分たちの視野ではぜんぜん足りない
50.
こんな感じに できるといいなあ
51.
一緒に考えてもいいよ、という方は @okahiromasa までお声がけください