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
Amazon EKS を活用した個人開発環境の整備と自動化への取り組み / CNDT2021
Search
YuyaKoda
PRO
November 05, 2021
Technology
0
500
Amazon EKS を活用した個人開発環境の整備と自動化への取り組み / CNDT2021
CloudNativeDays Tokyo 2021
https://event.cloudnativedays.jp/cndt2021/
YuyaKoda
PRO
November 05, 2021
Tweet
Share
More Decks by YuyaKoda
See All by YuyaKoda
Kubernetes だけじゃない!Amazon ECS で実現するクラウドネイティブな GitHub Actions セルフホストランナー / CNDW2024
ponkio_o
PRO
6
460
Renovate ではじめる運用レスなライブラリ更新 / 令和最新版 他人に自慢したいヤバいCI/CD LT会 @ yabaibuki.dev #2
ponkio_o
PRO
1
210
Amazon ECS で作るスケーラブルなセルフホストランナー / GitHub Actions Meetup Tokyo #4
ponkio_o
PRO
2
720
業務で使えるかもしれない…!?GitHub Actions の Tips 集 / CI/CD Test Night #7
ponkio_o
PRO
43
17k
aqua で始める CI-Friendly なツール管理
ponkio_o
PRO
2
1k
set-terraform-matrix という Actions を作った / set-terraform-matrix-actions
ponkio_o
PRO
0
480
NGINX Ingress Controller を活用した Retty のサービス開発とモニタリング / NGINX ユーザー会 2022 春
ponkio_o
PRO
0
170
Retty における Signal Sciences の導入事例 / Fastly Yamagoya 2021
ponkio_o
PRO
0
4.3k
Terraform における秘匿情報管理 / Credentials management in Terraform
ponkio_o
PRO
0
350
Other Decks in Technology
See All in Technology
GitHub Copilot のテクニック集/GitHub Copilot Techniques
rayuron
36
14k
開発生産性向上! 育成を「改善」と捉えるエンジニア育成戦略
shoota
2
370
オプトインカメラ:UWB測位を応用したオプトイン型のカメラ計測
matthewlujp
0
180
NilAway による静的解析で「10 億ドル」を節約する #kyotogo / Kyoto Go 56th
ytaka23
3
380
第3回Snowflake女子会_LT登壇資料(合成データ)_Taro_CCCMK
tarotaro0129
0
190
Oracle Cloud Infrastructure:2024年12月度サービス・アップデート
oracle4engineer
PRO
0
190
C++26 エラー性動作
faithandbrave
2
740
2024年にチャレンジしたことを振り返るぞ
mitchan
0
140
PHPerのための計算量入門/Complexity101 for PHPer
hanhan1978
5
120
1等無人航空機操縦士一発試験 合格までの道のり ドローンミートアップ@大阪 2024/12/18
excdinc
0
160
終了の危機にあった15年続くWebサービスを全力で存続させる - phpcon2024
yositosi
14
12k
Qiita埋め込み用スライド
naoki_0531
0
5.1k
Featured
See All Featured
The Art of Delivering Value - GDevCon NA Keynote
reverentgeek
8
1.2k
Fantastic passwords and where to find them - at NoRuKo
philnash
50
2.9k
4 Signs Your Business is Dying
shpigford
181
21k
Large-scale JavaScript Application Architecture
addyosmani
510
110k
StorybookのUI Testing Handbookを読んだ
zakiyama
27
5.3k
Writing Fast Ruby
sferik
628
61k
VelocityConf: Rendering Performance Case Studies
addyosmani
326
24k
Producing Creativity
orderedlist
PRO
341
39k
What's in a price? How to price your products and services
michaelherold
243
12k
実際に使うSQLの書き方 徹底解説 / pgcon21j-tutorial
soudai
169
50k
It's Worth the Effort
3n
183
28k
Side Projects
sachag
452
42k
Transcript
Amazon EKS Λ׆༻ͨ͠ݸਓ։ൃڥ ͷඋͱࣗಈԽͷऔΓΈ Rettyגࣜձࣾ Yuya Koda 2021/11/05
ࣗݾհ IUUQTVTFSSFUUZNF ໊લ ా༏࠸ ͜͏ͩΏ͏ ͓ࣄ ΠϯϑϥΤϯδχΞ ͖ͳ͓ళ 4"70:ຑे൪ళ
5XJUUFS !QPOLJP@P
͋ͳͨʹBESTͳ ͓ళ͕ݟ͔ͭΔ
ΞδΣϯμ • ։ൃڥͷ֓ཁ ◦ ͳΓͨͪγεςϜߏ • ։ൃڥʹ͓͚Δ༷ʑͳ׆༻ࣄྫ ◦ &$4QPU*OTUBODFΛ׆༻ͨ͠ίετݮࣄྫ ◦
,VCFSOFUFTͱ5FSSBGPSNͷϦιʔεཧʹ͍ͭͯ ◦ ෳͷ*OHSFTT$POUSPMMFSͷΈ߹Θͤ ◦ "OTJCMFLT.PEVMFΛͬͨϦιʔεཧ • ։ൃ༻%#ӡ༻ࣗಈԽʹ͍ͭͯ ◦ "844UFQ'VODUJPOTΛ༻ͨ͠ϫʔΫϑϩʔ
ࣾ։ൃڥͷͳΓͨͪ
ࣾ։ൃڥͷͳΓͨͪ • ΞϓϦέʔγϣϯຊମ ݹΊͷ1)1 • ෳͷ3FEJT • ෳͷ.Z42- •
ෳͷػೳΛ࣋ͬͨ"1*αʔό • ผΞϓϦέʔγϣϯͷ༧γεςϜ 3FUUZΛ։ൃ͢ΔͨΊʹෳͷγεςϜ͕ඞཁ ͜ΕΒͯ͢ΛϩʔΧϧڥʹ༻ҙ͢Δͷେมʜ
ࣾ։ൃڥͷͳΓͨͪ • ͷαʔόΛ༻ҙ͠ɺͦ͜ʹ44)ͯ͠։ൃ͢ΔελΠϧ ◦ 1)1ͳͲඞཁͳͷͯ͢ଗ͍ͬͯΔ ϩʔΧϧͰෆཁ ◦ ڥߏஙෆཁͰ44)ϩάΠϯͯ͠HJUDMPOF͢ΔͷΈ ◦
ϨϯλϧαʔόͷΑ͏ͳΠϝʔδ • Ͱ͖ͨॳࣾͷ,VCFSOFUFTΫϥελ W͘Β͍ Ͱಈ͍͍ͯͯɺ (,&ʹҠߦͨ͠ޙɺݱࡏ&,4ͰՔಇத ͦ͜Ͱ࡞ΒΕͨͷ͕ࣾ։ൃڥ
ࣾ։ൃڥͷߏ
ࣾ։ൃڥͷߏ /'4 TTITFSWFS 1PE 1)1"QQ 4FSWJDF UZQF-PBE#BMBODFS *OHSFTT 44)ϩάΠϯͯ͠ίʔυΛฤू ˞ϗετ໊ͳͲͯ͢Սۭͷͷ
7PMVNF .PVOU IPNF\VTFS^SFUUZJOEFYQIQ ϢʔβYαʔϏεຖʹ࡞͞ΕΔϦιʔε 4FSWJDF WBSXXXIUNMJOEFYQIQ TTITFSWFSͰฤूͨ͠ίʔυΛ7PMVNF.PVOU IUUQT\VTFS^TFSWJDFGPPSFUUZNF ͷΑ͏ͳ63-ʹΞΫηεͯ֬͠ೝ
ͳͥ,VCFSOFUFTʁ • ઃఆΛ:".-ϑΝΠϧͰཧͰ͖Δͷศར ◦ ʮجຊతʹಉ͡ઃఆͰϢʔβ໊ͷՕॴͷΈҟͳΔʯͳͲ͕ଟ͋͘Δ ͨΊɺςϯϓϨʔτԽ͍͍ͯ͢͠ ◦ ͲͪΒ͔ͱ͍͏ͱ*B$ͷྑ͞తͳʹ͍ۙ • ๛ͳΤίγεςϜΛ׆༻Ͱ͖Δ
◦ "84ͷαʔϏεͰΓͳ͍෦Λิ͏͜ͱ͕Ͱ͖Δ ◦ ྫ͑"-#ͷෆ෦Λ/(*/9*OHSFTT$POUSPMMFSͰิ͏ͳͲ ʮ͕ࣗೖࣾ͢Δલ͔Βطʹ,VCFSOFUFTͰಈ͍͍͔ͯͨΒʜʯͱ͍͏ͷ ͋Γ·͕͢ɺӡ༻ͯ͠Έͯಘͨؾ͖ͮΛ͍͔ͭ͘
&$4QPU*OTUBODFͰେ෯ͳίετݮ
&$4QPU*OTUBODFͷ֓ཁ • "84্Ͱ༻͞Ε͍ͯͳ͍ΩϟύγςΟΛ֨҆Ͱ༻Ͱ͖Δ&$Π ϯελϯεͷങ͍ํͷͭ ◦ Ձۭ͖֨ͷΩϟύγςΟʹΑΓมಈ͋Γ ◦ "84ͷΩϟύγςΟ͕ෆ͖ͯͨ͠Βऴྃ͞ΕΔ ▪ ͨͩ͠લʹ௨Λड͚औΔ͜ͱ͕Ͱ͖Δ
• 3*41ΑΓίετޮՌ͕ߴ͍ ࠷େׂҾ
ίετͱ&$4QPU*OTUBODF • ར༻ऀׂ͕ͱมಈ͢ΔͨΊ༧ΊΛ֬ఆ͠ʹ͔ͬͨ͘ • ։ൃڥͳͷͰதஅʹΑΔΤϥʔ͕ग़ͨͱͯ͠ΫϦςΟΧϧͳͰͳ͍ ◦ ࠷ѱӨڹ͕ग़͔ͯΒΦϯσϚϯυΛ͢ͳͲͷରԠ͕ڐ༰͞ΕΔ • ॊೈʹαΠζΠϯελϯελΠϓΛม͑Δ͜ͱ͕Ͱ͖Δ ◦
3FTFSWFE*OTUBODFͷ߹੍͕͋ΔͨΊ શࣾతʹར༻͞ΕΔΑ͏ʹͳΓɺͩΜͩΜͱίετ͕՝ʹʜ ԼهͷΑ͏ͳཧ༝͔Β&$4QPU*OTUBODFΛ࠾༻͢Δ͜ͱʹ͠·ͨ͠ɻ
ΦϯσϚϯυΠϯελϯεͱͷΈ߹Θͤ தஅ͕ڐ༰͞Εͳ͍ϫʔΫϩʔυʹΦϯσϚϯυΠϯελϯεΛར༻ • TTITFSWFSৗʹ୭͔͕ଓ͍ͯ͠ΔͷͳͷͰɺجຊతʹ్தͰऴྃ͞Ε ͯཉ͘͠ͳ͍ͱ͍͏ࣄ͕͋ͬͨ • ,VCFSOFUFTͷ/PEF"GGJOJUZ ˞ ͰεέδϡʔϦϯάઌΛࢦఆͨ͠ ˞"TTJHO1PETUP/PEFTVTJOH/PEF"GGJOJUZIUUQTLVCFSOFUFTJPKBEPDTUBTLTDPOGJHVSFQPEDPOUBJOFSBTTJHOQPETOPEFTVTJOHOPEFBGGJOJUZ
BXTOPEFUFSNJOBUJPOIBOEMFS BXTOPEFUFSNJOBUJPOIBOEMFSͱʁ🤔 • 4QPUऴྃ࣌ʹLVCFDUMESBJO૬ͷॲཧΛߦͬͯ͘ΕΔ%BFNPO4FU • *OUFSSVQUJPO௨Λड͚ͯ(SBDFGVM4IVUEPXOΛ࣮ݱ͢ΔͨΊʹҎલ·Ͱ ඞཁͩͬͨ IUUQTHJUIVCDPNBXTBXTOPEFUFSNJOBUJPOIBOEMFS
BXTOPEFUFSNJOBUJPOIBOEMFS BXTOPEFUFSNJOBUJPOIBOEMFSͱʁ🤔 • &$4QPU*OTUBODF͕ऴྃ͢Δࡍʹରͷϊʔυ্Ͱಈ͘1PEΛ(SBDFGVM 4IVUEPXOͤ͞ΔͨΊͷ%BFNPO4FU • LVCFDUMESBJO૬ͷॲཧΛߦͬͯ͘ΕΔ IUUQTHJUIVCDPNBOTJCMFDPMMFDUJPOTDPNNVOJUZLVCFSOFUFT
./(ʹ&$4QPU*OTUBODF͕ରԠ ݄ʹ.BOBHFE/PEF(SPVQͰ&$4QPU*OTUBODF͕ରԠ ͞Εͨ🎉 • BXTOPEFUFSNJOBUJPOIBOEMFS͕ෆཁʹ✨ ◦ ./(୯ମͰLVCFDUMESBJO૬ͷॲཧΛߦͬͯ͘ΕΔΑ͏ʹͳͬͨ • &$JOTUBODFSFCBMBODFSFDPNNFOEBUJPOT👀
◦ ऴྃͷલʹ௨͞ΕΔJOUFSSVQUJPO௨ΑΓઌʹ௨͞ΕΔͷ Ͱʮதஅͷةݥੑ͕ߴ·ͬͨ࣌ʯʹ௨͞ΕΔ ◦ ༨༟ͷ͋Δ͏ͪʹ৽͍͠ΠϯελϯεΛ্ཱͪ͛ͯΠΠײ͡ʹϦόϥϯγ ϯάͯ͘͠ΕΔ ˞ ˞&$JOTUBODFSFCBMBODFSFDPNNFOEBUJPOTIUUQTEPDTBXTBNB[PODPN"84&$MBUFTU6TFS(VJEFSFCBMBODFSFDPNNFOEBUJPOTIUNM
&$4QPU*OTUBODFͷ·ͱΊ • Ͳ͏ͯ͠தஅͰ͖ͳ͍ϫʔΫϩʔυʹΦϯσϚϯυΠϯελϯε ◦ ͑Δͱ͜ΖεϙοτΛ͏ ։ൃڥͰׂ͕εϙοτ • ඞͣෳΠϯελϯελΠϓΛࢦఆ͢Δ͜ͱ ◦
&$ͷࡏݿΕΛͳΔ͙ͨ͘Ί ◦ ͪͳΈʹฐࣾछྨͰӡ༻͍ͯ͠·͕͢Ҏ্େ͖ͳͳ͠ • ΦϯσϚϯυͱൺֱͯ͠&$Πϯελϯεʹ͔͔ΔίετΛׂ΄Ͳݮ Ͱ͖ͨ💰
5FSSBGPSNͱ,VCFSOFUFTͲͪΒͰཧ͢Δ͔ʁ
5FSSBGPSNͱ,VCFSOFUFT ࠓ·Ͱ*OHSFTTϦιʔε4FSWJDF UZQF-PBE#BMBODFS Λ࡞͢Δͱɺ ,VCFSOFUFTͷϥΠϑαΠΫϧʹඥ͍ͨ&-#͕࡞͞Ε͍ͯͨ ,VCFSOFUFT 5FSSBGPSN -JTUFS3VMF 5BSHFU(SPVQ "QQMJDBUJPO-PBE#BMBODFS
4FSWJDF 1PE 4FDVSJUZ (SPVQ 3PVUF "-#*OHSFTT$POUSPMMFSΛ༻ͯ͠*OHSFTTΛ࡞ͨ࣌͠ͷϦιʔεͷཧ "$.
5FSSBGPSNͱ,VCFSOFUFT ,VCFSOFUFTͷϥΠϑαΠΫϧʹඥͮ͘ͱԿ͕͔ʁ • Ϋϥελ֎ͷͷ5FSSBGPSNͰཧ͍ͨ͠ ◦ 71$3%4ͳͲ"84ϦιʔεͷཧΛ5FSSBGPSNʹد͍ͤͯΔͨΊ ◦ Ұํ,VCFSOFUFTͷϦιʔε,VCFSOFUFTϚχϑΣετͰཧ͍ͨ͠ • ۩ମతʹ"-#ͷઃఆ5FSSBGPSNͰཧ͍ͨ͠
◦ 5FSSBGPSNͰ࡞ͬͨ"$.ͷূ໌ॻΛ͍͍ͨ ▪ ΞλονͰ͖Δ͚Ͳূ໌ॻͷ࡞5FSSBGPSNͰΔͷͰʜ ◦ 5FSSBGPSNͰ࡞ͬͨ4(Λ͍͍ͨ ▪ ΞλονͰ͖Δ͚Ͳ4(ͷ࡞5FSSBGPSNͰΔͷͰʜ
"84-PBE#BMBODFS$POUSPMMFS IUUQTHJUIVCDPNLVCFSOFUFTTJHTBXTMPBECBMBODFSDPOUSPMMFS • ݩʑ"84"-#*OHSFTT$POUSPMMFSͩͬͨͷ • "-#ͱ/-#ͲͪΒͭͷίϯτϩʔϥʔͰཧՄೳ • ৽͍͠$VTUPN3FTPVSDFͰ͋Δ5BSHFU(SPVQ#JOEJOH͕Ճ "84-PBE#BMBODFS$POUSPMMFSͱʁ🤔
5BSHFU(SPVQ#JOEJOH 5BSHFU(SPVQ#JOEJOHͱʁ🤔 • ࠓ·Ͱ,VCFSOFUFTଆͰඞཁͳϦιʔε͕શͯ࡞͞Ε͍ͯͨ ◦ "-#5BSHFU(SPVQ-JTUFS3VMF ◦ ͦͷͨΊ্هϦιʔεͷཧ͕,VCFSOFUFTʹඥ͍͍ͯͨ • 5BSHFU(SPVQ#JOEJOH5(ͱ4FSWJDFΛඥ͚ΔͨΊͷػೳ
◦ 㲈5FSSBGPSNͳͲͰ࡞ͨ͠5BSHFU(SPVQΛࢦఆ͢Δ͜ͱͰ ,VCFSOFUFTଆʹϥΠϑαΠΫϧ͕ඥ͚ͮΔඞཁ͕ͳ͘ͳΔ
"84-PBE#BMBODFS$POUSPMMFS ԼهͷΑ͏ʹΫϥελ֎ͷϦιʔε5FSSBGPSNͰ࡞Ͱ͖Δ Kubernetes Terraform -JTUFS3VMF 5BSHFU(SPVQ "QQMJDBUJPO-PBE#BMBODFS 5BSHFU(SPVQ#JOEJOH 4FSWJDF 1PE
-JTUFS3VMF 5BSHFU(SPVQ 4FSWJDF 1PE ˞5BSHFU5ZQF͕JQͷ߹ʹ5(͔Β1PEͷ*1ΞυϨε͕ࢦఆ͞ΕΔ 4FDVSJUZ (SPVQ 3PVUF 5BSHFU(SPVQ#JOEJOH3FTPVSDFΛ༻ͨ͠Ϧιʔεͷཧ "$. πʔϧͷཧରͷڥք͕͔Γ͘͢ͳͬͨ👍
"84-PBE#BMBODFS$POUSPMMFSͷ·ͱΊ • 5BSHFU(SPVQ#JOEJOH3FTPVSDFͰ5FSSBGPSNͱ,VCFSOFUFTͷڥք Λ໌֬ʹ ◦ ࠓճͷΑ͏ͳߏͰӡ༻͍ͯ͠Δ߹ʹͱͯศར • "84"-#*OHSFTT$POUSPMMFS͔ΒͷϚΠάϨʔγϣϯ؆୯ ◦ WҎ্ޙํޓੑ͕อͨΕ͍ͯΔͷͰεϜʔζʹϚΠάϨʔ
γϣϯՄೳ ◦ ͨͩ͠Ұ෦੍͕͋ΔͨΊυΩϡϝϯτཁ֬ೝ
*OHSFTT$POUSPMMFSͷΈ߹Θͤ
"-#Ͱ՝ʹͳͬͨͱ͜Ζ BXTMPBECBMBODFSDPOUSPMMFSʹΑΓΠΠײ͡ʹϦιʔεΛཧͰ͖ΔΑ͏ʹ ͳΓ·͕ͨ͠ɺ"-# *OHSFTT ͚ͩͰগ͠ෆ҆ͳ෦͕͋Γ·ͨ͠ /'4 TTITFSWFS 1PE 1)1"QQ 4FSWJDF
UZQF-PBE#BMBODFS *OHSFTT 44)ϩάΠϯͯ͠ίʔυΛฤू 7PMVNF.PVOU IPNF\VTFS^SFUUZJOEFYQIQ ϢʔβYαʔϏεຖʹ࡞͞ΕΔϦιʔε 4FSWJDF WBSXXXIUNMJOEFYQIQ TTITFSWFSͰฤूͨ͠ίʔυΛ7PMVNF.PVOU IUUQTEFW\VTFS^TFSWJDFSFUUZNF ͷΑ͏ͳ63-ʹΞΫηεͯ֬͠ೝ
"-#Ͱ՝ʹͳͬͨͱ͜Ζ BXTMPBECBMBODFSDPOUSPMMFSʹΑΓΠΠײ͡ʹϦιʔεΛཧͰ͖ΔΑ͏ʹ ͳΓ·͕ͨ͠ɺ"-# *OHSFTT ͚ͩͰগ͠ෆ҆ͳ෦͕͋Γ·ͨ͠ /'4 TTITFSWFS 1PE 1)1"QQ 4FSWJDF
UZQF-PBE#BMBODFS *OHSFTT 44)ϩάΠϯͯ͠ίʔυΛฤू 7PMVNF.PVOU IPNF\VTFS^SFUUZJOEFYQIQ ϢʔβYαʔϏεຖʹ࡞͞ΕΔϦιʔε 4FSWJDF WBSXXXIUNMJOEFYQIQ TTITFSWFSͰฤूͨ͠ίʔυΛ7PMVNF.PVOU IUUQTEFW\VTFS^TFSWJDFSFUUZNF ͷΑ͏ͳ63-ʹΞΫηεͯ֬͠ೝ
"-#Ͱ՝ʹͳͬͨͱ͜Ζ ։ൃऀͦΕͧΕԼهͷΑ͏ͳܗࣜͰಠཱͨ͠ڥΛ͓࣋ͬͯΓɺϗετ໊ ͰόοΫΤϯυΛৼΓ͚͍ͯ·͢ɻ IUUQT\VTFS^\TFSWJDF^GPPSFUUZNF ˞ܗࣜࣅ͍ͯ·্͕͢هͷϗετ໊Սۭͷͷ ։ൃऀ αʔϏε "-#ʹొͰ͖Δϧʔϧͷ্ݶ EFGBVMU ͩͱΓͳ͘ͳΓͦ͏ʜ
LVCFSOFUFTJOHSFTT /(*/9 ˞ϗετ໊Սۭͷͷ Kubernetes 1PE BMJDFSFUUZ *OHSFTT BMJDFSFUUZ 4FSWJDF BMJDFSFUUZ
1PE OHJOYJOHSFTT 1PE CPCSFUUZ *OHSFTT CPCSFUUZ 4FSWJDF CPCSFUUZ BMJDFSFUUZGPPSFUUZNF CPCSFUUZGPPSFUUZNF "QQMJDBUJPO -PBE#BMBODFS GPPSFUUZNF Ұ୴ͯ͢ͷϦΫΤετΛ"-#Ͱड͚ͯͦͷ··/(*/9ʹྲྀ͠ɺ࣮ࡍͷ ϗετϕʔεͷϧʔςΟϯά/(*/9ଆͰߦ͏ "-#Λ׆༻ͭͭ͠"-#ͷ੍Λճආ͢Δ͜ͱ͕Ͱ͖ͨ👍 "$. 44-5FSNJOBUJPO
LVCFSOFUFTJOHSFTT /(*/9 ͷ·ͱΊ • ػೳ͕Γͳ͍࣌ෳͷ*OHSFTT$POUSPMMFSΛΈ߹Θͤͯྑ͍ͱ͜ औΓ͢ΔબࢶΞϦ ◦ *OHSFTT$POUSPMMFSʹΑͬͯͦΕͧΕ͑Δػೳ͕ҟͳΔͷͰཁ݅ ʹ߹Θͳ͍έʔεෳ͏બࢶ ▪
,VCFSOFUFT*OHSFTT$POUSPMMFST4QSFBE4IFFUT ◦ ,VCFSOFUFT্Ͱ*OHSFTT$MBTT ˞ Λ༻͍͚ͯ͠Մೳ • ͨͩ͠વཧ͢Δର͕૿͑ΔͨΊͦͷҙ ˞*OHSFTTDMBTTIUUQTLVCFSOFUFTJPEPDTDPODFQUTTFSWJDFTOFUXPSLJOHJOHSFTTJOHSFTTDMBTT
ར༻ऀ૿Ճʹ͏ϢʔβཧͷࡶԽ
ϢʔβՃ࡞ۀ ৽͘͠։ൃڥ Ϣʔβ ΛՃ͢Δ࣌ͷखॱ͜Μͳײ͡Ͱͨ͠ ͓खͷ3VCZεΫϦϓτͰ:".-ϑΝΠϧΛੜ͠BQQMZ B Ұ෦ͷΛग़͚͠ΔͨΊʹઃఆ༻ͷKTPOϑΝΠϧΛ৯Θ͍ͤͯͨ C ʮಛఆͷ݅Ͱ͜ͷΛग़͢ʯͳͲগ͠ෳࡶͳॲཧ͕͋ͬͨ
44)αʔό্Ͱ͓खͷDSFBUF@VTFSTIΛ༻ͯ͠44)ϢʔβΛՃ શ෦୲ऀ͕ϩʔΧϧڥͰख࡞ۀ😇 ϛεى͜Δ͠ϨϏϡʔͰ͖ͳ͍ͷͰͳΜͱ͔͍ͨ͠ʜ
"OTJCMFLTNPEVMF Ansible k8s module ͱʁ🤔 • ,VCFSOFUFT্ͷϦιʔεΛཧ͢ΔͨΊͷϞδϡʔϧ OPU&,4 •
௨ৗͷ"OTJCMFͱಉ͡Α͏ʹ+JOKBςϯϓϨʔτ͕͑Δ ◦ XIFOJGGPSͳͲ͑ΔͷͰෳࡶͳͷग़͚͕͠Մೳ IUUQTHJUIVCDPNBOTJCMFDPMMFDUJPOTDPNNVOJUZLVCFSOFUFT
"OTJCMFLTNPEVMF "OTJCMFͳͷͰ+JOKBςϯϓϨʔτ͕͑Δʜʂ
"OTJCMFLTNPEVMF "OTJCMFͳͷͰJG͕͑Δʜʂ • ྫ͑νʔϜ"ͷϝϯόʔʹ"1*,FZ " Λઃఆ͍ͨ͠߹ͳͲ
"OTJCMFLTNPEVMF ݱࡏԼهͷΑ͏ʹมϑΝΠϧʹ໊લͱඞཁͳڥΛॻ͖͚ͩ͢ͰՃՄೳ ։ൃڥՃআͷ࡞ۀ࣌ؒख͕ܹؒݮͨ͠👍 • OBNF ։ൃऀ໊ ◦ 63-Ϧιʔεͷࣝผࢠ •
HJUIVC (JU)VCΞΧϯτ໊ ◦ 44)αʔόͷެ։ݤऔಘ༻ ◦ IUUQTHJUIVCDPN\VTFSOBNF^LFZT • NJTTJPO@UZQF ෦ॺ໊ ◦ Ұ෦ͷͷग़͚͠ʹ༻ • TFSWJDFT Ճ͢ΔαʔϏε໊ ◦ ෳͰҰ෦ͰՄ
"OTJCMFLTNPEVMFͷ·ͱΊ • ࠓճͷΑ͏ͳέʔεͰ"OTJCMFLTNPEVMF͕Ϛον͍ͯͨ͠ ◦ ,VCFSOFUFTϦιʔεͷૢ࡞ 44)αʔό্Ͱͷૢ࡞ͳͲ ◦ ͨͩ͜Ε͔ͳΓϨΞέʔεͳؾ͕͢Δ • ҰํͰେͷέʔεͰগ͠ॏ͗͢ΔΑ͏ͳؾʜ
◦ ྫ֤͑σϓϩΠεςʔδͰΛग़͚͠ΔͳΒLVTUPNJ[F )FMNͰेͦ͏
։ൃ༻%#ͷӡ༻ࣗಈԽ
։ൃ༻%#ʹ͍ͭͯ • "NB[PO"VSPSBͷεφοϓγϣοτػೳΛͬͯຊ൪%#͔Βෳ ◦ σʔλͷΛอ͍ͪͨͷͰ݄ʹߋ৽ ◦ ಠཱͨ͠ΠϯελϯεͰ͋ΔͨΊຊ൪ʹӨڹΛ༩͑ͳ͍ • ݸਓใʹ֘͢ΔσʔλϚεΩϯά ◦
ϝʔϧΞυϨεి൪߸ͳͲͦͷ··Ͱͤͳ͍ ◦ ෆཁͳςʔϒϧ536/$"5&͠ɺ։ൃ༻ʹඞཁͳσʔλ 61%"5&ΛͬͯμϛʔͷʹϚεΩϯά
DSFBUF@EFW@ECTI ຊ൪ͷεφοϓγϣοτ͔Β3%4ΛϦετΞ σʔλͷϚεΩϯά 536/$"5&61%"5& ։ൃ༻%#ͷ%/4ϨίʔυΓସ͑
ߋ৽લͷ3%4Λআ ࠓ·Ͱͷߋ৽ํ๏ • ൿͷεΫϦϓτDSFBUF@EFW@ECTIΛ୲ऀ͕खݩͰ࣮ߦ͍ͯͨ͠ ◦ #BTI "84$-* ◦ ௨ͳ͍ͷͰλʔϛφϧΛݟͯਐ֬ೝ ◦ ԿΒ͔ͷཧ༝Ͱࣦഊ͢Δ࣌Α͋͘Δ ͦͷࡍ࠷ॳ͔ΒΓ͠😇 ͔͔࣌ؒͬͯͭΒ͍ʜ
"844UFQ'VODUJPOTͰղܾͰ͖ΔͷͰʁ
"844UFQ'VODUJPOT • -BNCEBͳͲͷ֤छ"84αʔϏεͰϫʔΫϑϩʔ͕࡞ΕΔαʔϏε • ݅ذฒྻॲཧϧʔϓͳͲΛ࣮ݱͰ͖Δ • ʮঝೝ͢Δ·ͰಛఆͷॲཧΛػʯͳͲΈࠐΊΔ "844UFQ'VODUJPOTͱʁ🤔 IUUQTBXTBNB[PODPNKQTUFQGVODUJPOT
"844UFQ'VODUJPOT εφοϓγϣοτΛ࡞ B ྃ·Ͱػ 4MFFQ -PPQ εφοϓγϣοτ͔ΒΠϯελϯεΛϦετΞ
B ྃ·Ͱػ 4MFFQ -PPQ ϚεΩϯά42-Λྲྀ͢ B %#"ͳΒ%#"༻ͷ42-Λྲྀ͢ *G DSFBUF@EFW@ECTIͷஔ͖͑ʹͪΐ͏Ͳ͍͍ͷͰʁ
։ൃ༻%#ࣗಈߋ৽ϫʔΫϑϩʔ &WFOU#SJEHF DSPO 4UFQ'VODUJPOT -BNCEB ݺͼग़͠ ຊ൪3%4 ։ൃ༻3%4 4MBDL ֤छ௨
3PVUF ݄Ͱ࣮ߦ εφοϓγϣοτऔಘ ϦετΞϚεΩϯά ϨίʔυΓସ͑
࡞࣌ͷϙΠϯτ • -BNCEBࡉ͔۠ͬͯ͘࡞ ◦ 3%4ͷεςʔλεऔಘεφοϓγϣοτऔಘϚεΩϯάͳͲ ◦ -BNCEBͷ࣮ߦ੍࣌ؒݶ ͋Δ
࡞࣌ͷϙΠϯτ • ϦτϥΠͰ͖ΔΑ͏ʹ͓ͯ͘͠ ◦ 4UFQ'VODUJPOTͷ3FUSZϑΟʔϧυͰϦτϥΠઃఆ͕Մೳ ▪ -BNCEBͷىಈࣦഊ࣌ͳͲΑ͠ͳʹ࠶࣮ߦͯ͘͠ΕΔ ▪ ༧Ί-BNCEBଆͰ࠶࣮ߦ͞ΕΔ͜ͱΛߟྀͨ͠ίʔυΛॻ͘
ಋೖͯ͠Έͯ • 4UFQ'VODUJPOTͰΤϥʔϋϯυϦϯάͰ͖Δͷ͕ͱͯྑ͍ ◦ ྫ͑ಛఆͷ-BNCEBͷ্ཱͪ͛ʹࣦഊ͚ͨ࣌ͦͩ͜͠ΓͤΔ • αʔόϨεͳͷͰӡ༻ෛՙ͕গͳ͍ • DSFBUF@EFW@ECTI͕ඞཁͳ͘ͳͬͨ ◦
ͨΓલ͚ͩͲҰ൪େ͖͍ ◦ ͦͦ͜͜ͷසͰࣦഊ͢ΔͷͰׂͱӡ༻ෛՙ͕ߴ͔ͬͨʜ ಋೖͯ͠ΈͯΑ͔ͬͨ͜ͱ
͋Γ͕ͱ͏͍͟͝·ͨ͠