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
サーバにログインしない・させないサービス運用 / AWS Summit 2015 Devcon
Search
koid
June 03, 2015
Technology
6
9.2k
サーバにログインしない・させないサービス運用 / AWS Summit 2015 Devcon
koid
June 03, 2015
Tweet
Share
More Decks by koid
See All by koid
新しい技術の導入時に大切にしていること / IVS CTO Night 2018 LT
koid
2
7.1k
GunosyでのKinesis Analytics利用について / AWS Solution Days 2017 -AWS DB Day-
koid
0
260
GunosyでのKinesis Analytics利用について / BigData JAWS 6 Kinesis Analytics
koid
1
960
re:Inventに行ってきました - 気になった新サービス / AWS re:Invent2016 Participants LT
koid
0
2k
AWS Lambda - ピーキーなアクセスに備える / Gunosy Beer Bash #8
koid
0
2.2k
AWS Lambdaで複数アカウント間でアレコレする / Gunosy Beer Bash #7
koid
1
2.1k
GunosyのMicroServicesとOpsWorks / よくわかる AWS OpsWorks
koid
18
6k
Other Decks in Technology
See All in Technology
Rebase エンジニアリング組織の現状とこれから
rebase_engineering
0
140
OTel meets Wasm: プラグイン機構としてのWebAssemblyから見る次世代のObservability
lycorptech_jp
PRO
1
290
コードの考古学 〜労務システムから発掘した成長の糧〜
kenta_smarthr
0
900
CloudTrailも、GuardDutyも、VPC Flow logsも… ログ多すぎ問題の整理術
nikuyoshi
5
650
S3 Tables を図解でやさしくおさらい~基本から QuickSight 連携まで/s3-tables-illustrated-basics-quicksight
emiki
1
330
大事なのは、AIの精度だけじゃない!〜1円のズレも許されない経理領域とAI〜
jun_nemoto
10
5.1k
GigaViewerにおけるMackerel APM導入の裏側
7474
0
440
データ戦略部門 紹介資料
sansan33
PRO
1
3.1k
継続戦闘能⼒
sansantech
PRO
0
210
mnt_data_とは?ChatGPTコード実行環境を深堀りしてみた
icck
0
190
名刺メーカーDevグループ 紹介資料
sansan33
PRO
0
740
研究開発部メンバーの働き⽅ / Sansan R&D Profile
sansan33
PRO
3
17k
Featured
See All Featured
Visualizing Your Data: Incorporating Mongo into Loggly Infrastructure
mongodb
45
9.6k
実際に使うSQLの書き方 徹底解説 / pgcon21j-tutorial
soudai
PRO
180
53k
How to Think Like a Performance Engineer
csswizardry
23
1.6k
Evolution of real-time – Irina Nazarova, EuRuKo, 2024
irinanazarova
8
750
Thoughts on Productivity
jonyablonski
69
4.7k
Put a Button on it: Removing Barriers to Going Fast.
kastner
60
3.9k
Fashionably flexible responsive web design (full day workshop)
malarkey
407
66k
Dealing with People You Can't Stand - Big Design 2015
cassininazir
367
26k
Sharpening the Axe: The Primacy of Toolmaking
bcantrill
42
2.3k
Fantastic passwords and where to find them - at NoRuKo
philnash
51
3.2k
Git: the NoSQL Database
bkeepers
PRO
430
65k
Designing for Performance
lara
608
69k
Transcript
αʔόʹϩάΠϯ͠ͳ͍ɾͤ͞ͳ͍ αʔϏεӡ༻ ɹ גࣜձࣾ!Gunosyɹখग़!య
ࣗݾհ • খग़"య"/"@koid • גࣜձࣾGunosy"։ൃຊ෦ • ޙํࢧԉܥΤϯδχΞ • ͨ·ʹόονॻ͍ͨΓͨ·ʹAPIͨ͠Γ
͜ΜʹͪGunosyͰ͢
Gunosyʹ͍ͭͯ • χϡʔεΩϡϨʔγϣϯΞϓϦ • 2011.09'ϝʔϧαʔϏεͱͯ͠։࢝ • 2013.01'iOS൛ΞϓϦϦϦʔε • 2013.02'Android൛ΞϓϦϦϦʔε •
ݱࡏ900ສDLಥഁ
͍ͬͯΔ͜ͱ • χϡʔε৴ • ࠂ৴ • ΞυωοτϫʔΫ • ϓϥοτϑΥʔϜ
ΤϯδχΞʹ͍ͭͯ • ݱࡏ26໊ • ͓͓Αͦͷकඋൣғ σβΠϯ+ϑϩϯτΤϯυ:&3ਓ ΫϥΠΞϯτ+QA:&5ਓ Web+API:&5ਓ Ξυ:&5ਓ ղੳ+ίϯςϯπ:&5ਓ
Πϯϑϥ:&1ਓ ͦͷଞSMͬΆ͍ਓ
GunosyͰΑ͍ͬͯ͘Δͷ • ։ൃݴޠ ɹ"#API:#Golang ɹ"#ύʔτφʔ༷/ࠂओ༷͚ཧը໘:#Rails ɹ"#όονɾ෦͚ཧը໘:#Django#or#ૉͷPython • ͦͷଞ ɹ"#όʔδϣϯཧ:#GitHub ɹ"#ߏཧ/σϓϩΠ:#Chef#(+AWS#OpsWorks)
։ൃͷಛ • খ͍͞୯ҐͰ࡞͙ࣺͬͯͯ͢Δ • ϚΠΫϩαʔϏεతͳ • ػೳ͕૿͑ա͗ͨΒׂ • ϝϯς͢ΔΑΓϦϓϨʔε
ຊɿ ։ൃੜ࢈ੑΛ্͛ΔͨΊͷऔΓΈ αʔόͷෆཁͳϩάΠϯΛΊΑ͏
͔͜͜Βஏ͔͍ͣ͠Λ͠·͢
αʔόʹϩάΠϯ͞ΕͯࠔΔ͜ͱ ʢϩάΠϯࣗମ͕ѱ͍Θ͚Ͱͳ͍Ͱ͕͢…ʣ
৴པͰ͖ͳ͍ϏϧυɾσϓϩΠ • ։ൃऀͷखݩͰϏϧυ→Ξοϓϩʔυ • αʔόʹೖͬͯσϓϩΠεΫϦϓτ࣮ߦ • ͦΕͲ͜ͷஅ໘ͳΜ͚ͩͬʁ࠷৽ͷmasterͱஅ໘߹ͬͯΔʁ • ࠓϓϩμΫγϣϯʹ্͕͍ͬͯΔϞϊ͕৴༻Ͱ͖ͳ͍ •
ࠓεςʔδϯάʹ্͕͍ͬͯΔϞϊɺຊʹςετ͍ͨ͠அ ໘͚ͩͬʁ
উखʹՃ͑ΒΕΔมߋ • উखʹՃ͞ΕΔύοέʔδ • αʔόՃ/ϦϓϨʔε͠Α͏ͱͨ͠Βಈ͔ͳ͍ • উखʹมߋ͞ΕΔcrontab • ίϝϯτΞτͨ͠ͷ୭ʁͦͯ͠Կނʁ
ฐࣾɺҎલ͔ΒChefΛ͍ͬͯ·ͨ͠
ʮαʔόͱϨγϐͷؒʹဃ͕͋Δʯ ʮϨγϐΛਵͤ͞Δඞཁ͕͋Δʯ
͑ͬ…
ϩάΠϯ͍ͯ͠͡ΔͷΊ·͠ΐ͏ ʢ࣮ʣ
ΞϓϦέʔγϣϯͷσϓϩΠ ৴པͰ͖ΔͷͰ͋Δඞཁ͕͋Δ
৴པͰ͖ͳ͍σϓϩΠ • ࣄނͷϦεΫ • खΓͷൃੜ • ΤϯδχΞͷ࣌ؒతɾਫ਼ਆతෛ୲
ܧଓతσϦόϦ • όʔδϣϯཧ • ܧଓతΠϯςάϨʔγϣϯ • ܧଓతσϓϩΠ
͔͠͠ • όʔδϣϯཧπʔϧΛ͑ྑ͍ͱ͍͏ͷͰͳ͍ • CIπʔϧΛ͑ྑ͍ͱ͍͏ͷͰͳ͍ • σϓϩΠπʔϧΛ͑ྑ͍ͱ͍͏ͷͰͳ͍ શͯΛ౷߹ͨ͠Ұ࿈ͷϫʔΫϑϩʔΛ࡞Δ͜ͱ͕ॏཁ
৭ʑͳਏ͍ࢥ͍Λͯ͠ɺݱࡏ
GitHubΛத৺ͱͨ͠։ൃɾσϓϩΠϑϩʔ • Service(HookΛར༻͠ɺ֤αʔϏεΛ࿈ܞ • GitHub • CircleCI • AWS(OpsWorks •
GunosyͰͷOpsWorksͷར༻ʹ͍ͭͯԼه • h;ps:/ /speakerdeck.com/koid/yokuwakaruCawsCopsworks
MergeϘλϯʹશͯΛूதͤ͞Δ
۩ମతʹ • ֤ϒϥϯνΛϚʔδ͢ΔʹࣗಈͰϏϧυɾςετɾσϓϩΠ
σϓϩΠ͚ͨ͠ΕPull$RequestΛ࡞Δ
༨ஊʣOpsWorksͰσϓϩΠཤྺ͕͑Δ
݁Ռ • Pull%Request%Driven%Deploy • શͯͷใ͕GitHubʹू • ݟ͑ΔԽɺϏϧυɾσϓϩΠͷޮԽɺࣄނͷݮ • ϫʔΫϑϩʔ͕Θ͔Γ͘͢ͳͬͨ
ΑΓαʔόʹϩάΠϯ͠ͳ͍ͨΊʹ
Ͳ͏͖ͯͭ͠ͷͳͷ͕ௐࠪ • ϛυϧΣΞϩάऩू • ΞϓϦέʔγϣϯϩάऩू αʔόʹϩάΠϯͯ͠ௐ·͔͢ʁ
ϒϥβ͔ΒશͯͷαʔόͷϩάΛݟΒΕΔΑ͏ʹ • OS/ϛυϧΣΞϩάऩू • papertrail • ΞϓϦέʔγϣϯϩάऩू • airbrake.(errbit) •
kibana
αʔόͷෆཁͳϩάΠϯΊ·͠ΐ͏
͝੩ௌ͋Γ͕ͱ͏͍͟͝·ͨ͠