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
システムを構築するときに 気をつける10のこと
Search
Show Murai
December 07, 2017
Technology
0
1.6k
システムを構築するときに 気をつける10のこと
主体性のない文章で突っ込みどころ満載ですが、
雰囲気だけ感じてもらえればと思って作っています。
Show Murai
December 07, 2017
Tweet
Share
More Decks by Show Murai
See All by Show Murai
システムを構築するときに 気をつける10のこと
showmurai
4
140
監視入門!監視で困ってませんか?
showmurai
0
320
AWS vs GCP 今から作るならどちらがいいの 20180330
showmurai
1
1.3k
KubernetesでCLIを快適を使いたい
showmurai
0
2.1k
AWS vs GCP 今から作る ならどっちがいいの!?
showmurai
52
83k
データサイエンスのためのAWSの使い方入門
showmurai
1
980
Other Decks in Technology
See All in Technology
制約理論(ToC)入門
recruitengineers
PRO
9
3.7k
「魔法少女まどか☆マギカ Magia Exedra」の必殺技演出を徹底解剖! -キャラクターの魅力を最大限にファンに届けるためのこだわり-
gree_tech
PRO
0
450
JavaScript 研修
recruitengineers
PRO
6
1.4k
個人CLAUDE.md紹介と設定から学んだこと/introduce-my-claude-md
shibayu36
0
170
事業価値と Engineering
recruitengineers
PRO
8
5.4k
オブザーバビリティが広げる AIOps の世界 / The World of AIOps Expanded by Observability
aoto
PRO
0
260
【 LLMエンジニアがヒューマノイド開発に挑んでみた 】 - 第104回 Machine Learning 15minutes! Hybrid
soneo1127
0
250
ガチな登山用デバイスからこんにちは
halka
1
200
allow_retry と Arel.sql / allow_retry and Arel.sql
euglena1215
1
150
20250903_1つのAWSアカウントに複数システムがある環境におけるアクセス制御をABACで実現.pdf
yhana
2
280
なぜSaaSがMCPサーバーをサービス提供するのか?
sansantech
PRO
6
1.8k
サンドボックス技術でAI利活用を促進する
koh_naga
0
150
Featured
See All Featured
Designing Dashboards & Data Visualisations in Web Apps
destraynor
231
53k
What’s in a name? Adding method to the madness
productmarketing
PRO
23
3.6k
Building an army of robots
kneath
306
46k
Statistics for Hackers
jakevdp
799
220k
Imperfection Machines: The Place of Print at Facebook
scottboms
268
13k
The Invisible Side of Design
smashingmag
301
51k
Designing for Performance
lara
610
69k
The Cost Of JavaScript in 2023
addyosmani
53
8.9k
The World Runs on Bad Software
bkeepers
PRO
70
11k
Large-scale JavaScript Application Architecture
addyosmani
512
110k
How GitHub (no longer) Works
holman
315
140k
Save Time (by Creating Custom Rails Generators)
garrettdimon
PRO
32
1.5k
Transcript
γεςϜΛߏங͢Δͱ͖ʹ ؾΛ͚ͭΔ10ͷ͜ͱ - ڧݻͰύϑΥʔϚϯε͕ྑ͍γεςϜ࡞ΓͷϙΠϯτ - αϙʔλʔζCoLabษڧձ Dec 6 2017 αΠόʔΤʔδΣϯτ
ΞυςΫελδΦ ଜҪ ᠳଠ࿕ https://supporterzcolab.com/event/233/
ࣗݾհ • ଜҪ ᠳଠ࿕ • @Show_murai • גࣜձࣾαΠόʔΤʔδΣϯτ ΞυςΫελδΦ ΠϯϑϥνʔϜ
Πϯϑϥ ϦʔυΤϯδχΞ ※ຊͷൃදݸਓͷݟղͰ͋Γɺॴଐ͢Δ৫ͷެࣜݟղͰ͋Γ·ͤΜ
ࣗݾհ • ژग़ • ࣾձਓ 6 • ઐ߈ਓೳɾը૾ॲཧ • αΠόʔΤʔδΣϯτ
த్ೖࣾ • ϓϩμΫτ(ϓϩδΣΫτ)͖ͷΠϯϑϥ • झຯཱྀߦɺϑοταϧ
͖ΐ͏ͳ͢͜ͱ 1. ࣗݾհ 2. ຊͷରऀ 3. ·͓͖͑ 4. γεςϜߏஙͰؾΛ͚ͭΔ10ͷ͜ͱ 5.
Q & A
ຊͷରऀ • αʔόʔαΠυΤϯδχΞ • γεςϜͷӡ༻Λ͍ͯ͠Δํ • ͜Ε͔ΒγεςϜߏங͢Δํ
·͓͖͑
લఏͱͯ͠ • Webۀքʹ͓͍ͯεϐʔυॏࢹͰαʔϏεϦϦʔεΛ͢ΔΑ͏ͳ ։ൃΛલఏͱ͍ͯ͠·͢ • ΤϯλʔϓϥΠζ/ΈࠐΈ͚γεςϜͷ։ൃͳͲͰɺ ҧͬͨ؍ϙΠϯτ͕͋Δͱࢥ͏ͷͰ༏͘͠ฉ͍ͯԼ͍͞ • ΞδϟΠϧ։ൃͷΑ͏ͳظؒͰಈ͘ιϑτΣΞΛϦϦʔε͍ͯ͘͠ ։ൃελΠϧΛఆ͍ͯ͠·͢
ͳͥ͜ͷ͢͠Δͷ͔ • αʔόʔαΠυΤϯδχΞ͔ΒΑ͘ฉ͔ΕΔ • ʮ͜ͷػೳ࡞Γ͍ͨΜͰ͚͢ͲɺؾΛ͚ͭΔͱ͜Ζ͋Γ·͢ʁʯ Έ͍ͨͳ࣭Λྑ͘ड͚Δ • ॻ੶ͳͲͷใͰݟ͚ͭʹ͍͘
ͦΕͰຊ
γεςϜΛߏங͢Δͱ͖ʹ ؾΛ͚ͭΔ10ͷ͜ͱ
γεςϜΛߏங͢Δͱ͖ʹ ؾΛ͚ͭΔ10ͷ͜ͱ 1. ҆ఆՔಇʹίετͱϦιʔε͕͔͔Δ 2. σΟβελϦΧόϦΛߟ͑ࠒ͔Β܇࿅͢Δ 3. ϞχλϦϯάͷϝτϦΫεࡉ͔͘औΔ 4. γεςϜશମ͕εέʔϧͰ͖Δ
5. ઃܭ/બఆٕͨ͠ज़ʹΛͭ 6. ༷σʔλߏͷมߋඞͣൃੜ͢Δ 7. σʔλͷอॴख़ߟ͢Δ 8. σʔλఆΑΓଟ͘ͳΔ 9. ηΩϡϦςΟରࡦඞཁ͕ͩίετͱ͕͔͔࣌ؒΔ 10.ΫϥυΛ৴པ͗͢͠ͳ͍
҆ఆՔಇʹ ίετͱϦιʔε͕͔͔Δ
҆ఆͷཁૉͱ • Մ༻ੑߴ͍ • γϯάϧϙΠϯτ͕ͳ͍ • ΤϥʔϋϯυϦϯά͕γεςϜϨϕϧͰग़དྷ͍ͯΔ • োੑ͕ߴ͍ •
ΞϓϦέʔγϣϯͷႈੑ͕୲อ͞Ε͍ͯΔ • γεςϜͷҰ؏ੑ͕͋Δ • ॊೈੑ͕ߴ͍ • ີ݁߹͕ແ͍ • ػೳ֦ு͍͢͠ઃܭ
҆ఆԽͷͨΊͷίετ • ΞϓϦ/Πϯϑϥͷઃܭ/ݕূίετ • ઃܭஈ֊Ͱ৭ʑͳέʔεΛௐ࣮ࡍಈ͔ͯ͠ΈΔ࣌ؒ • ԽͷͨΊͷίετ • 1ͰՔಇՄೳͰ͋Δ͕ɺ2ཱͯΔ •
ԽΛ࣮ݱ͢ΔͨΊͷΈΛ࡞Δ • ӡ༻ମ੍Λ͑Δίετ • ӡ༻͢Δਓͷίετ-> ΞϥʔτΛड͚औΔͻͱͷ࠾༻ • ӡ༻ମ੍Λ࡞Δίετ -> ӡ༻ઃܭʹ͕࣌ؒඞཁ
σΟβελϦΧόϦΛߟ͑ ࠒ͔Β܇࿅͢Δ
σΟβελϦΧόϦͱ • Disaster recovery = ࡂ͔ΒͷϦΧόϦ • ࡂͳͲͷඃ͔Βճ෮ાஔΛߟ͑Δ • ωοτϫʔΫো͕ൃੜͨ͠߹Կ͢Δඞཁ͕͋Δ͔
• ΫϥυαʔϏεʹো͕ൃੜͨ͠߹ͷରࡦ • σʔλফࣦͨ͠߹ͷόοΫΞοϓ/ϦετΞରࡦ
ࠒ͔ΒFire drillΛߦ͏ • Fire drillͱ • ԾσΟβελϦΧόϦͷঢ়گΛ࡞ͯ͠ ઃఆύϑΥʔϚϯεΛධՁ͢Δ͜ͱʹΑΔɺ ϦιʔεͷϑΣʔϧΦʔόʔͷ৴པੑΛςετ͢Δํ๏ https://www.symantec.com/ja/jp/security_response/glossary/define.jsp?letter=f&word=fire-drill
• ࣮ࡍʹٖࣅোΛൃੜͤͯ͞܇࿅͢Δ • खॱϦΧόϦํ๏Λ໌֬ʹ͓ͯ͘͠ • ୭͕ରԠ͢Δɺ୭ʹ࿈བྷ/ใࠂ͢Δ͔ΛܾΊ͓ͯ͘
ϞχλϦϯάͷϝτϦΫε ࡉ͔͘औΔ
ϝτϦΫεࡉ͔͘ͱ͓ͬͯ͘ • ϦιʔεϞχλϦϯάͪΖΜ • CPU • Memory usage • Disk
usage • Inode usage • Network throughput • ύϑΥʔϚϯεϞχλϦϯάऔಘ͢Δ • query per second • request/response time
ҙ͖͢ • ϝτϦΫεऔಘෛՙʹͳΔ߹͋Δ • ϞχλϦϯάπʔϧ͕ෛՙʹͳΓαʔϏεӨڹ͕ൃੜ͢Δ • ϝτϦΫεΛऔΓ͗ͯ͢༗ࣄͷ࣌ʹ ԿΛݟͨΒྑ͍ͷ͔Θ͔Βͳ͍ • දతͳϝτϦΫεμογϡϘʔυʹ͓ͯ͘͠
• ϝτϦΫεͷҙຯΛཧղ͓ͯ͘͠ (ԿΛද͚ͬͨ͢?ͱͳΒͳ͍ͨΊʹ)
γεςϜશମ͕εέʔϧͰ͖Δ
γεςϜංେԽͯ͘͠ • ʹͭ͘Ҏ֎ͷͱ͜Ζεέʔϧඞཁ • DBϢʔβ/ίωΫγϣϯ • ωοτϫʔΫεϧʔϓοτ • ֎෦࿈ܞ͢ΔγεςϜ •
ॲཧ͢Δσʔλཷ·͍ͬͯ͘ • σʔλϕʔεͷංେԽ • όοΫΞοϓσʔλͷංେԽ • ੳରͷ֦େ
ઃܭ/બఆٕͨ͠ज़ʹΛͭ
ಋೖٕͨ͠ज़Ұ൪ৄ͘͠ͳΔ • ಋೖ͚ͨ͠ͲࣗࣾγεςϜʹ͍ͯͳ͔ͬͨ • αʔόʔϨε • ϚΠΫϩαʔϏε • ࣗͰରԠɺෛ࠴ճऩΛ͢Δ •
ϛεಈ͔ͯ͠Έͳ͍͜ͱଟʑ͋ΔͷͰɺ Λ࣋ͬͯ໘Λݟ͍ͯ͘৺ߏ͕͑ॏཁ
༷σʔλߏͷมߋ ඞͣൃੜ͢Δ
ੈͷதมΘΔ ࣌มΘΔ • ීวతͳٕज़ͰมΘΔՄೳੑ͕͋Δ • ҉߸ԽํࣜɿSHA1->SHA2ɺ • ωοτϫʔΫͷϓϩτίϧɿhttp → websocket
• ΫϥΠΞϯτɿΨϥέʔ → εϚʔτϑΥϯ • σʔλϕʔεɿϦϨʔγϣφϧDB → KVSɺNewSQL • ϑΥʔϚοτɿJSON → Protocol Buffers
σʔλͷอॴख़ߟ͢Δ
σʔλͷอॏཁ • σʔλ͕ංେԽ͢Δ͜ͱͰసૹྔɺసૹ࣌ؒ ͕૿͑ͯίετ্͕͕Δ • σʔλ͍͍ͨ࣌ʹ͑ΔΑ͏ʹ͢Δ • σʔλϨΠΫΛ࡞Δͷ͕ཧ • Amazon
S3 • Google Cloud StrageͳͲ ࢀߟɿCloud connect the world as a Glue - AWS Dev Day 2017 by kazeburo https://speakerdeck.com/kazeburo/cloud-connect-the-world-as-a-glue-aws-dev-day-2017
σʔλఆΑΓଟ͘ͳΔ
σʔλංେԽ͢Δ • ੈͷத͕ѻ͏σʔλ͕૿͑Δ • σόΠεͷ૿ՃɿΨϥέʔ → iPhoneɺFitbitɺ • ߴ࣭ͷϝσΟΞɿVGA →
4KɺCD → ϋΠϨκ • σδλϧԽ͕ਐΉɿۜߦৼΓࠐΈ → Χʔυܾࡁ • γεςϜ/ػೳ͕Ճ͞Εͯσʔλ͕૿͑Δ • ϒϥβ͔ΒͷΞΫηεɿ → ΞϓϦɺ༷ʑͳσόΠε(Amazon echo)͔ΒͷΞΫηε
ηΩϡϦςΟରࡦඞཁ͕ͩ ίετͱ͕͔͔࣌ؒΔ
ηΩϡϦςΟෳࡶͰ๛ • ωοτϫʔΫηΩϡϦςΟ • σʔλϕʔεͷΞΫηεݖ • ίϯϐϡʔτͷݖݶ • ΞϓϦέʔγϣϯͷݖݶ •
ϩάͳͲγεςϜσʔλͷΞΫηεݖݶ • ΫϥυαʔϏεͷݖݶ • ֤छπʔϧͷΞΫηεݖݶ
ݖݶཧͱӡ༻Λߟ͑Δ • ݖݶͷछྨͷઃܭ͕ඞཁ • ཧऀɺ։ൃऀɺӾཡऀɺҰ࣌Ϣʔβɺࣾ֎ͷϢʔβ • ωοτϫʔΫɿΞΫηεݩɺϓϩτίϧɺIPϨϯδ • ΫϥυݖݶɿIAM ϢʔβɺIAM
ϩʔϧɺACL… • ݖݶͷӡ༻ͱࠪʹίετ͕͔͔Δ • Ϣʔβ͕૿͑Δ/ݮΔ • ΞΫηεݩ͕૿͑ΔɿBIπʔϧ͔ΒΞΫηε͍ͨ͠ • ʮ୭͕ཧͯͯ͠ɺݖݶ༩୭͕ͯ͠ɺ ӡ༻ϧʔϧ୭͕ܾΊͯΔΜͰ͚ͨͬ͠ʁʯ
ΫϥυΛ৴པ͗͢͠ͳ͍
Ϋϥυߴ৴པͰ͋Δ͕ 100%མͪͳ͍Θ͚Ͱͳ͍ • ఆظϝϯςφϯεͷ᠘ • ϝϯςͰαʔϏεఀࢭ͢Δ • AWS RedshiftɺGoogle CloudSQLͳͲ
• Ϋϥυ߹ͷγϟοτμϯ • AWS EC2ɿشൃϝϞϦʹσʔλ͋ΔΜͰ͚͢Ͳ… • ṖͷαʔϏεϨϕϧͷԼ • ੈքதͷΈΜͳͰͬͯΔͷͰ ଞͷϢʔβ/ςφϯτʹҾͬுΒΕΔ͜ͱ͕͋Δ
݁ہɺݴ͍͔ͨͬͨ͜ͱ
తͱ༏ઌॱҐΛ໌֬ʹ͠ γεςϜߏங͢Δ
Sense of purpose ʮతʯͱ͍͏ͷɺΒҰਓͻͱΓ͕ɺ খ͞ͳࣗҎ্ͷԿ͔ͷҰ෦ͩͱײ͡ΒΕΔײ֮ͷ͜ͱͰ͢ɻ ͕ࣗඞཁͱ͞Εɺͦͯ͠ΑΓྑ͍ະདྷͷͨΊʹ ʑؤு͍ͬͯΔͱײ͡ΒΕΔײ֮ͷ͜ͱͳͷͰ͢ɻ https://youtu.be/4VwElW7SbLA
Q & A
͋Γ͕ͱ͏͍͟͝·ͨ͠
ΞυςΫελδΦͰ ΤϯδχΞΛืूதͰ͢ ※ΦϑΟεݟֶ͚ͩͰେৎͰ͢ αΠόʔΤʔδΣϯτ ΞυςΫελδΦ https://adtech.cyberagent.io/