Upgrade to Pro
— share decks privately, control downloads, hide ads and more …
Speaker Deck
Sign up for free
Menu
Search
Features
All features
Private URLs
Password Protection
Custom URLS
Scheduled publishing
Remove Branding
Restrict embedding
Deck Collections
Notes
Features
All features
Private URLs
Password Protection
Custom URLS
Scheduled publishing
Remove Branding
Restrict embedding
Deck Collections
Notes
Explore
Featured decks
Featured speakers
Programming
Technology
Storyboards
Explore
Featured decks
Featured speakers
Programming
Technology
Storyboards
Pricing
Search
Sign in
Sign up for free
クラウドネイティブ アプリケーション概論
Search
Nao_Saino
April 08, 2022
Technology
180
0
Share
Embed
Copy iframe code
Copy JS code
Copy link
Start on current slide
クラウドネイティブ アプリケーション概論
Nao_Saino
April 08, 2022
More Decks by Nao_Saino
See All by Nao_Saino
結局requestsとlimitsはどう設定すればいいのか
nao_saino
1
780
Other Decks in Technology
See All in Technology
多層防御と最⼩権限で実現する、安全なAIエージェント設計パターン
lycorptech_jp
PRO
1
270
Sigmaで作る業務アプリ
kazushiro_honma
0
120
AIとペアプロを始める。人とのペアプロをやめる。ペアプロの良さを改めて知る。もっと好きになった。 / Rediscovering Pair Programming
honyanya
1
350
深夜のクラウド懺悔室 1:29:300 or 1:0:0
kazzpapa3
1
240
NW運用でNWトポロジ可視化ツールに期待すること/shumoku-meetup1
corestate55
2
120
あるけみー式LTスライド作成術
alchemy1115
1
200
Podは生きているのにGoだけが落ちる:GOGCとGOMEMLIMITで追うInvisible OOM Killの謎
tkc66buzz
1
610
安心して変更できるWebフロントエンドの作り方
pirosikick
4
1.6k
HRC_Frontend_Conference_Fukuoka_2026.pdf
ts020
0
570
薬剤師(ドメインエキスパート)と一緒に育てる薬局向けAIアシスタント
kakehashi
PRO
2
160
ペアプロの価値はコードを書くことだけじゃない
codmoninc
PRO
0
200
生成AIのテナント制御とシャドーMCP対策 | AIを"止めずに"、情報を守る
yukun
0
160
Featured
See All Featured
Understanding Cognitive Biases in Performance Measurement
bluesmoon
32
3k
What Being in a Rock Band Can Teach Us About Real World SEO
427marketing
0
1.1k
How to optimise 3,500 product descriptions for ecommerce in one day using ChatGPT
katarinadahlin
PRO
2
3.8k
Joys of Absence: A Defence of Solitary Play
codingconduct
1
510
A better future with KSS
kneath
240
18k
RailsConf & Balkan Ruby 2019: The Past, Present, and Future of Rails at GitHub
eileencodes
141
35k
Lessons Learnt from Crawling 1000+ Websites
charlesmeaden
PRO
1
1.6k
B2B Lead Gen: Tactics, Traps & Triumph
marketingsoph
0
240
Unlocking the hidden potential of vector embeddings in international SEO
frankvandijk
0
930
How to build an LLM SEO readiness audit: a practical framework
nmsamuel
1
900
Everyday Curiosity
cassininazir
0
310
コードの90%をAIが書く世界で何が待っているのか / What awaits us in a world where 90% of the code is written by AI
rkaga
63
46k
Transcript
クラウドネイティブ アプリケーション概論 仮想マシン コンテナ サーバレス
- 「クラウドネイティブ」という言葉は、徹底的なクラウドの利活用によるビジネス価値の 提供を意図する。弊社もこれを志向している。 - そもそも、なんでクラウドを使うとビジネス価値に繋がるのかというと、開発者が物理 サーバの開発保守運用コストから開放されることで、プロダクトの差別化に繋がるビ ジネスロジックの開発に注力できるようになるからである。 - 一方でパブリッククラウドを使う者にとってそれは、クラウド事業者への依存度を高め ることとのトレードオフでもあり適切な責任分界の設定が望ましい。
- 一言にクラウドといえどIaaS, CaaS, PaaS, FaaS, SaaSなどクラウド事業者の管理範 囲に応じて、様々な種類のサービスが存在する。 - クラウド利用を前提としたアプリ開発にはどのような選択肢があり、開発者がどんな 恩恵を受けることができるかについて、今回はその一般論をまとめた。 今日のお話(最初から文字が多い)
要するにこの図の話 https://www.devopsplatform.co.uk/blogs/cloud-services
キーワード - クラウドネイティブ - オンプレミスとクラウド - 物理マシンと仮想マシン - ハイパバイザ型仮想化とコンテナ型仮想化 -
マイクロサービスとコンテナオーケストレーション - サーバレス - IaaS, CaaS, PaaS, FaaS, SaaS
1. 「クラウドネイティブ」とは? 2. 仮想マシンからコンテナへ 3. サーバレスとは 目次
「クラウドネイティブ」 とは?
クラウドネイティブとは、 回復性、管理力、および可観測性のある疎結合システムを 堅牢な自動化と組み合わせることで、 インパクトのある変更を最小限の労力で頻繁かつ予測どおりに行う設計思想 「クラウドネイティブ」とは? https://github.com/cncf/toc/blob/main/DEFINITION.md#%E6%97%A5%E6%9C%AC%E8%AA%9E%E7%89%88 CNCFの定義によれば、、、 「ネイティブ」という言葉通り、 クラウドの利用は当たり前の前提として、「どう活用するのが最適か」に重点を置いた言葉。
パブリッククラウドのメリット - パブリッククラウド = GCPやAWSなどクラウド事業者が提供するクラウド https://aws.amazon.com/jp/cloud/
https://www.devopsplatform.co.uk/blogs/cloud-services IaaS CaaS PaaS FaaS SaaS EC2 EKS Beanstalk Lambda
Athena など GCE GKE GAE Cloud Functions BigQuery など 仮想マシン コンテナオーケスト レーション アプリケーション開 発のプラットフォー ム サーバレス開発環境 を提供するサービス 独立した機能を持 つサービス
バックエンドの構造
IaaS - ハードウェアを抽象化。 - いわゆるクラウド仮想マシン(VM) - クラウド上にすぐ立てられるサーバ。 - 数分で起動できる。 -
オートスケールもできるが、リソース的にはやや大きい 単位での抽象化。 - GCE, EC2が代表例。
弊社にもかつてVM時代があった。
仮想マシンから コンテナへ
- コンテナはOSの仮想化をしない点で従来 の仮想化と異なり,「迅速な起動」と「高い 可搬性」を可能に。 - 数分(VM)→数秒でのデプロイ。 - Linuxがあればどこでも動く(Docker)。 - 環境依存度の低さと、高速起動を両立。
- リソース的にもVMより小さな単位での仮 想化を可能に。 「仮想マシン(VM)」と「コンテナ」 https://psc-smartwork.com/topics/2021/08/162.html
クラウドネイティブの鍵を握る「コンテナ」 - 迅速な起動→k8sのオートスケール、セルフヒーリングへの応用。 - 高可搬性→コンテナを軸とした高速で再現性のあるCI/CDパイプラインの構築。 - VMに比べリソース効率が向上。 - 機能ごとにアプリケーションを分割するマイクロサービス構成との相性も良い。
- コンテナアプリのプラットフォーム - コンテナオーケストレーションのデファクトであるk8sを、 クラウド事業者の用意する環境で実行できるマネージド k8sが主な例。 - GKE, EKSが代表例。 CaaS
サーバの抽象化が進むと - 物理マシン→VM→コンテナ - 「サーバの抽象化が進む」 = 「クラウド事業者に委託する部分が増える」ほど開発者 の管理する範囲は減りビジネスロジックに注力できるとされる。 - 一方で「クラウド事業者への依存が高まる」「低いレイヤ部分の拡張性が失われる」
こととのトレードオフ。 - コンテナよりもさらに一段抽象化を進めたのが「サーバレス」
サーバレスとは
サーバレスとは https://www.slideshare.net/AmazonWebServicesJapan/202107-aws-black-belt-online-seminar-con350/11
サーバレスとは - サーバの存在を意識することなくシステムを構築できるサービスの総称。 - サーバ構築保守運用はクラウド事業者が行い、開発者はプログラムの部分にだ け注力することができるのがメリット。 - ◦aaSとはまた別の区分の言葉。 - AWS
Fargate(サーバレスコンテナ)、AWS Lambda(FaaS)などが代表例。 https://blog.qbist.co.jp/?p=2654
FaaS(Function as a Service) - 開発者はアプリケーションのコードだけ書く。 - インフラのことはほぼ考えなくていい。 - 関数単位でアプリを分割し、その組み合わせでサービス
を構成する。 - 関数の実行時間中のみ課金が生じる。 - AWS Lamda, GCP CloudFunctionsが代表例。
https://www.devopsplatform.co.uk/blogs/cloud-services IaaS CaaS PaaS FaaS SaaS EC2 EKS Beanstalk Lambda
Athena など GCE GKE GAE Cloud Functions BigQuery など 仮想マシン コンテナオーケスト レーション アプリケーション開 発のプラットフォー ム サーバレス開発環境 を提供するサービス 独立した機能を持 つサービス
まとめ - パブリッククラウドの提供するサービスには、その責任範囲に応じて様々な種類 がある。 - 弊社はIaaS (GCE) → CaaS (GKE)を辿ってきた。
- パブリッククラウドの利用により開発者は様々な恩恵を受けられるが、一方で拡 張性やクラウド事業者への依存とのトレードオフでもある。
みなさんに質問 - オンプレや仮想マシンでの開発のことを知らないので、クラウドのメリットを感じた 実体験などあればお願いします。
有益なリンク - コンテナ技術概要 https://www.scsk.jp/sp/openshift/about_container.html - 20190402 AWS Black Belt Online
Seminar Let's Dive Deep into AWS Lambda https://www.slideshare.net/AmazonWebServicesJapan/20190402-aws-blac k-belt-online-seminar-lets-dive-deep-into-aws-lambda-part1-part2 -