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
Infrastructure as Code のこれまでとこれから/Infrastructur...
Search
Gosuke Miyashita
PRO
July 07, 2016
Technology
28
9.2k
Infrastructure as Code のこれまでとこれから/Infrastructure as Code
Gosuke Miyashita
PRO
July 07, 2016
Tweet
Share
More Decks by Gosuke Miyashita
See All by Gosuke Miyashita
Serverspec(をつくった自分)のそれまでとその後
mizzy
PRO
8
3.1k
A method for separating policy definition and behavior control by an intermediate language to achieve optimal server configuration management according to the situation
mizzy
PRO
3
250
Past and future of Infrastructure as Code
mizzy
PRO
0
170
Configuration Managementツールのポリシー定義用中間言語に関する考察/Considerations about an intermediate language of configuration management tools
mizzy
PRO
0
450
Infrastructure as Codeのこれまでとこれから/Infra Study Meetup #1
mizzy
PRO
29
13k
エンジニアかつ研究者としての今後のキャリアについて/My Career As An Engineer And A Researcher
mizzy
PRO
0
390
Compare OCI Runtimes
mizzy
PRO
2
1.5k
Serverspec and OSS at IEICE Society Conference 2018
mizzy
PRO
2
290
House Meetup
mizzy
PRO
7
3.2k
Other Decks in Technology
See All in Technology
Classmethod AI Talks(CATs) #21 司会進行スライド(2025.04.17) / classmethod-ai-talks-aka-cats_moderator-slides_vol21_2025-04-17
shinyaa31
0
390
AI Agentを「期待通り」に動かすために:設計アプローチの模索と現在地
kworkdev
PRO
2
360
こんなデータマートは嫌だ。どんな? / waiwai-data-meetup-202504
shuntak
5
1.7k
テキスト解析で見る PyCon APAC 2025 セッション&スピーカートレンド分析
negi111111
0
270
入社後SREチームのミッションや課題の整理をした話
morix1500
1
240
30 代子育て SRE が考える SRE ナレッジマネジメントの現在と将来
kworkdev
PRO
0
200
NLP2025 参加報告会 / NLP2025
sansan_randd
4
500
AWSのマルチアカウント管理 ベストプラクティス最新版 2025 / Multi-Account management on AWS best practice 2025
ohmura
3
180
Creating Awesome Change in SmartNews
martin_lover
1
220
低レイヤを知りたいPHPerのためのCコンパイラ作成入門 / Building a C Compiler for PHPers Who Want to Dive into Low-Level Programming
tomzoh
0
200
DETR手法の変遷と最新動向(CVPR2025)
tenten0727
2
1k
MCP Documentation Server @AI Coding Meetup #1
yyoshiki41
2
2.6k
Featured
See All Featured
Reflections from 52 weeks, 52 projects
jeffersonlam
349
20k
Evolution of real-time – Irina Nazarova, EuRuKo, 2024
irinanazarova
8
640
For a Future-Friendly Web
brad_frost
176
9.7k
The Psychology of Web Performance [Beyond Tellerrand 2023]
tammyeverts
47
2.4k
Facilitating Awesome Meetings
lara
54
6.3k
Raft: Consensus for Rubyists
vanstee
137
6.9k
The Web Performance Landscape in 2024 [PerfNow 2024]
tammyeverts
5
520
Music & Morning Musume
bryan
47
6.5k
Distributed Sagas: A Protocol for Coordinating Microservices
caitiem20
331
21k
Documentation Writing (for coders)
carmenintech
69
4.7k
RailsConf 2023
tenderlove
30
1.1k
Done Done
chrislema
183
16k
Transcript
Infrastructure as Code ͷ͜Ε·Ͱͱ͜Ε͔Β Recruit Technologies Open Lab #03: Infrastructure
as Code 2016/07/07 1
ࣗݾհ • ٶԼ ߶ี (mizzy@github, gosukenator@twitter) • ߹ಉձࣾServerspec Operationsද •
גࣜձࣾϦΫϧʔτςΫϊϩδʔζATLٕज़ސ • ઍגࣜձٕࣾज़ސ Recruit Technologies Open Lab #03: Infrastructure as Code 2016/07/07 2
ࠓ͓͢͠Δ͜ͱ • Infrastructure as Code ͱͦͷྺ࢙ • Infrastructure as Code
ͷݱঢ় • Infrastructure as Code ͷ͜Ε͔Β Recruit Technologies Open Lab #03: Infrastructure as Code 2016/07/07 3
Infrastructure as Code ͱͦͷྺ࢙ Recruit Technologies Open Lab #03: Infrastructure
as Code 2016/07/07 4
Infrastructure as Codeͱʁ • ΠϯϑϥΛίʔυͰهड़͢Δ͜ͱ • ͦΕʹΑΓιϑτΣΞ։ൃͰطʹ༗ޮͰ͋Δͱཱূ͞Εͯ ͍ΔϓϥΫςΟεΛΠϯϑϥʹಉ͡Α͏ʹద༻Ͱ͖ɺͦͷ Ըܙ͕ड͚ΒΕΔ Recruit
Technologies Open Lab #03: Infrastructure as Code 2016/07/07 5
Recruit Technologies Open Lab #03: Infrastructure as Code 2016/07/07 6
Infrastructure as Codeͷࡾຊப • ࣗಈԽ • όʔδϣϯཧ • ςετ Recruit
Technologies Open Lab #03: Infrastructure as Code 2016/07/07 7
Infrastructure as Codeͷੜ • େݩ1993ͷCFEngine • 2005ͷPuppetొ͕తͳ͖͔͚ͬ • Infrastructure as
Codeͱ͍͏ݴ༿͕ग़͖ͯͨͷ2008ࠒ • ChefͷϦϦʔε2009 • ࣌ࣗಈԽ͕ओ؟ Recruit Technologies Open Lab #03: Infrastructure as Code 2016/07/07 8
Infrastructure as Codeͷมભ • ʮίʔυԽͯࣗ͠ಈԽʯ͔ΒʮιϑτΣΞ։ൃͷϓϥΫς ΟεΛద༻ʯʹͳΔஹީ2008͙Β͍͔Β͋ͬͨ • Agile Infrastructure/Agile Operations
• DevOpsͷొ2009ࠒ • 2011ग़൛ͷTest-Driven Infrastructure with Chef • 2013ϦϦʔεͷServerspec Recruit Technologies Open Lab #03: Infrastructure as Code 2016/07/07 9
࠷ۙͷ Infrastructure as Code ࣄ Recruit Technologies Open Lab #03:
Infrastructure as Code 2016/07/07 10
Recruit Technologies Open Lab #03: Infrastructure as Code 2016/07/07 11
Infrastructure as Code ʹؔ͢Δ πʔϧαʔϏεͷྨ • Dynamic Infrastructure Platforms •
Infrastructure Definition Tools • Server Configuration Tools • Infrastructure Services Recruit Technologies Open Lab #03: Infrastructure as Code 2016/07/07 12
Dynamic Infrastructure Platforms • αʔόɺετϨʔδɺωοτϫʔΫͱ͍ͬͨίϯϐϡʔλϦ ιʔεΛϓϩάϥϚϒϧʹఏڙ͢Δͷ • EC2ͷΑ͏ͳIaaSOpenStackͷΑ͏ͳIaaSΛߏ͢ΔͨΊ ͷπʔϧ •
Cobbler Foreman ͷΑ͏ͳཧϚγϯΛϓϩϏδϣχϯ ά͢Δπʔϧ Recruit Technologies Open Lab #03: Infrastructure as Code 2016/07/07 13
Infrastructure Definition Tools • Infrastructure as Codeతͳख๏ͰDynamic Infrastructure Platforms্ͷϦιʔεΛ੍ޚ •
Terraform, CloudFormation, OpenStack Heat • Configuration Registries • Consul, etcd, ZooKeeper Recruit Technologies Open Lab #03: Infrastructure as Code 2016/07/07 14
Server Configuration Tools • ͍ΘΏΔ Configuration Management Tools • Puppet,
Chef, Ansible, Itamae Recruit Technologies Open Lab #03: Infrastructure as Code 2016/07/07 15
Infrastructure Services • ͍ΘΏΔ Orchestration ෦ • ϞχλϦϯάʢΞϥʔτɺϝτϦΫεɺϩΪϯάʣ • αʔϏεσΟεΧόϦ
• ࢄϓϩηεཧ • ιϑτΣΞσϓϩΠ Recruit Technologies Open Lab #03: Infrastructure as Code 2016/07/07 16
ྨΠϝʔδ Recruit Technologies Open Lab #03: Infrastructure as Code 2016/07/07
17
Infrastrtucture as Code͕ରͱ͢ΔྖҬ Recruit Technologies Open Lab #03: Infrastructure as
Code 2016/07/07 18
ྖҬͷมભ • ݩʑ Server Configuration ͕ରྖҬͩͬͨ • Infrastructure Definition ʹ͕ͬͨ
• ʮΠϯϑϥΛίʔυԽʯ͚ͩͰͳ͘ʮΠϯϑϥΛίʔυͰૢ࡞ʯ • CloudFormation, Terraform ͳΜ͔͕ग़͖ͯͨӨڹ • पลπʔϧͷ֦େ • Test Kitchen, Serverspec, Jenkins, CircleCI Recruit Technologies Open Lab #03: Infrastructure as Code 2016/07/07 19
Infrastructure as Code ͷ͜Ε͔Β Recruit Technologies Open Lab #03: Infrastructure
as Code 2016/07/07 20
Infrastructure as Code ʹӨڹΛ༩͑Δཁૉ • Dynamic Infrastructure Platforms • Container
• Microservices Recruit Technologies Open Lab #03: Infrastructure as Code 2016/07/07 21
Dynamic Infrastructure ʹΑΔӨڹ • AmazonҎ֎ʹ Google Microsoft ͳͲͷϏοάϓϨΠϠ ʔ͕ग़ݱ
• ϚϧνΫϥυରԠ/ϕϯμʔϩοΫΠϯճආ • ෳͷ Dynamic Infrastructure Platforms ΛଋͶΔଘࡏͱͯ͠ ͷ Infrastructure Definition Tools Infrastructure Services ͕ ॏཁʹ Recruit Technologies Open Lab #03: Infrastructure as Code 2016/07/07 22
Container ʹΑΔӨڹ • ϙʔλϏϦςΟͷߴ͞ʹΑΓϓϥοτϗʔϜબͷ෯͕͕Δ • Ұͷཧ͋Δ͍ԾϚγϯͰ͍ͬͯͨ͜ͱ͕ϗετϚγϯͱίϯ ςφʹ • Separation of
Concern ʹΑΔϓϩϏδϣχϯάͷ୯७Խ • Server Configuration Tools ͷॏཁੑԼ • Serverspec Έ͍ͨͳπʔϧͰςετ͢Εྑ͍ • αʔόཧͱ͍͏ΑΓϓϩηεཧ Recruit Technologies Open Lab #03: Infrastructure as Code 2016/07/07 23
Microservices ʹΑΔӨڹ • ίϯϙʔωϯτ୯ػೳԽ/γεςϜෳࡶԽ • ςετϞχλϦϯά͕ॏཁʹ • Infrastructure Services ͷॏཁੑ૿େ
Recruit Technologies Open Lab #03: Infrastructure as Code 2016/07/07 24
3ཁૉͷΑΔӨڹͷ·ͱΊ • ϚϧνΫϥυΛଋͶΔɺ͋Δ͍ҠߦΛ༰қʹ͢ΔͨΊͷ Infrastructure Definition Tools ͱ Infrastructure Services ͷॏ
ཁੑ૿େ • ૬ରతʹ Server Configuration Tools ͷॏཁੑԼ Recruit Technologies Open Lab #03: Infrastructure as Code 2016/07/07 25
Infrastructure Services ͱ Infrastructure as Code • Infrastructure Services ·ͩ
Infrastructure as Code ͷԸܙ͕ෆे • Server Configuration Tools ੩తͳঢ়ଶΛίʔυͰهड़ • Infrastructure Services Ͱಈతͳৼ͍Λهड़ • ֎ଆ͔Βίϯτϩʔϧ͢Δ͚ͩͰͳ੍ࣗ͘ޚॏཁʹ • ྫ: ngx_lua ngx_mruby ʹΑΔʮઃఆͷίʔυԽʯ • ಈతฏߧ/ϗϝΦελγε Recruit Technologies Open Lab #03: Infrastructure as Code 2016/07/07 26
Infrastructure Services ͱ Infrastructure as Code • ιϑτΣΞ։ൃʹߋʹ͖ۙͮΑΓෳࡶԽ͢Δ • ࠓ·ͰΠϯϑϥͱ͋·Γԑ͕ͳ͔ͬͨख๏ͷԠ༻
• ྫ: ܗࣜख๏ʹΑΔઃܭ • ྫ: Consumer-Driven Contract Testing • ιϑτΣΞ։ൃͱͷڥք͕ΑΓᐆດʹ Recruit Technologies Open Lab #03: Infrastructure as Code 2016/07/07 27
Infrastructure as Code ͷ͜Ε͔Β • ରྖҬ͕͕ΓɺΑΓෳࡶԽ͢Δ • ͱ͍͑ɺجຊݪଇಉ͡ • ࣗಈԽ
• όʔδϣϯཧ • ςετ • ͜ΕΛͰ͖ΔݶΓγϯϓϧʹ࣮ݱ͢Δ Recruit Technologies Open Lab #03: Infrastructure as Code 2016/07/07 28
Infrastructure as Code ͷ͜Ε͔Β • ֶज़తΞϓϩʔνॏཁ • ྫ: ܗࣜख๏ɺάϥϑཧɺσΟʔϓϥʔχϯά •
ςετ·ͩະख़ • ະख़͔ͩΒͦ͜վળͷ༨͕େ͍ʹ͋Δ • ϞχλϦϯάͱͷ༥߹ • ςετʹຊ൪σϓϩΠલɺϞχλϦϯάʹຊ൪σϓϩΠޙ • ੍ࣗޚ/ಈతฏߧ Recruit Technologies Open Lab #03: Infrastructure as Code 2016/07/07 29
͓·͚ • ʮͷ΅Γʔ͞ΜͷΫϥυΠϯϑϥPodcastʯͰ͜ͷΠϕϯ τͷޙஊతͳΛ͠·͢ • https://cloudinfra.audio/ • #nobolycloud Recruit Technologies
Open Lab #03: Infrastructure as Code 2016/07/07 30