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
ControlPlane のいない Kubernetes クラスタを作る
Search
Sponsored
·
Your Podcast. Everywhere. Effortlessly.
Share. Educate. Inspire. Entertain. You do you. We'll handle the rest.
→
Kentaro
September 02, 2025
180
1
Share
ControlPlane のいない Kubernetes クラスタを作る
Kubernetes 上に ControlPlane の各コンポーネントを載せ、kubeadm で join させることにより、ControlPlane をマネージドにしたお話です
Kentaro
September 02, 2025
More Decks by Kentaro
See All by Kentaro
Recap - 認可の標準仕様「AuthZEN」
beah_s1
1
460
ClusterAPI on Proxmoxを実装してみた(進捗僅少)
beah_s1
2
400
おうちk8sクラスタのための外部ロードバランサーを用意した話
beah_s1
0
140
〜もう迷子にならない!〜BLEビーコンで屋内GPS、そこで犯した過ち
beah_s1
0
200
レシートプリンタのSDKが充実してたことを語りたい話
beah_s1
0
790
Featured
See All Featured
GraphQLとの向き合い方2022年版
quramy
50
15k
Embracing the Ebb and Flow
colly
88
5.1k
WENDY [Excerpt]
tessaabrams
11
37k
技術選定の審美眼(2025年版) / Understanding the Spiral of Technologies 2025 edition
twada
PRO
118
120k
[RailsConf 2023 Opening Keynote] The Magic of Rails
eileencodes
31
10k
Evolution of real-time – Irina Nazarova, EuRuKo, 2024
irinanazarova
9
1.3k
Git: the NoSQL Database
bkeepers
PRO
432
67k
Faster Mobile Websites
deanohume
310
31k
Building Adaptive Systems
keathley
44
3k
Save Time (by Creating Custom Rails Generators)
garrettdimon
PRO
32
3.2k
Practical Tips for Bootstrapping Information Extraction Pipelines
honnibal
25
1.9k
Producing Creativity
orderedlist
PRO
348
40k
Transcript
גࣜձࣾαΠόʔΤʔδΣϯτѨ෦ݡଠ $POUSPM1MBOFͷ͍ͳ͍ ,VCFSOFUFTΫϥελΛ࡞Δ !,VCFSOFUFT.FFUVQ5PLZP
Ѩ෦ݡଠ!,"+1 ˙ॴଐ גࣜձࣾαΠόʔΤʔδΣϯτ $ZCFS"HFOUHSPVQ*OGSBTUSVDUVSF6OJU ˙ීஈ͍ͬͯΔ͜ͱ ͚ࣾͷ,BB4ج൫ͷ։ൃɾӡ༻ ˙झຯ ࣗαʔόʔɾ:PV5VCFͷྲྀ͠ݟɾΫϥ Ϧωοτ َ໓ͷਕΛࠓߋཤम🫠
ࣗݾհ
w ϕΞϝλϧͷ,VCFSOFUFT্Ͱ0QFO4UBDLΛ ߏங w PQFOTUBDLIFMNΛ͏ͱɺ֤छίϯϙʔ ωϯτΛָΊʹσϓϩΠͰ͖Δ w Λ$/ʹׂΓͯ w ͦͷ্ʹɺ$MVTUFS"1*Ͱ,VCFSOFUFTΫϥε
λΛߏங w ଞʹɺ71/༻ͷ7..JOFDSBGUαʔό ʔ͕Քಇ w ཧճઢࣗͱڞ༗ͭͭ͠ɺ-"/ಠཱ ࣗαʔόʔͷ͝հ
$POUSPM1MBOFͷ͍ͳ͍ ,VCFSOFUFTΫϥελ
🤔
7.ͳΔ͘ένΓ͍ͨ w $/ʹͰ͖ΔϚγϯݶΒΕΔ w ͳΔ͘Φʔόʔίϛοτͨ͘͠ͳ͍ͨΊ ५ͳίΞɾϝϞϦ༰ྔ w ϒʔτσΟεΫΛஔ͘͜ͱ͕Ͱ͖Δ͚ͩͷετϨʔδ༰ྔ w ͍͘Β$POUSPM1MBOFͱ͍͑Ͳ
Θ͟Θ͟7.Λ࡞ͨ͘͠ͳ͍ w 8PSLFS/PEFʹͰ͖Δ͚ͩϑϧϕοτ͍ͨ͠
ऍᷟʹઆ๏Ͱ͕͢ɾɾɾ w $POUSPM1MBOFʹҎԼͷΑ͏ͳίϯϙʔ ωϯτ͕Δ w LVCFBQJTFSWFS w FUDE w LVCFTDIFEVMFS
w DPOUSPMMFSNBOBHFS w ݴ͏·Ͱͳ͘ ͍ͣΕඞਢίϯϙʔω ϯτͰ͋Γɺͳ͍ͱΫϥελ͕Γཱͨͳ ͍ Ұൠతʹ IUUQTLVCFSOFUFTJPEPDTDPODFQUTPWFSWJFXDPNQPOFOUTΑΓ
w (,&ͳͲͰ࡞ͨ͠ΫϥελͰk get node͠ ͨࡍɺ$POUSPM1MBOFΛSPMFʹ࣋ͭϊʔυ͕͍ͳ ͍ w (,&Ͱɺ(PPHMF͕$POUSPM1MBOFͷίϯϙʔ ωϯτΛཧ͢Δ w
ͳͷͰɺϢʔβʔͷϓϩδΣΫτ͔Βݟ͑ͳ ͍ w ҎԼͷ௨৴͕Ͱ͖ΕɺϊʔυͷଘࡏࣗମΘ Εͳͦ͞͏ w "1*4FSWFS ↔︎ LVCFMFU w ֤छίϯϙʔωϯτˠ"1*4FSWFS ҰํͰ IUUQTDMPVEHPPHMFDPNLVCFSOFUFTFOHJOFEPDTDPODFQUTDMVTUFSBSDIJUFDUVSF IMKBΑΓ
ߏํ w $POUSPM1MBOFʹ͍Δ͖ίϯϙʔωϯτ͕ಈ͘ઐ༻ͷΫϥελΛ࡞ w Ϋϥελ͝ͱʹҎԼͷίϯϙʔωϯτΛσϓϩΠ w FUDE w LVCFBQJTFSWFS w
LVCFTDIFEVMFS w DPOUSPMMFSNBOBHFS w 8PSLFS/PEF͔Βkubeadm joinͰ͖ΔΑ͏ʹ͢Δ w $MVTUFS"1*1SPWJEFSԽ͢Δͱ͖ʹɺͳΔ͘$"#1,Λྲྀ༻͍ͨ͠
w DFSUNBOBHFSͰඞཁͳূ໌ॻ Λ࡞Δ w ,VCFSOFUFT$" w FUDE$" w GSPOUQSPYZ$" w
,VCFSOFUFTUIF)BSEXBZ ,VCFSOFUFT%PDTࢀߟʹ ূ໌ॻΛ࡞Δ IUUQTLVCFSOFUFTJPKBEPDTTFUVQCFTUQSBDUJDFTDFSUJ fi DBUFTΑΓ
FUDE w 4UBUFGVM4FUͰ࡞ w ϗετ໊ΛݻఆͰ͖Δ w σʔλӬଓ༻ʹ17$Λ௫Ή w ͜ͷลΓΛΦϓγϣϯͰઃఆ w
ϗετ໊ w ূ໌ॻؔͷઃఆ w ΫϥελΛΉ63- ίϯϙʔωϯτͷߏ
LVCFBQJTFSWFS w #PPUTUSBQ5PLFOͰೝূͰ͖Δ Α͏ʹઃఆ͢Δ w ޙͰLVCFBEN͔ΒKPJO͍ͨ͠ ͨΊ w 4FSWJDF"DDPVOUͷ伴ϖΞखಈ Ͱ࡞ͬͨ
w ͜ΕͲ͏͢Ε͍͍Μ ͩɾɾɾʁݟ͋Ε🙇 ίϯϙʔωϯτͷߏ
DPOUSPMMFSNBOBHFS w LVCFDPO fi HΛखಈͰ࡞Δඞཁ͕ ͋Δ w ৄࡉޙड़ w #PPUTUSBQ5PLFOपΓ͕ѻ͑Δ
Α͏ʹDPOUSPMMFSΛՃ w #PPUTUSBQ5PLFOΛ࡞ͨ͠ ࡍʹɺͦΕʹରԠ͢Δ+84Λ ࡞ͯ͘͠ΕΔΑ͏ʹͳΔ ίϯϙʔωϯτͷߏ
LVCFTDIFEVMFS w LVCFDPO fi HΛखಈͰ࡞Δඞཁ͕ ͋Δ w ৄࡉޙड़ w BQJTFSWFSDPOUSPMMFSNBOBHFS
ʹൺΔͱ͔ͳΓ͋ͬ͞Γ ίϯϙʔωϯτͷߏ
w ূ໌ॻΛ࡞ ͦͷূ໌ॻΛݩ ʹLVCFDPO fi HΛ࡞ w ͜ͷล$POUSPMMFSͰ͍͍ײ͡ ʹ͍͔ͨ͠ LVCFDPO
fi HपΓ
w ֎෦͔ΒΞΫηεͤ͞ΔͨΊͷ ϩʔυόϥϯαʔઃఆ w ,VCFSOFUFT্ͷ1PEͷͨΊ type: LoadBalancer 4FSWJDFΛ࡞ΕΑ͍ BQJTFSWFSͷ-#
LVCFBENಛ༗ͷઃఆ w ,VCFSOFUFT5IF)BSE8BZͰɺखಈͰূ໌ॻΛ࡞ΓɺLVCFMFUʹט·ͤΔઃఆΛೖΕ Δ w kubeadm token createͰ࡞ͨ͠#PPUTUSBQ5PLFOͰΫϥελʹࢀՃ͢Δ߹ɺ ͏গ͠ઃఆ͕ඞཁ w
ূ໌ॻΛࢀর͢Δݖݶ ূ໌ॻΛ%JTDPWFSͰ͖Δঢ়ଶʹ͢Δ w /PEFϦιʔεΛࢀর͢Δݖݶ w &UDʜ w LVCFBENͷιʔείʔυΛࢀর࣮ͭͭ͠
w #PPUTUSBQ5PLFO͜ͷΑ͏ͳ NBOJGFTUͰߏ͞ΕΔ w +PJOͷͱ͖ʹࢦఆ͢Δ5PLFO <token-id>.<token-secret> Ͱߏ͞ΕΔ w খจࣈӳͰߏ ܻ͑͞क
͍ͬͯΕࣗ༝ʹ࡞ͬͯΑͦ͞ ͏ #PPUTUSBQ5PLFO system:bootstrappers:kubeadm:default-node-token true
ূ໌ॻपΓ w LVCFMFU͕௫Ήূ໌ॻͷ$43Λ ࡞Ͱ͖ΔΑ͏ʹ͢Δ ࣗಈঝ ೝͰ͖ΔΑ͏ʹ͢Δ w ࡞ͨ͠/PEF͕SPUBUJPOͰ͖ ΔΑ͏ʹ͢Δ 3#"$ͷઃఆ
/PEFपΓ w /PEFϦιʔεΛHFUͰ͖ΔΑ ͏ʹ͢Δ 3#"$ͷઃఆ
$PO fi HपΓ w $MVTUFS$PO fi H,VCFMFU$PO fi H Λ%JTDPWFSͰ͖ΔΑ͏ʹ͢Δ
3#"$ͷઃఆ
͜͜·Ͱઃఆͯ͠ kubeadm join ͢Δͱ🎉 ˞$/*ͷΠϯετʔϧผ్ඞཁ
1SPT w ͍ίετͰ$POUSPM1MBOFΛϚωʔδυʹͰ͖Δ w ,VCFSOFUFTΫϥελ্ʹ$POUSPM1MBOF$PNQPOFOUTΛσϓϩΠͰ͖Δ w 7.Λ࡞Βͳͯ͘Α͍ w ίϯςφͷ߹$POUSPM1MBOFͷ্ཱ͍ͪ͛ w
$POUSPM1MBOFΛݟͤͳ͍͜ͱͰɺϢʔβʔͷೝෛՙԼ͕Δ w ϩʔυόϥϯαʔͷઃఆɺূ໌ॻཧͳͲΛ,VCFSOFUFT"1*্Ͱߦ͑Δͷخͦ͠͏ w ಛʹূ໌ॻͷߋ৽पΓ উखʹߋ৽ͯ͠͠·͏ͷߟ͑ͷ͕ͩ
$POT w $POUSPM1MBOF1SPWJEFSͷࣗ࡞͕ඞཁ w *OGSBTUSVDUVSF1SPWJEFSͱҧ͍ɺݟগͳͦ͏ w ϊΠδʔωΠόʔͷӨڹΛड͚ͦ͢͏ w Ϣʔβʔ͝ͱʹϦιʔεΛಠཱͤ͞Δ͜ͱͰղܾͰ͖Δ w
αʔϏεఏڙऀଆͷཧίετߴ͍ w ϢʔβʔͷܭࢉࢿݯͰಈ͔͍ͯͨ͠ͷΛαʔϏεఏڙऀଆʹدͤΔͨΊɺӡ༻ අ༻ͷ҈ʹӨڹ͕🥹