Download free for 30 days
Sign in
Upload
Language (EN)
Support
Business
Mobile
Social Media
Marketing
Technology
Art & Photos
Career
Design
Education
Presentations & Public Speaking
Government & Nonprofit
Healthcare
Internet
Law
Leadership & Management
Automotive
Engineering
Software
Recruiting & HR
Retail
Sales
Services
Science
Small Business & Entrepreneurship
Food
Environment
Economy & Finance
Data & Analytics
Investor Relations
Sports
Spiritual
News & Politics
Travel
Self Improvement
Real Estate
Entertainment & Humor
Health & Medicine
Devices & Hardware
Lifestyle
Change Language
Language
English
Español
Português
Français
Deutsche
Cancel
Save
Submit search
EN
Uploaded by
Takashi Abe
PDF, PPTX
4,059 views
Microservicesを実現するために、インフラエンジニアと開発者がすべきこと
Microservies を実現するために、インフラエンジニアおよびアプリケーション開発者が、すべきことをまとめました。
Engineering
◦
Read more
15
Save
Share
Embed
Embed presentation
Download
Download as PDF, PPTX
1
/ 29
2
/ 29
3
/ 29
4
/ 29
5
/ 29
6
/ 29
7
/ 29
8
/ 29
9
/ 29
10
/ 29
11
/ 29
12
/ 29
13
/ 29
14
/ 29
15
/ 29
16
/ 29
17
/ 29
18
/ 29
19
/ 29
20
/ 29
21
/ 29
22
/ 29
23
/ 29
24
/ 29
25
/ 29
26
/ 29
27
/ 29
28
/ 29
29
/ 29
More Related Content
PDF
マイクロサービスアーキテクチャとは何か
by
Yusuke Suzuki
PDF
要求の変化とマイクロサービスアーキテクチャ
by
Yusuke Suzuki
PDF
マイクロサービスアーキテクチャの設計 - JUG2015
by
Yusuke Suzuki
PDF
クラウド時代のエンジニアについて #sesfukui
by
Yusuke Suzuki
PDF
Javaエンジニアのためのアーキテクト講座-JJUG CCC 2014 Fall
by
Yusuke Suzuki
PPTX
161218 cybozu SRE
by
tomonori-saito-cybozu
PDF
マイクロサービス化設計入門 - AWS Dev Day Tokyo 2017
by
Yusuke Suzuki
PDF
マイクロサービス化デザインパターン - #AWSDevDay Tokyo 2018
by
Yusuke Suzuki
マイクロサービスアーキテクチャとは何か
by
Yusuke Suzuki
要求の変化とマイクロサービスアーキテクチャ
by
Yusuke Suzuki
マイクロサービスアーキテクチャの設計 - JUG2015
by
Yusuke Suzuki
クラウド時代のエンジニアについて #sesfukui
by
Yusuke Suzuki
Javaエンジニアのためのアーキテクト講座-JJUG CCC 2014 Fall
by
Yusuke Suzuki
161218 cybozu SRE
by
tomonori-saito-cybozu
マイクロサービス化設計入門 - AWS Dev Day Tokyo 2017
by
Yusuke Suzuki
マイクロサービス化デザインパターン - #AWSDevDay Tokyo 2018
by
Yusuke Suzuki
What's hot
PDF
JJUG初心者のためのJava/JJUG講座
by
Yusuke Suzuki
PDF
ITサービス運営におけるアーキテクチャ設計 - 要求開発アライアンス 4月定例会
by
Yusuke Suzuki
PDF
アジャイル開発を支えるアーキテクチャ設計とは
by
Yusuke Suzuki
PDF
エナジャイル設立によせて
by
Yusuke Suzuki
PDF
ウォーターフォールとアジャイルを考える #ita_ws
by
Yusuke Suzuki
PDF
JavaとOSSとAndroid - JavaAPI訴訟問題を考える
by
Yusuke Suzuki
PDF
Javaエンジニアのための"クラウド時代の過ごし方" Java Day Tokyo 2016
by
Yusuke Suzuki
PDF
「ITアーキテクトの役割と責任」デブサミ2015 20-C-1
by
Yusuke Suzuki
PDF
ITトレンドに見る日本のエンタープライズITについて
by
Yusuke Suzuki
PDF
プロダクトオーナーは育成できるのか? - プロダクトオーナー祭り2016
by
Yusuke Suzuki
PDF
Javaはコミュニティの力で再び偉大になれるのか
by
Yusuke Suzuki
PDF
今どきのアーキテクチャ設計戦略 - QCon Tokyo 2016
by
Yusuke Suzuki
PDF
JavaエンタープライズアーキテクチャにおけるHTML5 - Enterprise ☓ HTML5 Web Application Conference ...
by
Yusuke Suzuki
PDF
Javaとコミュニティの歩み 2020
by
Yusuke Suzuki
PDF
クラウドを超えた先の企業システム像 20091008 JJUG CCC
by
Yusuke Suzuki
PDF
エンタープライズアジャイルでチームが超えるべきこと - エンタープライズアジャイル勉強会 2018年10月セミナー
by
Yusuke Suzuki
PDF
アジャイルと言わないエンタープライズアジャイル導入 - Agile Japan 2016
by
Yusuke Suzuki
PDF
エンタープライズアジャイルにおける要求探索の勘所 要求開発アライアンス2018年7月定例会
by
Yusuke Suzuki
PDF
JavaOne 2016総括 #jjug
by
Yusuke Suzuki
PDF
ユーザー企業へのアジャイル導入四苦八苦 - エンタープライズアジャイル勉強会2016年11月セミナー
by
Yusuke Suzuki
JJUG初心者のためのJava/JJUG講座
by
Yusuke Suzuki
ITサービス運営におけるアーキテクチャ設計 - 要求開発アライアンス 4月定例会
by
Yusuke Suzuki
アジャイル開発を支えるアーキテクチャ設計とは
by
Yusuke Suzuki
エナジャイル設立によせて
by
Yusuke Suzuki
ウォーターフォールとアジャイルを考える #ita_ws
by
Yusuke Suzuki
JavaとOSSとAndroid - JavaAPI訴訟問題を考える
by
Yusuke Suzuki
Javaエンジニアのための"クラウド時代の過ごし方" Java Day Tokyo 2016
by
Yusuke Suzuki
「ITアーキテクトの役割と責任」デブサミ2015 20-C-1
by
Yusuke Suzuki
ITトレンドに見る日本のエンタープライズITについて
by
Yusuke Suzuki
プロダクトオーナーは育成できるのか? - プロダクトオーナー祭り2016
by
Yusuke Suzuki
Javaはコミュニティの力で再び偉大になれるのか
by
Yusuke Suzuki
今どきのアーキテクチャ設計戦略 - QCon Tokyo 2016
by
Yusuke Suzuki
JavaエンタープライズアーキテクチャにおけるHTML5 - Enterprise ☓ HTML5 Web Application Conference ...
by
Yusuke Suzuki
Javaとコミュニティの歩み 2020
by
Yusuke Suzuki
クラウドを超えた先の企業システム像 20091008 JJUG CCC
by
Yusuke Suzuki
エンタープライズアジャイルでチームが超えるべきこと - エンタープライズアジャイル勉強会 2018年10月セミナー
by
Yusuke Suzuki
アジャイルと言わないエンタープライズアジャイル導入 - Agile Japan 2016
by
Yusuke Suzuki
エンタープライズアジャイルにおける要求探索の勘所 要求開発アライアンス2018年7月定例会
by
Yusuke Suzuki
JavaOne 2016総括 #jjug
by
Yusuke Suzuki
ユーザー企業へのアジャイル導入四苦八苦 - エンタープライズアジャイル勉強会2016年11月セミナー
by
Yusuke Suzuki
Viewers also liked
PDF
Spa のための web サーバ構築ノウハウ
by
Kazuhiro Kotsutsumi
PDF
サーバサイドエンジニアが 1年間まじめにSPAやってみた
by
Itaru Kitagawa
PPTX
HTTPとサーバ技術の最新動向
by
Kazuho Oku
PDF
エフスタ!!HOKKAIDO エンジニアが この先 生き残るには
by
Takehito Tanabe
PPTX
情報工学の道具としてのハードウエアと半導体
by
Junichi Akita
PDF
王道ダイエットで痩せる話 #デブナイト
by
Takashi Abe
PPTX
Dockerの基本的な話
by
gree_tech
PDF
第18回Cloud Foundry輪読会用 Buildpackを使ってアプリを 載せるためのアプローチ
by
Takeshi Morikawa
PDF
モダンWeb開発ワークショップ
by
Staffnet_Inc
PDF
Lightningコンポーネント事始め
by
Mitsuru Ogawa
PPTX
Next Generation of BI
by
Ihor Malytskyi
PDF
Web業務アプリの新しい潮流
by
久司 中村
PDF
リモートチームでうまくいく 〜 これから訪れる働き方の変革
by
Yoshihito Kuranuki
PPTX
MQTTでオフィスハック with RasPi
by
Masahiko Kubara
PDF
Writing code you won't hate tomorrow
by
Rafael Dohms
PDF
Cloud Foundry構成概要 111018
by
Uemura Yuichi
PDF
RESTful開発フロントエンド編(SPA・AltJS・フレームワーク)
by
K Tsukada
PPTX
goa Design first API Generation
by
yoshinori sugiyama
PDF
業務アプリケーションにおけるモダンWeb開発の現状ーHTML5開発って簡単なの?
by
Fumio SAGAWA
PDF
Prometheus Storage
by
Fabian Reinartz
Spa のための web サーバ構築ノウハウ
by
Kazuhiro Kotsutsumi
サーバサイドエンジニアが 1年間まじめにSPAやってみた
by
Itaru Kitagawa
HTTPとサーバ技術の最新動向
by
Kazuho Oku
エフスタ!!HOKKAIDO エンジニアが この先 生き残るには
by
Takehito Tanabe
情報工学の道具としてのハードウエアと半導体
by
Junichi Akita
王道ダイエットで痩せる話 #デブナイト
by
Takashi Abe
Dockerの基本的な話
by
gree_tech
第18回Cloud Foundry輪読会用 Buildpackを使ってアプリを 載せるためのアプローチ
by
Takeshi Morikawa
モダンWeb開発ワークショップ
by
Staffnet_Inc
Lightningコンポーネント事始め
by
Mitsuru Ogawa
Next Generation of BI
by
Ihor Malytskyi
Web業務アプリの新しい潮流
by
久司 中村
リモートチームでうまくいく 〜 これから訪れる働き方の変革
by
Yoshihito Kuranuki
MQTTでオフィスハック with RasPi
by
Masahiko Kubara
Writing code you won't hate tomorrow
by
Rafael Dohms
Cloud Foundry構成概要 111018
by
Uemura Yuichi
RESTful開発フロントエンド編(SPA・AltJS・フレームワーク)
by
K Tsukada
goa Design first API Generation
by
yoshinori sugiyama
業務アプリケーションにおけるモダンWeb開発の現状ーHTML5開発って簡単なの?
by
Fumio SAGAWA
Prometheus Storage
by
Fabian Reinartz
Similar to Microservicesを実現するために、インフラエンジニアと開発者がすべきこと
PPTX
Container microservices
by
Tsuyoshi Ushio
PDF
マイクロサービス運用の所感 #m3dev
by
Kazuhiro Sera
PDF
マイクロサービスで、 一歩先行くImmutable Infrastructureを目指そう
by
Takashi Abe
PDF
30分でわかるマイクロサービスアーキテクチャ 第2版
by
Naoki (Neo) SATO
PDF
Design Pattern MicroServices Architecture in Japanese
by
Lei Xu
PPTX
API Academy:マイクロサービス化へのファーストステップ
by
CA Technologies
PPT
Microservicesのdesign patterns
by
Naohiko Uramoto
PDF
【VMware】jp developer-summit_2012_final_for_print
by
VMwareKK
PPTX
Servcie Fabric and Cloud Design Pattern
by
Takekazu Omi
PDF
今更ながらの「マイクロサービス」
by
Hideaki Tokida
PPTX
20200610 マイクロサービス勉強会
by
Naoki Yoshitake
PDF
なぜ「マイクロサービス“化”」が必要なのか
by
Yusuke Suzuki
PDF
オトナのService Fabric~マイクロサービス編
by
Tatsuaki Sakai
PPTX
Microservices
by
kounan13
PDF
Azure アプリケーション アーキテクチャ ガイド 紹介
by
Kazuyuki Nomura
PPTX
祝GA、 Service Fabric 概要
by
Takekazu Omi
PDF
Spring Bootハンズオン ~Spring Bootで作る マイクロサービスアーキテクチャ! #jjug_ccc #ccc_r53
by
Toshiaki Maki
PPTX
アプリケーションコンテナ/マイクロサービスのセキュリティ概説
by
Eiji Sasahara, Ph.D., MBA 笹原英司
PDF
Japan Developer Summit (jp) - Cloud Foundry, the Open Platform As A Service
by
Patrick Chanezon
PDF
MicroserviceArchitecture
by
Kenichi Nagaoka
Container microservices
by
Tsuyoshi Ushio
マイクロサービス運用の所感 #m3dev
by
Kazuhiro Sera
マイクロサービスで、 一歩先行くImmutable Infrastructureを目指そう
by
Takashi Abe
30分でわかるマイクロサービスアーキテクチャ 第2版
by
Naoki (Neo) SATO
Design Pattern MicroServices Architecture in Japanese
by
Lei Xu
API Academy:マイクロサービス化へのファーストステップ
by
CA Technologies
Microservicesのdesign patterns
by
Naohiko Uramoto
【VMware】jp developer-summit_2012_final_for_print
by
VMwareKK
Servcie Fabric and Cloud Design Pattern
by
Takekazu Omi
今更ながらの「マイクロサービス」
by
Hideaki Tokida
20200610 マイクロサービス勉強会
by
Naoki Yoshitake
なぜ「マイクロサービス“化”」が必要なのか
by
Yusuke Suzuki
オトナのService Fabric~マイクロサービス編
by
Tatsuaki Sakai
Microservices
by
kounan13
Azure アプリケーション アーキテクチャ ガイド 紹介
by
Kazuyuki Nomura
祝GA、 Service Fabric 概要
by
Takekazu Omi
Spring Bootハンズオン ~Spring Bootで作る マイクロサービスアーキテクチャ! #jjug_ccc #ccc_r53
by
Toshiaki Maki
アプリケーションコンテナ/マイクロサービスのセキュリティ概説
by
Eiji Sasahara, Ph.D., MBA 笹原英司
Japan Developer Summit (jp) - Cloud Foundry, the Open Platform As A Service
by
Patrick Chanezon
MicroserviceArchitecture
by
Kenichi Nagaoka
More from Takashi Abe
PDF
Docker on Heroku のはじめ方
by
Takashi Abe
PDF
Heroku でカンタンすぐに実現する CI/CD
by
Takashi Abe
PDF
わたしの数少ない 小ヒット作を語ろうの巻
by
Takashi Abe
PDF
暗号化の歴史
by
Takashi Abe
PDF
TCP/IPでネットワークが繋がるわけ「で・ね・と」
by
Takashi Abe
PDF
なぜ #airinterop は毎年開催されるのか(仮)
by
Takashi Abe
PDF
qpstudy 2014.04 インフラエンジニアとは、なんだ
by
Takashi Abe
PDF
お金と技術のCROSS
by
Takashi Abe
PPTX
Qpstudy2013.07 devops
by
Takashi Abe
PDF
Disaster Recovery
by
Takashi Abe
PDF
The Story of CPU
by
Takashi Abe
KEY
Presentation technic
by
Takashi Abe
PDF
勉強会の系譜
by
Takashi Abe
PDF
秋の夜長のトランスポート
by
Takashi Abe
PDF
ストレージ友の会 #02 説明資料
by
Takashi Abe
PDF
インフラエンジニア向けプログラミング超初心者入門編
by
Takashi Abe
PDF
ストレージ友の会 #01
by
Takashi Abe
PDF
グループディスカッションの巻
by
Takashi Abe
KEY
災対の話
by
Takashi Abe
PDF
TASKしようぜ!
by
Takashi Abe
Docker on Heroku のはじめ方
by
Takashi Abe
Heroku でカンタンすぐに実現する CI/CD
by
Takashi Abe
わたしの数少ない 小ヒット作を語ろうの巻
by
Takashi Abe
暗号化の歴史
by
Takashi Abe
TCP/IPでネットワークが繋がるわけ「で・ね・と」
by
Takashi Abe
なぜ #airinterop は毎年開催されるのか(仮)
by
Takashi Abe
qpstudy 2014.04 インフラエンジニアとは、なんだ
by
Takashi Abe
お金と技術のCROSS
by
Takashi Abe
Qpstudy2013.07 devops
by
Takashi Abe
Disaster Recovery
by
Takashi Abe
The Story of CPU
by
Takashi Abe
Presentation technic
by
Takashi Abe
勉強会の系譜
by
Takashi Abe
秋の夜長のトランスポート
by
Takashi Abe
ストレージ友の会 #02 説明資料
by
Takashi Abe
インフラエンジニア向けプログラミング超初心者入門編
by
Takashi Abe
ストレージ友の会 #01
by
Takashi Abe
グループディスカッションの巻
by
Takashi Abe
災対の話
by
Takashi Abe
TASKしようぜ!
by
Takashi Abe
Microservicesを実現するために、インフラエンジニアと開発者がすべきこと
1.
Microservices を実現するために インフラエンジニアと開発者が すべきこと ⾃動化と 12Factor
Apps
2.
• 妻1娘4 • 外資PaaS/SaaS系企業 •
ソリューションエンジニア • 初級アクアリスト • 深⽥恭⼦殿堂⼊り • Perfume-かしゆか派/BABYMETAL • 座右の銘:⼈⽣即是遊戯 • 年齢不詳。 しょっさん ID : sho7650
3.
Why Microservices? そもそも Microservices
はどのようにして⽣まれたか
4.
アプリを細かく分解したらどうなの p 開発者が増えるとコードが増え、デプロイに時間がかかる p 開発者の得意な⾔語や、サービスを利⽤できない p
変更があると、どこに影響が発⽣するか分からない p 個別のコンポーネントだけをスケールできない p どこかに問題があると、すべてのサービスが停⽌する The Background “Microservices” の⽣まれた背景 アプリケーションの規模がおおきくなり、開発者が増えた結果、 開発制約が増え、開発者の不満が増えました。
5.
Background of Web
Services 出典:「BlueGreenDeployment」 http://martinfowler.com/bliki/BlueGreenDeployment.html ⾃動化と使い捨てによる新しいWebアーキテクチャが⽣み出されました INFRASTRUCTURE VERSIONING VIRTUALIZATION (Bootstrapping) IMAGE APPLICATION DEPLOYMENT (Command and Control) SERVER CONFIGURAION (Configuration) CONTINUOUSINTEGRATION SYSTEMTOOL ⾃動化が急速に発展し、⾃動化に特化したアーキテクチャへの変⾰が進む Blue Green Deployment DevOps / System Automation 稼働中システム(⻘)には⼿を⼊れず、まったく別 に更新済みインフラ、アプリケーション(緑)を準 備。それをネットワーク毎、⼀気に切り替えるソ フトウェアリリース⽅式を提唱。 インフラ、ミドルウェア、アプリケーションのデ プロイ、そしてテストまで⾃動化。継続的インテ グレーションと呼ばれ、短サイクルでのソフト ウェアリリースを実現。 安全なリリース プロセスを提⽰ リソース使い捨て⽂化 による⽅式の実現 Immutable Infrastructure
6.
その結果
7.
The Birth of
Microservices 出典 : 「Microservices」 http://martinfowler.com/articles/microservices.html James Lewis/Martin Fowler - "Microservices" • 25 March 2014 • James Lewis/Martin Fowler らは、優れたWebサービスの要 素をまとめていくと、ある特性と効果があることに気がつきま した。 • “ビジネス遂⾏能⼒に関わる組織、⾃動化されたデプロイメント、エン ドポイントの知性(intelligence)、そしてプログラミング⾔語とデータ の分散制御に関する明確に共通な特性” • そしてそれを “Microservices” と名付けました 単⼀のアプリケーションを⼩さなサービス群の組み合わせとして構築 する⼿法。個々のサービスは⾃⾝のプロセス上で動作し、HTTPのリ ソースAPIなど軽量の機構により通信を⾏う。 サービスはビジネス遂⾏能⼒に合わせて構築され、完全に⾃動化。 各サービスは異なるプログラミング⾔語により記述され、異なるデー タストレージ技術により実現。
8.
About Microservices Microservices とは何か
9.
分散統治 柔軟な変更 About Microservices 堅牢巨⼤なアプリを⼩さなサービスへ分離し、ビジネス変化へ柔軟に対応 [アプリ肥大化] • コードは複雑、影響範囲が不明確 •
関わる開発者が増える [ビジネスへの影響] • 1つのバグが全サービス停止の可能性 • ビジネスへの機敏な対応ができない 一極集中開発 変更が困難 S Y U % [ { Integrated Storage Q U Y % S [ { Microservices (1) 障害時のサービス影響の極小化 (2) ビジネス速度への柔軟な対応 1枚岩のアプリを 小さなサービスへ分離
10.
Characteristics of a
Microservice Architecture 出典 : 「Microservices」 http://martinfowler.com/articles/microservices.html Microservicesのもつ特性は、SOAの概念を実装に近づけたものとも⾔えます • Componentization via Services サービスを通じたコンポーネント化 • Organized around Business Capabilities ビジネス遂⾏能⼒に関わり組織が整理されること • Products not Projects プロジェクトではなくプロダクト • Smart endpoints and dumb pipes 賢いエンドポイントと⼟管 • Decentralized Governance 分散統治 • Decentralized Data Management 分散データ管理 • Infrastructure Automation インフラ⾃動化 • Design for failure 障害のための設計 • Evolutionary Design 進化的な設計 Microservices とは、世の中で「実際に」成功しているWebサービスアーキテクチャの特性に名前を付け たものです。概念先⾏の学術的なアーキテクチャとは違い、「モダンで成功するWebアーキテクチャ」と して、急速に認知されていきました。
11.
To Dicide Issues
of a Monolithic Application 出典 : 「Microservices」 http://martinfowler.com/articles/microservices.html 変化に強いアプリケーション開発の⼿段 • モノリシックアプリケーションからの脱却 • モノリシックアプリケーションの課題 • 変更サイクルが⼀蓮托⽣ • モジュール構造が密結合で、影響範囲が拡⼤ • スケールするためのリソースも増⼤ • “Microservices” は、unix の設計思想を元 に書き直したもの。 1つのアプリケーションを、複数のサービ スに分解して、独⽴して稼働するようにリ プログラミング。
12.
About ”Microservices” 出典 : 「
「O'Reilly Japan - マイクロサービスアーキテクチャ」 https://www.oreilly.co.jp/books/9784873117607/ 協調して動作する、⼩規模で⾃律的なサービス § ⼩さく、かつ1つの役割に専念 § コードベースが⼤規模になっていくと、変更の必要な箇 所が分かりにくくなる。 § 特定のサービス境界をビジネス境界とをマッチさせ、特 定の機能コードの場所を明確にする § ⾃律性 § サービス間のすべての通信はネットワークを介して、 サービスの分離を強制し、密結合を阻害 § サービスは技術に依存しないAPIを公開し、技術制約に とらわれず、分離されたサービスを提供
13.
§ 技術特異性 § サービスごとに異なる技術を利 ⽤できる §
回復性 § 障害時のサービス範囲を極⼩化 § スケーリング § 必要なサービスだけのスケーリ ング § デプロイの容易性 § 頻繁で迅速なデプロイの実現 § 組織⾯の⼀致 § コードベース毎の作業者の最⼩ 化と、サービス所有者と組織の ⼀致による責任の明確化 § 合成可能性 § サービス再利⽤機会の拡⼤ § 交換可能にするための最適化 § サービス書き換えの障壁・リス クの最⼩化 出典 : 「 「O'Reilly Japan - マイクロサービスアーキテクチャ」 https://www.oreilly.co.jp/books/9784873117607/ Microservices化することによる、7つの利点 The Advantage of ”Microservices”
14.
Realize “Microservices” Microservices を実現することはできるのか
15.
”Microservices” Issues Microservices は、より複雑に、そして多くの課題を抱えることになります インフラの爆発 開発と運⽤の協業 コードの重複 テストの複雑さ ビジネスコストが削減できるとは限らない 分割によるインフラの増⼤ オーバーヘッドの増⼤ 複雑怪奇化するインフラ 開発者が運⽤を継続 DevOps
の実現が不可⽋ 似たようなサービスの重複 異⾔語での同アルゴリズム 改修の限界 正常サービスの判断基準 テストの責任範囲 そもそも、ビジネスの課題ではなく、 エンジニアの課題を解決するために、⾃然発⽣的に⽣まれたもの
16.
新しいサーバを数時間で準備できること “Microservices” Prerequisites 出典 : 「MicroservicePrerequisites」 http://martinfowler.com/bliki/MicroservicePrerequisites.html Miroservices
は、基盤とアプリ、テストが⾃動化されなければなりません Microservices を実現するために、開発者はアプリケーションの開発に注⼒できる環境が必要不可⽋です。 その為には、基盤もデプロイのプロセスも全て⾃動化されていることが条件になります。また、ソフト ウェアのリリース後、サービスが適切に稼働しているかどうかも、⾃動的に検出できなければなりません。 迅速なプロビジョニング ビジネスサービスでの問題を、すぐに検出できるかどうか基本的なモニタリング 信頼できるデプロイプロセスを実現できる環境が準備できること迅速なアプリデプロイ 継続的デリバリーの実現が、Microservices の実現の鍵
17.
The Principle of
“Microservices” 出典 : 「 「O'Reilly Japan - マイクロサービスアーキテクチャ」 https://www.oreilly.co.jp/books/9784873117607/ 適切に連携し⾃律して稼働する “Microservices” を作るための7つの原則 Microservices 小規模で自律的なサービス 高度な観測性 内部実装 詳細の隠蔽 独立したデプロイ 自動化の文化 ビジネス概念に 沿ったモデル化 障害の分離 すべての分散化
18.
• ビジネス概念に沿ったモデル化 • システムが稼働するドメインをモデル化できる か •
ビジネス境界を明確にできるか • ⾃動化の⽂化の採⽤ • ひとつのサービスを提供するが正常に動作して いるかどうかを保証することが難しい • 内部実装詳細の隠蔽 • 技術⾮依存のAPIを採⽤できるか • データベースを隠蔽・分離できるか • すべての分散化 • チームと組織を⼀致させ、責任を負わせられる か • 独⽴したデプロイ • マイクロサービスごとにデプロイできるか • 密結合を回避できるか • 障害の分離 • サービス下流の呼出に失敗が伴う前提で上流 サービスをコーディングできるか • サービスをリモート呼び出しできるか • ⾼度な観測性 • 各マイクロサービスの単体監視ではなく、提供 する全体サービスを監視・観測できるか 出典 : 「 「O'Reilly Japan - マイクロサービスアーキテクチャ」 https://www.oreilly.co.jp/books/9784873117607/ ビジネスとITを直結し、どれだけ標準化と⾃動化を進められるかが鍵です。 The Obstacles Implementing “Microservices”
19.
Adopting “Microservices” それでも、Microservices を実装するのであれば... 2つの重要な原則
20.
1.⾃動化された基盤 インフラとアプリのデプロイが、全⾃動化されて初めて実現可能です
21.
Microservices on Public
Cloud 増⼤するインフラへは、オンプレでの対策は不可能です Microservices を実現した⼤⼿企業は、(ほぼ)すべて Public Cloud (AWS) 上で実装しています。 増⼤する基盤への対応には、IaaS は必要不可⽋です。その上で、アプリケーションデプロイを標準化・ ⾃動化する、CD(継続的デリバリー) が重要になります。
22.
2.モダンなアプリ開発 Microservices を実現するための、アプリケーション開発⽅法論が必要
23.
The Twelve-Factor App
でモダンなアプリ開発 Cloud 上での開発には、これまでのお約束は通じません 12-Factor APP ウォーターフォール アジャイル 集中開発 分散開発 ⼈海戦術 システム⾃動化 スケールアップ スケールアウト シェアード型 シェアードナッシング 仮想化 コンテナ
24.
I. コードベース バージョン管理されている1つのコードベースと複数の デプロイ II. 依存関係 依存関係を明⽰的に宣⾔し分離する III.設定 設定を環境変数に格納する IV.バックエンドサービス バックエンドサービスをアタッチされたリソースとして 扱う V.
ビルド、リリース、実⾏ ビルド、リリース、実⾏の3つのステージを厳密に分離 する VI.プロセス アプリケーションを1つもしくは複数のステートレスな プロセスとして実⾏する VII.ポートバインディング ポートバインディングを通してサービスを公開する VIII.並⾏性 プロセスモデルによってスケールアウトする IX.廃棄容易性 ⾼速な起動とグレースフルシャットダウンで堅牢性を最 ⼤化する X. 開発/本番⼀致 開発、ステージング、本番環境をできるだけ⼀致させた状態 を保つ XI.ログ ログをイベントストリームとして扱う XII.管理プロセス 管理タスクを1回限りのプロセスとして実⾏する 出典: 「The Twelve-Factor App」http://12factor.net/ Adam Wiggins : Heroku co-founder モダンなアプリケーション開発を実現するための 12 の⽅法論 The Twelve-Factor App (2012) の原理原則
25.
Realize “Microservices” with
“The Twelve-Factor App” “Microservices” の実現のために、12Factor App で解決できること ⾼度な観測性 内部実装詳細の隠蔽 独⽴したデプロイ ⾃動化の⽂化 ビジネス概念に沿ったモデル化 障害の分離 すべての分散化 コードベース 依存関係 設定 バックエンドサービス ビルド・リリース・実⾏ プロセス ポートバインディング 並⾏性 廃棄容易性 開発/本番⼀致 ログ 管理プロセス Microservices The Twelve-Factor App
26.
Summary まとめると
27.
インフラエンジニア • ⾃動化された基盤の提供 アプリケーション開発者 • Microservices
適⽤に適した、 原理・原則の採⽤ Microservicesを実現するために必要なこと アプリとインフラの共闘・共同・協⼒なしに実現不可能です INFRASTRUCTURE VERSIONING VIRTUALIZATION (Bootstrapping) IMAGE APPLICATION DEPLOYMENT (Command and Control) SERVER CONFIGURAION (Configuration) CONTINUOUSINTEGRATION SYSTEMTOOL 12-Factor APP
28.
さいごに
29.
Microservicesやりますか? 多くの障壁を乗り越えてでも、それでも本当に Microservices を実現した いという、鉄の意志が必要不可⽋です。 それでも
Download