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.5k
システムを構築するときに 気をつける10のこと
主体性のない文章で突っ込みどころ満載ですが、
雰囲気だけ感じてもらえればと思って作っています。
Show Murai
December 07, 2017
Tweet
Share
More Decks by Show Murai
See All by Show Murai
システムを構築するときに 気をつける10のこと
showmurai
4
140
監視入門!監視で困ってませんか?
showmurai
0
300
AWS vs GCP 今から作るならどちらがいいの 20180330
showmurai
1
1.3k
KubernetesでCLIを快適を使いたい
showmurai
0
2k
AWS vs GCP 今から作る ならどっちがいいの!?
showmurai
52
83k
データサイエンスのためのAWSの使い方入門
showmurai
1
930
Other Decks in Technology
See All in Technology
データプロダクトの定義からはじめる、データコントラクト駆動なデータ基盤
chanyou0311
3
350
アプリエンジニアのためのGraphQL入門.pdf
spycwolf
0
110
[CV勉強会@関東 ECCV2024 読み会] オンラインマッピング x トラッキング MapTracker: Tracking with Strided Memory Fusion for Consistent Vector HD Mapping (Chen+, ECCV24)
abemii
0
230
rootlessコンテナのすゝめ - 研究室サーバーでもできる安全なコンテナ管理
kitsuya0828
3
390
SREが投資するAIOps ~ペアーズにおけるLLM for Developerへの取り組み~
takumiogawa
2
520
The Role of Developer Relations in AI Product Success.
giftojabu1
0
150
静的解析で実現した効率的なi18n対応の仕組みづくり
minako__ph
1
110
開発生産性を上げながらビジネスも30倍成長させてきたチームの姿
kamina_zzz
2
1.7k
DynamoDB でスロットリングが発生したとき_大盛りver/when_throttling_occurs_in_dynamodb_long
emiki
1
450
Python(PYNQ)がテーマのAMD主催のFPGAコンテストに参加してきた
iotengineer22
0
540
『Firebase Dynamic Links終了に備える』 FlutterアプリでのAdjust導入とDeeplink最適化
techiro
0
170
SSMRunbook作成の勘所_20241120
koichiotomo
3
170
Featured
See All Featured
Refactoring Trust on Your Teams (GOTO; Chicago 2020)
rmw
31
2.7k
XXLCSS - How to scale CSS and keep your sanity
sugarenia
246
1.3M
Principles of Awesome APIs and How to Build Them.
keavy
126
17k
Practical Orchestrator
shlominoach
186
10k
10 Git Anti Patterns You Should be Aware of
lemiorhan
655
59k
Bash Introduction
62gerente
608
210k
We Have a Design System, Now What?
morganepeng
50
7.2k
VelocityConf: Rendering Performance Case Studies
addyosmani
325
24k
Easily Structure & Communicate Ideas using Wireframe
afnizarnur
191
16k
Why Our Code Smells
bkeepers
PRO
334
57k
Facilitating Awesome Meetings
lara
50
6.1k
Done Done
chrislema
181
16k
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/