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
Kazuto Kusama
July 23, 2015
Technology
3
110
クラウドを『作る』ってどういうこと?
四国出身者が支える、ニッポンのクラウド
https://udcp.connpass.com/event/17381/ で登壇した資料です
Kazuto Kusama
July 23, 2015
Tweet
Share
More Decks by Kazuto Kusama
See All by Kazuto Kusama
2024/10 PagerDuty機能アップデート
jacopen
1
28
ゲームから学ぶ、いちばん速いインシデント対応
jacopen
1
52
PEK2024 Recap
jacopen
2
120
クラウドネイティブの本質から考える、生産性と信頼性の両立
jacopen
3
810
「責任ある開発」を!フルサービスオーナーシップが変えるエンジニアリング文化
jacopen
9
1.9k
手を動かさないインシデント対応〜自動化で迅速・正確な運用を目指す〜
jacopen
3
420
エンジニアとしてのキャリアを支える自宅サーバー
jacopen
12
7.2k
Grafana x PagerDuty Better Together
jacopen
1
680
「共通基盤」を超えよ! 今、Platform Engineeringに取り組むべき理由
jacopen
27
9.5k
Other Decks in Technology
See All in Technology
オニオンアーキテクチャで実現した 本質課題を解決する インフラ移行の実例
hryushm
11
2.4k
WebRTC と AI の組み合わせ
tnoho
0
450
強すぎるIAMをCloudTrailを使って適正化した話
yjszk
0
230
AWS SAW(AWS Support Automation Workflows)をもっと広めたい
kazzpapa3
2
170
Trusted Types API と Vue.js
lycorptech_jp
PRO
1
270
生成AI×マルチテナントSaaSな新規事業を立ち上げる上でテックリードとして気を使った点の紹介
lunastera
0
510
DevOpsに関連するツールとその概要を淡々と読み上げる会
devops_vtj
1
140
KMPプロジェクトでマニュアルDIを使う選択
rmakiyama
0
120
研究の再現性を高める 仕組みをGoでつくる / Creating a system to improve the reproducibility of research using go
linyows
1
100
CyberAgent 生成AI Deep Dive with Amazon Web Services / genai-aws
cyberagentdevelopers
PRO
1
310
現実のRuby/Railsアップグレード
takeyuweb
3
2.8k
APIテスト自動化の勘所
yokawasa
2
240
Featured
See All Featured
The Cult of Friendly URLs
andyhume
78
6k
A Philosophy of Restraint
colly
203
16k
Exploring the Power of Turbo Streams & Action Cable | RailsConf2023
kevinliebholz
27
4.1k
The Art of Programming - Codeland 2020
erikaheidi
51
13k
Creating an realtime collaboration tool: Agile Flush - .NET Oxford
marcduiker
25
1.8k
10 Git Anti Patterns You Should be Aware of
lemiorhan
653
59k
How to Think Like a Performance Engineer
csswizardry
19
1.1k
Save Time (by Creating Custom Rails Generators)
garrettdimon
PRO
27
770
BBQ
matthewcrist
85
9.3k
Visualizing Your Data: Incorporating Mongo into Loggly Infrastructure
mongodb
41
9.2k
Scaling GitHub
holman
458
140k
A Modern Web Designer's Workflow
chriscoyier
692
190k
Transcript
ΫϥυΛʰ࡞Δʱͬͯ Ͳ͏͍͏͜ͱʁ
Kazuto Kusama @jacopen NTT Communications
ࣄ • Cloudn PaaSͷ։ൃϦʔμʔ • ΞʔΩςΫνϟઃܭ • εΫϥϜϚελʔ • ϓϩμΫτͷํੑܾΊ
• ίʔυॻ͖
ݸਓ׆ಈ • PaaSษڧձओ࠻ • ຊCloud Foundryάϧʔϓ ཧࣄ
ࠓճ͓͍ͨ͜͠ͱ
ΫϥυΛ࡞Δͱ Ͳ͏͍͏ࣄͳͷ͔
Ϋϥυͷ࡞ΓํΛ ͍ͬͯΔਓʁ
ͦͦΫϥυͬͯԿ͚ͩͬ
None
NISTʹΑΔΫϥυίϯϐϡʔςΟϯάͷఆٛ https://www.ipa.go.jp/files/000025366.pdf
ΫϥυίϯϐϡʔςΟϯάɺڞ༻ͷߏՄೳͳίϯϐϡʔςΟϯάϦιʔεʢωοτϫʔΫɺαʔόʔɺετϨʔδɺΞϓϦέʔγϣϯɺ αʔϏεʣͷूੵʹɺͲ͔͜ΒͰɺ؆ศʹɺඞཁʹԠͯ͡ɺωοτϫʔΫܦ༝ͰΞΫηε͢Δ͜ͱΛՄೳͱ͢ΔϞσϧͰ͋Γɺ࠷খݶͷར ༻खଓ͖·ͨαʔϏεϓϩόΠμͱͷΓͱΓͰ͔ʹׂͯΒΕఏڙ͞ΕΔͷͰ͋Δɻ͜ͷΫϥυϞσϧ 5 ͭͷجຊతͳಛͱ 3 ͭͷαʔϏεϞσϧɺ͓Αͼ 4 ͭͷ࣮ϞσϧʹΑͬͯߏ͞ΕΔɻ ΦϯσϚϯυɾηϧϑαʔϏε
Ϣʔβɺ֤αʔϏεͷఏڙऀͱΓͱΓ͢Δ͜ͱͳ͘ɺඞཁʹԠ͡ɺࣗಈతʹɺαʔόʔͷՔಇ࣌ؒωοτϫʔΫετϨʔδͷΑ͏ ͳίϯϐϡʔςΟϯάೳྗΛҰํతʹઃఆͰ͖Δɻ ෯͍ωοτϫʔΫΞΫηε ίϯϐϡʔςΟϯάೳྗɺωοτϫʔΫΛ௨ͯ͡ར༻ՄೳͰɺඪ४తͳΈͰଓՄೳͰ͋Γɺͦͷ͜ͱʹΑΓɺ༷ʑͳγϯ͓Αͼγο ΫΫϥΠΞϯτϓϥοτϑΥʔϜʢྫ͑ϞόΠϧϑΥϯɺλϒϨοτɺϥοϓτοϓίϯϐϡʔλɺϫʔΫεςʔγϣϯʣ͔Βͷར༻ΛՄೳ ͱ͢Δɻ Ϧιʔεͷڞ༻ αʔϏεͷఏڙऀͷίϯϐϡʔςΟϯάϦιʔεूੵ͞ΕɺෳͷϢʔβʹϚϧνςφϯτϞσϧΛར༻ͯ͠ఏڙ͞ΕΔɻ༷ʑͳཧతɾ ԾతϦιʔεɺϢʔβͷधཁʹԠͯ͡μΠφϛοΫʹׂΓͯΒΕͨΓ࠶ׂΓͯ͞ΕͨΓ͢Δɻཧతͳॴࡏॴʹ੍͞Εͳ͍ͱ͍ ͏ߟ͑ํͰɺϢʔβҰൠతʹɺఏڙ͞ΕΔϦιʔεͷਖ਼֬ͳॴࡏΛͬͨΓίϯτϩʔϧͨ͠ΓͰ͖ͳ͍͕ɺ߹ʹΑͬͯΑΓநత ͳϨϕϧʢྫɿࠃɺभɺσʔληϯλʣͰಛఆՄೳͰ͋ΔɻϦιʔεͷྫͱͯ͠ɺετϨʔδɺॲཧೳྗɺϝϞϦɺ͓ΑͼωοτϫʔΫଳ Ҭ͕ڍ͛ΒΕΔɻ εϐʔσΟͳ֦ுੑ ίϯϐϡʔςΟϯάೳྗɺ৳ॖࣗࡏʹɺ߹ʹΑͬͯࣗಈͰׂ͓ͯΑͼఏڙ͕ՄೳͰɺधཁʹԠͯ͡ଈ࠲ʹεέʔϧΞτʗεέʔϧ ΠϯͰ͖ΔɻϢʔβʹͱͬͯɺଟ͘ͷ߹ɺׂͯͷͨΊʹར༻ՄೳͳೳྗແਚଂͰɺ͍ͭͰͲΜͳྔͰௐୡՄೳͷΑ͏ʹݟ͑Δɻ αʔϏε͕ܭଌՄೳͰ͋Δ͜ͱ ΫϥυγεςϜɺܭଌೳྗ 1Λར༻ͯ͠ɺαʔϏεͷछྨʢετϨʔδɺॲཧೳྗɺଳҬɺ࣮ར༻தͷϢʔβΞΧϯτʣʹదͨ͠ཧ ϨϕϧͰϦιʔεͷར༻Λίϯτϩʔϧ͠࠷దԽ͢ΔɻϦιʔεͷར༻ঢ়گϞχλ͞Εɺίϯτϩʔϧ͞Εɺใࠂ͞ΕΔɻͦΕʹΑΓɺαʔ Ϗεͷར༻݁Ռ͕ϢʔβʹαʔϏεఏڙऀʹ໌ࣔͰ͖Δɻ
None
Ϋϥυͷ4ͭͷಛ
ϦιʔεΛɺωοτϫʔΫܦ༝ͰΞΫηε ωοτϫʔΫ αʔόʔ ετϨʔδ ΞϓϦέʔγϣϯ αʔϏε
Ϧιʔεͷڞ༻ VM VM VM VM VM VM VM VM VM
VM VM VM
ΦϯσϚϯυɾηϧϑαʔϏε VM VM VM Website API ਃࠐॻͰʙ ϝʔϧͰʙ ◦Ӧۀޙʹʙ
αʔϏε͕ܭଌՄೳͰ͋Δ͜ͱ ωοτϫʔΫ(in) 31.31GB ωοτϫʔΫ(out) 142.13GB ετϨʔδ 40GB Ծαʔόʔ 710࣌ؒ ྉۚɾɾɾ
xxxxxԁ ※Ϧιʔεར༻͕ϞχλϦϯά͞Εɺར༻ऀ͕ใΛऔಘग़དྷΔ͜ͱ͕ඞཁɻ ɹैྔ՝ۚͰͳ͍ͱμϝͱ͍͏Ͱͳ͍ɻ
ϦιʔεΛɺωοτϫʔΫܦ༝ͰΞΫηε Ϧιʔεͷڞ༻ ΦϯσϚϯυɾηϧϑαʔϏε αʔϏε͕ܭଌՄೳͰ͋Δ͜ͱ
Ϋϥυͷ3ͭͷαʔϏεϞσϧ
IaaS (Infrastructure as a Service) • Πϯϑϥ(αʔόʔɺωοτϫʔΫɺετϨʔδ)ΛαʔϏεͱͯ͠ ఏڙ͢Δ • ར༻ऀཉ͍࣌͠ʹཉ͍͚ͩ͠ɺ͜ΕΒͷΠϯϑϥΛར༻ग़དྷΔ
• αʔόʔετϨʔδͳͲͷઃඋΛങ͏ͷͰͳ͘ ඞཁͳ࣌ʹར༻͢ΔɻෆཁʹͳͬͨΒར༻ΛࢭΊΔ ʹ αʔϏε • ྫ: Amazon EC2, Google Compute Engine, Cloudn Compute
PaaS (Platform as a Service) • ϓϥοτϑΥʔϜ(ΞϓϦέʔγϣϯ࣮ߦڥͳͲ)ΛαʔϏεͱ͠ ͯఏڙ͢Δ • ྫ:
Cloudn PaaSɺHerokuɺGoogle App Engine
SaaS (Software as a Service) • ιϑτΣΞΛαʔϏεͱͯ͠ఏڙ͢Δ • GmailɺSalesforceɺEvernoteɺOffice 365
ʑ
NTT Communicationsશ෦͍ͬͯ·͕͢ɺ ࠓճಛʹ IaaS / PaaS ʹ͍͓ͭͯ͠·͢ɻ
ԾαʔόʔΛఏڙ͢Δ ΫϥυΛߟ͑ͯΈΔ
Ոʹαʔόʔങͬͯஔ͖·ͨ͠
Ոʹαʔόʔങͬͯஔ͖·ͨ͠ αʔϏεʹ͢Βͳͬͯͳ͍
Πϯλʔωοτʹܨ͕ΔڥΛ༻ҙ͠·ͨ͠ɻ αʔόʔͷཧݖݶΛϢʔβʔʹ͠·ͨ͠ɻ
Πϯλʔωοτʹܨ͕ΔڥΛ༻ҙ͠·ͨ͠ɻ αʔόʔͷཧݖݶΛϢʔβʔʹ͠·ͨ͠ɻ ઐ༻αʔόʔͷϗεςΟϯά
αʔόʔ෦ͷݖݶΛ͚ͯ ෳϢʔβʔʹఏڙग़དྷΔΑ͏ʹ͠·ͨ͠
αʔόʔ෦ͷݖݶΛ͚ͯ ෳϢʔβʔʹఏڙग़དྷΔΑ͏ʹ͠·ͨ͠ ڞ༻Ϩϯλϧαʔόʔ
ԾԽٕज़Λར༻ͯ͠ɺϢʔβʔ͝ͱʹVMΛ ͍ग़ͤΔΑ͏ʹ͠·ͨ͠ VM VM VM VM
ԾԽج൫Λར༻ͯ͠ɺϢʔβʔ͝ͱʹVMΛ ͍ग़ͤΔΑ͏ʹ͠·ͨ͠ VM VM VM VM VPS
ଟ͘ͷϢʔβʔͷधཁʹԠ͑ΒΕΔΑ͏ ͨ͘͞ΜͷαʔόʔΛ༻ҙͯ͠
ॊೈʹϦιʔεͷ͕Ͱ͖ΔԾԽج൫Λ ಋೖͯ͠ VM VM VM VM VM VM ※ͨͩ͠ԾԽج൫ͷ༗ແɺΫϥυͷཁ݅Ͱͳ͍ɻԾԽΛ༻͍ͳ͍Ϋϥυ͋ΓಘΔɻ ※
Ϣʔβʔ͕ΦϯσϚϯυͰૢ࡞Ͱ͖ΔAPIGUI Λఏڙͯ͠ VM VM VM VM VM VM GUI API
ϢʔβʔཁٻʹԠͯ͡Ϧιʔεͷஔআ Λߦ͏ίϯτϩʔϥΛ࡞ͬͯ VM VM VM VM VM VM GUI API
Controller
Ϧιʔεͷར༻ঢ়گΛϞχλϦϯά͢Δ ΈΛ࡞ͬͯ VM VM VM VM VM VM GUI API
Controller Resource Monitor
VMͷσʔλΛอଘ͢Δڞ༗ετϨʔδͱ͔ VM VM VM VM VM VM GUI API Controller
Resource Monitor Shared Storage
ϢʔβʔཁٻʹԠͨ͡ωοτϫʔΫΛ࣮ݱ͢Δ SDNͱ͔ VM VM VM VM VM VM GUI API
Controller Resource Monitor Shared Storage SDN / Controller
ϩάͷऩूɾݕࡧͳͲͷΈΛ༻ҙͯ͠ VM VM VM VM VM VM GUI API Controller
Resource Monitor Shared Storage SDN / Controller Log management
ͦͯ͜͠ΕΒΛӡ༻͍ͯͨ͘͠Ίͷɺ ࢁͷπʔϧࢹͷΈΛ࡞ͬͯ
͜ΕΒ͕ἧͬͯɺΫϥυαʔϏε(͜͜ͰIaaS) ͕ఏڙग़དྷΔɻ
ͭ·ΓɺIaaSΛ࡞Δࣄͱ
αʔϏεΛ࣮ݱ͢ΔͨΊͷαʔόʔɾωοτϫʔΫͷ ઃܭ(ཧ/ཧ)ɹ㱺 ৄ͍͠ @u1 ͷηογϣϯͰʂ
αʔϏεͷίΞͱͳΔίϯτϩʔϥͷ։ൃ
ϢʔβʔΠϯλʔϑΣʔεͷ։ൃ (GUIɾCUIɾAPI)
ʑͷӡ༻
ιϑτΣΞ ιϑτΣΞ ιϑτΣΞ ιϑτΣΞ ιϑτΣΞ ιϑτΣΞ ιϑτΣΞ
Ϋϥυͷਆ ιϑτΣΞʹ͋Γ
ίϜͷΫϥυ(݁ߏ)Ͱίʔυॻ͍ͯ·͢ 1͔ΒίʔυΛॻ͍ͯ αʔϏεΛ࡞Δύλʔϯ
OSSͷΫϥυج൫Λ͏ύλʔϯ ͜ΕΒΛ͏߹ίʔυΛॻ͘ඞཁͳ͍ʁ
OSSͷΫϥυج൫Λ͏߹ • ίʔυશମʹΛ௨ͯ͠Կ͕Ͳ͏͍͏ΈͰಈ͍͍ͯΔ͔Ѳ • ͕͋ͬͨΒࣗͨͪͰϩάͱίʔυΛͬͯݪҼΛಛఆ • Λमਖ਼ • मਖ਼ͨ͠ΛίϯτϦϏϡʔτ ͜Ε͘Β͍ͷऔΓΈ࠷ݶඞཁ
OSS͚ͩͰ݁͠ͳ͍ͱ͜ΖɺΓࣗ ೝূج൫ͱͷ ܨ͗ࠐΈ ՝ۚγεςϜ GUI Deployment Cloudn PaaSͷ߹ ΧελϚΠζ
Cloudn PaaSνʔϜͷ ιϑτΣΞ։ൃ
Υʔλʔϑϩʔ։ൃ ΞδϟΠϧ։ൃ
εϓϦϯτܭը • Δ͖߲ΛʮόοΫϩάʯͱͯ͠ચ͍ ग़͢ • 2िؒΛ1εϓϦϯτͱ͠ɺόοΫϩάͷ த͔ΒεϓϦϯτʹೖ͢Δ ˠ͜Ε͕νʔϜͷ2िؒͷࣄͱͳΔ
ϖΞϓϩάϥϛϯάਪ ίʔυΛॻ͍ͨΒɺඞͣίʔυϨϏϡʔ
ৼΓฦΓ • ຖिɺνʔϜͰৼΓฦΓΛߦ͏ • ʮྑ͔ͬͨ͜ͱʯʮѱ͔ͬͨ͜ͱʯ ʮདྷि͔ΒͲ͏վળ͢Δ͔ʯΛશһͰ ग़͠߹͏
IRC ͍ΖΜͳπʔϧΛ׆༻ ৽͍͠ΈͷಋೖΛڪΕͳ͍
http://www.slideshare.net/jacopen/cloudn-paaschatops
νʔϜྗΛߴΊ͍ͯ͘ͷ͕େࣄ
Ͳ͏ͯࣗͨͪ͠Ͱ ίʔυΛॻ͘ͷ͔ • ΫϥυͷਆιϑτΣΞ • ιϑτΣΞͷ։ൃྗΛߴΊΔ ʹαʔϏεͷັྗΛߴΊΔ • ੈͷதͷಈ͖͕ܹ͗ͯ͢͠ɺ֎Ͱ εϐʔυ͕͍͔ͭͳ͍
Ͳ͏ͯࣗͨͪ͠Ͱ ίʔυΛॻ͘ͷ͔ • ΫϥυͷਆιϑτΣΞ • ιϑτΣΞͷ։ൃྗΛߴΊΔ ʹαʔϏεͷັྗΛߴΊΔ • ੈͷதͷಈ͖͕ܹ͗ͯ͢͠ɺ֎Ͱ εϐʔυ͕͍͔ͭͳ͍
• ͦͷ΄͏ָ͕͍͔͠Β
ָ͍͠!!✌('ω'✌ )ࡾ✌('ω')✌ࡾ( ✌'ω')✌
ٻΊΒΕΔࣝͷ෯͕͍ • ୯ʹιϑτΣΞΛॻ͚ͩ͘Ͱͳ͘ɺ • ΠϯϑϥपΓ • OSσʔλϕʔε • ͦͷଞϛυϧΣΞ •
όοΫΤϯυΞϓϦ • ϑϩϯτΤϯυΞϓϦ • UI / UX • ͦͷଞੜ͢Δٕज़(IoT,Ϗοάσʔλetc) ωοτϫʔΫ ϋʔυΣΞ OS ϛυϧΣΞ σʔλϕʔε όοΫΤϯυΞϓϦ ϑϩϯτΤϯυΞϓϦ UI / UX
ٻΊΒΕΔࣝͷ෯͕͍ • ୯ʹιϑτΣΞΛॻ͚ͩ͘Ͱͳ͘ɺ • ΠϯϑϥपΓ • OSσʔλϕʔε • ͦͷଞϛυϧΣΞ •
όοΫΤϯυΞϓϦ • ϑϩϯτΤϯυΞϓϦ • UI / UX • ͦͷଞੜ͢Δٕज़(IoT,Ϗοάσʔλetc) ωοτϫʔΫ ϋʔυΣΞ OS ϛυϧΣΞ σʔλϕʔε όοΫΤϯυΞϓϦ ϑϩϯτΤϯυΞϓϦ UI / UX
ָ͍͠!!✌('ω'✌ )ࡾ✌('ω')✌ࡾ( ✌'ω')✌
ָ͍͠!!✌('ω'✌ )ࡾ✌('ω')✌ࡾ( ✌'ω')✌ ͪΖΜɺେมͳ͜ͱଟ͍͚ͲͶɻɹ㱺 ৄ͘͠ @r_takaishiͷηογϣϯͰʂ
ΫϥυΤϯδχΞʹͳΖ͏ʂ
ٕज़ྗ͋ͬͨ΄͏͕ྑ͍ʹ ͨ͜͠ͱͳ͍͚Ͳ
ඞཁͳͷ ح৺ɹߦಈྗ
͜ͷ2͕ͭ͋Ε ٕज़ྗউखʹ͍ͭͯ͘Δ
ษڧձʹग़ͯΈΑ͏ • ح৺ͱߦಈྗͷմΈ͍ͨͳ ਓ͕͍ͬͺ͍ډΔ • ·ͣࢀՃͯ͠ΈΔɻ࣍ʹൃද ͯ͠ΈΔͱྗ͕ඈ༂తʹߴ·Δ • ৄ͘͠ @hico_horiuchi
ͷ ηογϣϯͰʂ http://www.slideshare.net/hico_horiuchi/janog3
ಉࢤΛݟ͚ͭΑ͏ • ઑͬͨαʔΫϧͰ׆ಈ͢Δ͜ͱ ҰੜͷྐʹͳΔ(ͱࢥ͏)
ϩʔϧϞσϧΛݟ͚ͭΑ͏ • ۙʹʮ͜ͷਓ͍͢͝ʯ ͱ͍͏ਓ͕͍Εɺ ͦͷਓ͔ΒڭΘΔͱ͔ɺߦಈΛϚω ͯ͠ΈΔͱ͍͍
ΫϥυΤϯδχΞʹͳΖ͏ʂ
ͪͳΈʹNTTίϛϡχέʔγϣϯζͩͱ ✓ େنͳϦιʔεΛѻ͏͜ͱ͕Ͱ͖ͯ ✓ ੈքτοϓΫϥεͷΠϯϑϥ͕͋ͬͯ(ΞδΞ།ҰͷTier1εςʔλε) ✓ IaaSPaaSSaaS࡞Δ͜ͱ͕Ͱ͖ͯ ✓ ιϑτΣΞ։ൃʹྗΛೖΕ࢝Ίͯ ͍ͯ
✓ ΫϥυΛΓ͖ΕΔ͚ͩͷेͳମྗ͕͋ͬͯ ✓ ΤϯδχΞ͕ࣗ༝ʹ׆ಈͰ͖Δ
Questions?