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
クラウド最初の一歩
Search
jhashimoto
February 07, 2017
Programming
0
360
クラウド最初の一歩
クラウド初心者をターゲットにした社内勉強会のスライドです。
jhashimoto
February 07, 2017
Tweet
Share
More Decks by jhashimoto
See All by jhashimoto
初めてのAWS / The first AWS
jhashimoto
0
220
AWS Data Pipelineを本番投入してみた話
jhashimoto
1
1.1k
AWS Lambdaで始めるサーバーレスアーキテクチャ
jhashimoto
0
210
Amazon S3の紹介
jhashimoto
0
250
Other Decks in Programming
See All in Programming
rails newと同時に型を書く
aki19035vc
6
730
BEエンジニアがFEの業務をできるようになるまでにやったこと
yoshida_ryushin
0
250
バックエンドのためのアプリ内課金入門 (サブスク編)
qnighy
1
150
ある日突然あなたが管理しているサーバーにDDoSが来たらどうなるでしょう?知ってるようで何も知らなかったDDoS攻撃と対策 #phpcon.2024
akase244
2
7.8k
PHPで作るWebSocketサーバー ~リアクティブなアプリケーションを知るために~ / WebSocket Server in PHP - To know reactive applications
seike460
PRO
2
800
チームの立て直し施策をGoogleの 『効果的なチーム』と見比べてみた
maroon8021
0
150
Simple組み合わせ村から大都会Railsにやってきた俺は / Coming to Rails from the Simple
moznion
3
3.4k
PicoRubyと暮らす、シェアハウスハック
ryosk7
0
250
CNCF Project の作者が考えている OSS の運営
utam0k
5
550
AHC041解説
terryu16
0
500
ペアーズでの、Langfuseを中心とした評価ドリブンなリリースサイクルのご紹介
fukubaka0825
1
160
functionalなアプローチで動的要素を排除する
ryopeko
1
730
Featured
See All Featured
Adopting Sorbet at Scale
ufuk
74
9.2k
jQuery: Nuts, Bolts and Bling
dougneiner
63
7.6k
Helping Users Find Their Own Way: Creating Modern Search Experiences
danielanewman
29
2.4k
Fight the Zombie Pattern Library - RWD Summit 2016
marcelosomers
232
17k
Save Time (by Creating Custom Rails Generators)
garrettdimon
PRO
29
980
Being A Developer After 40
akosma
89
590k
A Philosophy of Restraint
colly
203
16k
Building a Modern Day E-commerce SEO Strategy
aleyda
38
7.1k
Practical Tips for Bootstrapping Information Extraction Pipelines
honnibal
PRO
11
890
GraphQLとの向き合い方2022年版
quramy
44
13k
Improving Core Web Vitals using Speculation Rules API
sergeychernyshev
6
210
10 Git Anti Patterns You Should be Aware of
lemiorhan
PRO
656
59k
Transcript
クラウド 最初の一歩 橋本 淳一 2017/02/03 1
はじめに 2
このセッションのターゲット まだクラウドを使ったことがない 人 クラウドをよく知らない人 3
このセッションのゴール 皆さんにクラウドを使ってみたいと思ってもらえるこ と 4
今日話すこと AWSだけでも情報は膨大です。 目的を持たずにやみくもに情報収集しても、つらいだけで効果が上 がりません。 そうならないように、クラウドを導入するメリットを中心にお話し します。 5
今日話さないこと AWSの個々のサービスの説 明 6
アジェンダ クラウド基礎知識 クラウドを使うメリッ ト まとめ 7
クラウド基礎知識 クラウドを使うメリッ ト まとめ 8
用語 インフラ “ITインフラとは、パソコンやサーバー、プリンタなどの各種ハー ドウェア、インターネットやLANなどのネットワーク、さらには データベースやOSのことを指します。” ITインフラの基礎知識 | 株 式会社プレオン(http://www.pleon.co.jp/fan_contents_02/) 9
オンプレミス “オンプレミス ( 英語: on-premises(オン・プレミシズ))[注 1] と は、 情報システムを使用者(通常は企業)自身が管理する設備内 に導入、設置して運用することをいう。”
https://ja.wikipedia.org/wiki/オンプレミス 10
クラウド “実際に処理が実行されるコンピュータおよびコンピュータ間のネ ットワークは、サービスを提供する事業者側に設置されており、 それらのコンピュータ本体およびネットワークの購入・管理運営 費用や蓄積されるデータの管理の手間は軽減される。このような 出来合いのサーバ群をクラウドと呼ぶ” https://ja.wikipedia.org/wiki/クラウドコンピューティング 11
利用形態 クラウドの利用形態は、3種類あります。 IaaS Infrastructure as a Service PaaS Platform as
a Service SaaS Software as a Service 12
サービス例 IaaS AWS EC2(仮想サーバ ー) PaaS AWS RDS(リレーショ ナルデータベース) SaaS
Salesforce 柔軟性と管理コストのトレ ードオフ オンプレミス > IaaS > PaaS > SaaS https://www.cloud-ace.jp/report/detail01/ 13
はじめに クラウド基礎知識 クラウドを使うメリッ ト まとめ 14
用語 アーキテクチャ “コンピュータ・アーキテクチャ(英: computer architecture) は、コンピュータ(特にハードウェア)における基本設計や設計 思想などを意味する。” https://ja.wikipedia.org/wiki/コンピュー タ・アーキテクチャ 15
機能要件 “機能要件とは、情報システムやソフトウェアの開発に際して定義 される要件のうち、機能に関するもの。” 非機能要件 “機能面以外の要件を「非機能要件」(non-functional requirement)と呼び、性能や信頼性、拡張性、運用性、セキュリ ティなどに関する要件が含まれる。” http://e-words.jp/w/機能 要件.html http://e-words.jp/w/機能要
件.html 16
オンプレミスとクラウドの比較 17
インフラ構築のスピード オンプレミス < クラウド 18
EC2インスタンスを作成する 19
EC2インスタンスを作成する 20
EC2インスタンスを作成する 21
開発者が書くコードの量 クラウド < オンプレミス オンプレミス フレームワークやライブラリなどの部品を組み合わせて、使用す る。 それ以外の部分はすべて開発者が書く。 クラウド クラウドのサービスを組み合わせて、システムを構築する。
開発者が書くのは、ビジネスロジックだけでよい。 開発者が書かなくてはいけないプログラムの量は、かなり減り ます。 22
自由度・柔軟性 クラウド < オンプレミス オンプレミス システム構成要素(OS、ミドルウェア、フレームワーク、ライブ ラリ、開発言語、etc.)は、好きなものを選べる。 自由度が高くて、柔軟性がある。 クラウド クラウドサービスを組み合わせて、システムを構築する。
クラウドサービスは便利な反面、オンプレミスの自由な開発と比 べると制約があります。 つまり、クラウドでは制約を前提にシステムを構築しなければな りません。 23
制約が生まれることのメリット オンプレミス 「自由度が高い」とは、見方を変えれば、選択肢が無数にあるこ とです。 すべての選択肢の中から最適なものを選び、機能要件、非機能要 件を満たせるアーキテクチャを自分で設計しなくてはならない。 つまり、自由度が高い反面、設計のコストが高く難しい。 24
制約が生まれることのメリット クラウド 制約があるので、自由度の高さと引き換えに選択肢を減らせま す。 制約がある中で、ベストなアーキテクチャを構築する方法は、 パターン化されています。 Amazonで”クラウド・デザインパターン”で検索 制約を前提とし、パターンを採用することで、開発者が悩まな ければいけないことがかなり減ります。 クラウドサービスの制約を積極的に受け入れれば、開発者が楽をし
て、システムの完成度を高めることができます。 AWS-CloudDesignPattern (http://aws.clouddesignpattern.org/index.php) 25
アーキテクチャ変更の容易性 オンプレミス < クラウド オンプレミス 一度決定したアーキテクチャを変更するのは、困難です。 書いてしまったコードを捨てることは、コスト面でも心理面で も痛みを伴います。 要件は変化します。アーキテクチャが要件の変化に追随できない と、プログラムで無理をして解決することになります。
26
アーキテクチャ変更の容易性 オンプレミス < クラウド クラウド 一度決定したアーキテクチャをためらわずに変更することができ ます。 なぜなら、クラウドサービスを使ったアーキテクチャは開発者が プログラムを書かずに実現されているからです。 つまり、クラウドならアーキテクチャを継続的に改善していくこ
とができます。 27
非機能要件実現の容易性 オンプレミス < クラウド オンプレミス アーキテクチャを決定するときには、機能要件・非機能要件とも に技術検証が終わっていなければいけません。 クラウド 非機能要件を後から作り込むことができます。 28
EC2インスタンスのスペックを上げる 29
EC2インスタンスのスペックを上げる 30
EC2インスタンスのスペックを上げる 31
はじめに クラウド基礎知識 クラウドを使うメリッ ト まとめ 32
まとめ オンプレミスとクラウドはトレードオフの関係にあります。特徴を 理解して要件に応じて使い分けましょう。 クラウドのサービスを使うと、 素早くインフラを構築できます。 クラウド・デザインパターンを採用することで、開発者が悩まな くてはいけないことが、かなり減ります。 開発者が書かなくてはいけないプログラムの量がかなり減りま す。 アーキテクチャを継続的に改善していくことができます。
つまり、開発者が楽になります。 クラウドとても楽しいです! 33
ご清聴ありがとうございました 34