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を目指して
Search
Shin'ya Ueoka
April 24, 2020
Technology
6
5k
究極のInfrastructure as Codeを目指して
Infra Study Meetup #1「Infrastructure as Code」のLT資料です
https://forkwell.connpass.com/event/171560/
Shin'ya Ueoka
April 24, 2020
Tweet
Share
More Decks by Shin'ya Ueoka
See All by Shin'ya Ueoka
英語ができなかった自分達が、グローバルチーム立ち上げに挑戦!?
ueokande
1
870
技術書典12協賛企業サイボウズゲストトーク
ueokande
0
250
サービス間をテストするフレームワーク集
ueokande
0
300
kintone.comを支える技術
ueokande
0
200
SLO策定とアラート設定までの長い道のり
ueokande
6
4.6k
オンラインイベントを 半年運営して気づいたこと
ueokande
0
110
インフラ開発チームがプロダクトチームに体験入部したはなし
ueokande
1
690
kintone.comのAWS移行と その舞台裏
ueokande
4
4.9k
OSSでキレイな本を 作りたい話
ueokande
0
240
Other Decks in Technology
See All in Technology
IAMのマニアックな話 2025 ~40分バージョン ~
nrinetcom
PRO
8
930
移行できそうでやりきれなかった 10年超えのシステムを葬るための戦略
ryu955
2
490
セマンティックレイヤー入門
ikkimiyazaki
8
3.3k
初めてのPostgreSQLメジャーバージョンアップ
kkato1
0
440
モンテカルロ木探索のパフォーマンスを予測する Kaggleコンペ解説 〜生成AIによる未知のゲーム生成〜
rist
4
1.1k
RAGの基礎から実践運用まで:AWS BedrockとLangfuseで実現する構築・監視・評価
sonoda_mj
0
440
20250328_OpenAI製DeepResearchは既に一種のAGIだと思う話
doradora09
PRO
0
150
Amazon EKS Auto ModeでKubernetesの運用をシンプルにする
sshota0809
0
110
製造業の会計システムをDDDで開発した話
caddi_eng
3
980
Go製のマイグレーションツールの git-schemalex の紹介と運用方法
shinnosuke_kishida
1
410
コード品質向上で得られる効果と実践的取り組み
ham0215
2
200
caching_sha2_passwordのはなし
boro1234
0
220
Featured
See All Featured
Code Reviewing Like a Champion
maltzj
522
39k
[RailsConf 2023 Opening Keynote] The Magic of Rails
eileencodes
28
9.4k
Fireside Chat
paigeccino
37
3.3k
The Web Performance Landscape in 2024 [PerfNow 2024]
tammyeverts
4
500
The Psychology of Web Performance [Beyond Tellerrand 2023]
tammyeverts
46
2.4k
Distributed Sagas: A Protocol for Coordinating Microservices
caitiem20
331
21k
Build The Right Thing And Hit Your Dates
maggiecrowley
34
2.6k
We Have a Design System, Now What?
morganepeng
51
7.5k
[RailsConf 2023] Rails as a piece of cake
palkan
53
5.4k
How STYLIGHT went responsive
nonsquared
99
5.4k
What's in a price? How to price your products and services
michaelherold
245
12k
Building Better People: How to give real-time feedback that sticks.
wjessup
367
19k
Transcript
ڀۃͷ*OGSBBT$PEFΛ ࢦͯ͠ Infra Study Meetup #1 “Infrastructure as Code” αΠϘζגࣜձࣾ
@ueokande
.F ‰্Ԭ ਅ (@ueokande) ‰αΠϘζגࣜձࣾ ‰ٳOSSจষΛॻ͍ͨΓ ‰kintone.comͱ͍͏αʔϏε ͷ։ൃɾӡ༻Λ͍ͯ͠·͢ 2
LJOUPOFDPN ‰γεςϜΛ؆୯ʹ࡞ΕΔB2B͚αʔϏε ‰ࠃ֎15,000+ࣾͰಋೖ ‰άϩʔόϧࢢ͚AWS্Ͱӡ༻ 3
LJOUPOFDPNͷߏ 4 ֤αʔϏε͕ར༻͢Δ ϚωʔδυαʔϏε Amazon EKS Service A Service B
Service C Service D Service E Service F Service G Service H LJOUPOFDPNΛߏ ͢ΔαʔϏε܈ ‰͜ͷߏΛInfra as CodeͰߏஙɾӡ༻ Ϛωʔδυ,VCFSOFUFT
‰Infra as Codeʹ͓͍ͯɺιʔείʔυ։ൃऀ͕ ࡞Γ͍ͨཧঢ়ଶ (࠷ऴతͳΠϯϑϥߏ) ‰γεςϜݱࡏͷঢ়ଶͱཧঢ়ଶͷࠩΛຒΊΔ • ͦΕΛ͢Δͷ͕terraformAnsible ཧঢ়ଶͷऩଋ 5
ద༻ޙͷ ঢ়ଶ ݱࡏͷ ঢ়ଶ ཧ
LJOUPOFDPNͷϨϙδτϦ ‰ϞϊϨϙʹAWSͷߏͱαʔϏεΛؚΉ • ϨϙδτϦͷঢ়ଶ͕Πϯϑϥͷཧঢ়ଶ 6 Amazon EKS Service A Service
B Service C Service D Service E Service F Service G Service H CloudFormation Service A Service Z ιʔείʔυʢϞϊϨϙʣ $MPVE'PSNBUJPO͕ ཧঢ়ଶʹΠϯϑϥΛઃఆ ,VCFSOFUFT্ͷαʔϏε ࠩݕˍߋ৽͍ͨ͠ ͜ͷࠩΛ Ͳ͏ຒΊΔ͔ʁ
αʔϏεͷߋ৽ ‰Ռͷࠩݕ͕ͯࠩ͋͠ΕσϓϩΠ • ΠϝʔδΛߏ͢ΔϑΝΠϧͷϋογϡΛΠϝʔδλάͱ͢Δ • ιʔείʔυ͕มߋ͞ΕΔͱϦϏϧυͯ͠docker push 7 ϋογϡؔ H
( ) %PDLFSpMF ઃఆ ϑΝΠϧ . . spec: containers: - name: my-service-a image: quay.io/cybozu/my-service-a:BKCXSIF3Z3GEH2OEIM5BLEQBP4 ιʔε ίʔυ ιʔείʔυ͕มߋ͞ΕΔͱ Πϝʔδλά৽͘͠ͳΔ ϥΠϒϥϦ .
ྫϕʔεΠϝʔδͷ+7.ߋ৽ ϕʔεΠϝʔδΛߋ৽ʢηΩϡϦςΟରԠͳͲʣ (1) ϕʔεΠϝʔδͷDockerfileΛߋ৽ (2) Dockerfile͔ΒϕʔεΠϝʔδΛϦϏϧυ (3) ϕʔεΠϝʔδ͔Β֤छαʔϏεΛϦϏϧυ (4) ΠϝʔδλάͰdocker
push (5) λάͷΠϝʔδΛkubectl apply 8
ϕʔεΠϝʔδͷߋ৽ 9 Service A ϕʔεΠϝʔδ Service B ιʔείʔυʢϞϊϨϙʣ Amazon EKS
4FSWJDF " 4FSWJDF # 4FSWJDF $ ߋ৽ ֤αʔϏεΛϦϏϧυ ʢdocker build && docker pushʣ ৽͍͠ΠϝʔδΛల։ ʢkubectl applyʣ 4FSWJDF " 4FSWJDF # 4FSWJDF $ σϓϩΠ ύΠϓϥΠϯ ΠϝʔδλάΛιʔείʔυ͔Βܭࢉ ϕʔε Πϝʔδ
ྫϕʔεΠϝʔδͷ+7.ߋ৽ ϕʔεΠϝʔδΛߋ৽ʢηΩϡϦςΟରԠͳͲʣ (1) ϕʔεΠϝʔδͷDockerfileΛߋ৽ (2) Dockerfile͔ΒϕʔεΠϝʔδΛϦϏϧυ (3) ϕʔεΠϝʔδ͔Β֤छαʔϏεΛϦϏϧυ (4) ΠϝʔδλάͰdocker
push (5) λάͷΠϝʔδΛkubectl apply 10 ࣮ࡍͷखॱ ͜Ε͚ͩ ͋ͱࣗಈͰ ຊ൪ʹద༻
11
CloudFormationͷద༻ KubernetesϚχϑΣετͷద༻ ςετ࣮ߦ JVMαʔϏεΛϦϏϧυˍ ৽͍͠ΠϝʔδλάͰdocker push ৽͍͠ΠϝʔδλάΛద༻ JVMϕʔεΠϝʔδΛϏϧυ JVMҎ֎ͷαʔϏε
ڀۃͷ*OGSBBT$PEFΛࢦͯ͠ ‰ιʔείʔυࠓͷΠϯϑϥͷঢ়ଶΛද͢ ‰ίʔυΛมߋ͢Δɺ͢ͳΘͪຊ൪ద༻ ‰ϩʔϧόοΫgit revertͯ͠Ϛʔδ͢Δ͚ͩ 13