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
510
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
500
Renovate ではじめる運用レスなライブラリ更新 / 令和最新版 他人に自慢したいヤバいCI/CD LT会 @ yabaibuki.dev #2
ponkio_o
PRO
1
220
Amazon ECS で作るスケーラブルなセルフホストランナー / GitHub Actions Meetup Tokyo #4
ponkio_o
PRO
2
750
業務で使えるかもしれない…!?GitHub Actions の Tips 集 / CI/CD Test Night #7
ponkio_o
PRO
43
17k
aqua で始める CI-Friendly なツール管理
ponkio_o
PRO
3
1.1k
set-terraform-matrix という Actions を作った / set-terraform-matrix-actions
ponkio_o
PRO
0
500
NGINX Ingress Controller を活用した Retty のサービス開発とモニタリング / NGINX ユーザー会 2022 春
ponkio_o
PRO
0
180
Retty における Signal Sciences の導入事例 / Fastly Yamagoya 2021
ponkio_o
PRO
0
4.3k
Terraform における秘匿情報管理 / Credentials management in Terraform
ponkio_o
PRO
0
360
Other Decks in Technology
See All in Technology
2025年に挑戦したいこと
molmolken
0
160
DMMブックスへのTipKit導入
ttyi2
1
110
re:Invent 2024のふりかえり
beli68
0
110
いま現場PMのあなたが、 経営と向き合うPMになるために 必要なこと、腹をくくること
hiro93n
9
7.7k
ドメイン駆動設計の実践により事業の成長スピードと保守性を両立するショッピングクーポン
lycorptech_jp
PRO
12
2.1k
WantedlyでのKotlin Multiplatformの導入と課題 / Kotlin Multiplatform Implementation and Challenges at Wantedly
kubode
0
250
[IBM TechXchange Dojo]Watson Discoveryとwatsonx.aiでRAGを実現!事例のご紹介+座学②
siyuanzh09
0
110
RubyでKubernetesプログラミング
sat
PRO
4
160
.NET AspireでAzure Functionsやクラウドリソースを統合する
tsubakimoto_s
0
190
comilioとCloudflare、そして未来へと向けて
oliver_diary
6
440
dbtを中心にして組織のアジリティとガバナンスのトレードオンを考えてみた
gappy50
0
270
.NET 最新アップデート ~ AI とクラウド時代のアプリモダナイゼーション
chack411
0
200
Featured
See All Featured
The Power of CSS Pseudo Elements
geoffreycrofte
74
5.4k
Creating an realtime collaboration tool: Agile Flush - .NET Oxford
marcduiker
26
1.9k
GraphQLの誤解/rethinking-graphql
sonatard
68
10k
Exploring the Power of Turbo Streams & Action Cable | RailsConf2023
kevinliebholz
28
4.5k
Facilitating Awesome Meetings
lara
51
6.2k
The Success of Rails: Ensuring Growth for the Next 100 Years
eileencodes
44
7k
Put a Button on it: Removing Barriers to Going Fast.
kastner
60
3.6k
Measuring & Analyzing Core Web Vitals
bluesmoon
5
210
Cheating the UX When There Is Nothing More to Optimize - PixelPioneers
stephaniewalter
280
13k
CoffeeScript is Beautiful & I Never Want to Write Plain JavaScript Again
sstephenson
160
15k
Scaling GitHub
holman
459
140k
Reflections from 52 weeks, 52 projects
jeffersonlam
348
20k
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͕ඞཁͳ͘ͳͬͨ ◦
ͨΓલ͚ͩͲҰ൪େ͖͍ ◦ ͦͦ͜͜ͷසͰࣦഊ͢ΔͷͰׂͱӡ༻ෛՙ͕ߴ͔ͬͨʜ ಋೖͯ͠ΈͯΑ͔ͬͨ͜ͱ
͋Γ͕ͱ͏͍͟͝·ͨ͠