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
Kubernetes the hard way revisited 〜ゼロダウンタイムクラスタ移行から学ぶクラスタ構築の仕組み〜
Search
LY Corporation Tech
PRO
December 10, 2023
Technology
2
320
Kubernetes the hard way revisited 〜ゼロダウンタイムクラスタ移行から学ぶクラスタ構築の仕組み〜
CloudNative Days Tokyo 2023 での登壇資料です
LY Corporation Tech
PRO
December 10, 2023
Tweet
Share
More Decks by LY Corporation Tech
See All by LY Corporation Tech
MLOpsの「壁」を乗り越える、LINEヤフーの Data Quality as Code
lycorptech_jp
PRO
8
620
検証を通して見えてきたTiDBの性能特性
lycorptech_jp
PRO
7
3.9k
Yahoo! 知恵袋フロントエンドをリアーキテクトしている話
lycorptech_jp
PRO
3
290
UIコンポーネント Vue3マイグレーション体験記
lycorptech_jp
PRO
0
190
スタンプショップの推薦枠に2-stage制を導入した事例紹介
lycorptech_jp
PRO
1
110
Head toward Java 22 and Java 23
lycorptech_jp
PRO
1
170
データ品質をコード化! LINEヤフーのMLOpsを最適化する "ACP Data Quality" の紹介
lycorptech_jp
PRO
5
1.2k
年度末の振り返り!テクニカルライターは成果をどうアピールすべきか
lycorptech_jp
PRO
1
70
差分プライバシーによる 安全な連合学習の実現
lycorptech_jp
PRO
5
1k
Other Decks in Technology
See All in Technology
【SORACOM UG 東海】あらゆるモノがつながる社会へ、IoT と SORACOM
soracom
PRO
1
140
今さら聞けないDocker入門 〜 Dockerfileのベストプラクティス編
devops_vtj
1
170
MapLibreとAmazon Location Service
dayjournal
1
190
リテール金融(キャッシュレス・ネット銀行・ネット証券)の競争環境と経済圏
8maki
0
1.6k
開発パフォーマンスを最大化するための開発体制
ham0215
7
1.1k
EMとして2023年度に頑張ったこと / What we did well in FY2023 as a EM
pauli
1
250
いいたいことちゃんという
tkengo
0
230
LayerXにおけるLLMプロダクト開発の今までとこれから
layerx
PRO
4
690
地理空間データ可視化・解析・活用ソリューション Pacific Spatial Solutions (PSS)
pacificspatialsolutions
0
330
ルーターでプレゼンする
puhitaku
1
3.3k
非同期推論システムによるコスト削減と信頼性向上
koki_nishihara
1
360
Next.js に疲れた私は Vue3 に癒やされた
akagire
0
140
Featured
See All Featured
Understanding Cognitive Biases in Performance Measurement
bluesmoon
11
1k
Fantastic passwords and where to find them - at NoRuKo
philnash
39
2.5k
Building Effective Engineering Teams - LeadDev
addyosmani
31
1.9k
Large-scale JavaScript Application Architecture
addyosmani
504
110k
How to Ace a Technical Interview
jacobian
273
22k
Principles of Awesome APIs and How to Build Them.
keavy
121
16k
The Cost Of JavaScript in 2023
addyosmani
20
3.9k
Exploring the Power of Turbo Streams & Action Cable | RailsConf2023
kevinliebholz
7
3.4k
What's new in Ruby 2.0
geeforr
337
31k
KATA
mclloyd
16
12k
Building a Scalable Design System with Sketch
lauravandoore
457
32k
"I'm Feeling Lucky" - Building Great Search Experiences for Today's Users (#IAC19)
danielanewman
221
21k
Transcript
-:$PSQPSBUJPO -*/&Ϡϑʔגࣜձࣾ ޒాਖ਼ଠ ,VCFSOFUFTUIFIBSEXBZSFWJTJUFE ʙθϩμϯλΠϜΫϥελҠߦ͔ΒֶͿΫϥελߏஙͷΈʙ
-:$PSQPSBUJPO • ޒా ਖ਼ଠ ˏTHPUBOE • -*/&Ϡϑʔגࣜձࣾ ιϑτΣΞΤϯδχΞ • ϓϥΠϕʔτΫϥυ7FSEBͷ,BB4։ൃʹैࣄ
• -*/&גࣜձࣾ ࣌ ʹೖࣾɺҎདྷݱ৬ • ,VCFDPO /"Ͱొஃ • “Leveraging Cluster-API for Production-Ready Multi-Regional Infrastructures” ࣗݾհ
-:$PSQPSBUJPO ,VCFSOFUFTUIFIBSEXBZSFWJTJUFEʙθϩμϯλΠϜΫϥελҠߦ͔ΒֶͿΫϥελߏஙͷΈʙ ຊϓϨθϯ͔ΒֶΔ͜ͱ • ,VCFSOFUFTΫϥελͷجຊߏͱٕज़ཁૉ • ΫϥελΛແఀࢭͰҠߦ͢ΔͨΊͷέʔεελσΟ
-:$PSQPSBUJPO ࣭ ,VCFSOFUFTΫϥελʔ࡞ͬͨ͜ͱ͋Γ·͔͢ʁ
-:$PSQPSBUJPO • ύϒϦοΫΫϥυ&,4 (,& ",4 • اۀ͚3FE)BU 0QFOTIJGU 7.XBSF5BO[V •
ΦϯϓϨϛε,VCFBEN ,VCFTQSBZ LPQT LJOE .JOJLVCF • ͦͷଞ,VCFSFOFUFT UIF )BSE 8BZ ,VCFSOFUFTσΟετϦϏϡʔγϣϯ
-:$PSQPSBUJPO • 7FSEB0QFOTUBDL ϕʔεͷࣾΫϥυ • 7FSEB ,VCFSOFUFT4FSWJDF 7,4 • ॳظ3BODIFSΛGPMLͯ͠։ൃ
• ݱࡏ $MVTUFS"1* ,VCFBEN ͱҠߦத 7FSEBͰͷ,VCFSOFUFTσΟετϦϏϡʔγϣϯ ˞ຊεϥΠυͰ3BODIFSͱݴٴ͢Δࡍɺ'PSLͨ͠ͷΛࢦ͠·͢ɻΞοϓετϦʔϜͱҰகੑอূ͠·ͤΜ
-:$PSQPSBUJPO • ӡ༻ऀࢹ • ෳͷσΟετϦϏϡʔγϣϯΛཧ͢Δͷਏ͍ • ΫϥελͷҠߦΛਐΊ͍ͨ • ར༻ऀࢹ •
طଘͷΫϥελΛ͍ଓ͚͍ͨ • ΫϥελΛ࡞Γͨ͘͠ͳ͍ • ඪطଘͷΫϥελΛಈ͔ͨ͠··Ҡߦ͢Δ 3BODIFS͔Β$MVTUFS"1*,VCFBENͷҠߦ
-:$PSQPSBUJPO ,VCFSOFUFT UIF )BSE 8BZ
-:$PSQPSBUJPO • ֶश༻σΟετϦϏϡʔγϣϯ • ֤ίϯϙʔωϯτΛखಈͰઃఆɾߏங • FUDE • LVCFBQJTFSWFS •
LVCFDPOUSPMMFSNBOBHFS • LVCFTDIFEVMFS • LVCFMFU • LVCFQSPYZ ,VCFSOFUFTUIFIBSEXBZͱ https://github.com/kelseyhightower/kubernetes-the-hard-way
-:$PSQPSBUJPO • ΫϥυϦιʔε࡞ • $POUSPM1MBOF༻7. • ,VCFSOFUFT"1*༻ *1ΞυϨε • 8PSLFS༻7.
• ʜ • ຊՈ($1͕ͩɺੜ൛͋Δ • "84 • MJCWJSULWN • ʜ ,5)8෮शɿϦιʔεͷ࡞ IP address for apiserver VM VM worker-* (VM) https://github.com/kelseyhightower/kubernetes-the-hard-way/blob/master/docs/03-compute-resources.md VM VM controller-* (VM)
-:$PSQPSBUJPO • 5-4ɺΩʔϖΞͷੜ • $"ূ໌ॻɾൿີݤ • αʔόʔূ໌ॻɾൿີݤ • ΫϥΠΞϯτূ໌ॻɾൿີݤ •
4FSWJDF"DDPVOU༻ΩʔϖΞ • ֤ϊʔυʹ ,5)8෮शɿূ໌ॻΩʔϖΞͷੜɾ https://github.com/kelseyhightower/kubernetes-the-hard-way/blob/master/docs/04-certificate-authority.md controller-* (VM) worker-* (VM)
-:$PSQPSBUJPO • ,VCFDPOGJHͷੜ • ҎԼΛؚΉ • $"ূ໌ॻ • ΫϥΠΞϯτূ໌ॻɾൿີݤ •
"1*4FSWFSͷΤϯυϙΠϯτ ,5)8෮शɿ,VCFDPOGJHͷੜɾ https://github.com/kelseyhightower/kubernetes-the-hard-way/blob/master/docs/05-kubernetes-configuration-files.md
-:$PSQPSBUJPO • &UDE όΠφϦͷஔ • ઃఆϑΝΠϧʢTZTUFNEʣͷੜ • $" 5-4ূ໌ॻ •
ॳظͷϝϯόͷΞυϨε • ҉߸Խ • ʜ • &UDEαʔϏεͷىಈ ,5)8෮शɿ&UDE Ϋϥελͷߏங controller-1 (VM) controller-2 (VM) controller-0 (VM) https://github.com/kelseyhightower/kubernetes-the-hard-way/blob/master/docs/07-bootstrapping-etcd.md
-:$PSQPSBUJPO • όΠφϦͷஔ • LVCFBQJTFSWFS • LVCFDPOUSPMMFSNBOBHFS • LVCFTDIFEVMFS •
ઃఆϑΝΠϧʢTZTUFNEʣͷੜ • $" 5-4ূ໌ॻɾൿີݤ • 1&. • LVCFDPOGJH • ΤϯυϙΠϯτ • FUDEˡˠFUDE • LVCFBQJTFSWFSˠFUDE • LVCFTDIFEVMFSˠLVCFBQJTFSWFS • LVCFDPOUSPMMFSNBOBHFSˠLVCFBQJTFSWFS • ֤αʔϏεͷىಈ ,5)8෮शɿ$POUSPM1MBOFͷىಈ https://github.com/kelseyhightower/kubernetes-the-hard-way/blob/master/docs/08-bootstrapping-kubernetes-controllers.md controller-* (VM)
-:$PSQPSBUJPO • ্ཱ͕ͪͬͨLVCFBQJTFSWFSʹରͯ͠ -PBE#BMBODFSΛଓ • ࣄલ֬อͨ͠ *1ΞυϨεΛ༩ • ,VCFDPOGJHʹࢦఆͨ͠ͷ
,5)8෮शɿ-#ͷଓ https://github.com/kelseyhightower/kubernetes-the-hard-way/blob/master/docs/08-bootstrapping-kubernetes-controllers.md ce2(VM) ce3(VM) ce1(VM) LoadBalancer
-:$PSQPSBUJPO • ϗετͷઃఆ • TXBQPGG • ίϯϙʔωϯτͷΠϯετʔϧ • DPOUBJOFSE $/*QMVHJO
,VCFMFU LVCFQSPYZ • ઃఆϑΝΠϧੜ • 4ZTUFNE 6OJUͷىಈ ϫʔΧʔϊʔυͷߏஙɾՃ Worker1 (VM) Worker2 (VM) Worker3 (VM) hSps://github.com/kelseyhightower/kubernetes-the-hard-way/blob/master/docs/09-bootstrapping-kubernetes-workers.md
-:$PSQPSBUJPO ,VCFSOFUFTUIFIBSEXBZ͕ڭ͑ͯ͘Εͨ͜ͱ ,VCFSOFUFTUIFIBSEXBZSFWJTJUFE ֤ίϯϙʔωϯτखಈͰઃఆͰ͖Δ ֤σΟετϦϏϡʔγϣϯࣗಈԽͯ͠Δ͚ͩ ˣ ઃఆΛௐ͢ΕΠϯετʔϥΛҠߦͰ͖ΔͷͰʁ
-:$PSQPSBUJPO 3BODIFS͔Β$MVTUFS"1*,VCFBEN ͷΫϥελҠߦ
-:$PSQPSBUJPO • ҟͳΔόʔδϣϯͷίϯϙʔωϯτߋ৽ • ྫWˠW • ϊʔυΛ̍ͭͣͭೖΕସ͑ • ࠷ऴతʹશͯͷϊʔυɾίϯϙʔωϯτΛߋ৽
ࢀߟࣄྫΫϥελΞοϓάϨʔυ v1.27 v1.27 v1.27 v1.28 v1.27 v1.27 v1.28 v1.28 v1.27 v1.28 v1.28 v1.28
-:$PSQPSBUJPO • ҟͳΔઃఆͷίϯϙʔωϯτߋ৽ • 3BODIFS SLF ˠ,VCFBEN • ϊʔυΛ̍ͭͣͭೖΕସ͑ •
࠷ऴతʹશͯͷϊʔυɾίϯϙʔωϯτΛߋ৽ ઓུɿϊʔυΛͭͣͭೖΕସ͑Δ
-:$PSQPSBUJPO ݹ͍Ϋϥελ 3BODIFS3,& ʹ,VCFBENͰ/PEFΛ+PJOͤ͞Δ ͡ΊͷҰาɿ8PSLFS/PEFΛՃ͢Δ Join
-:$PSQPSBUJPO ,VCFBEN +PJO LVCFBEN KPJODPOGJHSVOLVCFBENLVCFBENKPJODPOGJHZBNM
-:$PSQPSBUJPO ,VCFBEN +PJO LVCFBEN KPJODPOGJHSVOLVCFBENLVCFBENKPJODPOGJHZBNM
-:$PSQPSBUJPO • ,VCF "1*4FSWFSͷΤϯυϙΠϯτ • $"ͷϋογϡ • ೝূ༻ͷ#PPUTUSBQτʔΫϯ ,VCFBEN
+PJOͷͨΊʹ
-:$PSQPSBUJPO ,VCFMFU͔Β"1*4FSWFSͷଓ LB چߏʢ3BODIFSʣ ৽ߏʢ,VCFBENʣ worker worker mycluster.example.com
-:$PSQPSBUJPO • "1*4FSWFSʹରͯ͠-#Λ࡞ • ,VCFSOFUFT UIF IBSEXBZͱಉ͡ʂ • ৽ߏʹ߹ΘͤͯυϝΠϯ໊Λ༩ •
NZDMVTUFSFYBNQMFDPN • ˠଓΤϥʔ -#Λ࡞Εղܾʁ LB worker چߏʢ3BODIFSʣվ mycluster.example.com
-:$PSQPSBUJPO 5-4ূ໌ॻͷ4"/ͷमਖ਼ • 5-4Ͱ4"/ʹ͋ΔυϝΠϯ໊ͷΈ௨৴Մ • 4"/4VCKFDU"MUFSOBUJWF/BNF • ͦ͏Ͱͳ͍ͱݕূΤϥʔͱͳΔ ˣ
• ৽ߏʹԊͬͨυϝΠϯ໊Λ4"/Ճ • 5-4ূ໌ॻͷߋ৽طଘػೳͰ࣮ݱ
-:$PSQPSBUJPO • ,VCF "1*4FSWFSͷΤϯυϙΠϯτˡ-#ɾυϝΠϯ࡞ˍ4"/ͷमਖ਼ • $"ͷϋογϡˡ • ೝূ༻ͷ#PPUTUSBQτʔΫϯ ,VCFBEN
+PJOͷͨΊʹ
-:$PSQPSBUJPO • ,VCFSOFUFTͰ௨৴ͷ҉߸ԽͷͨΊʹ5-4௨৴Λ׆༻ • ݪଇɺڞ௨ͷ$"Λ༻͍ͯαʔόʔΫϥΠΞϯτূ໌ॻΛੜ • ࣄલʹ͞Εͨ$"ূ໌ॻΛ༻͍ͯ௨৴Λݕূ • ֤OBNFTQBDFʹLVCFSPPUDBDSU $POGJH.BQͱͯ͠͞Ε͍ͯΔ
• ˢ͜ΕΛ༻͍ͯLVCFBEN༻ʹ$"ͷϋογϡΛੜ ,VCFSOFUFTͱ$"ূ໌ॻ
-:$PSQPSBUJPO • ,VCF "1*4FSWFSͷΤϯυϙΠϯτˡ-#ɾυϝΠϯ࡞ˍ4"/ͷमਖ਼ • $"ͷϋογϡ ˡLVCFSPPUDBDSU$POGJH.BQ͔Βੜ • ೝূ༻ͷ#PPUTUSBQτʔΫϯ ˡ
,VCFBEN +PJOͷͨΊʹ
-:$PSQPSBUJPO • Ϋϥελͷ࡞ϊʔυͷՃ༻ʹ༻ҙ͞Ε͍ͯΔೝূํࣜͷͨΊͷτʔΫϯ • BCDEFGBCDEFGͷΑ͏ͳܗࣜ • CPPUTUSBQLVCFSOFUFTJPUPLFO ܕͷ4FDSFUͱͯ͠ཧ • ҎԼͷϑϥάΛઃఆͯ͠༗ޮԽ
• LVCFBQJTFSWFSFOBCMFCPPUTUSBQUPLFOBVUI • LVCFDPOUSPMMFSNBOBHFS DPOUSPMMFST UPLFODMFBOFS CPPUTUSBQTJHOFS #PPUTUSBQτʔΫϯͱ https://kubernetes.io/docs/reference/access-authn-authz/bootstrap-tokens/
-:$PSQPSBUJPO • LVCFBEN UPLFODSFBUFίϚϯυͰ࡞Մ • ෦తʹ4FDSFUΛ࡞͍ͯ͠Δ͚ͩ • ˠLVCFBENҎ֎Ͱ൚༻తʹར༻Ͱ͖Δ #PPUTUSBQτʔΫϯͷੜ
https://kubernetes.io/docs/reference/access-authn-authz/bootstrap-tokens/
-:$PSQPSBUJPO • ,VCF "1*4FSWFSͷΤϯυϙΠϯτˡ-#ɾυϝΠϯ࡞ˍ4"/ͷमਖ਼ • $"ͷϋογϡ ˡLVCFSPPUDBDSU$POGJH.BQ͔Βੜ • ೝূ༻ͷ#PPUTUSBQτʔΫϯ ˡ༗ޮԽˍLVCFBEN
UPLFODSFBUF ,VCFBEN +PJOͷͨΊʹ
-:$PSQPSBUJPO ,VCFBEN +PJO LVCFBEN KPJODPOpHSVOLVCFBENLVCFBENKPJODPOpHZBNM
-:$PSQPSBUJPO ,VCFBEN +PJO ࣦഊʜ
-:$PSQPSBUJPO • 3#"$ͷઃఆ࿙Ε • 5-4#PPUTUSBQQJOH • ֤छઃఆ༻ͷ$POGJH.BQ • ʜ
Δ
-:$PSQPSBUJPO • #PPUTUSBQ τʔΫϯͰೝূͰ͖Δ͚ͩͰಈ͔ͳ͍ • ೝՄઃఆඞཁ • /PEFҰཡͷऔಘ • $43ؔ࿈
3#"$ͷઃఆ
-:$PSQPSBUJPO ,VCFBENͷ3#"$ੜίʔυ IUUQTHJUIVCDPNLVCFSOFUFTLVCFSOFUFTCMPCNBTUFSDNE LVCFBENBQQDNEQIBTFTJOJUCPPUTUSBQUPLFOHP
-:$PSQPSBUJPO • 3#"$ͷઃఆ࿙Εˡ,VCFBENΛࢀߟʹ3PMFCJOEJOH࡞ • 5-4#PPUTUSBQQJOH • ֤छઃఆ༻ͷ$POGJH.BQʜ Δ
-:$PSQPSBUJPO • ,VCFMFUΫϥΠΞϯτূ໌ॻΛ༻͍ͯ"1*4FSWFSͱN5-4Ͱ௨৴ • #PPUTUSBQUPLFOىಈ࣌ͷΈ༻ • ΫϥΠΞϯτূ໌ॻ$43"1*Λ༻͍ͯLVCFMFUࣗͰੜՄೳ • $43 $FSUJGJDBUF
4JHOJOH 3FRVFTU • ,5)8ͰखಈͰੜ • ैདྷΫϥελͰ༗ޮʹͳ͍ͬͯͳ͔ͬͨ • ,VCFBEN͚ʹ༗ޮԽ • LVCFDPOUSPMMFSNBOBHFSDMVTUFSTJHOJOHLFZGJMF DMVTUFSTJHOJOHDFSUGJMF $43ͱ,VCFMFUͷ5-4#PPUTUSBQQJOH https://kubernetes.io/docs/reference/access-authn-authz/kubelet-tls-bootstrapping/
-:$PSQPSBUJPO • 3#"$ͷઃఆ࿙Εˡ,VCFBENΛࢀߟʹ3PMFCJOEJOH࡞ • 5-4#PPUTUSBQQJOHˡ$43ͷ༗ޮԽ • ֤छઃఆ༻ͷ$POGJH.BQ • ʜ
Δ
-:$PSQPSBUJPO ,VCFBENͷઃఆཧ • ઃఆϑΝΠϧΛ$POGJH.BQͱͯ͠ཧ • LVCFBENDPOGJH • LVCFMFUDPOGJH • LVCFQSPYZ
• طଘΫϥελͷઃఆΛݩʹੜ ,VCFBENʹ͓͚Δઃఆཧ
-:$PSQPSBUJPO • 3#"$ͷઃఆ࿙Εˡ,VCFBENΛࢀߟʹ3PMFCJOEJOH࡞ • 5-4#PPUTUSBQQJOHˡ$43ͷ༗ޮԽ • ֤छઃఆ༻ͷ$POGJH.BQˡطଘΫϥελͷઃఆΛݩʹੜ • ʜ
Δ
-:$PSQPSBUJPO • ,VCFBEN KPJO༻ͷઃఆϑΝΠϧ४උ • apiserver endpoint • CA ハッシュ
• Bootstrapトークン • ͦͷଞඞཁͳௐ • RBAC • Certificate Signing Request API • 設定⽤ConfigMap • … ·ͱΊɿ8PSLFS/PEFՃʹඞཁͳमਖ਼
-:$PSQPSBUJPO • ҟͳΔઃఆͷίϯϙʔωϯτߋ৽ • 3BODIFS SLF ˠ,VCFBEN • ϊʔυΛ̍ͭͣͭೖΕସ͑ •
࠷ऴతʹશͯͷϊʔυɾίϯϙʔωϯτΛߋ৽ ઓུɿϊʔυΛͭͣͭೖΕସ͑Δ ࠶ܝ
-:$PSQPSBUJPO $POUSPM1MBOFϊʔυΛೖΕସ͑Δʹʁ Control Plane Worker Control Plane Control Plane
Worker Worker
-:$PSQPSBUJPO • ൿີݤɾূ໌ॻͷෳ • FUDEͷϝϯόʔཧ • ʜ $POUSPM1MBOFϊʔυՃͷ՝
-:$PSQPSBUJPO • σϑΥϧτಈ࡞Ͱ ,VCFBEN͕ࣗূ໌ॻɾൿີݤΛੜ • ࢦఆύεʹஔ͢Δ͜ͱͰ$"ূ໌ॻΛ͢͜ͱ͕Ͱ͖Δ • طଘΫϥελ͚ͷূ໌ॻɾൿີݤΛίϐʔ • σΟετϦϏϡʔγϣϯຖʹཧํ๏͕ҟͳΔ
• $MVTUFS"1*Ͱ.BOBHFNFOU$MVTUFSʹ໋໊نଇʹԊͬͯ4FDSFUΛ࡞Ε0, ,VCFBENͱূ໌ॻɾൿີݤ
-:$PSQPSBUJPO • ൿີݤɾূ໌ॻͷෳˡطଘΫϥελ͔Βίϐʔ • FUDEͷϝϯόʔཧ • ʜ $POUSPM1MBOFϊʔυՃͷ՝
-:$PSQPSBUJPO • $POUSPM1MBOF /PEFͷՃɺআ࣌ʹFUDEΫϥελΛૢ࡞͢Δඞཁ͕͋Δ • ৽نϝϯόʔͷՃ࣌FUDEͷىಈ࣌ʹطଘϝϯόʔͷΤϯυϙΠϯτࢦఆ • طଘϝϯόʔͷআ࣌ରϝϯόʔΛΫϥελ͔Βআ • FUDEͷΤϯυϙΠϯτ͕Θ͔Βͳ͚Εૢ࡞Ͱ͖ͳ͍
• ˠͲ͏ͬͯϝϯόʔͷΤϯυϙΠϯτΛཧ͢Δʁ &UDEϝϯόʔཧͷඞཁੑ
-:$PSQPSBUJPO • FUDELVCFMFU TUBUJDQPEͱ࣮ͯ͠ߦ • )PTU/FUXPSLϞʔυ • ,VCFSOFUFT"1*ܦ༝Ͱใऔಘ • -BCFMͰFUDE
1PETΛࣝผ • DPNQPOFOUFUDE • UJFSDPOUSPMQMBOF • ΤϯυϙΠϯτ1PEͷ"OOPUBUJPOʹ֨ೲ • kubeadm.kubernetes.io/etcd.advertise-client-urls ैདྷͷ&UDEϝϯόʔཧ control-1 (IP: 10.0.0.1) containerd kubelet 通常Pod etcd Pod listen at 10.0.0.1:2379
-:$PSQPSBUJPO • ैདྷʢ3BODIFSʣ%PDLFSίϯςφͱͯ͠ FUDEΛ࣮ߦ • )PTUOFUXPSLϞʔυ • FUDE%PDLFSίϯςφ3BODIFS͕ཧ • ,VCFSOFUFT
"1*͔ΒFUDEίϯςφ ૢ࡞औಘͰ͖ͳ͍ ैདྷͷ&UDEϝϯόʔཧ ཧ control-1 (IP: 10.0.0.1) containerd kubelet 通常Pod Etcd コンテナ Docker listen at 10.0.0.1:2379
-:$PSQPSBUJPO μϛʔ1PEʹΑΔFUDEϝϯόʔใͷࠂ &UDEϝϯόʔཧͷղܾࡦ ཧ control-1 (IP: 10.0.0.1) containerd kubelet
ダミー etcd Pod Etcd コンテナ Docker listen at 10.0.0.1:2379
-:$PSQPSBUJPO • ൿີݤɾূ໌ॻͷෳˡطଘΫϥελ͔Βίϐʔ • FUDEͷϝϯόʔཧˡμϛʔ1PEΛஔ • ʜ ·ͱΊ$POUSPM1MBOFϊʔυՃͷ՝
-:$PSQPSBUJPO Ҡߦྃ Control Plane Worker Control Plane Control Plane
Worker Worker
-:$PSQPSBUJPO l ΦϖϨʔγϣϯͷࣗಈԽɾίϯτϩʔϥʔԽɾ"1*Խ l 3BODIFS$MVTUFS"1*ίϯτϩʔϥͱͷڠௐಈ࡞ l Ҡߦதͷૢ࡞ͷࢭ l ,VCFBENઃఆϑΝΠϧͷੜ l
ࡉ͔͍ΧελϜػೳͷରԠ l ࢹγεςϜͷҠߦ l ʜ ͦͷଞͷ
-:$PSQPSBUJPO • σΟετϦϏϡʔγϣϯʹґΒͣLVCFSOFUFTͷجຊίϯϙʔωϯτڞ௨ • LVCFBQJTFSWFS LVCFMFU FUD • खಈͰઃఆ͢ΕҟͳΔσΟετϦϏϡʔγϣϯΛҠߦ͢Δ͜ͱՄೳ •
l,VCFSOFUFTUIF )BSE8BZz͠·͠ΐ͏ ·ͱΊ
-:$PSQPSBUJPO ‒ IUUQTHJUIVCDPNLFMTFZIJHIUPXFSLVCFSOFUFTUIFIBSEXBZ ‒ IUUQTLVCFSOFUFTJPEPDTSFGFSFODFTFUVQUPPMTLVCFBENJNQMFNFOUBUJPOEFUBJMT ‒ IUUQTLVCFSOFUFTJPEPDTSFGFSFODFBDDFTTBVUIOBVUI[ • "VUIFOUJDBUJOHXJUI#PPUTUSBQ5PLFOT •
$FSUJGJDBUF4JHOJOH3FRVFTUT • 5-4CPPUTUSBQQJOH ࢀߟϦϯΫ
-:$PSQPSBUJPO 5IBOLZPV
-:$PSQPSBUJPO ɿσΟετϦϏϡʔγϣϯຖͷҧ͍ ,VCFBEN ,5)8 3BODIFS3,& ,VCFMFU࣮ߦڥ 4ZTUFNE 6OJU QBDLBHF 4ZTUFNE
6OJU TFMGCJOBSZ %PDLFSίϯςφ BQJTFSWFS࣮ߦڥ LVCFMFU TUBUJD QPE 4ZTUFNE 6OJU TFMGCJOBSZ %PDLFSίϯςφ LVCF QSPYZ࣮ߦڥ %BFNPOTFU %BFNPOTFU %PDLFSίϯςφ BQJTFSWFSˠFUDE௨৴ MPDBMIPTUͷΈ શϝϯόʔྻڍ MPDBMIPTUͷΈ ,VCFMFUˠBQJTFSWFS௨৴ -#ܦ༝ -# *1 "EESFTT ܦ༝ ,VCFMFU༻ূ໌ॻੜ खಈੜ ίϯτϩʔϥͰੜ