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
TomoyaKitaura
May 03, 2020
Technology
0
170
今後のビジネスを支える技術と考え方
2020/5/3にGBS様の社内勉強会に乱入させていただき、
発表した資料です。
TomoyaKitaura
May 03, 2020
Tweet
Share
More Decks by TomoyaKitaura
See All by TomoyaKitaura
これからの設計で変わること pre:invent2024アップデート速報 / pre:invent2024 network update
tomoyakitaura
1
130
セキュリティ活動をちょっとずつやる戦略を実行した気づき / Incremental Security Initiatives
tomoyakitaura
0
110
社内共通コンテナレジストリを設立して、開発者体験向上を狙ってみた /Establishing container registry to improve DX
tomoyakitaura
2
180
LTワークショップ3日目 / LT Workshop Day 3
tomoyakitaura
0
150
LTワークショップ2日目 / LT Workshop Day 2
tomoyakitaura
0
130
LTワークショップ(1日目) / LT workshop day 1
tomoyakitaura
1
150
これまでの監視とクラウド時代の監視 / Monitoring the Past and the Cloud
tomoyakitaura
1
230
エンタープライズにおけるSRE立ち上げとNew Relic選定に至った背景とは / SRE Startup and New Relic in the Enterprise
tomoyakitaura
2
750
AWSとNew Relicのデータ連携を超高速で実装した話 / The story of a super-fast implementation of data integration between AWS and New Relic
tomoyakitaura
0
1.5k
Other Decks in Technology
See All in Technology
iPadOS18でフローティングタブバーを解除してみた
sansantech
PRO
1
150
Reactフレームワークプロダクトを モバイルアプリにして、もっと便利に。 ユーザに価値を届けよう。/React Framework with Capacitor
rdlabo
0
130
デジタルアイデンティティ技術 認可・ID連携・認証 応用 / 20250114-OIDF-J-EduWG-TechSWG
oidfj
2
690
【Oracle Cloud ウェビナー】2025年のセキュリティ脅威を読み解く:リスクに備えるためのレジリエンスとデータ保護
oracle4engineer
PRO
1
100
コロプラのオンボーディングを採用から語りたい
colopl
5
1.3k
My small contributions - Fujiwara Tech Conference 2025
ijin
0
1.4k
生成AIのビジネス活用
seosoft
0
110
機械学習を「社会実装」するということ 2025年版 / Social Implementation of Machine Learning 2025 Version
moepy_stats
5
1.3k
Kotlin Multiplatformのポテンシャル
recruitengineers
PRO
2
150
Oracle Exadata Database Service(Dedicated Infrastructure):サービス概要のご紹介
oracle4engineer
PRO
0
12k
AWS re:Invent 2024 re:Cap Taipei (for Developer): New Launches that facilitate Developer Workflow and Continuous Innovation
dwchiang
0
170
あなたの人生も変わるかも?AWS認定2つで始まったウソみたいな話
iwamot
3
860
Featured
See All Featured
What’s in a name? Adding method to the madness
productmarketing
PRO
22
3.2k
Testing 201, or: Great Expectations
jmmastey
41
7.2k
Facilitating Awesome Meetings
lara
51
6.2k
Build your cross-platform service in a week with App Engine
jlugia
229
18k
Music & Morning Musume
bryan
46
6.3k
RailsConf 2023
tenderlove
29
970
How to train your dragon (web standard)
notwaldorf
89
5.8k
Chrome DevTools: State of the Union 2024 - Debugging React & Beyond
addyosmani
3
240
Building a Scalable Design System with Sketch
lauravandoore
460
33k
The Web Performance Landscape in 2024 [PerfNow 2024]
tammyeverts
3
360
How STYLIGHT went responsive
nonsquared
96
5.3k
Raft: Consensus for Rubyists
vanstee
137
6.7k
Transcript
ࠓޙͷϏδωεΛࢧ͑Δ ٕज़ͱߟ͑ํ 2020/05/03 άϩʔόϧϏδωειϦϡʔγϣϯגࣜձ༷ࣾ ࣾษڧձཚೖฤ
ࣗݾհ 2 Tomoya Kitaura ʢ32ࡀࣇʣ @kitta0108 ▪৬ྺ - σʔληϯλʔӡ༻ 7
- ωοτϫʔΫΤϯδχΞ 3 - Web։ൃ 2 ▪ษڧձӡӦ - TechOn - AWS JAWS ίϯςφࢧ෦
ΞδΣϯμ 3 1.SREͱ 2.ιϑτΣΞͷ։ൃαΠΫϧ 3.ӡ༻ͱ։ൃͷ՝ 4.৴པੑͱ 5.DevOpsղܾͷ5ͭͷKey 6.IaCͱ 7.IaCͷྺ࢙ 8.ݱࡏͷIaC
9.·ͱΊ 10.͓קΊͷΞΫγϣϯϓϥϯ
1-1.SREͱ 4 Site Reliability Engineeringͷུ Google͕ࣾఏএɺ࣮ફ͍ͯ͠ΔγεςϜཧͱαʔϏεӡ༻ͷํ๏ͷ͜ͱɻ 201511݄ʹϝϧΧϦͰSREνʔϜΛൃ͢ΔͳͲɺ ࠓɺ͞Ε͍ͯΔߟ͑ํͷҰͭɻ
1-2.SREͱ 5 Site Reliability Engineerͱ͍͍·͢ɻ ͍͜͠ Site Reliability EngineeringΛ࣮ફ͢ΔׂͷਓΛࢦ͢ɻ ιϑτΣΞ։ൃͷଞʹΠϯϑϥωοτϫʔΫͳͲͷ
෯͍εΩϧʹΑͬͯ৴པੑʹؔ࿈͢Δ՝Λղܾ͢Δɻ
2-1.ιϑτΣΞͷ։ൃαΠΫϧ 6 Ϗδωε ։ൃ ӡ༻
2-2.ιϑτΣΞͷ։ൃαΠΫϧ 7 Ϗδωε ։ൃ ӡ༻ Ϗδωεͷޭʹ։ൃαΠΫϧͷՃ͕ٸɻ Amazonؒ5000ສճ 1࣌ؒʹ1000ճ σϓϩΠ͍ͯ͠Δͱ͍͏ᷚ
2-3.։ൃαΠΫϧΛૣΊΔऔΓΈ 8 Ϗδωε ։ൃ ӡ༻ ΞδϟΠϧ։ൃͳͲͷख๏औΓೖΕΒΕ͖ͯͨɻ
2-4.։ൃαΠΫϧΛૣΊΔऔΓΈ 9 Ϗδωε ։ൃ ӡ༻ DevOpsΛಋೖɻ SREDevOpsͷՃʹߩݙͯ͘͠ΕΔׂ
3-1.։ൃͱӡ༻ͷ՝ 10 ։ൃ ӡ༻ ։ൃͨ͠γεςϜΛ ͍ͪૣ͘Ϣʔβʔʹಧ͚͍ͨʂ γεςϜͷ৴པੑΛߴΊ͍ͨʂ
3-2.ӡ༻ཧͷϨϏϡʔ(ຖिਫ༵) 11 ։ൃ ӡ༻ ͦΕ͚ͩͰ͔͔Δͳ͊ Ҿ͖ܧ͗ظؒͱ ͯ͠ ӡ༻։࢝5Ӧۀ։͚͍ͯͩ͘͞ɻ OJTΛઃ͚͍ͯͩ͘͞ɻ
3-3.ྫ͑ӡ༻ͷҾܧ 12 ։ൃ ӡ༻ ͏ʔΜɺमਖ਼͢Δ͚Ͳ ఆͰࠓͷखॱͰӡ༻։࢝ͯ͘͠Ε ͳ͍͔ͳ͊ ͏ʔΜ Ҿ͖ܧ͍ͩखॱ͕ෳࡶͩ͠ ϛε͕ى͖ͦ͏ͩͳɻ
λΠτͩͳ͊
3-4.ྫ͑ো࣌ͷΤεΧϨʔγϣϯ 13 ։ൃ ӡ༻ ࣮ߦ࣌ʹग़Δϝοηʔδ͔ͩΒ ͳ͍Μ͚ͩͲͳ͊ɾɾɾ Ҿ͖ܧ͍ͩखॱॻͰ࣮ߦͨ͠Β XXXͬͯग़ͨΜͰ͕͢ɾɾɾ ͙͢ʹखॱॻमਖ਼ͯ͠Β͑·͔͢
3-5.։ൃͱӡ༻ͷ՝ 14 ։ൃ ӡ༻ ։ൃͨ͠γεςϜΛ ͍ͪૣ͘Ϣʔβʔʹಧ͚͍ͨʂ γεςϜͷ৴པੑΛߴΊ͍ͨʂ ͲͪΒ͕༏ઌ͢Δࣄ߲Ϗδωε্Ͱඞਢɻ Ͱͪΐͬͱߟ͑ํʹۃײ͕͋ͬͨɻ ࣌ͱͯ͠ϝʔϧͰઓ૪͕࢝·ͬͨΓɾɾɾ
3-6.Google͕ग़ͨ͠Ұͭͷબ 15 ։ൃ ӡ༻ ӡ༻ͷઃܭΓ·͢ɻ
3-7.Google͕ग़ͨ͠Ұͭͷબ 16 ։ൃ SRE ։ൃʹઐ೦ ӡ༻Λઃܭɻ ιϑτΣΞ։ൃͰ՝Λղܾ γεςϜͷ৴པੑ͕อͨΕ͍ͯΔ߹ɺ ։ൃߦ͏ɻ
3-8.Google͕ग़ͨ͠Ұͭͷબ 17 ։ൃ SRE ։ൃεϐʔυ͋͛Δʹɺ ӡ༻͕ΜΒͳ͖Ό ৴པੑΛߴΊͯɺ ։ൃਐΊΑ͏ʂ
4-1.৴པੑͱ 18 ৴པੑΛఆٛ͢Δ3ͭͷཁૉ αʔϏε ϨϕϧࢦඪʢSLIʣ ྫ͑ϦΫΤετͷޭϨΠςϯγ γεςϜͷαʔϏε ϨϕϧඪʢSLOʣ ྫ͑ϦΫΤετͷޭ99.9% αʔϏε
ϨϕϧܖʢSLAʣ ྫ͑ϦΫΤετͷޭ99.5%ΛԼճͬͨ࣌ʹฦۚ
4-2.ΤϥʔόδΣοτͷಋೖ 19 ͨͱ͑ 99.9 % ͷSLOΛઃఆͨ͠߹ɺ Ұϲ݄Λ30 ؒͱ͢Δͱͦͷ͏ͪͷ0.1%ͳͷͰɺ ڐ༰μϯλΠϜ 43
Ͱ͢ɻ ٯʹߟ͑Δͱ݄ʹ43ো͕͓͖ͯɺ ͱΈͳ͞ͳ͍ͱ͍͏ߟ͑ํɻ
4-3.ϢʔβʔͲͪΒ͕خ͍͔͠ 20 99.5ˋΛ0.4%্͛Δͷʹඞཁͳ࿑ྗͱɺ ৽͍͠ػೳͷ։ൃΛϦϦʔε͢Δ͜ͱΛൺֱͯ͠ͲͪΒ͕ Α͍ͷ͔ɻαʔϏεʹΑͬͯݟఆΊΔඞཁ͕͋Δɻ Google Ͱͷಉ྅Ͱ͋Δ Perry Lorier ܾ·ͬͯ͜͏ݴ͍·͢ɻ
ʮSLO ͕ͳ͚Εɺ܅ͨͪͷࣄͱͯେมͩʯͱɻ https://cloud.google.com/blog/ja/products/gcp/availability-part-deux-cre-life-lessons
5-1.SREΛࢧ͑Δٕज़ 21 - ϚΠΫϩαʔϏεΞʔΩςΫνϟ - ίϯςφͱΦʔέετϨʔγϣϯ - CI/CD - ߴͳࢹ
22 Α͏͘ ͋ͱԿʁ
6-1.IaCͱ 23 Infrastructer as Codeͷུ ༁͢Δͱʮίʔυͱͯ͠ͷΠϯϑϥʯ ΠϯϑϥΛίʔυͰهड़͢Δͱ͍͏͜ͱɻ
7-1.IaCͷྺ࢙ 24 ᴈ໌ظ ࢝·ΓߏཧͷࣗಈԽ Automated InfrasctureͱݺΕ͍ͯͨɻ
7-2.IaCద༻લͷߏཧ 25 ߏஙखॱॻ.xlsx ύϥϝʔλʔγʔτ.xlsx
7-3.ߏஙखॱॻͷྫ 26 ### ύοέʔδཧγεςϜΛ࠷৽ʹߋ৽ ### $ sudo apt update ###
nginxΛΠϯετʔϧ ### $ sudo apt install nginx ### OSىಈ࣌ͷࣗಈىಈʹnginxΛొ ### $ sudo systemctl enable nginx
7-4.ߏஙखॱॻӡ༻࣌ͷਏΈ 27 खॱͷ్தͰࣦഊͨ͠ΒͲ͏͢Δʁ োͳͲͰྫ֎తʹߏΛมߋͯͨ͠ΒཧͲ͏ͳΔʁ ਓ͕࣮ؒߦ͢Δͱͯ͠ɺίϚϯυؒҧͬͨΒͲ͏͢Δʁ ৽͍͠ύοέʔδͷΠϯετʔϧΛՃͨ͘͠ͳͬͨΒͲ͏͢Δʁ
7-5.IaCԽͯ͠ΈΔɻ 28 ߏஙखॱॻ.xlsx ύϥϝʔλʔγʔτ.xlsx ansible_playbook.yml
7-6.ྫ͑AnsibleΛͬͯIaCԽͨ͠ྫ 29 Playbook.yml - name: install nginx Apt: name=nginx -
name: start nginx apt: name=nginx enabled=yes state=started
7-7.;;ΜɺͦΕ͕Ͳ͏͍ͨͬͯ͠͏ͷʁ खॱͷ్தͰࣦഊͨ͠ΒͲ͏͢Δʁ োͳͲͰྫ֎తʹߏΛมߋͯͨ͠ΒཧͲ͏ͳΔʁ ਓ͕࣮ؒߦ͢Δͱͯ͠ɺίϚϯυؒҧͬͨΒͲ͏͢Δʁ ৽͍͠ύοέʔδͷΠϯετʔϧΛՃͨ͘͠ͳͬͨΒͲ͏͢Δʁ 30
7-8.ͳɺͳΜͩͬͯ खॱͷ్தͰࣦഊͨ͠ΒͲ͏͢Δʁ ->్தͰࣦഊͨ͠ΒymlΛॻ͖ͯ͠࠶࣮ߦɻ োͳͲͰྫ֎తʹߏΛมߋͯͨ͠ΒཧͲ͏ͳΔʁ ->োͳͲͰߏΛมߋ͢Δ߹ymlΛॻ͖ͯ͠ ద༻Λపఈ͢Δ͜ͱͰဃͷ͓͖ͳ͍ߏཧ͕࣮ݱɻ ਓ͕࣮ؒߦ͢Δͱͯ͠ɺίϚϯυؒҧͬͨΒͲ͏͢Δʁ ->ίϚϯυରͷαʔόʔͱద༻͢ΔymlΛબ͢Δ͚ͩ ɹ ػցʹΒͤΔͱ͍͏ํ๏ɻ
৽͍͠ύοέʔδͷΠϯετʔϧΛՃͨ͘͠ͳͬͨΒͲ͏͢Δʁ ->৽͍͠ύοέʔδͷΠϯετʔϧymlʹه 31
8-1.ݱࡏͷIaC ͜Ε·Ͱɺ͋͘·Ͱͻͱͭͷαʔόʔʹରͯ͠ͷઃఆΛఆٛͰ͖ͯ ͍ͨʹ͗͢ͳ͔ͬͨɻ IaaSͷൃలʹͬͯɺIaCΠϯϑϥશମΛఆٛͰ͖ΔΑ͏ʹͳͬ ͨɻ 32
8-2.ྫ͑ίʔϙϨʔταΠτͷߏྫ 33 https://ent-rance.com/ ඇެ։ ඇެ։
8-3.ͬͱ͍͢͝IaC 34 kubernetes(k8s) ͕࣌ؒͳ͍ͷͰհ͚ͩɻ IaCͱ͍͏ͷͷͰͳ͘ɺͱ͍ͯΖΜͳ͜ͱ͕Ͱ͖Δɻ IaCͷ؍ʹϑΥʔΧεͯ͠දݱ͢Δͱɺ αʔόʔ͕མͪͯ͠·ͬͨ࣌ͷڍಈͳͲཧͰ͖Δɻ Πϯϑϥͱͯ͋͠Δ͖࢟Λҡ࣋͢Δ͜ͱ͕Մೳʹɻ
9.·ͱΊ 35 ɾࠓɺΠϯϑϥدΓͷࣄΛ͍ͯ͠Δਓɺ ɹιϑτΣΞ։ൃͷΩϟονΞοϓฒߦͯ͠ਐΊΔͱͤʹͳΕΔ͔ɻ ɾӡ༻دΓͷࣄΛ͍ͯ͠Δਓɺݱͷ՝ΛιϑτΣΞͰղܾ͢Δ͜ͱ͕Ͱ͖ͳ͍͔ɻ ɹͱ͍͏ࢹΛͬͯͯ͠ՄೳͳΒ࣮ߦͰ͖ΔͱΑ͍͔ɻ ɾӦۀɾܦӦऀͷํɺιϑτΣΞ։ൃΛ׆༻ͨ͠՝ղܾͱ͍͏ͷ͕ ɹͨΓલʹߦΘΕΔ࣌ʹ͍͖͍ۙͮͯͯΔɻ ɹຊۀͷΩϟονΞοϓඞཁͩͱࢥ͏͚Ͳɺ ɹͪΐͬͱͨ͠ίʔυͳΒ͔͚ͪΌ͏Έ͍ͨͳӦۀɾܦӦऀͷํͳΜ͍ͯͨΒ
ɹͱͬͯૉఢͩͱࢥ͍·͢ɻ
10-1.͓קΊͷΞΫγϣϯϓϥϯ 36 ֶͼͷ͋Δॆ࣮ͨ͠ΰʔϧσϯΟʔΫʹͳΔΑ͏ɺ ΞΫγϣϯϓϥϯߟ͖͑ͯ·ͨ͠ʂ
10-2.͓קΊͷΞΫγϣϯϓϥϯ 37 ɾProgate https://prog-8.com/ ։ൃڥͷߏஙඞཁແ͠ɺϒϥβ͑͞ىಈ͢Είʔυ͕͔͚Δɻ ࠲ֶͷ͋ͱʹ࣮ફͷαΠΫϧ͕܁Γฦ͞ΕΔͷͰʹ͖͍ͭ͢ɻ ແྉͰͨΊͤΔʂεϚϗͰͰ͖Δʂ ɾQiita https://qiita.com/ ։ൃؔ࿈ͷϒϩά͕ͨ͘͞Μܝࡌ͞Ε͍ͯΔɻ
τϨϯυใͳͲɺ͜͜ΛWatch͍ͯ͠Δ͚ͩͰ͋Δఔ௫ΊΔɻ ຖே15͘श׳Λʂ
10-3.͓קΊͷΞΫγϣϯϓϥϯ 38 ɾConnpass https://connpass.com/ ษڧձʹࢀՃ͠·͠ΐ͏ʂ ͕࣌ؒ߹Θͳͯ͘ࢀՃొ͓͚ͯ͠ɺ ͋ͱͰΞʔΧΠϒ͕ݟΕΔέʔεɾɾɾ ͦͯ͠ɺಘͨݟݴޠԽͯࣾ͠ʹڞ༗͠·͠ΐ͏ʂ ΞτϓοτΛݟਾ͑ͨΠϯϓοτͱͯେࣄɻ ɾFukabori.fm
https://fukabori.fm/ ITٕज़Λൃ৴͍ͯ͠ΔPodcast ࠷ߴʹΘ͔Γ͍͢ɻͦͯ͠ͱͯਂ͍༰Λѻͬͯ͘ΕΔɻ ࡏϫʔΫͰ͕ۭ͍ࣖͯΔͱ͖ͷ͓ڙʹͲ͏ͧ
39 ͝੩ௌ͋Γ͕ͱ͏ޚ࠲͍·ͨ͠