Upgrade to Pro
— share decks privately, control downloads, hide ads and more …
Speaker Deck
Sign up for free
Menu
Search
Features
All features
Private URLs
Password Protection
Custom URLS
Scheduled publishing
Remove Branding
Restrict embedding
Deck Collections
Notes
Features
All features
Private URLs
Password Protection
Custom URLS
Scheduled publishing
Remove Branding
Restrict embedding
Deck Collections
Notes
Explore
Featured decks
Featured speakers
Programming
Technology
Storyboards
Explore
Featured decks
Featured speakers
Programming
Technology
Storyboards
Pricing
Search
Sign in
Sign up for free
Kubernetes v1.19 変更点調査のまとめ / k8s-v119-updates
Search
uesyn
September 30, 2020
Technology
320
1
Share
Embed
Copy iframe code
Copy JS code
Copy link
Start on current slide
Kubernetes v1.19 変更点調査のまとめ / k8s-v119-updates
uesyn
September 30, 2020
More Decks by uesyn
See All by uesyn
PodSecurityPolicyの安全な移行の道のり / On the safe migration of PodSecurityPolicy
uesyn
1
1.2k
PodSecurityPolicyの廃止に備えて、 一足先にPodSecurity Admissionを試してみよう! / from-psp-to-podsecurity
uesyn
4
2k
そのクラスタ本当にアップグレードして大丈夫? Storage Version の更新も忘れずにしよう! / k8s-storage-version-migration
uesyn
2
4k
次世代のログ基盤 Grafana Lokiを始めよう! / prometheus-meetup-tokyo-3-lets-start-the-loki
uesyn
7
15k
kindでも"type LoadBalancer"を使いたい! / kubernetes-meetup-tokyo-24-kind-with-type-loadbalancer
uesyn
0
1.8k
Loki入門
uesyn
8
2.8k
Cortexの話をKubeConで聞きたかったっていう話
uesyn
4
2.2k
kubernetesでGPUを 管理するために スケジューラをいじってみた
uesyn
2
3.1k
Other Decks in Technology
See All in Technology
AI時代、つくる力を自分たちの手に。 ──電通×KAG、アジャイルとAI駆動開発で挑む開発の変革
yuukiyo
3
450
Autonomous AI Lakehouse - Live AI Hubから始めるセキュアなAIデータ活用 -
oracle4engineer
PRO
2
180
Consistency for mere mortals - A gentle guide to consistency
ufried
0
110
AIに任せられるFlutterコードベースを作る 〜仕様をコードで表し、ハーネスで守る〜
myohei
1
610
AIがGISを代替する日:〜すべてをAIが創る時代に、私たちがFOSS4Gに関わる意味〜
lehupa
0
190
詳解 never 型 - ボトム型の性質を深掘り
nealle
0
130
re:Invent の去年のスケジュールを公開します!
miu_crescent
PRO
0
150
FinOpsを導入してマルチプロダクトのコスト最適化を実現する
kworkdev
PRO
0
110
基本から分かる!AWSセキュリティ運用の考え方と任せ方
cmusudakeisuke
1
340
Adversary Infrastructure Hunting101
disconinja
0
190
増え続けるプロダクトの品質をどう担保するか。ProductSpecとTypeScriptによる取り組み
joere
3
320
今から始めるAWS環境の暗号移行 - ポスト量子時代に備える
sato4mi
0
150
Featured
See All Featured
Fireside Chat
paigeccino
43
4.1k
My Coaching Mixtape
mlcsv
0
370
How to build a perfect <img>
jonoalderson
1
6.2k
CoffeeScript is Beautiful & I Never Want to Write Plain JavaScript Again
sstephenson
162
16k
Deep Space Network (abreviated)
tonyrice
0
400
Distributed Sagas: A Protocol for Coordinating Microservices
caitiem20
333
23k
Google's AI Overviews - The New Search
badams
0
1.6k
Darren the Foodie - Storyboard
khoart
PRO
4
4.1k
HU Berlin: Industrial-Strength Natural Language Processing with spaCy and Prodigy
inesmontani
PRO
0
780
We Have a Design System, Now What?
morganepeng
55
8.4k
Facilitating Awesome Meetings
lara
57
7.2k
Imperfection Machines: The Place of Print at Facebook
scottboms
270
14k
Transcript
Kubernetes Meetup Tokyo #34 (2020/9/30) Shunya Murata @shmurata_ Shinya Uemura
@uesyn Kubernetes v1.19 มߋௐࠪͷ·ͱΊ
Shinya Uemura / @suemura ▶ θοτϥϘגࣜձࣾ ιϑτΣΞΤϯδχΞ ▶ 2019θοτϥϘגࣜձࣾʹೖࣾ ▶
Prometheus Meetup Tokyo, Cloud Native Meetup TokyoͷӡӦͬͯ·͢
θοτϥϘגࣜձࣾ / Z Lab Corporation ▶ 2015ʹઃཱ͞ΕͨϠϑʔגࣜձࣾͷ100%ࢠձࣾ ▶ Πϯϑϥج൫ٕज़ͷௐࠪɾݚڀ։ൃ ▶
Ϡϑʔגࣜձ͚ࣾͷϚωʔδυ Kubernetes αʔϏεͷ։ൃ ▶ https://zlab.co.jp/
ΞδΣϯμ ▶ มߋௐࠪͷऔΓΈʹ͍ͭͯ ▶ @uesynͷؾʹͳͬͨมߋͷհ ▶ @shmurata_ ͷؾʹͳͬͨมߋͷհ
มߋௐࠪʹ͍ͭͯ
มߋௐࠪͱʁͳ࣮ͥࢪ͢Δͷ͔ʁ ▶ มߋௐࠪͱʁ + Z LabͰKubernetesͷCHANGELOGΛௐࠪɾຊޠ༁ͷهࣄΛ࡞͍ͯ͠·͢ + ϚΠφʔόʔδϣϯͷϦϦʔεຖʹ࣮ࢪ + v1.19Z
Labͱ@superbrothers͞ΜͰ࣮ࢪ + SIG (Special Interest Group) ຖʹ୲Λ୲͠ɺSIGʹؔ࿈ͨ͠༰Λ·ͱΊΔ ▶ ͳ࣮ͥࢪ͢Δͷ͔ʁ + ίϛϡχςΟͷߩݙͷͨΊ + CaaSΛར༻͍ͯ͠ΔϢʔβӨڹศརͳػೳͷհ + Kubernetesͷมߋ͔Βɺఏڙ͍ͯ͠ΔCaaSͷӨڹΛѲ͢ΔͨΊ + ެ։͍ͯ͠ΔͷϚΠφʔόʔδϣϯ͚ͩͰ͕͢ɺύονόʔδϣϯͷมߋ֬ೝ
มߋௐࠪͱʁͳ࣮ͥࢪ͢Δͷ͔ʁ ▶ มߋௐࠪͱʁ + Z LabͰKubernetesͷCHANGELOGΛௐࠪɾຊޠ༁ͷهࣄΛ࡞͍ͯ͠·͢ + ϚΠφʔόʔδϣϯͷϦϦʔεຖʹ࣮ࢪ + v1.19Z
Labͱ@superbrothers͞ΜͰ࣮ࢪ + SIG (Special Interest Group) ຖʹ୲Λ୲͠ɺSIGʹؔ࿈ͨ͠༰Λ·ͱΊΔ ▶ ͳ࣮ͥࢪ͢Δͷ͔ʁ + ίϛϡχςΟͷߩݙͷͨΊ + CaaSΛར༻͍ͯ͠ΔϢʔβӨڹศརͳػೳͷհ + Kubernetesͷมߋ͔Βɺఏڙ͍ͯ͠ΔCaaSͷӨڹΛѲ͢ΔͨΊ + ެ։͍ͯ͠ΔͷϚΠφʔόʔδϣϯ͚ͩͰ͕͢ɺύονόʔδϣϯͷมߋ֬ೝ
@uesyn ͷؾʹͳͬͨมߋ
͔͜͜Βࢲ͕͢༰ 1. Expanded CLI support for debugging workloads and nodes
2. Deprecation warnings 3. Avoiding permanent beta 4. Increase the Kubernetes support window to one year 5. Structure Logging 6. EndpointSlices are now enabled by default
Expanded CLI support for debugging workloads and nodes
Expanded CLI support for debugging workloads and nodes ▶ ”kubectl
alpha debug” ৽ͨʹ2ͭͷػೳ͕Ճ 1. NodeͷͨΊͷdebugػೳ + Nodeͷσόοά༻ίϯςφΛ࡞ + /host Nodeͷ / ΛϚϯτ͠ɺNodeͷPID,IPCNWωʔϜεϖʔεͰىಈ 2. PodͷͨΊͷdebugػೳ + debugରͷPodΛίϐʔ͠debug༻PodΛ࡞ + debug༻ίϯςφΛૠೖͨ͠ΓɺίϯςφΠϝʔδҾͳͲΛมߋͨ͠ͷΛ࡞ ▶ ͲͪΒFeatureGatesͷEphemeralContainersΛ༗ޮʹ͢Δඞཁͳ͠ + alphaػೳ͕༗ޮʹͰ͖ͳ͍ڥͰར༻Մೳ
Ճ͞ΕͨNodeͷͨΊͷdebugػೳ(1/2)
Ճ͞ΕͨNodeͷͨΊͷdebugػೳ(2/2) /hostʹNodeͷ/͕Ϛϯτ͞Ε͍ͯΔ NodeͷPID,IPCNWωʔϜεϖʔεͰ࣮ߦ debug༻ͷPod໊
Ճ͞ΕͨPodͷͨΊͷdebugػೳ(1/2) ͜ͷ໊લͰdebug༻Pod͕࡞͞ΕΔ share-processͰdebug༻ίϯςφΛىಈՄೳ
Ճ͞ΕͨPodͷͨΊͷdebugػೳ(2/2) share-processͰdebug༻ίϯςφΛىಈՄೳ ▶ ͬ͟ͱ֬ೝͨ͠ײ͡ؾΛ͚ͨํ͕ྑͦ͞͏ͳࣄ + labelίϐʔ͞Εͳ͍ + ServiceԼͷPodΛdebug͢Δͱ͖ɺಉ͡τϥϑΟοΫྲྀΕͯ͜ͳ͍ + Volume,
VolumeMountsίϐʔ͞ΕΔ + hostPortίϐʔ͞ΕΔ ʑ… ▶ ىಈॱংͷ੍εέʔϧͰ͖ͳ͍ΞϓϦέʔγϣϯҙ͢Δඞཁ
Ճ͞Εͨdebugػೳʹ͍ͭͯ ▶ Ճ͞ΕͨೋͭͷػೳڞʹɺศརPodΛ࡞ΔͨΊͷίϚϯυ ▶ ৄ͍࣮͠ҎԼΛࢀর + https://github.com/kubernetes/kubectl/blob/v0.19.2/pkg/cmd/debug/debug.go#L478-L522 + https://github.com/kubernetes/kubectl/blob/v0.19.2/pkg/cmd/debug/debug.go#L413-L476
Deprecation warnings
Deprecation warnings ▶ APIར༻࣌ʹWarningΛฦ͢ػೳ͕Ճ + ഇࢭ༧ఆͷAPIΛୟ͍ͨ࣌ + Admission WebhooksͷϨεϙϯεͰࢦఆ (ϢʔβఆٛՄೳ)
+ CRDͷϑΟʔϧυͰࢦఆ (ϢʔβఆٛՄೳ)
ValidatingWebhookΛ༻͍ͨWarningͷσϞ ▶ ԿͷK8sϦιʔεͷValidationͤͣɺWarning͚ͩฦ͢ValidatingWebhookͷσϞΛ͠·͢ + https://github.com/uesyn/sample-warning-admission-webhook + ↑ޙ΄Ͳͪ͜ΒͰެ։͓͖ͯ͠·͢ + ϦιʔεͷValidation͠·ͤΜ͕ɺۈ࣌ؒͷValidationͯ͘͠Ε·͢ +
ۈ࣌ؒ֎ʹಇ͘͜ͱΛېࢭ͠·ͤΜ͕ɺWarningͱͯ͠ग़ྗ ▶ Admission WebhookͷWarningʹ͍ͭͯҎԼΛࢀর͍ͩ͘͞ + https://kubernetes.io/docs/reference/access-authn-authz/extensible-admission-controllers/#admissionreview-response-warning
Avoiding permanent beta
Avoiding permanent beta ▶ ͣͬͱvXbetaYͰ͢ʂͱͳΒͳ͍ͨΊͷϙϦγʔΛద༻ + Ingress2015ʹbetaʹͳ͍ͬͯͨΑ͏Ͱ͢ ▶ ৽͍͠API͕betaʹͳΔͱɺͦͷAPI9ϲ݄ҎͰҎԼͷΞΫγϣϯ͕ඞཁ +
GAΛग़͠ɺbetaͷͷΛඇਪͱ͢Δ + ৽͍͠betaΛग़͠ɺݹ͍ͷΛඇਪͱ͢Δ ▶ 9ϲ݄ܦաͯ͠͠·ͬͨ߹ + ࣍ͷϦϦʔεͰͦͷAPIͷόʔδϣϯඇਪͱͳΔ + ಉ͡betaόʔδϣϯͰଓߦͱ͍͏બࢶͳ͍ ▶ ৄࡉҎԼ + https://kubernetes.io/blog/2020/08/21/moving-forward-from-beta/
Increase the Kubernetes support window to one year
Increase the Kubernetes support window to one year ▶ Kubernetes
v1.19͔Βɺόάमਖ਼ͷαϙʔτ͕9ϲ݄͔Β1 ▶ ͜Ε͔ΒؤுͬͯΫϥελͷΞοϓάϨʔυ͍͖ͯ͠·͠ΐ͏ʂ
Structure Logging
Structure Logging ▶ ߏԽϩΪϯά͕ಋೖ͞Εͨ + ରԠ͍ͯ͠ΔkubernetesͷίϯϙʔωϯτͰ͋Ε—logging-formatΦϓγϣϯͰࢦఆՄೳ + json ·ͨ text
Λࢦఆ ▶ k8s.io/klog ͕v2ͱͳΓInfoSErrorSͳͲͷߏԽ͞ΕͨϩάΛग़ྗ͢Δ͕ؔՃ + jsonͰग़ྗ͢Δ࣮klogʹͳ͍ + SetLogger ؔͰgithub.com/go-logr/logr Λ࣮ͨ͠ͷΛηοτ͢Δ + K8sίϯϙʔωϯτ͕ར༻͍ͯ͠Δ্ه࣮ k8s.io/component-base ʹଘࡏ
EndpointSlices are now enabled by default
EndpointSlices are now enabled by default ▶ EndpointsͷΘΓʹEndpointSlice͕kube-proxyͰσϑΥϧτͰར༻͞ΕΔΑ͏ʹ ▶ EndpointSliceϦιʔεࣗମv1.18͔Β࡞͞ΕΔ
▶ EndpointsϦιʔεΛ୯ମͰ࡞͢ΔͱɺରԠ͢ΔEndpointSliceϦιʔε͕࡞͞ΕΔ + EndpointSliceMirrorling controllerʹΑΓੜ͞ΕΔ + labelͰendpointslice.kubernetes.io/skip-mirror: “true" ͱ͢Δ͜ͱͰϛϥʔϦϯά͞Εͳ͘ͳΔ + ࡞͞ΕΔEndpointSliceOwnerReference͕ͦͷEndpointsͱͳΔΑ͏Ͱ͢