Kubernetes: [ํ…Œ์ŠคํŠธ ํ”Œ๋ ˆ์ดํฌ] ๋งˆ์Šคํ„ฐ ํ™•์žฅ ์„ฑ ์ œํ’ˆ๊ตฐ

์— ๋งŒ๋“  2018๋…„ 02์›” 28์ผ  ยท  164์ฝ”๋ฉ˜ํŠธ  ยท  ์ถœ์ฒ˜: kubernetes/kubernetes

๋ฆด๋ฆฌ์Šค ์ฐจ๋‹จ ์ œํ’ˆ๊ตฐ ์‹คํŒจ :

์ตœ๊ทผ์— ์„ธ ๊ฐ€์ง€ ์ œํ’ˆ๊ตฐ ๋ชจ๋‘๊ฐ€ ๋งŽ์ด ๋ฒ—๊ฒจ์ง€๊ณ  ์žˆ์Šต๋‹ˆ๋‹ค.

/ sig ํ™•์žฅ ์„ฑ
/ ์šฐ์„  ์ˆœ์œ„ ์‹คํŒจ ํ…Œ์ŠคํŠธ
/ ์ข…๋ฅ˜์˜ ๋ฒ„๊ทธ
/ ์ด์ •ํ‘œ ์Šน์ธ ์ƒํƒœ

cc @jdumars @jberkus
/ ํ• ๋‹น @shyamjvs @ wojtek-t

kinbug kinfailing-test prioritcritical-urgent siapi-machinery siautoscaling sinode siscalability sischeduling sistorage

๊ฐ€์žฅ ์œ ์šฉํ•œ ๋Œ“๊ธ€

1.10 HEAD + # 61504์— ๋Œ€ํ•ด ํ…Œ์ŠคํŠธ๋ฅผ ์‹คํ–‰ํ–ˆ๋Š”๋ฐ ํฌ๋“œ ์‹œ์ž‘ ๋Œ€๊ธฐ ์‹œ๊ฐ„์ด ๊ดœ์ฐฎ์€ ๊ฒƒ ๊ฐ™์Šต๋‹ˆ๋‹ค.

INFO: perc50: 2.594635536s, perc90: 3.483550118s, perc99: 4.327417676s

ํ™•์ธ์„ ์œ„ํ•ด ๋‹ค์‹œ ํ•œ ๋ฒˆ ์‹คํ–‰๋ฉ๋‹ˆ๋‹ค.

๋ชจ๋“  164 ๋Œ“๊ธ€

  • ์ตœ๊ทผ์— ์ œํ’ˆ๊ตฐ์— ์ถ”๊ฐ€ ๋œ e2es (์˜ˆ : https://github.com/kubernetes/kubernetes/pull/59391)๊ฐ€ ๋งŽ์•˜ ๊ธฐ ๋•Œ๋ฌธ์— ์ •ํ™•์„ฑ ์ž‘์—…์€ ๋Œ€๋ถ€๋ถ„ ์‹œ๊ฐ„ ์ดˆ๊ณผ๋กœ ์ธํ•ด ์‹คํŒจํ•ฉ๋‹ˆ๋‹ค (๊ทธ์— ๋”ฐ๋ผ ์ผ์ •์„ ์กฐ์ •ํ•ด์•ผ ํ•จ).
  • 100 ๋…ธ๋“œ ํ”Œ๋ ˆ์ดํฌ์˜ ๊ฒฝ์šฐ https://github.com/kubernetes/kubernetes/issues/60500 (๊ด€๋ จ์ด ์žˆ๋‹ค๊ณ  ์ƒ๊ฐํ•ฉ๋‹ˆ๋‹ค. ํ™•์ธํ•ด์•ผ ํ•จ).
  • ์„ฑ๋Šฅ ์ž‘์—…์˜ ๊ฒฝ์šฐ ํšŒ๊ท€๊ฐ€ ์žˆ๋‹ค๊ณ  ์ƒ๊ฐํ•ฉ๋‹ˆ๋‹ค (ํŒŸ ์‹œ์ž‘ ์ง€์—ฐ ์‹œ๊ฐ„๊ณผ ๊ฐ™์€ ์ตœ๊ทผ ๋ช‡ ๋ฒˆ์˜ ์‹คํ–‰์—์„œ ๋ณด์ž„). ์–ด์ฉŒ๋ฉด ๋” sth.

๋‚˜๋Š” ์ด๋ฒˆ ์ฃผ์— ์–ธ์  ๊ฐ€ ๊ทธ๋“ค์—๊ฒŒ ๋„์ฐฉํ•˜๋ ค๊ณ  ๋…ธ๋ ฅํ•  ๊ฒƒ์ž…๋‹ˆ๋‹ค (๋ฌด๋ฃŒ ์‚ฌ์ดํด atm์ด ๋ถ€์กฑํ•จ).

@shyamjvs ์ด ๋ฌธ์ œ์— ๋Œ€ํ•œ ์—…๋ฐ์ดํŠธ๊ฐ€ ์žˆ์Šต๋‹ˆ๊นŒ?

https://k8s-testgrid.appspot.com/sig-release-master-blocking#gce -scale-correctness

๋‚˜๋Š” ๊ทธ๊ฒƒ์— ๋Œ€ํ•ด ๊ฐ„๋‹จํžˆ ์‚ดํŽด ๋ณด์•˜๋‹ค. ๊ทธ๋ฆฌ๊ณ  ์ผ๋ถ€ ํ…Œ์ŠคํŠธ๊ฐ€ ๋งค์šฐ ๋Š๋ฆฌ๊ฑฐ๋‚˜ ๋ฌด์–ธ๊ฐ€๊ฐ€ ๊ฑธ๋ ค ์žˆ์Šต๋‹ˆ๋‹ค. ๋งˆ์ง€๋ง‰ ์‹คํ–‰์˜ ๋กœ๊ทธ ํŒŒ :

62571 I0301 23:01:31.360] Mar  1 23:01:31.348: INFO: Running AfterSuite actions on all node
62572 I0301 23:01:31.360]
62573 W0302 07:32:00.441] 2018/03/02 07:32:00 process.go:191: Abort after 9h30m0s timeout during ./hack/ginkgo-e2e.sh --ginkgo.flakeAttempts=2 --ginkgo.skip=\[Serial\]|\[Disruptive      \]|\[Flaky\]|\[Feature:.+\]|\[DisabledForLargeClusters\] --allowed-not-ready-nodes=50 --node-schedulable-timeout=90m --minStartupPods=8 --gather-resource-usage=master --gathe      r-metrics-at-teardown=master --logexporter-gcs-path=gs://kubernetes-jenkins/logs/ci-kubernetes-e2e-gce-scale-correctness/80/artifacts --report-dir=/workspace/_artifacts --dis      able-log-dump=true --cluster-ip-range=10.64.0.0/11. Will terminate in another 15m
62574 W0302 07:32:00.445] SIGABRT: abort

8 ์‹œ๊ฐ„ 30 ๋ถ„ ์ด๋‚ด์— ์™„๋ฃŒ๋œ ํ…Œ์ŠคํŠธ ์—†์Œ

https://k8s-testgrid.appspot.com/sig-release-master-blocking#gce -scale-performance

์‹ค์ œ๋กœ ํšŒ๊ท€์ฒ˜๋Ÿผ ๋ณด์ž…๋‹ˆ๋‹ค. ํšŒ๊ท€๊ฐ€ ์‹คํ–‰ ์ค‘๊ฐ„์— ๋ฐœ์ƒํ–ˆ๋‹ค๊ณ  ์ƒ๊ฐํ•ฉ๋‹ˆ๋‹ค.
105 (์•„์ง ๊ดœ์ฐฎ ์•˜์Šต๋‹ˆ๋‹ค)
108 (๋ˆˆ์— ๋„๊ฒŒ ๋” ๋†’์€ ์‹œ์ž‘ ์‹œ๊ฐ„์„ ๊ฐ€์ง)

kubemark-5000๋„ ๊ฑฐ๊ธฐ์— ๋ณด์ด๋Š”์ง€ ์‚ดํŽด๋ณผ ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค.

Kubemark-5000์€ ๊ฝค ์•ˆ์ •์ ์ž…๋‹ˆ๋‹ค. ์ด ๊ทธ๋ž˜ํ”„์˜ 99 ๋ฒˆ์งธ ๋ฐฑ๋ถ„์œ„ ์ˆ˜ (์ด์ „์— ํšŒ๊ท€๊ฐ€ ๋ฐœ์ƒํ–ˆ์„ ์ˆ˜๋„ ์žˆ์ง€๋งŒ 105์—์„œ 108 ์‚ฌ์ด์— ์žˆ๋‹ค๊ณ  ์ƒ๊ฐํ•ฉ๋‹ˆ๋‹ค) :

screenshot from 2018-03-02 14-36-54

์ •ํ™•์„ฑ ํ…Œ์ŠคํŠธ์™€ ๊ด€๋ จํ•˜์—ฌ-gce-large-correctness๋„ ์‹คํŒจํ•ฉ๋‹ˆ๋‹ค.
๊ทธ ๋‹น์‹œ ๋งค์šฐ ๊ธด ํ…Œ์ŠคํŠธ๊ฐ€ ์ถ”๊ฐ€๋˜์—ˆ์„ ์ˆ˜ ์žˆ์Šต๋‹ˆ๊นŒ?

@ wojtek-t๋ฅผ ์ฐพ์•„ ์ฃผ์…”์„œ ๊ฐ์‚ฌํ•ฉ๋‹ˆ๋‹ค. WRT ์„ฑ๋Šฅ ์ž‘์—…-ํšŒ๊ท€๊ฐ€ ์žˆ๋‹ค๋Š” ๋Š๋‚Œ์ด ๋„ˆ๋ฌด ๊ฐ•ํ•ฉ๋‹ˆ๋‹ค (ํ•˜์ง€๋งŒ ์ œ๋Œ€๋กœ ์‚ดํŽด๋ณผ ์ˆ˜๋Š” ์—†์ง€๋งŒ).

๊ทธ ๋‹น์‹œ ๋งค์šฐ ๊ธด ํ…Œ์ŠคํŠธ๊ฐ€ ์ถ”๊ฐ€๋˜์—ˆ์„ ์ˆ˜ ์žˆ์Šต๋‹ˆ๊นŒ?

๋‚˜๋Š” ์–ผ๋งˆ ์ „์— ์ด๊ฒƒ์„ ์กฐ์‚ฌํ•˜๊ณ  ์žˆ์—ˆ๋‹ค. ๊ทธ๋ฆฌ๊ณ  ๋‚ด๊ฐ€ ๋ฐœ๊ฒฌ ํ•œ ๋‘ ๊ฐ€์ง€ ์˜์‹ฌ์Šค๋Ÿฌ์šด ๋ณ€ํ™”๊ฐ€ ์žˆ์Šต๋‹ˆ๋‹ค.

  • # 59391-์ด๊ฒƒ์€ ๋กœ์ปฌ ์Šคํ† ๋ฆฌ์ง€์— ๋Œ€ํ•œ ๋งŽ์€ ํ…Œ์ŠคํŠธ๋ฅผ ์ถ”๊ฐ€ํ–ˆ์Šต๋‹ˆ๋‹ค (์ด ๋ณ€๊ฒฝ ํ›„ ์‹คํ–‰์€ ์‹œ๊ฐ„ ์ดˆ๊ณผ๋กœ ์‹œ์ž‘๋จ)
  • ํฌ๋“œ ๋ฐฉ์ง€ ์นœํ™”๋ ฅ StatefulSet ๋ณผ๋ฅจ์ด (- 5hr์ด ํ…Œ์ŠคํŠธ๊ฐ€ 3.5 ์‹คํ–‰ํ•˜๋Š” ๊ฒƒ) - ๋…ธ๋“œ์— ๋ถ„์‚ฐ ์‚ฌ์šฉํ•ด์•ผํ•ฉ๋‹ˆ๋‹ค https://k8s-gubernator.appspot.com/build/kubernetes-jenkins/logs/ci-kubernetes-e2e -gce-scale-correctness / 79

cc @ kubernetes / sig-storage-bugs

/์–‘์ˆ˜์ธ

์ผ๋ถ€ ๋กœ์ปฌ ์ €์žฅ์†Œ ํ…Œ์ŠคํŠธ์—์„œ๋Š” ํด๋Ÿฌ์Šคํ„ฐ ํฌ๊ธฐ๊ฐ€ ๊ทธ๋ ‡๊ฒŒ ํฌ์ง€ ์•Š๋‹ค๊ณ  ์ƒ๊ฐํ•˜์—ฌ ํด๋Ÿฌ์Šคํ„ฐ์˜ ๋ชจ๋“  ๋…ธ๋“œ๋ฅผ ์‚ฌ์šฉํ•˜๋ ค๊ณ ํ•ฉ๋‹ˆ๋‹ค. ์ตœ๋Œ€ ๋…ธ๋“œ ์ˆ˜๋ฅผ ์ œํ•œํ•˜๋Š” ์ˆ˜์ • ์‚ฌํ•ญ์„ ์ถ”๊ฐ€ํ•˜๊ฒ ์Šต๋‹ˆ๋‹ค.

์ผ๋ถ€ ๋กœ์ปฌ ์ €์žฅ์†Œ ํ…Œ์ŠคํŠธ์—์„œ๋Š” ํด๋Ÿฌ์Šคํ„ฐ ํฌ๊ธฐ๊ฐ€ ๊ทธ๋ ‡๊ฒŒ ํฌ์ง€ ์•Š๋‹ค๊ณ  ์ƒ๊ฐํ•˜์—ฌ ํด๋Ÿฌ์Šคํ„ฐ์˜ ๋ชจ๋“  ๋…ธ๋“œ๋ฅผ ์‚ฌ์šฉํ•˜๋ ค๊ณ ํ•ฉ๋‹ˆ๋‹ค. ์ตœ๋Œ€ ๋…ธ๋“œ ์ˆ˜๋ฅผ ์ œํ•œํ•˜๋Š” ์ˆ˜์ • ์‚ฌํ•ญ์„ ์ถ”๊ฐ€ํ•˜๊ฒ ์Šต๋‹ˆ๋‹ค.

๊ฐ์‚ฌํ•ฉ๋‹ˆ๋‹ค @ msau42- ์ข‹์„ ๊ฒƒ์ž…๋‹ˆ๋‹ค.

https://k8s-testgrid.appspot.com/sig-release-master-blocking#gce -scale-performance suite๋กœ ๋Œ์•„ ๊ฐ€๊ธฐ

๋‚˜๋Š” ์ตœ๋Œ€ 105 ์ ๊ณผ 108 ์  ์ดํ›„๋ฅผ ๋ฉด๋ฐ€ํžˆ ์กฐ์‚ฌํ–ˆ๋‹ค.
pod ์‹œ์ž‘ ์‹œ๊ฐ„๊ณผ wrt์˜ ๊ฐ€์žฅ ํฐ ์ฐจ์ด๋Š” ๋‹จ๊ณ„์—์„œ ๋‚˜ํƒ€๋‚˜๋Š” ๊ฒƒ ๊ฐ™์Šต๋‹ˆ๋‹ค.

10% worst watch latencies: 

[์ด๋ฆ„์ด ์˜คํ•ด์˜ ์†Œ์ง€๊ฐ€ ์žˆ์Œ-์•„๋ž˜์— ์„ค๋ช… ๋จ]

์ตœ๋Œ€ 105 ํšŒ ์‹คํ–‰, ์ผ๋ฐ˜์ ์œผ๋กœ ๋‹ค์Œ๊ณผ ๊ฐ™์ด ๋ณด์ž…๋‹ˆ๋‹ค.

I0129 21:17:43.450] Jan 29 21:17:43.356: INFO: perc50: 1.041233793s, perc90: 1.685463015s, perc99: 2.350747103s

108 ์‹คํ–‰์œผ๋กœ ์‹œ์ž‘ํ•˜๋ฉด ๋‹ค์Œ๊ณผ ๊ฐ™์ด ๋ณด์ž…๋‹ˆ๋‹ค.

Feb 12 10:08:57.123: INFO: perc50: 1.122693874s, perc90: 1.934670461s, perc99: 3.195883331s

๊ทธ๊ฒƒ์€ ๊ธฐ๋ณธ์ ์œผ๋กœ ~ 0.85s ์ฆ๊ฐ€๋ฅผ ์˜๋ฏธํ•˜๋ฉฐ ์ด๊ฒƒ์€ ๋Œ€๋žต ์ตœ์ข… ๊ฒฐ๊ณผ์—์„œ ๊ด€์ฐฐ๋˜๋Š” ๊ฒƒ์ž…๋‹ˆ๋‹ค.

์ž, ๊ทธ "์‹œ๊ณ„ ์ง€์—ฐ"์ด ๋ฌด์—‡์ธ์ง€.
๊ธฐ๋ณธ์ ์œผ๋กœ "Kubelet์—์„œ ํฌ๋“œ๊ฐ€ ์‹คํ–‰ ์ค‘์ž„์„ ๊ด€์ฐฐ ํ•จ"์—์„œ "ํฌ๋“œ ์—…๋ฐ์ดํŠธ ์ƒํƒœ๋ฅผ ์‹คํ–‰ ์ค‘์œผ๋กœ ์„ค์ •ํ•˜๋Š” ํ…Œ์ŠคํŠธ ๊ด€์ฐฐ ์‹œ์ "์‚ฌ์ด์˜ ์‹œ๊ฐ„์ž…๋‹ˆ๋‹ค.
ํšŒ๊ท€ ํ•  ์ˆ˜์žˆ๋Š” ๋ช‡ ๊ฐ€์ง€ ๊ฐ€๋Šฅ์„ฑ์ด ์žˆ์Šต๋‹ˆ๋‹ค.

  • kubelet์˜๋ณด๊ณ  ์ƒํƒœ๊ฐ€ ๋Š๋ ค์ง‘๋‹ˆ๋‹ค.
  • kubelet์ด qps ๋ถ€์กฑ (๋”ฐ๋ผ์„œ๋ณด๊ณ  ์ƒํƒœ๊ฐ€ ๋Š๋ ค์ง)
  • apiserver๊ฐ€ ๋Š๋ฆฌ๊ธฐ ๋•Œ๋ฌธ์— (์˜ˆ : CPU ๋ถ€์กฑ) ์š”์ฒญ ์ฒ˜๋ฆฌ ์†๋„๊ฐ€ ๋Š๋ฆฝ๋‹ˆ๋‹ค (์“ฐ๊ธฐ, ๊ฐ์‹œ ๋˜๋Š” ๋‘˜ ๋‹ค).
  • ํ…Œ์ŠคํŠธ์— CPU๊ฐ€ ๋ถ€์กฑํ•˜์—ฌ ๋“ค์–ด์˜ค๋Š” ์ด๋ฒคํŠธ ์ฒ˜๋ฆฌ ์†๋„๊ฐ€ ๋Š๋ฆฝ๋‹ˆ๋‹ค.

pod์˜ "schedule-> start"์‚ฌ์ด์˜ ์ฐจ์ด๋ฅผ ์‹ค์ œ๋กœ ๊ด€์ฐฐํ•˜์ง€ ๋ชปํ•˜๊ธฐ ๋•Œ๋ฌธ์— ์•„๋งˆ๋„ apiserver๊ฐ€ ์•„๋‹˜์„ ์‹œ์‚ฌํ•ฉ๋‹ˆ๋‹ค (์š”์ฒญ ์ฒ˜๋ฆฌ์™€ watch๋„ ํ•ด๋‹น ๊ฒฝ๋กœ์— ์žˆ๊ธฐ ๋•Œ๋ฌธ). ๋Œ€๋ถ€๋ถ„์˜ ๊ฒฝ์šฐ ๋Š๋ฆฐ kubelet ๋„ˆ๋ฌด (ํฌ๋“œ๋ฅผ ์‹œ์ž‘ํ•˜๊ธฐ ๋•Œ๋ฌธ์—).

๊ทธ๋ž˜์„œ ๊ฐ€์žฅ ๊ฐ€๋Šฅ์„ฑ์ด ๋†’์€ ๊ฐ€์„ค์€ ๋‹ค์Œ๊ณผ ๊ฐ™์Šต๋‹ˆ๋‹ค.

  • kubelet์€ qps๊ฐ€ ๋ถ€์กฑํ•ฉ๋‹ˆ๋‹ค (๋˜๋Š” ์ƒํƒœ ์—…๋ฐ์ดํŠธ๋ฅผ ๋น ๋ฅด๊ฒŒ ๋ณด๋‚ด์ง€ ๋ชปํ•˜๊ฒŒํ•˜๋Š” sth).
  • ํ…Œ์ŠคํŠธ๋Š” CPU๊ฐ€ ๋ถ€์กฑํ•ฉ๋‹ˆ๋‹ค (๋˜๋Š” ๊ทธ๋ ‡๊ฒŒ sth)

๊ทธ ๋‹น์‹œ ํ…Œ์ŠคํŠธ๋Š” ์ „ํ˜€ ๋ณ€ํ•˜์ง€ ์•Š์•˜์Šต๋‹ˆ๋‹ค. ๊ทธ๋ž˜์„œ ๋‚˜๋Š” ๊ทธ๊ฒƒ์ด ์•„๋งˆ๋„ ์ฒซ ๋ฒˆ์งธ๋ผ๊ณ  ์ƒ๊ฐํ•ฉ๋‹ˆ๋‹ค.

์ฆ‰, 105์—์„œ 108๋กœ ๋ณ‘ํ•ฉ ๋œ PR์„ ์‚ดํŽด ๋ดค์ง€๋งŒ ์ง€๊ธˆ๊นŒ์ง€ ์œ ์šฉํ•œ ์ •๋ณด๋ฅผ ์ฐพ์ง€ ๋ชปํ–ˆ์Šต๋‹ˆ๋‹ค.

๋‹ค์Œ ๋‹จ๊ณ„๋Š” ๋‹ค์Œ๊ณผ ๊ฐ™์Šต๋‹ˆ๋‹ค.

  • ๊ฐ€์žฅ ๋Š๋ฆฐ ํฌ๋“œ (๊ฐ€์žฅ ๋Š๋ฆฐ ๊ฒƒ ์‚ฌ์ด์—๋„ O (1s) ์ฐจ์ด๊ฐ€์žˆ๋Š” ๊ฒƒ์ฒ˜๋Ÿผ ๋ณด์ž„)๋ฅผ ์‚ดํŽด๋ณด๊ณ  ๊ทธ ์ฐจ์ด๊ฐ€ ์—…๋ฐ์ดํŠธ ์ƒํƒœ ์š”์ฒญ์ด ์ „์†ก ๋œ "์ด์ „"์˜ "์ด์ „"์ธ์ง€ ํ™•์ธํ•ฉ๋‹ˆ๋‹ค.

๊ทธ๋ž˜์„œ ์˜ˆ์ œ ํฌ๋“œ๋ฅผ ์‚ดํŽด ๋ณด์•˜์Šต๋‹ˆ๋‹ค. ๊ทธ๋ฆฌ๊ณ  ๋‚˜๋Š” ์ด๋ฏธ ์ด๊ฒƒ์„๋ณด๊ณ  ์žˆ์Šต๋‹ˆ๋‹ค :

I0209 10:01:19.960823       1 wrap.go:42] PUT /api/v1/namespaces/e2e-tests-density-30-16-5pl6z/pods/density-latency-pod-3115-fh7hl/status: (1.615907ms) 200 [[kubelet/v1.10.0 (l    inux/amd64) kubernetes/05944b1] 35.196.200.5:37414]
...
I0209 10:01:22.464046       1 wrap.go:42] PUT /api/v1/namespaces/e2e-tests-density-30-16-5pl6z/pods/density-latency-pod-3115-fh7hl/status: (279.153ยตs) 429 [[kubelet/v1.10.0 (li    nux/amd64) kubernetes/05944b1] 35.196.200.5:37414]
I0209 10:01:23.468353       1 wrap.go:42] PUT /api/v1/namespaces/e2e-tests-density-30-16-5pl6z/pods/density-latency-pod-3115-fh7hl/status: (218.216ยตs) 429 [[kubelet/v1.10.0 (li    nux/amd64) kubernetes/05944b1] 35.196.200.5:37414]
I0209 10:01:24.470944       1 wrap.go:42] PUT /api/v1/namespaces/e2e-tests-density-30-16-5pl6z/pods/density-latency-pod-3115-fh7hl/status: (1.42987ms) 200 [[kubelet/v1.10.0 (li    nux/amd64) kubernetes/05944b1] 35.196.200.5:37414]
I0209 09:57:01.559125       1 wrap.go:42] PUT /api/v1/namespaces/e2e-tests-density-30-35-gjzmd/pods/density-latency-pod-2034-t7c7h/status: (1.836423ms) 200 [[kubelet/v1.10.0 (l    inux/amd64) kubernetes/05944b1] 35.229.43.12:37782]
...
I0209 09:57:04.452830       1 wrap.go:42] PUT /api/v1/namespaces/e2e-tests-density-30-35-gjzmd/pods/density-latency-pod-2034-t7c7h/status: (231.2ยตs) 429 [[kubelet/v1.10.0 (linu    x/amd64) kubernetes/05944b1] 35.229.43.12:37782]
I0209 09:57:05.454274       1 wrap.go:42] PUT /api/v1/namespaces/e2e-tests-density-30-35-gjzmd/pods/density-latency-pod-2034-t7c7h/status: (213.872ยตs) 429 [[kubelet/v1.10.0 (li    nux/amd64) kubernetes/05944b1] 35.229.43.12:37782]
I0209 09:57:06.458831       1 wrap.go:42] PUT /api/v1/namespaces/e2e-tests-density-30-35-gjzmd/pods/density-latency-pod-2034-t7c7h/status: (2.13295ms) 200 [[kubelet/v1.10.0 (li    nux/amd64) kubernetes/05944b1] 35.229.43.12:37782]
I0209 10:01:53.063575       1 wrap.go:42] PUT /api/v1/namespaces/e2e-tests-density-30-5-6w4kv/pods/density-latency-pod-3254-586j7/status: (1.410064ms) 200 [[kubelet/v1.10.0 (li    nux/amd64) kubernetes/05944b1] 35.196.212.60:3391
...
I0209 10:01:55.259949       1 wrap.go:42] PUT /api/v1/namespaces/e2e-tests-density-30-5-6w4kv/pods/density-latency-pod-3254-586j7/status: (10.4894ms) 429 [[kubelet/v1.10.0 (lin    ux/amd64) kubernetes/05944b1] 35.196.212.60:33916]
I0209 10:01:56.266377       1 wrap.go:42] PUT /api/v1/namespaces/e2e-tests-density-30-5-6w4kv/pods/density-latency-pod-3254-586j7/status: (233.931ยตs) 429 [[kubelet/v1.10.0 (lin    ux/amd64) kubernetes/05944b1] 35.196.212.60:33916]
I0209 10:01:57.269427       1 wrap.go:42] PUT /api/v1/namespaces/e2e-tests-density-30-5-6w4kv/pods/density-latency-pod-3254-586j7/status: (182.035ยตs) 429 [[kubelet/v1.10.0 (lin    ux/amd64) kubernetes/05944b1] 35.196.212.60:33916]
I0209 10:01:58.290456       1 wrap.go:42] PUT /api/v1/namespaces/e2e-tests-density-30-5-6w4kv/pods/density-latency-pod-3254-586j7/status: (13.44863ms) 200 [[kubelet/v1.10.0 (li    nux/amd64) kubernetes/05944b1] 35.196.212.60:33916]

๋”ฐ๋ผ์„œ ๋ฌธ์ œ๊ฐ€ "429"์™€ ๊ด€๋ จ์ด ์žˆ๋‹ค๋Š” ๊ฒƒ์ด ๋ถ„๋ช…ํ•ด ๋ณด์ž…๋‹ˆ๋‹ค.

์†Œ์œ ์ž ๊ณ„์ •์˜ ํ• ๋‹น๋Ÿ‰์œผ๋กœ ์ธํ•ด ์ œํ•œ๋˜๋Š” API ํ˜ธ์ถœ์ž…๋‹ˆ๊นŒ?

์†Œ์œ ์ž ๊ณ„์ •์˜ ํ• ๋‹น๋Ÿ‰์œผ๋กœ ์ธํ•ด ์ œํ•œ๋˜๋Š” API ํ˜ธ์ถœ์ž…๋‹ˆ๊นŒ?

์ด๊ฒƒ์€ ์ฒ˜์Œ์— ์ƒ๊ฐํ–ˆ๋˜ ๊ฒƒ์ฒ˜๋Ÿผ ์กฐ์ ˆ๋˜์ง€ ์•Š์Šต๋‹ˆ๋‹ค. ์ด๋Š” apiserver์˜ 429์ž…๋‹ˆ๋‹ค (์ด์œ ๋Š” ์–ด๋–ค ์ด์œ ๋กœ ์ธํ•ด apiserver๊ฐ€ ๋Š๋ ค์ง€๊ฑฐ๋‚˜ apiserver์— ๋” ๋งŽ์€ ์š”์ฒญ์ด ์ˆ˜์‹  ๋  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค).

์˜ค ๊ทธ๋ž˜. ์ข‹์€ ์†Œ์‹์ด ์•„๋‹™๋‹ˆ๋‹ค.

/ ์ด์ •ํ‘œ ์ง€์šฐ๊ธฐ

/ milestone v1.10

/ ์ด์ •ํ‘œ ์ง€์šฐ๊ธฐ

@cjwagner : ๋งˆ์ผ์Šคํ†ค ์„ ์„ค์ •ํ•˜๋ ค๋ฉด

์— ๋Œ€ํ•œ ์‘๋‹ต ์ด :

/ ์ด์ •ํ‘œ ์ง€์šฐ๊ธฐ

PR ๋Œ“๊ธ€์„ ์‚ฌ์šฉํ•˜์—ฌ ๋‚˜์™€ ์ƒํ˜ธ ์ž‘์šฉํ•˜๋Š” ๋ฐฉ๋ฒ•์€ ์—ฌ๊ธฐ์—์„œ ํ™•์ธํ•  ์ˆ˜ kubernetes / test-infra ์ €์žฅ์†Œ์— ๋ฌธ์ œ๋ฅผ ์ œ์ถœํ•˜์„ธ์š”.

/ milestone v1.9

@cjwagner : ๋งˆ์ผ์Šคํ†ค ์„ ์„ค์ •ํ•˜๋ ค๋ฉด

์— ๋Œ€ํ•œ ์‘๋‹ต ์ด :

/ milestone v1.9

PR ๋Œ“๊ธ€์„ ์‚ฌ์šฉํ•˜์—ฌ ๋‚˜์™€ ์ƒํ˜ธ ์ž‘์šฉํ•˜๋Š” ๋ฐฉ๋ฒ•์€ ์—ฌ๊ธฐ์—์„œ ํ™•์ธํ•  ์ˆ˜ kubernetes / test-infra ์ €์žฅ์†Œ์— ๋ฌธ์ œ๋ฅผ ์ œ์ถœํ•˜์„ธ์š”.

PR https://github.com/kubernetes/kubernetes/pull/60740 ์ด ์‹œ๊ฐ„ ์ดˆ๊ณผ ๋ฌธ์ œ๋ฅผ ํ•ด๊ฒฐ ํ•œ ๊ฒƒ ๊ฐ™์Šต๋‹ˆ๋‹ค. ๋น ๋ฅธ ์‘๋‹ต์„ ์œ„ํ•ด @ msau42 ์—๊ฒŒ ๊ฐ์‚ฌ๋“œ๋ฆฝ๋‹ˆ๋‹ค.
์ •ํ™•์„ฑ ์ž‘์—… (2k ๋ฐ 5k ๋ชจ๋‘)์ด ์ด์ œ ๋…น์ƒ‰์œผ๋กœ ๋Œ์•„ ์™”์Šต๋‹ˆ๋‹ค.

๊ทธ๋ž˜์„œ ๊ทธ ๋ณผ๋ฅจ ํ…Œ์ŠคํŠธ์— ๋Œ€ํ•œ ๋‚ด ์˜์‹ฌ ์€ ์‹ค์ œ๋กœ ์˜ณ์•˜์Šต๋‹ˆ๋‹ค. :)

ACK. ์ง„ํ–‰ ์ค‘
ETA : 2018 ๋…„ 9 ์›” 3 ์ผ
์œ„ํ—˜ : k8s ์„ฑ๋Šฅ์— ๋Œ€ํ•œ ์ž ์žฌ์  ์˜ํ–ฅ

๊ทธ๋ž˜์„œ ์ €๋Š” ์ด๊ฒƒ์— ๋Œ€ํ•ด ์กฐ๊ธˆ ํŒŒ๊ณ  ๋“ค์–ด 5k ๋…ธ๋“œ ํ…Œ์ŠคํŠธ์— ๋Œ€ํ•œ pod-startup ์ง€์—ฐ ๊ทธ๋ž˜ํ”„์—์„œ ํšŒ๊ท€๊ฐ€ b / w ์‹คํ–‰ 108 ๋ฐ 109์—์žˆ์„ ์ˆ˜๋„ ์žˆ๋‹ค๋Š” ๋Š๋‚Œ์„ ๋ฐ›์•˜์Šต๋‹ˆ๋‹ค (99 % ile ์ฐธ์กฐ).

pod_startup_5k

๋‚˜๋Š” diff๋ฅผ ๋น ๋ฅด๊ฒŒ ํ›‘์–ด

"NewRequest์—์„œ ์š”์ฒญ ์ œํ•œ ์‹œ๊ฐ„์„ ๋๊นŒ์ง€ ์ „๋‹ฌํ•˜๋„๋ก ํ—ˆ์šฉ"# 51042

์ด PR์€ API ํ˜ธ์ถœ์— ๋Œ€ํ•œ ์ฟผ๋ฆฌ ๋งค๊ฐœ ๋ณ€์ˆ˜๋กœ ํด๋ผ์ด์–ธํŠธ์˜ ์ œํ•œ ์‹œ๊ฐ„์„ ์ „ํŒŒ ํ•  ์ˆ˜์žˆ๊ฒŒํ•ฉ๋‹ˆ๋‹ค. ๊ทธ๋ฆฌ๊ณ  ์‹ค์ œ๋กœ ๋‘ ๋ฒˆ์˜ ์‹คํ–‰์—์„œ PATCH node/status ํ˜ธ์ถœ์—์„œ ๋‹ค์Œ๊ณผ ๊ฐ™์€ ์ฐจ์ด์ ์ด ์žˆ์Šต๋‹ˆ๋‹ค (apiserver ๋กœ๊ทธ์—์„œ).

run-108 :

I0207 22:01:06.450385       1 wrap.go:42] PATCH /api/v1/nodes/gce-scale-cluster-minion-group-1-2rn2/status: (11.81392ms) 200 [[kubelet/v1.10.0 (linux/amd64) kubernetes/11104d7] 35.227.96.23:47270]
I0207 22:01:03.857892       1 wrap.go:42] PATCH /api/v1/nodes/gce-scale-cluster-minion-group-3-9659/status: (8.570809ms) 200 [[kubelet/v1.10.0 (linux/amd64) kubernetes/11104d7] 35.196.85.108:43532]
I0207 22:01:03.857972       1 wrap.go:42] PATCH /api/v1/nodes/gce-scale-cluster-minion-group-3-wc4w/status: (8.287643ms) 200 [[kubelet/v1.10.0 (linux/amd64) kubernetes/11104d7] 35.229.110.22:50530]

์‹คํ–‰ -109 :

I0209 21:01:08.551289       1 wrap.go:42] PATCH /api/v1/nodes/gce-scale-cluster-minion-group-2-89f2/status?timeout=10s: (71.351634ms) 200 [[kubelet/v1.10.0 (linux/amd64) kubernetes/05944b1] 35.229.77.215:51070]
I0209 21:01:08.551310       1 wrap.go:42] PATCH /api/v1/nodes/gce-scale-cluster-minion-group-2-3ms3/status?timeout=10s: (70.705466ms) 200 [[kubelet/v1.10.0 (linux/amd64) kubernetes/05944b1] 35.227.84.87:49936]
I0209 21:01:08.551394       1 wrap.go:42] PATCH /api/v1/nodes/gce-scale-cluster-minion-group-3-wc02/status?timeout=10s: (70.847605ms) 200 [[kubelet/v1.10.0 (linux/amd64) kubernetes/05944b1] 35.196.125.143:53662]

๋‚ด ๊ฐ€์„ค์€ PATCH ํ˜ธ์ถœ์— 10 ์ดˆ์˜ ์‹œ๊ฐ„ ์ดˆ๊ณผ๊ฐ€ ์ถ”๊ฐ€ ๋˜์—ˆ๊ธฐ ๋•Œ๋ฌธ์— ํ•ด๋‹น ํ˜ธ์ถœ์ด ์ด์ œ ์„œ๋ฒ„ ์ธก์—์„œ ๋” ์˜ค๋žœ ์‹œ๊ฐ„ ๋™์•ˆ ์ง€์†๋œ๋‹ค๋Š” ๊ฒƒ์ž…๋‹ˆ๋‹ค (IIUC ์ด ์„ค๋ช…์ด ์˜ฌ๋ฐ”๋ฅด๊ฒŒ ์ ์šฉ๋จ). ์ด๊ฒƒ์€ ๊ทธ๋“ค์ด ์ด์ œ ๋” ๊ธด ๊ธฐ๊ฐ„ ๋™์•ˆ ๊ธฐ๋‚ด ๋Œ€๊ธฐ์—ด์— ์žˆ์Œ์„ ์˜๋ฏธํ•ฉ๋‹ˆ๋‹ค. ์ด๋Š” ์ด๋Ÿฌํ•œ PATCH ํ˜ธ์ถœ์ด ์ด๋Ÿฌํ•œ ํฐ ํด๋Ÿฌ์Šคํ„ฐ์—์„œ ์—„์ฒญ๋‚œ ์–‘์œผ๋กœ ๋ฐœ์ƒํ•œ๋‹ค๋Š” ์‚ฌ์‹ค๊ณผ ๊ฒฐํ•ฉ๋˜์–ด PUT pod/status ํ˜ธ์ถœ์ด ๊ธฐ๋‚ด ๋Œ€๊ธฐ์—ด์—์„œ ์ถฉ๋ถ„ํ•œ ๋Œ€์—ญํญ์„ ์–ป์ง€ ๋ชปํ•˜์—ฌ 429s๋กœ ๋ฐ˜ํ™˜๋ฉ๋‹ˆ๋‹ค. ๊ทธ ๊ฒฐ๊ณผ pod-status ์—…๋ฐ์ดํŠธ์‹œ kubelet ์ธก ์ง€์—ฐ์ด ์ฆ๊ฐ€ํ–ˆ์Šต๋‹ˆ๋‹ค. ์ด ์ด์•ผ๊ธฐ๋Š” ์œ„์˜ @ wojtek-t์˜ ๊ด€์ฐฐ๊ณผ๋„ ์ž˜ ๋งž์Šต๋‹ˆ๋‹ค.

์ด ๊ฐ€์„ค์„ ํ™•์ธํ•˜๊ธฐ ์œ„ํ•ด ๋” ๋งŽ์€ ์ฆ๊ฑฐ๋ฅผ ์ˆ˜์ง‘ํ•˜๋ ค๊ณ  ๋…ธ๋ ฅํ•  ๊ฒƒ์ž…๋‹ˆ๋‹ค.

๊ทธ๋ž˜์„œ ํ…Œ์ŠคํŠธ ์‹คํ–‰ ๋™์•ˆ PATCH node-status ์ง€์—ฐ ์‹œ๊ฐ„์ด ์–ด๋–ป๊ฒŒ ๋‹ฌ๋ผ์ง€๋Š” ์ง€ ํ™•์ธํ–ˆ๋Š”๋ฐ ์‹ค์ œ๋กœ ๊ทธ ์‹œ๊ฐ„์— 99 ๋ฒˆ์งธ ๋ฐฑ๋ถ„์œ„ ์ˆ˜ (๋งจ ์œ„ ์ค„ ์ฐธ์กฐ)๊ฐ€ ์ฆ๊ฐ€ํ•œ ๊ฒƒ์ฒ˜๋Ÿผ ๋ณด์ž…๋‹ˆ๋‹ค. ๊ทธ๋Ÿฌ๋‚˜ ๊ทธ๊ฒƒ์ด 108๊ณผ 109๋กœ ์‹คํ–‰๋˜์—ˆ๋‹ค๋Š” ๊ฒƒ์€ ๋ถ„๋ช…ํ•˜์ง€ ์•Š์Šต๋‹ˆ๋‹ค.

patch_node_status_latency

[ํŽธ์ง‘ : ์ด์ „ ๋Œ“๊ธ€์ด 429s์˜ ๊ฐœ์ˆ˜๋ฅผ ์ž˜๋ชป ์–ธ๊ธ‰ํ–ˆ์Šต๋‹ˆ๋‹ค (ํด๋ผ์ด์–ธํŠธ๋Š” kubelet์ด ์•„๋‹ˆ๋ผ npd ์ž„)]

๋‚˜๋Š” ์ง€๊ธˆ ๋” ๋งŽ์€ ์ฆ๊ฑฐ๋ฅผ ๊ฐ€์ง€๊ณ  ์žˆ์Šต๋‹ˆ๋‹ค.

run-108 ์—์„œ ์šฐ๋ฆฌ๋Š” 429 ๊ฑด์˜ PATCH node/status ํ˜ธ์ถœ์„ 479k ๊ฑด ๋ฐ›์•˜์Šต๋‹ˆ๋‹ค.

{
        "metric": {
          "__name__": "apiserver_request_count",
          "client": "kubelet/v1.10.0 (linux/amd64) kubernetes/11104d7",
          "code": "429",
          "contentType": "resource",
          "resource": "nodes",
          "scope": "",
          "subresource": "status",
          "verb": "PATCH"
        },
        "value": [
          0,
          "479181"
        ]
      },

๊ทธ๋ฆฌ๊ณ  run-109 ์—๋Š” ~ 757k๊ฐ€ ์žˆ์Šต๋‹ˆ๋‹ค.

{
        "metric": {
          "__name__": "apiserver_request_count",
          "client": "kubelet/v1.10.0 (linux/amd64) kubernetes/05944b1",
          "code": "429",
          "contentType": "resource",
          "resource": "nodes",
          "scope": "",
          "subresource": "status",
          "verb": "PATCH"
        },
        "value": [
          0,
          "757318"
        ]
      },

๊ทธ๋ฆฌ๊ณ  ... ์ด๊ฒƒ ์ข€๋ณด์„ธ์š” :

run-108์—์„œ :

{
        "metric": {
          "__name__": "apiserver_request_count",
          "client": "kubelet/v1.10.0 (linux/amd64) kubernetes/11104d7",
          "code": "429",
          "contentType": "namespace",
          "resource": "pods",
          "scope": "",
          "subresource": "status",
          "verb": "UPDATE"
        },
        "value": [
          0,
          "28594"
        ]
      },

๊ทธ๋ฆฌ๊ณ  run-109์—์„œ :

{
        "metric": {
          "__name__": "apiserver_request_count",
          "client": "kubelet/v1.10.0 (linux/amd64) kubernetes/05944b1",
          "code": "429",
          "contentType": "namespace",
          "resource": "pods",
          "scope": "",
          "subresource": "status",
          "verb": "UPDATE"
        },
        "value": [
          0,
          "33224"
        ]
      },

๋‚˜๋Š” ๋ช‡ ๊ฐ€์ง€ ๋‹ค๋ฅธ ์ธ์ ‘ ์‹คํ–‰์— ๋Œ€ํ•œ ๋ฒˆํ˜ธ๋ฅผ ํ™•์ธํ–ˆ์Šต๋‹ˆ๋‹ค.

  • run-104 ์˜ ๊ฒฝ์šฐ 21187์ž…๋‹ˆ๋‹ค.
  • run-105 ์˜ ๊ฒฝ์šฐ 22003์ž…๋‹ˆ๋‹ค.
  • run-108 ์˜ ๊ฒฝ์šฐ 28594์ž…๋‹ˆ๋‹ค.

-PR ํ•ฉ๋ณ‘-

  • run-109 ์˜ ๊ฒฝ์šฐ 33224์ž…๋‹ˆ๋‹ค.
  • run-110 ์˜ ๊ฒฝ์šฐ 30977์ž…๋‹ˆ๋‹ค.
  • run-111 ์˜ ๊ฒฝ์šฐ 25615์ž…๋‹ˆ๋‹ค.

์•ฝ๊ฐ„ ๋‹ค์–‘ํ•ด ๋ณด์ด์ง€๋งŒ ์ „๋ฐ˜์ ์œผ๋กœ ์•„๋‹ˆ์˜ค์ฒ˜๋Ÿผ ๋ณด์ž…๋‹ˆ๋‹ค. 429 ๊ฐœ ์ค‘ ์•ฝ 25 % ์ฆ๊ฐ€ํ–ˆ์Šต๋‹ˆ๋‹ค.

๊ทธ๋ฆฌ๊ณ  429๋ฅผ๋ฐ›์€ kubelet์—์„œ ์˜ค๋Š” PATCH node-status ์˜ ๊ฒฝ์šฐ ์ˆซ์ž๋Š” ๋‹ค์Œ๊ณผ ๊ฐ™์Šต๋‹ˆ๋‹ค.

  • ์‹คํ–‰ -104 = 313348
  • ์‹คํ–‰ -105 = 309136
  • ์‹คํ–‰ 108 = 479181

-PR ํ•ฉ๋ณ‘-

  • ์‹คํ–‰ -109 = 757318
  • ์‹คํ–‰ 110 = 752062
  • ์‹คํ–‰ -111 = 296368

์ด๊ฒƒ์€ ๋˜ํ•œ ๋‹ค์–‘ํ•˜์ง€๋งŒ ์ผ๋ฐ˜์ ์œผ๋กœ ์ฆ๊ฐ€ํ•˜๋Š” ๊ฒƒ์ฒ˜๋Ÿผ ๋ณด์ž…๋‹ˆ๋‹ค.

PATCH node-status ํ†ตํ™” ๋Œ€๊ธฐ ์‹œ๊ฐ„์˜ 99 ๋ฒˆ์งธ % ile๋„ ์ผ๋ฐ˜์ ์œผ๋กœ ์ฆ๊ฐ€ํ•œ ๊ฒƒ์œผ๋กœ ๋ณด์ž…๋‹ˆ๋‹ค (https://github.com/kubernetes/kubernetes/issues/60589#issuecomment-370573938์—์„œ ์˜ˆ์ธกํ–ˆ๋“ฏ์ด).

run-104 (798ms), run-105 (783ms), run-108 (826ms)
run-109 (878ms), run-110 (869ms), run-111 (806ms)

Btw-์œ„์˜ ๋ชจ๋“  ๋ฉ”ํŠธ๋ฆญ์„ Wrt, 108์€ ์ •์ƒ๋ณด๋‹ค ๋‚˜์œ ์‹คํ–‰์œผ๋กœ ๋ณด์ด๋ฉฐ 111์€ ์ •์ƒ๋ณด๋‹ค ๋‚˜์€ ์‹คํ–‰์œผ๋กœ ๋ณด์ž…๋‹ˆ๋‹ค.

๋‚ด์ผ ๋Œ€๊ทœ๋ชจ 5k ํด๋Ÿฌ์Šคํ„ฐ๋ฅผ ์ˆ˜๋™์œผ๋กœ ์‹คํ–‰ํ•˜์—ฌ์ด๋ฅผ ํ™•์ธํ•˜๋ ค๊ณ ํ•ฉ๋‹ˆ๋‹ค.

@shyamjvs ๋ถ„๋ฅ˜ ์ฃผ์…”์„œ ๊ฐ์‚ฌํ•ฉ๋‹ˆ๋‹ค

๊ทธ๋ž˜์„œ ๋‚˜๋Š” ~ HEAD์— ๋Œ€ํ•ด 5k ํด๋Ÿฌ์Šคํ„ฐ์— ๋Œ€ํ•ด ๋ฐ€๋„ ํ…Œ์ŠคํŠธ๋ฅผ ๋‘ ๋ฒˆ ์‹คํ–‰ํ–ˆ๊ณ , ํ…Œ์ŠคํŠธ๋Š” ๋†€๋ž๊ฒŒ๋„ 99 % ile ํฌ๋“œ ์‹œ์ž‘ ์ง€์—ฐ ์‹œ๊ฐ„์„ 4.510015461s ๋ฐ 4.623276837s ๋‘ ๋ฒˆ ํ†ต๊ณผํ–ˆ์Šต๋‹ˆ๋‹ค. ๊ทธ๋Ÿฌ๋‚˜ '๊ฐ์‹œ ๋Œ€๊ธฐ ์‹œ๊ฐ„'์€ @ wojtek-t๊ฐ€ https://github.com/kubernetes/kubernetes/issues/60589#issuecomment -369951288์—์„œ ์ง€์ ํ•œ ์ฆ๊ฐ€๋ฅผ ๋ณด์—ฌ์ฃผ์—ˆ์Šต๋‹ˆ๋‹ค.

์ฒซ ๋ฒˆ์งธ ์‹คํ–‰์—์„œ๋Š” ๋‹ค์Œ๊ณผ ๊ฐ™์Šต๋‹ˆ๋‹ค.

INFO: perc50: 1.123056294s, perc90: 1.932503347s, perc99: 3.061238209s

๋‘ ๋ฒˆ์งธ ์‹คํ–‰์€ ๋‹ค์Œ๊ณผ ๊ฐ™์Šต๋‹ˆ๋‹ค.

INFO: perc50: 1.121218293s, perc90: 1.996638787s, perc99: 3.137325187s

์ด์ œ ์ด์ „์— ์–ด๋–ค ์ผ์ด ์žˆ์—ˆ๋Š”์ง€ ํ™•์ธํ•ด ๋ณด๊ฒ ์Šต๋‹ˆ๋‹ค.

https://github.com/kubernetes/kubernetes/issues/60589#issuecomment -370573938-์ด ๋‚ด์šฉ์„ ๋”ฐ๋ฅด๊ณ  ์žˆ๋Š”์ง€ ์ž˜ ๋ชจ๋ฅด๊ฒ ์Šต๋‹ˆ๋‹ค. ์˜ˆ-์‹œ๊ฐ„ ์ œํ•œ์„ ์ถ”๊ฐ€ํ–ˆ์ง€๋งŒ ๊ธฐ๋ณธ ์‹œ๊ฐ„ ์ œํ•œ์€ 10 ์ดˆ IIRC๋ณด๋‹ค ํฝ๋‹ˆ๋‹ค. ์ƒํ™ฉ์„ ์•…ํ™”์‹œํ‚ค์ง€ ๋งˆ์‹ญ์‹œ์˜ค.

๋‚˜๋Š” ์šฐ๋ฆฌ๊ฐ€ ์™œ ๋” ๋งŽ์€ 429๋ฅผ ๊ด€์ฐฐํ•˜๋Š”์ง€ ์•„์ง ์ดํ•ดํ•˜์ง€ ๋ชปํ•œ๋‹ค๊ณ  ์ƒ๊ฐํ•ฉ๋‹ˆ๋‹ค (์ด๊ฒƒ์€ ๋‚ด๊ฐ€ ์ด๋ฏธ https://github.com/kubernetes/kubernetes/issues/60589#issuecomment-370036377์—์„œ ์–ธ๊ธ‰ ํ•œ 429์™€ ๊ด€๋ จ์ด ์žˆ๋‹ค๋Š” ์‚ฌ์‹ค)

๊ทธ๋ฆฌ๊ณ  ๋‹น์‹ ์˜ ์ˆซ์ž์™€ ๊ด€๋ จํ•˜์—ฌ-ํšŒ๊ท€๊ฐ€ 109์— ์žˆ๋‹ค๊ณ  ํ™•์‹ ํ•˜์ง€ ์•Š์Šต๋‹ˆ๋‹ค-๋‘ ๊ฐœ์˜ ํšŒ๊ท€๊ฐ€ ์žˆ์—ˆ์„ ๊ฒƒ์ž…๋‹ˆ๋‹ค-ํ•˜๋‚˜๋Š” 105์™€ 108 ์‚ฌ์ด์— ์žˆ๊ณ  ๋‹ค๋ฅธ ํ•˜๋‚˜๋Š” 109์— ์žˆ์Šต๋‹ˆ๋‹ค.

ํ  ... ๋‚˜๋Š” ๋‹น์‹ ์ด ์–ธ๊ธ‰ ํ•œ ๊ฐ€๋Šฅ์„ฑ์„ ๋ถ€์ •ํ•˜์ง€ ์•Š๋Š”๋‹ค (์œ„๋Š” ๋‹จ์ง€ ๋‚˜์˜ ๊ฐ€์„ค์ด์—ˆ๋‹ค).
๋‚˜๋Š” ํ˜„์žฌ ํ™•์ธ์„ ์œ„ํ•ด bisection (์ง€๊ธˆ 108์˜ ์ปค๋ฐ‹์— ๋ฐ˜ํ•จ)์„ํ•˜๊ณ  ์žˆ์Šต๋‹ˆ๋‹ค.

ํšŒ๊ท€๊ฐ€ ๋Ÿฐ 108 ์ด์ „์— ์žˆ๋‹ค๋Š” ๋Š๋‚Œ์€ ๋” ๊ฐ•ํ•˜๊ณ  ๊ฐ•ํ•ฉ๋‹ˆ๋‹ค.
์˜ˆ๋ฅผ ๋“ค์–ด api ํ˜ธ์ถœ์˜ ์ง€์—ฐ ์‹œ๊ฐ„์€ 108 ์‹คํ–‰์—์„œ ์ด๋ฏธ ์ฆ๊ฐ€ํ–ˆ์Šต๋‹ˆ๋‹ค.

ํŒจ์น˜ ๋…ธ๋“œ ์ƒํƒœ :
90 % : 198ms (105) 447ms (108) 444ms (109)

ํฌ๋“œ ์ƒํƒœ ๋„ฃ๊ธฐ :
99 % : 83ms (105) 657ms (108) 728ms (109)

๋‚ด๊ฐ€ ๋งํ•˜๋ ค๋Š” ๊ฒƒ์€ ๋‹ค์Œ๊ณผ ๊ฐ™์Šต๋‹ˆ๋‹ค.

  • 429์˜ ์ˆ˜๋Š” ๊ฒฐ๊ณผ์ด๋ฉฐ ์šฐ๋ฆฌ๋Š” ๊ทธ๊ฒƒ์— ๋„ˆ๋ฌด ๋งŽ์€ ์‹œ๊ฐ„์„ ์†Œ๋น„ํ•ด์„œ๋Š” ์•ˆ๋ฉ๋‹ˆ๋‹ค
  • ๊ทผ๋ณธ ์›์ธ์€ ๋Š๋ฆฐ API ํ˜ธ์ถœ ๋˜๋Š” ๋” ๋งŽ์€ ํ˜ธ์ถœ์ž…๋‹ˆ๋‹ค.

์šฐ๋ฆฌ๋Š” 108์—์„œ ๋” ๋Š๋ฆฐ API ํ˜ธ์ถœ์„ ๋ถ„๋ช…ํžˆ ๋ณด๋Š” ๊ฒƒ ๊ฐ™์Šต๋‹ˆ๋‹ค. ๋ฌธ์ œ๋Š” ๋” ๋งŽ์€ ์ˆ˜์˜ API ํ˜ธ์ถœ์ด ์žˆ๋Š”์ง€ ์—ฌ๋ถ€์ž…๋‹ˆ๋‹ค.

๊ทธ๋ž˜์„œ ์š”์ฒญ์ด ๋ˆˆ์— ๋„๊ฒŒ ๋Š๋ฆฐ ์ด์œ ๋ฅผ ์ƒ๊ฐํ•ฉ๋‹ˆ๋‹ค. ์„ธ ๊ฐ€์ง€ ์ฃผ์š” ๊ฐ€๋Šฅ์„ฑ์ด ์žˆ์Šต๋‹ˆ๋‹ค.

  1. ํ›จ์”ฌ ๋” ๋งŽ์€ ์š”์ฒญ์ด ์žˆ์Šต๋‹ˆ๋‹ค (์ฒ˜์Œ์—๋Š” ๊ทธ๋ ‡์ง€ ์•Š์€ ๊ฒƒ ๊ฐ™์Šต๋‹ˆ๋‹ค)

  2. ์ฒ˜๋ฆฌ ๊ฒฝ๋กœ์— ๋ฌด์–ธ๊ฐ€๋ฅผ ์ถ”๊ฐ€ํ–ˆ๊ฑฐ๋‚˜ (์˜ˆ : ์ถ”๊ฐ€ ์ฒ˜๋ฆฌ) ๊ฐœ์ฒด ์ž์ฒด๊ฐ€ ๋” ํฝ๋‹ˆ๋‹ค.

  3. ๋งˆ์Šคํ„ฐ ๋จธ์‹ ์˜ ๋‹ค๋ฅธ ๊ฒƒ (์˜ˆ : ์Šค์ผ€์ค„๋Ÿฌ)์ด ๋” ๋งŽ์€ CPU๋ฅผ ์†Œ๋น„ํ•˜๋ฏ€๋กœ apiserver๊ฐ€ ๋” ๋งŽ์ด ์†Œ๋ชจ๋ฉ๋‹ˆ๋‹ค.

๊ทธ๋ž˜์„œ ์ €์™€ @ wojtek-t๋Š” ์˜คํ”„๋ผ์ธ์—์„œ ๋…ผ์˜ํ–ˆ๊ณ  ์šฐ๋ฆฌ๋Š” 108 ์ด์ „์— ํšŒ๊ท€๊ฐ€์žˆ์„ ๊ฐ€๋Šฅ์„ฑ์ด ๋†’๋‹ค๋Š” ๋ฐ ๋™์˜ํ•ฉ๋‹ˆ๋‹ค. ๋ช‡ ๊ฐ€์ง€ ์š”์ ์„ ์ถ”๊ฐ€ํ•ฉ๋‹ˆ๋‹ค.

ํ›จ์”ฌ ๋” ๋งŽ์€ ์š”์ฒญ์ด ์žˆ์Šต๋‹ˆ๋‹ค (์ฒ˜์Œ์—๋Š” ๊ทธ๋ ‡์ง€ ์•Š์€ ๊ฒƒ ๊ฐ™์Šต๋‹ˆ๋‹ค)

๋‚˜์—๊ฒŒ๋„ ๊ทธ๋ ‡์ง€ ์•Š์€ ๊ฒƒ ๊ฐ™์Šต๋‹ˆ๋‹ค.

์ฒ˜๋ฆฌ ๊ฒฝ๋กœ์— ๋ฌด์–ธ๊ฐ€๋ฅผ ์ถ”๊ฐ€ํ–ˆ๊ฑฐ๋‚˜ (์˜ˆ : ์ถ”๊ฐ€ ์ฒ˜๋ฆฌ) ๊ฐœ์ฒด ์ž์ฒด๊ฐ€ ๋” ํฝ๋‹ˆ๋‹ค.

๋‚ด ๋Š๋‚Œ์€ apiserver์™€ ๋‹ฌ๋ฆฌ kubelet์—์„œ ๋” ๊ฐ€๋Šฅ์„ฑ์ด ๋†’๋‹ค๋Š” ๊ฒƒ์ž…๋‹ˆ๋‹ค (kubemark-5000์—์„œ ํŒจ์น˜ / ๋„ฃ๊ธฐ ์ง€์—ฐ ์‹œ๊ฐ„์— ๋ˆˆ์— ๋„๋Š” ๋ณ€ํ™”๊ฐ€ ๋ณด์ด์ง€ ์•Š๊ธฐ ๋•Œ๋ฌธ์—)

๋งˆ์Šคํ„ฐ ๋จธ์‹ ์˜ ๋‹ค๋ฅธ ๊ฒƒ (์˜ˆ : ์Šค์ผ€์ค„๋Ÿฌ)์ด ๋” ๋งŽ์€ CPU๋ฅผ ์†Œ๋น„ํ•˜๋ฏ€๋กœ apiserver๊ฐ€ ๋” ๋งŽ์ด ์†Œ๋ชจ๋ฉ๋‹ˆ๋‹ค.

IMO๋Š” ๋งˆ์Šคํ„ฐ์—์„œ CPU / mem์ด ์ƒ๋‹นํžˆ ๋Š์Šจํ•˜๊ธฐ ๋•Œ๋ฌธ์— ๊ทธ๋ ‡์ง€ ์•Š์Šต๋‹ˆ๋‹ค. ๋˜ํ•œ perf-dash๋Š” ๋งˆ์Šคํ„ฐ ๊ตฌ์„ฑ ์š”์†Œ์˜ ์‚ฌ์šฉ๋Ÿ‰์ด ํฌ๊ฒŒ ์ฆ๊ฐ€ํ•˜์ง€ ์•Š์Œ์„ ์‹œ์‚ฌํ•˜์ง€ ์•Š์Šต๋‹ˆ๋‹ค.

์ฆ‰, ๋‚˜๋Š” ์กฐ๊ธˆ ํŒŒํ—ค ์ณค๊ณ  "์šด์ด ์ข‹๊ฒŒ๋„"2k ๋…ธ๋“œ ํด๋Ÿฌ์Šคํ„ฐ์˜ ๊ฒฝ์šฐ์—๋„ ์ด๋Ÿฌํ•œ ์‹œ๊ณ„ ์ง€์—ฐ ์‹œ๊ฐ„์ด ์ฆ๊ฐ€ํ•˜๋Š” ๊ฒƒ์„ ๋ฐœ๊ฒฌ ํ•œ ๊ฒƒ ๊ฐ™์Šต๋‹ˆ๋‹ค.

INFO: perc50: 1.024377533s, perc90: 1.589770858s, perc99: 1.934099611s
INFO: perc50: 1.03503718s, perc90: 1.624451701s, perc99: 2.348645755s

์ด๋“ฑ๋ถ„์„ ์กฐ๊ธˆ ๋” ์‰ฝ๊ฒŒ ๋งŒ๋“ค์–ด์•ผํ•ฉ๋‹ˆ๋‹ค.

๋ถˆํ–‰ํžˆ๋„ ์ด๋Ÿฌํ•œ ์‹œ๊ณ„ ์ง€์—ฐ ์‹œ๊ฐ„์˜ ๋ณ€ํ™”๋Š” ์ผํšŒ์„ฑ์ฒ˜๋Ÿผ ๋ณด์ž…๋‹ˆ๋‹ค (๊ทธ๋ ‡์ง€ ์•Š์œผ๋ฉด ๊ฑฐ์˜ ๋™์ผํ•ฉ๋‹ˆ๋‹ค). ๋‹คํ–‰ํžˆ๋„ ํšŒ๊ท€์˜ ์‹ ๋ขฐํ•  ์ˆ˜์žˆ๋Š” ์ง€ํ‘œ๋กœ PUT pod-status ์ง€์—ฐ ์‹œ๊ฐ„์ด ์žˆ์Šต๋‹ˆ๋‹ค. ๋‚˜๋Š” ์–ด์ œ 2 ๋ผ์šด๋“œ์˜ ์ด๋ถ„๋ฒ•์„ ์‹คํ–‰ ํ•˜๊ณ ์ด diff (~ 80 ์ปค๋ฐ‹)๋กœ ์ขํ˜”์Šต๋‹ˆ๋‹ค. ๋‚˜๋Š” ๊ทธ๊ฒƒ๋“ค์„ ํ›‘์–ด ๋ณด์•˜๊ณ  ๋‹ค์Œ์— ๋Œ€ํ•ด ๊ฐ•ํ•œ ์˜ํ˜น์„ ๊ฐ€์ง€๊ณ  ์žˆ์Šต๋‹ˆ๋‹ค.

  • # 58990-ํฌ๋“œ ์ƒํƒœ์— ์ƒˆ ํ•„๋“œ๋ฅผ ์ถ”๊ฐ€ํ•ฉ๋‹ˆ๋‹ค (IIUC ์„ ์ ์ด ๋ฐœ์ƒํ•˜์ง€ ์•Š๋Š” ํ…Œ์ŠคํŠธ์—์„œ ์ฑ„์›Œ์งˆ ์ง€ ํ™•์‹คํ•˜์ง€ ์•Š์ง€๋งŒ ํ™•์ธํ•ด์•ผ ํ•จ)
  • # 58645-etcd ์„œ๋ฒ„ ๋ฒ„์ „์„ 3.2.14๋กœ ์—…๋ฐ์ดํŠธ

# 58990์ด ์—ฌ๊ธฐ์— ๊ด€๋ จ๋˜์–ด ์žˆ๋Š”์ง€ ์ •๋ง ์˜์‹ฌ ์Šค๋Ÿฝ์Šต๋‹ˆ๋‹ค. NominatedNodeName์€ ๋‹จ์ผ ๋…ธ๋“œ ์ด๋ฆ„์„ ํฌํ•จํ•˜๋Š” ๋ฌธ์ž์—ด์ž…๋‹ˆ๋‹ค. ํ•ญ์ƒ ์ฑ„์›Œ์ง€๋”๋ผ๋„ ๊ฐœ์ฒด ํฌ๊ธฐ์˜ ๋ณ€ํ™”๋Š” ๋ฌด์‹œํ•  ์ˆ˜ ์žˆ์–ด์•ผํ•ฉ๋‹ˆ๋‹ค.

@ wojtek-t-์˜คํ”„๋ผ์ธ์—์„œ ์ œ์•ˆ ํ•˜์…จ๋“ฏ์ด kubemark (https://github.com/kubernetes/kubernetes/blob/master/test/kubemark/)์—์„œ ๋‹ค๋ฅธ ๋ฒ„์ „ (3.2.16)์„ ์‚ฌ์šฉํ•˜๊ณ ์žˆ๋Š” ๊ฒƒ ๊ฐ™์Šต๋‹ˆ๋‹ค. start-kubemark.sh # L62)์ด ํšŒ๊ท€๋ฅผ ๋ณผ ์ˆ˜์—†๋Š” ์ž ์žฌ์  ์ธ ์ด์œ ์ž…๋‹ˆ๋‹ค. :)

cc @jpbetz

ํ˜„์žฌ ๋ชจ๋“  ๊ณณ์—์„œ 3.2.16์„ ์‚ฌ์šฉํ•˜๊ณ  ์žˆ์Šต๋‹ˆ๋‹ค.

์ฃ„์†กํ•ฉ๋‹ˆ๋‹ค. ๋’ค๋Šฆ๊ฒŒ ์•Œ๋ ค ๋“œ๋ ค ์ฃ„์†กํ•ฉ๋‹ˆ๋‹ค. ์ž˜๋ชป๋œ ์ปค๋ฐ‹ ์กฐํ•ฉ์„๋ณด๊ณ ์žˆ์—ˆ์Šต๋‹ˆ๋‹ค.

BTW-PUT ํฌ๋“œ / ์ƒํƒœ ์ง€์—ฐ ์‹œ๊ฐ„์˜ ์ฆ๊ฐ€๋Š” ๋Œ€๊ทœ๋ชจ ์‹ค์ œ ํด๋Ÿฌ์Šคํ„ฐ์˜ ๋ถ€ํ•˜ ํ…Œ์ŠคํŠธ์—์„œ๋„ ๋ณผ ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค.

๊ทธ๋ž˜์„œ ๋‚˜๋Š” ์กฐ๊ธˆ ๋” ํŒŒํ—ค์ณ ์„œ ์ผ๋ฐ˜์ ์œผ๋กœ ์“ฐ๊ธฐ ์š”์ฒญ์— ๋Œ€ํ•ด ๊ทธ ์‹œ๊ฐ„์— ๋” ํฐ ๋Œ€๊ธฐ ์‹œ๊ฐ„์„ ๊ด€์ฐฐํ•˜๊ธฐ ์‹œ์ž‘ํ•œ ๊ฒƒ์ฒ˜๋Ÿผ ๋ณด์ž…๋‹ˆ๋‹ค (etcd ๋ณ€๊ฒฝ์„ ๋” ์˜์‹ฌํ•˜๊ฒŒ ๋งŒ๋“ญ๋‹ˆ๋‹ค).

yo
post-pod-binding
patch-node-status
post-replication-controllers

์‚ฌ์‹ค ์ €๋Š” ์ ์–ด๋„ ๋ฌธ์ œ์˜ ์ผ๋ถ€๊ฐ€ ์—ฌ๊ธฐ์— ์žˆ๋‹ค๊ณ  ํˆฌํ‘œํ•ฉ๋‹ˆ๋‹ค.
https://github.com/kubernetes/kubernetes/pull/58990/commits/384a86caa92bdb7cf9ac96b10a6ef333d2d60519#diff -c73f80ad83608f18657d22a06950d929R240

๊ทธ๊ฒƒ์ด ์ „์ฒด์ ์ธ ๋ฌธ์ œ๋ผ๋ฉด ๋†€๋ž„ ๊ฒƒ์ž…๋‹ˆ๋‹ค ๋งŒ, ๊ทธ๊ฒƒ์ด ๊ธฐ์—ฌํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค.
์ž ์‹œ ํ›„์— PR์„ ๋ณ€๊ฒฝํ•ฉ๋‹ˆ๋‹ค.

์ฐธ๊ณ -etcd 3.2.14 ๋ณ€๊ฒฝ ์ „์ด์ง€๋งŒ pod-status API ๋ณ€๊ฒฝ ํ›„ ์ปค๋ฐ‹ ์— ๋Œ€ํ•ด ์‹คํ–‰ํ–ˆ์„ ๋•Œ put node-status ์ง€์—ฐ ์‹œ๊ฐ„์ด ์™„์ „ํžˆ ๊ดœ์ฐฎ์•„ ๋ณด์ž…๋‹ˆ๋‹ค (์˜ˆ : 99 % ile = 39ms).

๊ทธ๋ž˜์„œ ์‹ค์ œ๋กœ 3.2.14 ๋กœ์˜ etcd ๋ฒ”ํ”„์— ์˜ํ•ด ๋ฐœ์ƒํ•˜๋Š”์ง€ ํ™•์ธํ–ˆ์Šต๋‹ˆ๋‹ค. put pod-status ์ง€์—ฐ ์‹œ๊ฐ„์€ ๋‹ค์Œ๊ณผ ๊ฐ™์Šต๋‹ˆ๋‹ค.

๊ทธ PR ์— ๋Œ€ํ•ด :

{
      "data": {
        "Perc50": 1.479,
        "Perc90": 10.959,
        "Perc99": 163.095
      },
      "unit": "ms",
      "labels": {
        "Count": "344494",
        "Resource": "pods",
        "Scope": "namespace",
        "Subresource": "status",
        "Verb": "PUT"
      }
    },

PR์„ ๋˜ ๋Œ๋ฆฐ ~ HEAD (3 ์›” 5 ์ผ๋ถ€ํ„ฐ)์— ๋Œ€ํ•ด (ํ…Œ์ŠคํŠธ๋Š” ์•„์ง ์‹คํ–‰ ์ค‘์ด์ง€๋งŒ ๊ณง ์™„๋ฃŒ ๋  ์˜ˆ์ •์ž…๋‹ˆ๋‹ค) :

apiserver_request_latencies_summary{resource="pods",scope="namespace",subresource="status",verb="PUT",quantile="0.5"} 1669
apiserver_request_latencies_summary{resource="pods",scope="namespace",subresource="status",verb="PUT",quantile="0.9"} 9597
apiserver_request_latencies_summary{resource="pods",scope="namespace",subresource="status",verb="PUT",quantile="0.99"} 63392

63ms ๋Š” ์ด์ „ ๊ณผ ๋งค์šฐ ์œ ์‚ฌํ•ฉ๋‹ˆ๋‹ค.

๋ฒ„์ „์„ ๋˜๋Œ๋ฆฌ๊ณ  ์ดํ•ดํ•˜๋ ค๊ณ  ๋…ธ๋ ฅํ•ด์•ผํ•ฉ๋‹ˆ๋‹ค.

  • etcd 3.2.14์—์„œ ์ด๋Ÿฌํ•œ ์ฆ๊ฐ€๊ฐ€ ๋‚˜ํƒ€๋‚˜๋Š” ์ด์œ ๋Š” ๋ฌด์—‡์ž…๋‹ˆ๊นŒ?
  • ์™œ ์šฐ๋ฆฌ๊ฐ€ ์ด๊ฒƒ์„ kubemark์—์„œ ์žก์ง€ ๋ชป ํ–ˆ์Šต๋‹ˆ๊นŒ?

cc @jpbetz @ kubernetes / sig-api-machinery-bugs

ํ•œ ๊ฐ€์ง€ ๊ฐ€์„ค (์šฐ๋ฆฌ๊ฐ€ kubemark์—์„œ ๊ทธ๊ฒƒ์„ ์žก์ง€ ๋ชปํ•œ ์ด์œ -์—ฌ์ „ํžˆ ์ถ”์ธก์ด์ง€๋งŒ)๋Š” sth wrt๋ฅผ ๊ทธ๊ณณ์—์„œ ์ธ์ฆ์„œ๋กœ ๋ณ€๊ฒฝํ–ˆ์„ ์ˆ˜ ์žˆ๋‹ค๋Š” ๊ฒƒ์ž…๋‹ˆ๋‹ค.
kubemark์™€ ์‹ค์ œ ํด๋Ÿฌ์Šคํ„ฐ์˜ etcd ๋กœ๊ทธ๋ฅผ ๋น„๊ตํ•  ๋•Œ ํ›„์ž์—์„œ๋งŒ ๋‹ค์Œ ์ค„์ด ํ‘œ์‹œ๋ฉ๋‹ˆ๋‹ค.

2018-03-05 08:06:56.389648 I | embed: peerTLS: cert = /etc/srv/kubernetes/etcd-peer.crt, key = /etc/srv/kubernetes/etcd-peer.key, ca = , trusted-ca = /etc/srv/kubernetes/etcd-ca.crt, client-cert-auth = true

PR ์ž์ฒด๋ฅผ ์‚ดํŽด๋ณด๋ฉด ๊ทธ์™€ ๊ด€๋ จ๋œ ๋ณ€ํ™”๋Š” ์—†์ง€๋งŒ ์‹ค์ œ ํด๋Ÿฌ์Šคํ„ฐ์—์„œ๋งŒ ๊ทธ ๋ผ์ธ์„๋ณด์•„์•ผํ•˜๋Š” ์ด์œ ๋„ ๋ชจ๋ฅด๊ฒ ์Šต๋‹ˆ๋‹ค ...
์ƒ๊ฐ์„ ์œ„ํ•ด @jpbetz

ACK. ์ง„ํ–‰ ์ค‘
ETA : 2018 ๋…„ 9 ์›” 3 ์ผ
์œ„ํ—˜ : ๊ทผ๋ณธ ์›์ธ (๋Œ€๋ถ€๋ถ„) ๋ฌธ์ œ

Re peerTLS-์ด์ „ (3.1.11 ํฌํ•จ)๋„ ๊ทธ๋žฌ๋˜ ๊ฒƒ ๊ฐ™์•„์„œ ๋นจ๊ฐ„ ์ฒญ์–ด๋ผ๊ณ  ์ƒ๊ฐํ•ฉ๋‹ˆ๋‹ค

cc @gyuho @wenjiaswe

63ms๋Š”

๊ทธ ๋ฒˆํ˜ธ๋Š” ์–ด๋””์—์„œ ์–ป์Šต๋‹ˆ๊นŒ? apiserver_request_latencies_summary ์‹ค์ œ๋กœ etcd ์“ฐ๊ธฐ์˜ ์ง€์—ฐ ์‹œ๊ฐ„์„ ์ธก์ •ํ•ฉ๋‹ˆ๊นŒ? ๋˜ํ•œ etcd์˜ ๋ฉ”ํŠธ๋ฆญ์ด ๋„์›€์ด ๋  ๊ฒƒ์ž…๋‹ˆ๋‹ค.

ํฌํ•จ : peerTLS : cert ...

ํ”ผ์–ด TLS๊ฐ€ ๊ตฌ์„ฑ๋œ ๊ฒฝ์šฐ ์ธ์‡„๋ฉ๋‹ˆ๋‹ค (3.1์—์„œ ๋™์ผ).

๊ทธ ๋ฒˆํ˜ธ๋Š” ์–ด๋””์—์„œ ์–ป์Šต๋‹ˆ๊นŒ? apiserver_request_latencies_summary๋Š” ์‹ค์ œ๋กœ etcd ์“ฐ๊ธฐ์˜ ์ง€์—ฐ ์‹œ๊ฐ„์„ ์ธก์ •ํ•ฉ๋‹ˆ๊นŒ? ๋˜ํ•œ etcd์˜ ๋ฉ”ํŠธ๋ฆญ์ด ๋„์›€์ด ๋  ๊ฒƒ์ž…๋‹ˆ๋‹ค.

์ด๊ฒƒ์€ (์ ์–ด๋„ ์“ฐ๊ธฐ ํ˜ธ์ถœ์˜ ๊ฒฝ์šฐ) etcd์˜ ์ง€์—ฐ ์‹œ๊ฐ„์„ ํฌํ•จํ•˜๋Š” apicalls ์ง€์—ฐ ์‹œ๊ฐ„์„ ์ธก์ •ํ•ฉ๋‹ˆ๋‹ค.
์šฐ๋ฆฌ๋Š” ์—ฌ์ „ํžˆ ๋ฌด์Šจ ์ผ์ด ์ผ์–ด๋‚˜๊ณ  ์žˆ๋Š”์ง€ ์‹ค์ œ๋กœ ์ดํ•ดํ•˜์ง€ ๋ชปํ•˜์ง€๋งŒ ์ด์ „ etcd ๋ฒ„์ „ (3.1)์œผ๋กœ ๋˜ ๋Œ๋ฆฌ๋ฉด ํšŒ๊ท€๊ฐ€ ์ˆ˜์ •๋ฉ๋‹ˆ๋‹ค. ๊ทธ๋ž˜์„œ ๋ถ„๋ช…ํžˆ ๋ฌธ์ œ๋Š” etcd ์–ด๋”˜๊ฐ€์— ์žˆ์Šต๋‹ˆ๋‹ค.

๋ฟก ๋นต๋€จ

์‹คํ–‰์ค‘์ธ Kubemark ๋ฐ Kubernetes ๋ฒ„์ „์€ ๋ฌด์—‡์ž…๋‹ˆ๊นŒ? ์šฐ๋ฆฌ๋Š” etcd 3.2 ๋Œ€ 3.3 (500 ๋…ธ๋“œ ์›Œํฌ๋กœ๋“œ)์— ๋Œ€ํ•ด Kubemark 1.10์„ ํ…Œ์ŠคํŠธํ–ˆ์ง€๋งŒ์ด๋ฅผ ๊ด€์ฐฐํ•˜์ง€ ๋ชปํ–ˆ์Šต๋‹ˆ๋‹ค. ์ด๋ฅผ ์žฌํ˜„ํ•˜๋ ค๋ฉด ๋ช‡ ๊ฐœ์˜ ๋…ธ๋“œ๊ฐ€ ํ•„์š”ํ•ฉ๋‹ˆ๊นŒ?

์‹คํ–‰์ค‘์ธ Kubemark ๋ฐ Kubernetes ๋ฒ„์ „์€ ๋ฌด์—‡์ž…๋‹ˆ๊นŒ? ์šฐ๋ฆฌ๋Š” etcd 3.2 ๋Œ€ 3.3 (500 ๋…ธ๋“œ ์›Œํฌ๋กœ๋“œ)์— ๋Œ€ํ•ด Kubemark 1.10์„ ํ…Œ์ŠคํŠธํ–ˆ์ง€๋งŒ์ด๋ฅผ ๊ด€์ฐฐํ•˜์ง€ ๋ชปํ–ˆ์Šต๋‹ˆ๋‹ค. ์ด๋ฅผ ์žฌํ˜„ํ•˜๋ ค๋ฉด ๋ช‡ ๊ฐœ์˜ ๋…ธ๋“œ๊ฐ€ ํ•„์š”ํ•ฉ๋‹ˆ๊นŒ?

5k ๋…ธ๋“œ 1๋กœ๋„ kubemark๋กœ ์žฌํ˜„ ํ•  ์ˆ˜ ์—†์Šต๋‹ˆ๋‹ค. https://github.com/kubernetes/kubernetes/issues/60589#issuecomment -371171837์˜ ํ•˜๋‹จ์„

์ด๊ฒƒ์€ ์‹ค์ œ ํด๋Ÿฌ์Šคํ„ฐ์—์„œ๋งŒ ๋ฌธ์ œ๊ฐ€๋˜๋Š” ๊ฒƒ ๊ฐ™์Šต๋‹ˆ๋‹ค.
์ด๊ฒƒ์€ ์™œ ๊ทธ๊ฒƒ์ด ์‚ฌ์‹ค์ธ์ง€์— ๋Œ€ํ•œ ์—ด๋ฆฐ ์งˆ๋ฌธ์ž…๋‹ˆ๋‹ค.

etcd 3.1๋กœ ๋กค๋ฐฑํ–ˆ๊ธฐ ๋•Œ๋ฌธ์—. kubernetes๋ฅผ ์œ„ํ•ด. ๋˜ํ•œ kubernetes์— ๋Œ€ํ•œ ์œ ์ผํ•œ ์ค‘์š”ํ•œ ์ˆ˜์ • ์‚ฌํ•ญ ์ธ mvcc "unsynced"watcher restore operation ๊ณผ ํ•จ๊ป˜ etcd 3.1.12 ๋ฅผ ์ถœ์‹œํ–ˆ์Šต๋‹ˆ๋‹ค. ์ด ๋ฌธ์ œ์—์„œ ๋ฐœ๊ฒฌ ๋œ ์„ฑ๋Šฅ ํšŒ๊ท€์˜ ๊ทผ๋ณธ ์›์ธ์„ ์ฐพ์•„ ์ˆ˜์ • ํ•œ ํ›„์—๋Š” kubernetes์—์„œ ์‚ฌ์šฉํ•˜๋Š” etcd ์„œ๋ฒ„๋ฅผ 3.2๋กœ ์—…๊ทธ๋ ˆ์ด๋“œํ•˜๋Š” ๊ณ„ํš์„ ์Šค์ผ€์น˜ ํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค.

https://k8s-testgrid.appspot.com/sig-release-master-blocking#gci -gce-100์€ ์˜ค๋Š˜ ์•„์นจ๋ถ€ํ„ฐ ์ง€์†์ ์œผ๋กœ ์‹คํŒจํ•˜๊ธฐ ์‹œ์ž‘ํ•ฉ๋‹ˆ๋‹ค.

diff ์—์„œ ์œ ์ผํ•œ ๋ณ€๊ฒฝ ์‚ฌํ•ญ์€ https://github.com/kubernetes/kubernetes/pull/60421 ์ด๋ฉฐ ๊ธฐ๋ณธ์ ์œผ๋กœ ์„ฑ๋Šฅ ํ…Œ์ŠคํŠธ์—์„œ ํ• ๋‹น๋Ÿ‰์„ ํ™œ์„ฑํ™”ํ•ฉ๋‹ˆ๋‹ค. ์šฐ๋ฆฌ๊ฐ€๋ณด๊ณ ์žˆ๋Š” ์˜ค๋ฅ˜๋Š” ๋‹ค์Œ๊ณผ ๊ฐ™์Šต๋‹ˆ๋‹ค.

Container kube-controller-manager-e2e-big-master/kube-controller-manager is using 0.531144723/0.5 CPU
not to have occurred

@gmarek- ํ• ๋‹น๋Ÿ‰ ํ™œ์„ฑํ™”๊ฐ€ ํ™•์žฅ์„ฑ์— ์˜ํ–ฅ์„ ๋ฏธ์น˜๋Š” ๊ฒƒ ๊ฐ™์Šต๋‹ˆ๋‹ค. :) ๋” ์ž์„ธํžˆ ์‚ดํŽด๋ณด์‹ค ์ˆ˜ ์žˆ์Šต๋‹ˆ๊นŒ?
์ด ๋ฌธ์ œ๋ฅผ ์ถ”์ ํ•˜๊ธฐ ์œ„ํ•ด ๋‹ค๋ฅธ ๋ฌธ์ œ๋ฅผ ์ œ์ถœํ•˜๊ฒ ์Šต๋‹ˆ๋‹ค.

@ wojtek-t @jpbetz @gyuho @timothysc ๋‚˜๋Š” etcd ๋ฒ„์ „ ๋ณ€๊ฒฝ์—์„œ ์ •๋ง ํฅ๋ฏธ๋กœ์šด ๊ฒƒ์„ ๋ฐœ๊ฒฌํ–ˆ๊ณ , etcd 3.1.11์—์„œ 3.2.16์œผ๋กœ ์ด๋™ํ–ˆ์„ ๋•Œ ์ƒ๋‹นํ•œ ํšจ๊ณผ๋ฅผ ์ œ์•ˆํ–ˆ์Šต๋‹ˆ๋‹ค.

์ž‘์—…์ด k8s ๋ฆด๋ฆฌ์Šค 1.9์—์„œ 1.10์œผ๋กœ ์ด๋™ํ–ˆ์„ ๋•Œ 100 ๋…ธ๋“œ ํด๋Ÿฌ์Šคํ„ฐ (์ตœ๋Œ€ 2 ๋ฐฐ ์ฆ๊ฐ€)์—์„œ etcd ๋ฉ”๋ชจ๋ฆฌ ์‚ฌ์šฉ๋Ÿ‰์— ๋Œ€ํ•œ ๋‹ค์Œ ๊ทธ๋ž˜ํ”„๋ฅผ๋ณด์‹ญ์‹œ์˜ค.

1 9-1 10-etcd-mem-usage

๋‹ค์Œ์œผ๋กœ, etcd 3.2.16-> 3.1.11์—์„œ ๋ณต๊ท€ ํ•œ ์งํ›„ 100 ๋…ธ๋“œ ์ž‘์—… (HEAD์— ๋Œ€ํ•ด ์‹คํ–‰)์ด ๋ฉ”๋ชจ๋ฆฌ ์‚ฌ์šฉ๋Ÿ‰์ด ์ ˆ๋ฐ˜์œผ๋กœ ๊ฐ์†Œํ•˜๋Š” ๊ฒƒ์„ ํ™•์ธํ•ฉ๋‹ˆ๋‹ค.

3 2 16-3 1 11-etcd-change

๋”ฐ๋ผ์„œ etcd 3.2 ์„œ๋ฒ„ ๋ฒ„์ „์€ ์˜ํ–ฅ์„๋ฐ›๋Š” ์„ฑ๋Šฅ์„ ๋ณด์—ฌ์ค๋‹ˆ๋‹ค (๋‹ค๋ฅธ ๋ชจ๋“  ๋ณ€์ˆ˜๋Š” ๋™์ผํ•˜๊ฒŒ ์œ ์ง€๋จ). :)

etcd 3.2.16-> 3.2.11์—์„œ ๋‚ด ๋˜๋Œ๋ฆฌ๊ธฐ :

3.1.11์„ ์˜๋ฏธ ํ–ˆ์Šต๋‹ˆ๊นŒ?

๋งž์•„ .. ์ฃ„์†กํ•ฉ๋‹ˆ๋‹ค. ๋‚ด ๋Œ“๊ธ€์„ ์ˆ˜์ •ํ–ˆ์Šต๋‹ˆ๋‹ค.

@shyamjvs etcd๋Š” ์–ด๋–ป๊ฒŒ ๊ตฌ์„ฑ๋ฉ๋‹ˆ๊นŒ? v3.2์—์„œ ๊ธฐ๋ณธ๊ฐ’ --snapshot-count ์„ 10000 ์—์„œ 100000 ๋Š˜ ๋ ธ์Šต๋‹ˆ๋‹ค. ๋”ฐ๋ผ์„œ ์Šค๋ƒ… ์ƒท ๊ฐœ์ˆ˜๊ฐ€ ๋‹ค๋ฅธ ๊ฒฝ์šฐ ์Šค๋ƒ… ์ƒท ๊ฐœ์ˆ˜๊ฐ€ ๋” ํฐ ํ•ญ๋ชฉ์€ Raft ํ•ญ๋ชฉ์„ ๋” ์˜ค๋ž˜ ๋ณด๊ด€ํ•˜๋ฏ€๋กœ ์˜ค๋ž˜๋œ ๋กœ๊ทธ๋ฅผ ์‚ญ์ œํ•˜๊ธฐ ์ „์— ๋” ๋งŽ์€ ์ƒ์ฃผ ๋ฉ”๋ชจ๋ฆฌ๊ฐ€ ํ•„์š”ํ•ฉ๋‹ˆ๋‹ค.

์•„! ๊ทธ๊ฒƒ์€ ์ฐธ์œผ๋กœ ์˜์‹ฌ์Šค๋Ÿฌ์šด ๋ณ€ํ™”์ฒ˜๋Ÿผ ๋ณด์ž…๋‹ˆ๋‹ค. Wrt ํ”Œ๋ž˜๊ทธ, k8s ์ธก์—์„œ ๋ณ€๊ฒฝ๋œ ์‚ฌํ•ญ์ด ์—†๋‹ค๊ณ  ์ƒ๊ฐํ•ฉ๋‹ˆ๋‹ค. ์œ„์˜ ๋‘ ๋ฒˆ์งธ ๊ทธ๋ž˜ํ”„์—์„œ ๋ณผ ์ˆ˜ ์žˆ๋“ฏ์ด diff b / w๋Š” 11450์„ ์‹คํ–‰ํ•˜๊ณ  11451์€ ์ฃผ๋กœ ๋‚ด etcd ๋˜๋Œ๋ฆฌ๊ธฐ ๋ณ€๊ฒฝ ์‚ฌํ•ญ์ž…๋‹ˆ๋‹ค (ํ”Œ๋ž˜๊ทธ๋ฅผ ๊ฑด๋“œ๋ฆฌ์ง€ ์•Š๋Š” ๊ฒƒ ๊ฐ™์Œ).

๊ธฐ๋ณธ๊ฐ’ --snapshot-count๋ฅผ 10000์—์„œ 100000์œผ๋กœ ๋Š˜ ๋ ธ์Šต๋‹ˆ๋‹ค.

์ด๊ฒƒ์ด ๋ฉ”๋ชจ๋ฆฌ ์‚ฌ์šฉ๋Ÿ‰ ์ฆ๊ฐ€์˜ ๊ทผ๋ณธ ์›์ธ์ธ์ง€ ํ™•์ธํ•ด ์ฃผ์‹œ๊ฒ ์Šต๋‹ˆ๊นŒ? ๊ทธ๋ ‡๋‹ค๋ฉด ๋‹ค์Œ์„ ์ˆ˜ํ–‰ ํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค.

  • etcd๋ฅผ ์›๋ž˜ ๊ฐ’์œผ๋กœ ๋‹ค์‹œ ํŒจ์น˜ํ•˜๊ฑฐ๋‚˜
  • k8s์—์„œ 10000์œผ๋กœ ์„ค์ •

3.2๋กœ ๋‹ค์‹œ ์ „ํ™˜ํ•˜๊ธฐ ์ „์—

์•„! ๊ทธ๊ฒƒ์€ ์ฐธ์œผ๋กœ ์˜์‹ฌ์Šค๋Ÿฌ์šด ๋ณ€ํ™”์ฒ˜๋Ÿผ ๋ณด์ž…๋‹ˆ๋‹ค.

์˜ˆ,์ด ๋ณ€๊ฒฝ ์‚ฌํ•ญ์€ etcd ์ธก์—์„œ ๊ฐ•์กฐ๋˜์–ด์•ผํ•ฉ๋‹ˆ๋‹ค (๋ณ€๊ฒฝ ๋กœ๊ทธ ๋ฐ ์—…๊ทธ๋ ˆ์ด๋“œ ๊ฐ€์ด๋“œ๋ฅผ ๊ฐœ์„  ํ•  ๊ฒƒ์ž…๋‹ˆ๋‹ค).

์ด๊ฒƒ์ด ๋ฉ”๋ชจ๋ฆฌ ์‚ฌ์šฉ๋Ÿ‰ ์ฆ๊ฐ€์˜ ๊ทผ๋ณธ ์›์ธ์ธ์ง€ ํ™•์ธํ•ด ์ฃผ์‹œ๊ฒ ์Šต๋‹ˆ๊นŒ?

์ด๊ฒƒ์ด ๊ทผ๋ณธ ์›์ธ์ธ์ง€ ํ™•์‹คํ•˜์ง€ ์•Š์Šต๋‹ˆ๋‹ค. ๋‚ฎ์€ ์Šค๋ƒ… ์ƒท ์ˆ˜๋Š” ๊ธ‰์ฆํ•˜๋Š” ๋ฉ”๋ชจ๋ฆฌ ์‚ฌ์šฉ๋Ÿ‰์„ ์ค„์ด๋Š” ๋ฐ ํ™•์‹คํžˆ ๋„์›€์ด๋ฉ๋‹ˆ๋‹ค. ๋‘ etcd ๋ฒ„์ „์ด ๋™์ผํ•œ ์Šค๋ƒ… ์ƒท ์ˆ˜๋ฅผ ์‚ฌ์šฉํ•˜์ง€๋งŒ ํ•˜๋‚˜์˜ etcd๊ฐ€ ์—ฌ์ „ํžˆ ํ›จ์”ฌ ๋” ๋†’์€ ๋ฉ”๋ชจ๋ฆฌ ์‚ฌ์šฉ๋Ÿ‰์„ ํ‘œ์‹œํ•œ๋‹ค๋ฉด ๋‹ค๋ฅธ ๊ฒƒ์ด ์žˆ์–ด์•ผํ•ฉ๋‹ˆ๋‹ค.

์—…๋ฐ์ดํŠธ : etcd mem ์‚ฌ์šฉ๋Ÿ‰์˜ ์ฆ๊ฐ€๊ฐ€ ์‹ค์ œ๋กœ ๋” ๋†’์€ --snapshot-count ๊ธฐ๋ณธ๊ฐ’์œผ๋กœ ์ธํ•ด ๋ฐœ์ƒ ํ•จ์„ ํ™•์ธํ–ˆ์Šต๋‹ˆ๋‹ค. ๋” ์ž์„ธํ•œ ์‚ฌํ•ญ์€ ์—ฌ๊ธฐ์— - https://github.com/kubernetes/kubernetes/pull/61037#issuecomment -372457843

์ฆ๊ฐ€ ๋œ ๋ฉ”๋ชจ๋ฆฌ ์‚ฌ์šฉ๋Ÿ‰์„ ์›ํ•˜์ง€ ์•Š๋Š” ๊ฒฝ์šฐ etcd 3.2.16์— ๋„๋‹ฌ ํ•  ๋•Œ 10,000์œผ๋กœ ์„ค์ •ํ•˜๋Š” ๊ฒƒ์„ ๊ณ ๋ คํ•ด์•ผํ•ฉ๋‹ˆ๋‹ค.

cc @gyuho @ xiang90 @jpbetz

์—…๋ฐ์ดํŠธ : etcd ์ˆ˜์ •์„ ํ†ตํ•ด ํฌ๋“œ ์‹œ์ž‘ ์ง€์—ฐ 99 %๋Š” ์—ฌ์ „ํžˆ 5s SLO๋ฅผ ์œ„๋ฐ˜ํ•˜๋Š” ๊ฒƒ ๊ฐ™์Šต๋‹ˆ๋‹ค. ์ ์–ด๋„ ํ•˜๋‚˜์˜ ๋‹ค๋ฅธ ํšŒ๊ท€๊ฐ€ ์žˆ์œผ๋ฉฐ 5k ๋…ธ๋“œ ์„ฑ๋Šฅ ์ž‘์—…์˜ b / w ์‹คํ–‰ 111 ๋ฐ 112์—์„œ ๊ฐ€๋Šฅ์„ฑ์ด ๊ฐ€์žฅ ๋†’๋‹ค๋Š” ์ฆ๊ฑฐ๋ฅผ ์ˆ˜์ง‘ํ–ˆ์Šต๋‹ˆ๋‹ค (https : /์— ๋ถ™์—ฌ ๋„ฃ์€ ๊ทธ๋ž˜ํ”„์—์„œ ์‹คํ–‰๋˜๋Š” ๋ฒ”ํ”„ b / w ์ฐธ์กฐ). /github.com/kubernetes/kubernetes/issues/60589#issuecomment-370568929). ํ˜„์žฌ ๋‚˜๋Š” (์•ฝ 50 ๊ฐœ์˜ ์ปค๋ฐ‹์ด์žˆ๋Š”) diff๋ฅผ ์ด๋“ฑ๋ถ„ํ•˜๊ณ  ์žˆ์œผ๋ฉฐ ํ…Œ์ŠคํŠธ๋Š” ๋ฐ˜๋ณต ๋‹น ~ 4-5 ์‹œ๊ฐ„์ด ๊ฑธ๋ฆฝ๋‹ˆ๋‹ค.

์œ„์—์„œ ์–ธ๊ธ‰ ํ•œ ์ฆ๊ฑฐ๋Š” ๋‹ค์Œ๊ณผ ๊ฐ™์Šต๋‹ˆ๋‹ค.

111์˜ ์‹œ์ฒญ ์ง€์—ฐ ์‹œ๊ฐ„์€ ๋‹ค์Œ๊ณผ ๊ฐ™์Šต๋‹ˆ๋‹ค.

Feb 14 21:36:05.531: INFO: perc50: 1.070980786s, perc90: 1.743347483s, perc99: 2.629721166s

111์˜ ์ „์ฒด ํฌ๋“œ ์‹œ์ž‘ ์ง€์—ฐ ์‹œ๊ฐ„์€ ๋‹ค์Œ๊ณผ ๊ฐ™์Šต๋‹ˆ๋‹ค.

Feb 14 21:36:05.671: INFO: perc50: 2.416307575s, perc90: 3.24553118s, perc99: 4.092430858s

112์—์„œ ๋™์ผํ•˜์ง€๋งŒ :

Feb 16 10:07:43.222: INFO: perc50: 1.131108849s, perc90: 2.18487651s, perc99: 3.570548412s

๊ณผ

Feb 16 10:07:43.353: INFO: perc50: 2.56160248s, perc90: 3.754024568s, perc99: 4.967573867s

ํ•œํŽธ, ๋ˆ„๊ตฐ๊ฐ€๊ฐ€ ๋ฒ ํŒ… ๊ฒŒ์ž„์„ํ•˜๊ณ  ์žˆ๋‹ค๋ฉด ์œ„์—์„œ ์–ธ๊ธ‰ ํ•œ ์ปค๋ฐ‹ diff๋ฅผ ์‚ดํŽด๋ณด๊ณ  ์ž˜๋ชป๋œ ๊ฒƒ์„ ์ถ”์ธก ํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค. :)

ACK. ์ง„ํ–‰ ์ค‘
ETA : 2018 ๋…„ 3 ์›” 13 ์ผ
์œ„ํ—˜ : ๊ทธ ์ „์— ๋””๋ฒ„๊น…ํ•˜์ง€ ์•Š์œผ๋ฉด ๋ฆด๋ฆฌ์Šค ๋‚ ์งœ๋ฅผ ํ‘ธ์‹œ ํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค.

@shyamjvs toooooooo ๋งŽ์€ ์ปค๋ฐ‹์ด ๋ฒ ํŒ…์„ํ•ฉ๋‹ˆ๋‹ค :)

@dims ๋” ๋งŽ์€ ์žฌ๋ฏธ๋ฅผ ๋”ํ•  ๊ฒƒ ๊ฐ™์•„์š”;)

์—…๋ฐ์ดํŠธ : ๊ทธ๋ž˜์„œ ์ €๋Š” ์ด๋ถ„๋ฒ•์„ ๊ฑฐ์˜ ๋ฐ˜๋ณตํ•˜์ง€ ์•Š์•˜๊ณ  ์ปค๋ฐ‹์—์„œ ๊ด€๋ จ ๋ฉ”ํŠธ๋ฆญ์ด ์–ด๋–ป๊ฒŒ ๋ณด์ด๋Š”์ง€ (์‹œ๊ฐ„์ˆœ์œผ๋กœ ์ •๋ ฌ ๋จ) ๋‹ค์Œ๊ณผ ๊ฐ™์Šต๋‹ˆ๋‹ค. ์ˆ˜๋™์œผ๋กœ ์‹คํ–‰ ํ•œ ํ•ญ๋ชฉ์˜ ๊ฒฝ์šฐ ์ด์ „ ํšŒ๊ท€๋ฅผ ๋˜ ๋Œ๋ฆฐ ์ƒํƒœ๋กœ ์‹คํ–‰ํ–ˆ์Šต๋‹ˆ๋‹ค (์˜ˆ : 3.2.-> 3.1.11).

| ์ปค๋ฐ‹ | 99 % ์‹œ์ฒญ ์ง€์—ฐ ์‹œ๊ฐ„ | 99 % ํฌ๋“œ ์‹œ์ž‘ ์ง€์—ฐ | ์ข‹์€ / ๋‚˜์œ? |
| ------------- | ------------- | ----- | ------- |
| a042ecde36 (run-111์—์„œ) | 2.629721166s | 4.092430858s | ์ข‹์Œ (์ˆ˜๋™์œผ๋กœ ๋‹ค์‹œ ํ™•์ธ) |
| 5f7b530d87 (์ˆ˜๋™) | 3.150616856s | 4.683392706s | ๋‚˜์จ (๊ฐ€๋Šฅ์„ฑ ์žˆ์Œ) |
| a8060ab0a1 (์ˆ˜๋™) | 3.11319985s | 4.710277511s | ๋‚˜์จ (๊ฐ€๋Šฅ์„ฑ ์žˆ์Œ) |
| 430c1a68c8 (run-112์—์„œ) | 3.570548412s | 4.967573867s | ๋‚˜์œ |
| 430c1a68c8 (์ˆ˜๋™) | 3.63505091s | 4.96697776s | ๋‚˜์œ |

์œ„์—์„œ ์‚ดํŽด๋ณด๋ฉด ์—ฌ๊ธฐ์—๋Š” 2 ๊ฐœ์˜ ํšŒ๊ท€๊ฐ€์žˆ์„ ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค (2.6 ์ดˆ-> 3.6 ์ดˆ์—์„œ ์ง์„  ์ ํ”„๊ฐ€ ์•„๋‹ˆ๊ธฐ ๋•Œ๋ฌธ์—)-b / w "a042ecde36-5f7b530d87"๋ฐ ๋‹ค๋ฅธ b / w "a8060ab0a1-430c1a68c8". ํ•œ์ˆจ!

๋น„๊ต ๋งํฌ๋ฅผ ์–ป๊ธฐ ์œ„ํ•ด ๋ฒ”์œ„๋กœ ํ‘œํ˜„ :
a042ecde36 ... 5f7b530
a8060ab0a1 ... 430c1a6

a042ecde36์— ๋Œ€ํ•œ ์ˆ˜๋™ ์‹คํ–‰ ๊ฒฐ๊ณผ๋ฅผ ์–ป์—ˆ์œผ๋ฉฐ ์‚ถ์„ ๋” ์–ด๋ ต๊ฒŒ ๋งŒ๋“ญ๋‹ˆ๋‹ค.

3.269330734s (watch), 4.939237532s (pod-startup)

์ด๊ฒƒ์€ ์•„๋งˆ๋„ ๋ถˆ์•ˆ์ •ํ•œ ํšŒ๊ท€ ์ผ ์ˆ˜ ์žˆ์Œ์„ ์˜๋ฏธํ•˜๊ธฐ ๋•Œ๋ฌธ์ž…๋‹ˆ๋‹ค.

๋‚˜๋Š” ํ˜„์žฌ a042ecde36์— ๋Œ€ํ•œ ํ…Œ์ŠคํŠธ๋ฅผ ํ•œ ๋ฒˆ ๋” ์‹คํ–‰ํ•˜์—ฌ ํšŒ๊ท€๊ฐ€ ์ด์ „์—๋„ ๋“ค์–ด ์™”์„ ๊ฐ€๋Šฅ์„ฑ์„ ํ™•์ธํ•˜๊ณ  ์žˆ์Šต๋‹ˆ๋‹ค.

๋”ฐ๋ผ์„œ ๋‹ค์Œ์€ a042ecd์— ๋Œ€ํ•ด ๋‹ค์‹œ ์‹คํ–‰ ํ•œ ๊ฒฐ๊ณผ์ž…๋‹ˆ๋‹ค.

2.645592996s (watch), 5.026010032s (pod-startup)

์ด๊ฒƒ์€ ์•„๋งˆ๋„ run-111 ์ด์ „์—๋„ ํšŒ๊ท€๊ฐ€ ์ž…๋ ฅ๋˜์—ˆ์Œ์„ ์˜๋ฏธํ•ฉ๋‹ˆ๋‹ค (์ด๋ถ„๋ฒ•์— ๋Œ€ํ•œ ์˜ฌ๋ฐ”๋ฅธ ๋์ด ์žˆ๋‹ค๋Š” ์ข‹์€ ์†Œ์‹).
์ด์ œ ์™ผ์ชฝ ๋์„ ์ถ”๊ตฌํ•ด ๋ณด๊ฒ ์Šต๋‹ˆ๋‹ค. Run-108 (์ปค๋ฐ‹ 11104d75f)์€ ์ž ์žฌ์  ํ›„๋ณด๋กœ, ์ด์ „์— ์‹คํ–‰ํ–ˆ์„ ๋•Œ (etcd 3.1.11 ์‚ฌ์šฉ) ๋‹ค์Œ๊ณผ ๊ฐ™์€ ๊ฒฐ๊ณผ๊ฐ€ ๋‚˜ํƒ€๋‚ฉ๋‹ˆ๋‹ค.

2.593628224s (watch), 4.321942836s (pod-startup)

์ปค๋ฐ‹ 11104d7์— ๋Œ€ํ•œ ๋‚ด ์žฌ์‹คํ–‰์€ ๊ทธ๊ฒƒ์ด ์ข‹์€ ๊ฒƒ์ด๋ผ๊ณ  ๋งํ•˜๋Š” ๊ฒƒ ๊ฐ™์Šต๋‹ˆ๋‹ค.

2.663456162s (watch), 4.288927203s (pod-startup)

11104d7 ... a042ecd ๋ฒ”์œ„์—์„œ ์ด๋“ฑ๋ถ„ ํ•  ๋•Œ ์—ฌ๊ธฐ์—์„œ ์ฐŒ๋ฅด๊ฒ ์Šต๋‹ˆ๋‹ค.

์—…๋ฐ์ดํŠธ : ์ž์‹ ๊ฐ์„ ์–ป๊ธฐ ์œ„ํ•ด ์ปค๋ฐ‹ 097efb71a315๋ฅผ ์„ธ ๋ฒˆ ํ…Œ์ŠคํŠธํ•ด์•ผํ–ˆ์Šต๋‹ˆ๋‹ค. ์•ฝ๊ฐ„์˜ ์ฐจ์ด๊ฐ€ ์žˆ์ง€๋งŒ ์ข‹์€ ์ปค๋ฐ‹์ฒ˜๋Ÿผ ๋ณด์ž…๋‹ˆ๋‹ค.

2.578970061s (watch), 4.129003596s (pod-startup)
2.315561531s (watch), 4.70792639s (pod-startup)
2.303510957s (watch), 3.88150234s (pod-startup)

๋” ์ด๋“ฑ๋ถ„์„ ๊ณ„์†ํ•˜๊ฒ ์Šต๋‹ˆ๋‹ค.
์ฆ‰, ๋ฉฐ์น  ์ „์— ํฌ๋“œ ์‹œ์ž‘ ์ง€์—ฐ ์‹œ๊ฐ„์ด ๋˜ ๋‹ค์‹œ ๊ธ‰์ฆํ•œ ๊ฒƒ ๊ฐ™์Šต๋‹ˆ๋‹ค (~ 1 ์ดˆ). ๊ทธ๋ฆฌ๊ณ  ์ด๊ฒƒ์€ 99 %๋ฅผ ๊ฑฐ์˜ 6 ์ดˆ๋กœ ๋ฐ€๊ณ  ์žˆ์Šต๋‹ˆ๋‹ค.

increase_again

์ปค๋ฐ‹ ์ฐจ์ด ์—์„œ ๋‚ด ์ฃผ์š” ์šฉ์˜์ž๋Š” 3.1.11-> 3.1.12 (https://github.com/kubernetes/kubernetes/pull/60998)์˜ etcd ๋ณ€๊ฒฝ์ž…๋‹ˆ๋‹ค. ์ผํšŒ์„ฑ์ด ์•„๋‹ˆ๋ผ๋Š” ๊ฒƒ์„ ํ™•์ธํ•˜๊ธฐ ์œ„ํ•ด ๋‹ค์Œ ์‹คํ–‰ (ํ˜„์žฌ ์ง„ํ–‰ ์ค‘)์„ ๊ธฐ๋‹ค๋ฆด ๊ฒƒ์ž…๋‹ˆ๋‹ค.ํ•˜์ง€๋งŒ ์šฐ๋ฆฌ๋Š” ์ด๊ฒƒ์„ ์ •๋ง๋กœ ์ดํ•ดํ•ด์•ผํ•ฉ๋‹ˆ๋‹ค.

cc @jpbetz @gyuho

์ด๋ฒˆ ์ฃผ ๋ชฉ์š”์ผ์— ํœด๊ฐ€๋ฅผ ๋ณด๋‚ผ ์˜ˆ์ •์ด๋ฏ€๋กœ 5k ๋…ธ๋“œ ํด๋Ÿฌ์Šคํ„ฐ์— ๋Œ€ํ•ด ๋ฐ€๋„ ํ…Œ์ŠคํŠธ๋ฅผ ์‹คํ–‰ํ•˜๊ธฐ์œ„ํ•œ ์ง€์นจ์„ ๋ถ™์—ฌ ๋„ฃ์Šต๋‹ˆ๋‹ค (ํ”„๋กœ์ ํŠธ์— ๋Œ€ํ•œ ์•ก์„ธ์Šค ๊ถŒํ•œ์ด์žˆ๋Š” ์‚ฌ๋žŒ์ด ์ด๋ถ„๋ฒ•์„ ๊ณ„์†ํ•  ์ˆ˜ ์žˆ์Œ).

# Start with a clean shell.
# Checkout to the right commit.
make quick-release

# Set the project:
gcloud config set project k8s-scale-testing

# Set some configs for creating/testing 5k-node cluster:
export CLOUDSDK_CORE_PRINT_UNHANDLED_TRACEBACKS=1
export KUBE_GCE_ZONE=us-east1-a
export NUM_NODES=5000
export NODE_SIZE=n1-standard-1
export NODE_DISK_SIZE=50GB
export MASTER_MIN_CPU_ARCHITECTURE=Intel\ Broadwell
export ENABLE_BIG_CLUSTER_SUBNETS=true
export LOGROTATE_MAX_SIZE=5G
export KUBE_ENABLE_CLUSTER_MONITORING=none
export ALLOWED_NOTREADY_NODES=50
export KUBE_GCE_ENABLE_IP_ALIASES=true
export TEST_CLUSTER_LOG_LEVEL=--v=1
export SCHEDULER_TEST_ARGS=--kube-api-qps=100
export CONTROLLER_MANAGER_TEST_ARGS=--kube-api-qps=100\ --kube-api-burst=100
export APISERVER_TEST_ARGS=--max-requests-inflight=3000\ --max-mutating-requests-inflight=1000
export TEST_CLUSTER_RESYNC_PERIOD=--min-resync-period=12h
export TEST_CLUSTER_DELETE_COLLECTION_WORKERS=--delete-collection-workers=16
export PREPULL_E2E_IMAGES=false
export ENABLE_APISERVER_ADVANCED_AUDIT=false

# Bring up the cluster (this brings down pre-existing one if present, so you don't have to explicitly '--down' the previous one) and run density test:
go run hack/e2e.go \
--up \
--test \
--test_args='--ginkgo.focus=\[sig\-scalability\]\sDensity\s\[Feature\:Performance\]\sshould\sallow\sstarting\s30\spods\sper\snode\susing\s\{\sReplicationController\}\swith\s0\ssecrets\,\s0\sconfigmaps\sand\s0\sdaemons$ --allowed-not-ready-nodes=30 --node-schedulable-timeout=30m --minStartupPods=8 --gather-resource-usage=master --gather-metrics-at-teardown=master' \
> somepath/build-log.txt 2>&1 

# To re-run the test on same cluster (without re-creating) just omit '--up' in the above.

์ค‘์š” ์‚ฌํ•ญ :

  • ํ˜„์žฌ ์˜์‹ฌ๋˜๋Š” ์ปค๋ฐ‹ ๋ฒ”์œ„๋Š” ff7918d ... a042ecde3์ž…๋‹ˆ๋‹ค (์–‘๋ถ„ ํ•  ๋•Œ ์—…๋ฐ์ดํŠธ ๋œ ์ƒํƒœ๋กœ ์œ ์ง€ํ•˜๊ฒ ์Šต๋‹ˆ๋‹ค).
  • 3.2.14 ๋Œ€์‹  etcd-3.1.11์„ ์‚ฌ์šฉํ•ด์•ผํ•ฉ๋‹ˆ๋‹ค (์ด์ „ ํšŒ๊ท€๋ฅผ ํฌํ•จํ•˜์ง€ ์•Š๊ธฐ ์œ„ํ•ด). ์ตœ์†Œํ•œ์œผ๋กœ ๋‹ฌ์„ฑํ•˜๋ ค๋ฉด ๋‹ค์Œ ํŒŒ์ผ์˜ ๋ฒ„์ „์„ ๋ณ€๊ฒฝํ•˜์‹ญ์‹œ์˜ค.

    • cluster / gce / manifests / etcd.manifest

    • ํด๋Ÿฌ์Šคํ„ฐ / ์ด๋ฏธ์ง€ / etcd / Makefile

    • ํ•ดํ‚น /lib/etcd.sh

์ฐธ์กฐ : @ wojtek-t

etcd v3.1.12๋Š” ๋ณต์›์‹œ ์‹œ๊ณ„ ์ด๋ฒคํŠธ ๋ˆ„๋ฝ์„ ์ˆ˜์ •ํ•ฉ๋‹ˆ๋‹ค. ๊ทธ๋ฆฌ๊ณ  ์ด๊ฒƒ์€ ์šฐ๋ฆฌ๊ฐ€ v3.1.11์—์„œ ๋ณ€๊ฒฝ ํ•œ ์œ ์ผํ•œ ๊ฒƒ์ž…๋‹ˆ๋‹ค. ์„ฑ๋Šฅ ํ…Œ์ŠคํŠธ์— ๋ฆฌ๋”์—์„œ ์Šค๋ƒ… ์ƒท์„ ํŠธ๋ฆฌ๊ฑฐ ํ•  ์ˆ˜์žˆ๋Š” etcd ์žฌ์‹œ์ž‘ ๋˜๋Š” ๋‹ค์ค‘ ๋…ธ๋“œ๊ฐ€ ํฌํ•จ๋ฉ๋‹ˆ๊นŒ?

์„ฑ๋Šฅ ํ…Œ์ŠคํŠธ์— etcd ์žฌ์‹œ์ž‘์ด ํฌํ•จ๋ฉ๋‹ˆ๊นŒ?

etcd logs ์—์„œ ๋‹ค์‹œ ์‹œ์ž‘ํ•œ ๊ฒƒ์ฒ˜๋Ÿผ ๋ณด์ด์ง€ ์•Š์Šต๋‹ˆ๋‹ค.

๋‹ค์ค‘ ๋…ธ๋“œ

์šฐ๋ฆฌ๋Š” ์„ค์ •์—์„œ ๋‹จ์ผ ๋…ธ๋“œ etcd ๋งŒ ์‚ฌ์šฉํ•˜๊ณ  ์žˆ์Šต๋‹ˆ๋‹ค (๋‹น์‹ ์ด ์š”์ฒญํ•œ ๊ฒƒ์ด๋ผ๊ณ  ๊ฐ€์ •).

๋‚ด๊ฐ€ ์ฐธ์กฐ. ๊ทธ๋Ÿฌ๋ฉด v3.1.11๊ณผ v3.1.12๋„ ๋‹ค๋ฅด์ง€ ์•Š์Šต๋‹ˆ๋‹ค. : 0
๋‘ ๋ฒˆ์งธ ์‹คํ–‰์—์„œ๋„ ๋” ๋†’์€ ์ง€์—ฐ ์‹œ๊ฐ„์ด ํ‘œ์‹œ๋˜๋ฉด ๋‹ค์‹œ ์‚ดํŽด๋ณผ ๊ฒƒ์ž…๋‹ˆ๋‹ค.

cc : @jpbetz

etcd ์— ๋Œ€ํ•œ ์œ ์ผํ•œ ์ฝ”๋“œ ๋ณ€๊ฒฝ์€ ์ฝ”๋“œ๋ฅผ ๋‹ค์‹œ ์‹œ์ž‘ / ๋ณต๊ตฌํ•˜๋Š” ๋ฐ ๊ฒฉ๋ฆฌ๋˜์–ด ์žˆ๋‹ค๋Š” ์ ์„ @gyuho ์™€ ๋™์˜ํ•ฉ๋‹ˆ๋‹ค.

์œ ์ผํ•œ ๋‹ค๋ฅธ ๋ณ€๊ฒฝ ์‚ฌํ•ญ์€ etcd๋ฅผ go1.8.5์—์„œ go1.8.7๋กœ ์—…๊ทธ๋ ˆ์ด๋“œํ•˜๋Š” ๊ฒƒ์ž…๋‹ˆ๋‹ค. ๊ทธ๋Ÿฌ๋‚˜ ๊ทธ๋กœ ์ธํ•ด ์ƒ๋‹นํ•œ ์„ฑ๋Šฅ ์ €ํ•˜๋ฅผ ๋ณผ ์ˆ˜ ์žˆ์„์ง€ ์˜์‹ฌ ์Šค๋Ÿฝ์Šต๋‹ˆ๋‹ค.

๋”ฐ๋ผ์„œ ์ด๋ถ„๋ฒ•์„ ๊ณ„์†ํ•˜๋ฉด ff7918d1f๊ฐ€ ์ข‹์€ ๊ฒƒ ๊ฐ™์Šต๋‹ˆ๋‹ค.

2.246719086s (watch), 3.916350274s (pod-startup)

์ด์— ๋”ฐ๋ผ https://github.com/kubernetes/kubernetes/issues/60589#issuecomment -373051051์—์„œ ์ปค๋ฐ‹ ๋ฒ”์œ„๋ฅผ ์—…๋ฐ์ดํŠธํ•˜๊ฒ ์Šต๋‹ˆ๋‹ค.

๋‹ค์Œ์œผ๋กœ ์ปค๋ฐ‹ aa19a1726์€ ์ข‹์€ ๊ฒƒ์ฒ˜๋Ÿผ ๋ณด์ด์ง€๋งŒ ํ™•์ธ์„ ์œ„ํ•ด ๋‹ค์‹œ ์‹œ๋„ํ•˜๋Š” ๊ฒƒ์ด ์ข‹์Šต๋‹ˆ๋‹ค.

2.715156606s (watch), 4.382527095s (pod-startup)

์ด ์‹œ์ ์—์„œ ์ด๋ถ„๋ฒ•์„ ์ผ์‹œ ์ค‘์ง€ํ•˜๊ณ  ํœด๊ฐ€๋ฅผ ์‹œ์ž‘ํ•˜๊ฒ ์Šต๋‹ˆ๋‹ค. :)
๋‹ค์Œ ์‹คํ–‰์„์œ„ํ•œ ๊ณต๊ฐ„์„ ํ™•๋ณดํ•˜๊ธฐ ์œ„ํ•ด ํด๋Ÿฌ์Šคํ„ฐ๋ฅผ ๋‹ค์šดํ–ˆ์Šต๋‹ˆ๋‹ค.

๊ฐ์‚ฌํ•ฉ๋‹ˆ๋‹ค Shyam. aa19a172693a4ad60d5a08e9b93557267d259c37์„ ๋‹ค์‹œ ์‹œ๋„ํ•˜๊ณ  ์žˆ์Šต๋‹ˆ๋‹ค.

์ปค๋ฐ‹ aa19a172693a4ad60d5a08e9b93557267d259c37์— ๋Œ€ํ•ด ๋‹ค์Œ๊ณผ ๊ฐ™์€ ๊ฒฐ๊ณผ๋ฅผ ์–ป์—ˆ์Šต๋‹ˆ๋‹ค.

2.47655243s (watch), 4.174016696s (pod-startup)

๊ทธ๋ž˜์„œ ์ด๊ฒƒ์€ ์ข‹์•„ ๋ณด์ธ๋‹ค. ๊ณ„์† ์ด๋ถ„๋ฒ•.

ํ˜„์žฌ ์˜์‹ฌ๋˜๋Š” ์ปค๋ฐ‹ ๋ฒ”์œ„ : aa19a172693a4ad60d5a08e9b93557267d259c37 ... a042ecde362000e51f1e7bdbbda5bf9d81116f84

@ wasylkowski-a ์˜คํ›„ 5์‹œ (UTC) / 1PM (๋™๋ถ€ ํ‘œ์ค€์‹œ / 10์‹œ ํƒœํ‰์–‘ ํ‘œ์ค€์‹œ)์— ์ถœ์‹œ ํšŒ์˜์— ์ฐธ์„ํ•ด ์ฃผ์‹œ๊ฒ ์Šต๋‹ˆ๊นŒ? Zoom ํšŒ์˜์ž…๋‹ˆ๋‹ค : https://zoom.us/j/2018742972

์ฐธ์„ํ•˜๊ฒ ์Šต๋‹ˆ๋‹ค.

์ปค๋ฐ‹ cca7ccbff161255292f72c2d18459cdface62122๋Š” ๋‹ค์Œ๊ณผ ๊ฐ™์€ ๊ฒฐ๊ณผ๋กœ ๋ช…ํ™•ํ•˜์ง€ ์•Š์Šต๋‹ˆ๋‹ค.

2.984185673s (watch), 4.568914929s (pod-startup)

์ด๋ถ„๋ฒ•์˜ ์ ˆ๋ฐ˜์„ ์ž˜๋ชป ์ž…๋ ฅํ•˜์ง€ ์•Š๋Š”๋‹ค๋Š” ์ž์‹ ๊ฐ์„ ์–ป๊ธฐ ์œ„ํ•ด ์ด๊ฒƒ์„ ํ•œ ๋ฒˆ ๋” ์‹คํ–‰ํ•  ๊ฒƒ์ž…๋‹ˆ๋‹ค.

์ด์ œ cca7ccbff161255292f72c2d18459cdface62122๊ฐ€ ๋‚˜์˜๋‹ค๊ณ  ํ™•์‹ ํ•ฉ๋‹ˆ๋‹ค.

3.285168535s (watch), 4.783986141s (pod-startup)

๋ฒ”์œ„๋ฅผ aa19a172693a4ad60d5a08e9b93557267d259c37 ... cca7ccbff161255292f72c2d18459cdface62122๋กœ ์กฐ์ •ํ•˜๊ณ  92e4d3da0076f923a45d54d69c84e91ac6a61a55๋ฅผ ์‹œ๋„ํ•ฉ๋‹ˆ๋‹ค.

์ปค๋ฐ‹ 92e4d3da0076f923a45d54d69c84e91ac6a61a55๊ฐ€ ์ข‹์•„ ๋ณด์ž…๋‹ˆ๋‹ค.

2.522438984s (watch), 4.21739985s (pod-startup)

์ƒˆ๋กœ์šด ์šฉ์˜์ž ์ปค๋ฐ‹ ๋ฒ”์œ„๋Š” 92e4d3da0076f923a45d54d69c84e91ac6a61a55 ... cca7ccbff161255292f72c2d18459cdface62122, 603ebe466d335a37392315d491782ed18d1bae11์ž…๋‹ˆ๋‹ค.

์ปค๋ฐ‹ ์ค‘ ํ•˜๋‚˜, ์ฆ‰ ์žˆ์Šต๋‹ˆ๋‹ค @wasylkowski https://github.com/kubernetes/kubernetes/commit/4c289014a05669c376994868d8d91f7565a204b5 ์— ๋ณต๊ท€์žˆ์–ด https://github.com/kubernetes/kubernetes/commit/493f33583053bb4ce9f7d348c5bac39975883cb8

@dims ์ฃผ์„์„ ๋” ๋ช…ํ™•ํ•˜๊ฒŒ ๋‹ค์‹œ

์ด๋ถ„๋ฒ•์„ ๊ณ„์†ํ•˜๋Š” ๋Œ€์‹  1.10 ๋ธŒ๋žœ์น˜ ํ—ค๋“œ์— ๋Œ€ํ•ด ํ•œ ๋ฒˆ ์žฌ ํ…Œ์ŠคํŠธ์˜ ์šฐ์„  ์ˆœ์œ„๋ฅผ ์ง€์ •ํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๊นŒ?

@wasylkowski / @ wasylkowski-a ^^^^

@ wojtek-t PTAL ์ตœ๋Œ€ํ•œ ๋นจ๋ฆฌ

@dims ์™€ @tpepper์—๊ฒŒ ๊ฐ์‚ฌ๋“œ๋ฆฝ๋‹ˆ๋‹ค. 1.10 ๋ธŒ๋žœ์น˜ ํ—ค๋“œ๋ฅผ ์ƒ๋Œ€๋กœ ์‹œ๋„ํ•˜๊ณ  ๋ฌด์Šจ ์ผ์ด ์ผ์–ด๋‚˜๋Š”์ง€ ๋ณด์ž.

๊ฐ์‚ฌํ•ฉ๋‹ˆ๋‹ค @wasylkowski ์ตœ์•…์˜ ๊ฒฝ์šฐ ์šฐ๋ฆฌ๊ฐ€ ์ด์ „์— ์–‘๋ถ„ํ–ˆ๋˜ ๊ฒƒ์œผ๋กœ ๋Œ์•„๊ฐ‘๋‹ˆ๋‹ค. ๊ถŒ๋ฆฌ?

1.10 ๋จธ๋ฆฌ์—๋Š” ํšŒ๊ท€๊ฐ€ ์žˆ์Šต๋‹ˆ๋‹ค.

3.522924087s (watch), 4.946431238s (pod-startup)

์ด๊ฒƒ์€ etcd 3.1.11์ด ์•„๋‹Œ etcd 3.1.12์— ์žˆ์ง€๋งŒ ์˜ฌ๋ฐ”๋ฅด๊ฒŒ ์ดํ•ดํ•˜๋ฉด ํฐ ์ฐจ์ด๊ฐ€ ์—†์Šต๋‹ˆ๋‹ค.

๋˜ํ•œ 603ebe466d335a37392315d491782ed18d1bae11์ด ์ข‹์•„ ๋ณด์ž…๋‹ˆ๋‹ค.

2.744654024s (watch), 4.284582476s (pod-startup)
2.76287483s (watch), 4.326409841s (pod-startup)
2.560703844s (watch), 4.213785531s (pod-startup)

์ด๊ฒƒ์€ ์šฐ๋ฆฌ์—๊ฒŒ 603ebe466d335a37392315d491782ed18d1bae11 ... cca7ccbff161255292f72c2d18459cdface62122 ๋ฒ”์œ„๋ฅผ ๋‚จ๊ฒจ๋‘๊ณ  ๊ฑฐ๊ธฐ์—๋Š” 3 ๊ฐœ์˜ ์ปค๋ฐ‹ ๋งŒ ์žˆ์Šต๋‹ˆ๋‹ค. ๋‚ด๊ฐ€ ๋ญ˜ ์•Œ์•„ ๋ƒˆ๋Š”์ง€ ๋ณด์ž.

์‹ค์ œ๋กœ 4c289014a05669c376994868d8d91f7565a204b5๊ฐ€ ์—ฌ๊ธฐ์„œ ๋ฒ”์ธ ์ผ ์ˆ˜๋„ ์žˆ์ง€๋งŒ, ์ด๋Š” ์šฐ๋ฆฌ๊ฐ€ ๋จธ๋ฆฌ์— ๋‚˜ํƒ€๋‚˜๋Š” ๋˜ ๋‹ค๋ฅธ ํšŒ๊ท€๊ฐ€ ์žˆ์Œ์„ ์˜๋ฏธํ•ฉ๋‹ˆ๋‹ค.

์ข‹์•„, ๋ถ„๋ช…ํžˆ 6590ea6d5d50700d34255b1e037b2702ad26b7fc๋ฅผ ์ปค๋ฐ‹ํ•˜๋Š” ๊ฒƒ์ด ์ข‹์Šต๋‹ˆ๋‹ค.

2.553170576s (watch), 4.22516704s (pod-startup)

์ปค๋ฐ‹ 7b678dc4035c61a1991b5e1442edb13f40deae72๋Š” ๋‚˜์˜๋‹ค :

3.498855918s (watch), 4.886599251s (pod-startup)

๋‚˜์œ ์ปค๋ฐ‹์€ @dims ์—์„œ ์–ธ๊ธ‰ ํ•œ ๋˜ ๋Œ๋ฆฐ ์ปค๋ฐ‹์˜ ๋ณ‘ํ•ฉ์ด๋ฏ€๋กœ ๋จธ๋ฆฌ์—์„œ ๋˜ ๋‹ค๋ฅธ ํšŒ๊ท€๋ฅผ ๊ด€์ฐฐํ•ด์•ผํ•ฉ๋‹ˆ๋‹ค.

3.1.12 ๋Œ€์‹  etcd 3.1.11์—์„œ ํ—ค๋“œ๋ฅผ ๋‹ค์‹œ ์‹คํ–‰ํ•˜๊ณ  ์–ด๋–ค ์ผ์ด ๋ฐœ์ƒํ•˜๋Š”์ง€ ์‚ดํŽด ๋ณด๊ฒ ์Šต๋‹ˆ๋‹ค.

@ wasylkowski-a ์•„ ๊ณ ์ „์ ์ธ ์ข‹์€ ์†Œ์‹ ๋‚˜์œ ์†Œ์‹ :) ๊ณ„์†ํ•ด ์ฃผ์…”์„œ ๊ฐ์‚ฌํ•ฉ๋‹ˆ๋‹ค.

@ wojtek-t ๋‹ค๋ฅธ ์ œ์•ˆ์ด ์žˆ์Šต๋‹ˆ๊นŒ?

etcd 3.1.11์˜ ํ—ค๋“œ๋„ ๋‚˜์˜๋‹ค. ๋‚ด ๋‹ค์Œ ์‹œ๋„๋Š” ๋ณต๊ท€ ์งํ›„์— ์ง์ ‘ ์‹œ๋„ํ•˜๋Š” ๊ฒƒ์ž…๋‹ˆ๋‹ค (๋”ฐ๋ผ์„œ cdecea545553eff09e280d389a3aef69e2f32bf1์—์„œ), 3.2.14 ๋Œ€์‹  etcd 3.1.11์„ ์‚ฌ์šฉํ•˜์‹ญ์‹œ์˜ค.

์ข‹์€ Andrzej ์†Œ๋ฆฌ

-์–ด๋‘ก๊ฒŒ

2018 ๋…„ 3 ์›” 17 ์ผ ์˜คํ›„ 1์‹œ 19 ๋ถ„์— Andrzej Wasylkowski [email protected] ์€ ๋‹ค์Œ๊ณผ ๊ฐ™์ด ์ผ์Šต๋‹ˆ๋‹ค.

etcd 3.1.11์˜ ํ—ค๋“œ๋„ ๋‚˜์˜๋‹ค. ๋‚ด ๋‹ค์Œ ์‹œ๋„๋Š” ๋ณต๊ท€ ์งํ›„์— ์ง์ ‘ ์‹œ๋„ํ•˜๋Š” ๊ฒƒ์ž…๋‹ˆ๋‹ค (๋”ฐ๋ผ์„œ cdecea5 ์ปค๋ฐ‹์—์„œ), 3.2.14 ๋Œ€์‹  etcd 3.1.11์„ ์‚ฌ์šฉํ•˜์‹ญ์‹œ์˜ค.

โ€”
๋‹น์‹ ์ด ์–ธ๊ธ‰ ๋˜์—ˆ๊ธฐ ๋•Œ๋ฌธ์— ์ด๊ฒƒ์„ ๋ฐ›๊ณ  ์žˆ์Šต๋‹ˆ๋‹ค.
์ด ์ด๋ฉ”์ผ์— ์ง์ ‘ ๋‹ต์žฅํ•˜๊ฑฐ๋‚˜ GitHub์—์„œ ๋ณด๊ฑฐ๋‚˜ ์Šค๋ ˆ๋“œ๋ฅผ ์Œ์†Œ๊ฑฐํ•˜์‹ญ์‹œ์˜ค.

cdecea545553eff09e280d389a3aef69e2f32bf1 ์ปค๋ฐ‹์ด ์ข‹์œผ๋ฏ€๋กœ ๋‚˜์ค‘์— ํšŒ๊ท€๊ฐ€ ์žˆ์Šต๋‹ˆ๋‹ค.

2.66454307s (watch), 4.308091589s (pod-startup)

์ปค๋ฐ‹ 2a373ace6eda6a9cf050ce70a6cf99183c5e5b37์€ ๋ถ„๋ช…ํžˆ ๋‚˜์ฉ๋‹ˆ๋‹ค.

3.656979569s (watch), 6.746987916s (pod-startup)

@ wasylkowski-a ๊ทธ๋ž˜์„œ ์šฐ๋ฆฌ๋Š” ๊ธฐ๋ณธ์ ์œผ๋กœ https://github.com/kubernetes/kubernetes/compare/cdecea5...2a373ac ๋ฒ”์œ„์˜ ์ปค๋ฐ‹์„๋ณด๊ณ  ๋ฌด์—‡์ด ์ž˜๋ชป๋˜์—ˆ๋Š”์ง€ ํ™•์ธํ•ฉ๋‹ˆ๋‹ค. (์ด ๋‘˜ ์‚ฌ์ด์—์„œ bisect ์‹คํ–‰)?

์˜ˆ. ๋ถˆํ–‰ํžˆ๋„ ์ด๊ฒƒ์€ ์—„์ฒญ๋‚œ ๋ฒ”์œ„์ž…๋‹ˆ๋‹ค. ๋‚˜๋Š” ์ง€๊ธˆ aded0d922592fdff0137c70443caf2a9502c7580์„ ์กฐ์‚ฌํ•˜๊ณ  ์žˆ์Šต๋‹ˆ๋‹ค.

๊ฐ์‚ฌํ•ฉ๋‹ˆ๋‹ค @wasylkowski ํ˜„์žฌ ๋ฒ”์œ„๋Š” ๋ฌด์—‡์ž…๋‹ˆ๊นŒ? (๊ทธ๋ž˜์„œ PR์„ ๋ณผ ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค).

์ปค๋ฐ‹ aded0d922592fdff0137c70443caf2a9502c7580์ด ์ž˜๋ชป๋˜์—ˆ์Šต๋‹ˆ๋‹ค.

3.626257043s (watch), 5.00754503s (pod-startup)

์ปค๋ฐ‹ f8298702ffe644a4f021e23a616ad6a8790a5537๋„ ๋‚˜์ฉ๋‹ˆ๋‹ค.

3.747051371s (watch), 6.126914967s (pod-startup)

๊ทธ๋ž˜์„œ ์ปค๋ฐ‹ 20a6749c3f86c7cb9e98442046532380fb5f6e36 :

3.641172882s (watch), 5.100922237s (pod-startup)

๊ทธ๋ฆฌ๊ณ  0e81651e77e0be7e75179e5986ef2c76601f4bd6๋„ ๋งˆ์ฐฌ๊ฐ€์ง€์ž…๋‹ˆ๋‹ค.

3.687028394s (watch), 5.208157763s (pod-startup)

ํ˜„์žฌ ๋ฒ”์œ„๋Š” cdecea545553eff09e280d389a3aef69e2f32bf1 ... 0e81651e77e0be7e75179e5986ef2c76601f4bd6์ž…๋‹ˆ๋‹ค. ์šฐ๋ฆฌ (๋‚˜, @ wojtek-t, @shyamjvs)๋Š” cdecea545553eff09e280d389a3aef69e2f32bf1์ด ์‚ฌ์‹ค ๋ถˆ์•ˆ์ •ํ•œ ํŒจ์Šค๋ผ๊ณ  ์˜์‹ฌํ•˜๊ธฐ ์‹œ์ž‘ํ–ˆ์Šต๋‹ˆ๋‹ค. ๊ทธ๋ž˜์„œ ์šฐ๋ฆฌ๋Š” ๋‹ค๋ฅธ ์™ผ์ชฝ ๋์ด ํ•„์š”ํ•ฉ๋‹ˆ๋‹ค.

/ me๋Š” https://github.com/kubernetes/kubernetes/commit/b259543985b10875f4a010ed0285ac43e335c8e0์— ๋ฒ ํŒ…์„ํ•ฉ๋‹ˆ๋‹ค.

cc @ wasylkowski-a

0e81651e77e0be7e75179e5986ef2c76601f4bd6์€, ๊ฒฐ๊ณผ๊ฐ€ ๋‚˜์˜๊ณ , ๋”ฐ๋ผ์„œ b259543985b10875f4a010ed0285ac43e335c8e0 (244549f02afabc5be23fc56e86a60e5b3685938828, 0e81651e77e77e0e0e7e75179e77e77e0e0e7e75179e77e77e0e7e75179e77e0e0e7e75179e77e77e0e0e7e75179e77e)๋กœ ๋ณ‘ํ•ฉ ๋จ

@ wojtek-t ๋ฐ @shyamjvs์— ๋”ฐ๋ผ cdecea545553eff09e280d389a3aef69e2f32bf1์„ ๋‹ค์‹œ ์‹คํ–‰ํ•˜๊ณ  ์žˆ์Šต๋‹ˆ๋‹ค. ์ด๊ฒƒ์ด "๋ถˆ์•ˆ์ •ํ•œ ์„ "์ด์—ˆ์„ ์ˆ˜๋„ ์žˆ๊ธฐ ๋•Œ๋ฌธ์ž…๋‹ˆ๋‹ค.

๋‚ด๊ฐ€ ๊ด€์ฐฐ ํ•œ ๋‹ค์Œ ๊ฒฐ๊ณผ๋ฅผ ๊ธฐ๋ฐ˜์œผ๋กœ cdecea545553eff09e280d389a3aef69e2f32bf1์ด ์‹ค์ œ๋กœ ์ข‹๋‹ค๊ณ  ๊ฐ€์ •ํ•ฉ๋‹ˆ๋‹ค.

2.66454307s (watch), 4.308091589s (pod-startup)
2.695629257s (watch), 4.194027608s (pod-startup)
2.660956347s (watch), 3m36.62259323s (pod-startup) <-- looks like an outlier
2.865445137s (watch), 4.594671099s (pod-startup)
2.412093606s (watch), 4.070130529s (pod-startup)

ํ˜„์žฌ ์˜์‹ฌ๋˜๋Š” ๋ฒ”์œ„ : cdecea545553eff09e280d389a3aef69e2f32bf1 ... 0e81651e77e0be7e75179e5986ef2c76601f4bd6

ํ˜„์žฌ ํ…Œ์ŠคํŠธ์ค‘์ธ 99c87cf679e9cbd9647786bf7e81f0a2d771084f

์ด ์ž‘์—…์„ ๊ณ„์†ํ•ด ์ฃผ์‹  @wasylkowski ์—๊ฒŒ ๊ฐ์‚ฌ๋“œ๋ฆฝ๋‹ˆ๋‹ค.

์˜ค๋Š˜ ํ† ๋ก ์— ๋”ฐ๋ฅด๋ฉด fluentd-scaler์—๋Š” PR์— ์˜ํ•ด ์ˆ˜์ •๋˜์ง€ ์•Š์€ https://github.com/kubernetes/kubernetes/issues/61190 ์—ฌ์ „ํžˆ ๋ฌธ์ œ๊ฐ€ ์žˆ์Šต๋‹ˆ๋‹ค. ์ด ํšŒ๊ท€๊ฐ€ fluentd์— ์˜ํ•ด ๋ฐœ์ƒํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๊นŒ?

fluentd https://github.com/kubernetes/kubernetes/commit/a88ddac1e47e0bc4b43bfa1b0df2f19aea4455f2 ์™€ ๊ด€๋ จ๋œ PR ์ค‘ ํ•˜๋‚˜๊ฐ€ ์ตœ์‹  ๋ฒ”์œ„์— ์žˆ์Šต๋‹ˆ๋‹ค.

์˜ค๋Š˜ ํ† ๋ก ์— ๋”ฐ๋ฅด๋ฉด fluentd-scaler์—๋Š” PR์— ์˜ํ•ด ์ˆ˜์ •๋˜์ง€ ์•Š์€ # 61190 ๋ฌธ์ œ๊ฐ€ ์—ฌ์ „ํžˆ ์žˆ์Šต๋‹ˆ๋‹ค. ์ด ํšŒ๊ท€๊ฐ€ fluentd์— ์˜ํ•ด ๋ฐœ์ƒํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๊นŒ?

TBH, ์œ ์ฐฝํ•œ ๋ฌธ์ œ ๋•Œ๋ฌธ์ด๋ผ๋ฉด ์ •๋ง ๋†€๋ž„ ๊ฒƒ์ž…๋‹ˆ๋‹ค. ํ•˜์ง€๋งŒ์ด ๊ฐ€์„ค์„ ํ™•์‹คํžˆ ๋ฐฐ์ œ ํ•  ์ˆ˜๋Š” ์—†์Šต๋‹ˆ๋‹ค.
๋‚ด ๊ฐœ์ธ์ ์ธ ๋Š๋‚Œ์€ Kubelet์—์„œ ์•ฝ๊ฐ„์˜ ๋ณ€ํ™”๊ฐ€ ๋  ๊ฒƒ์ด์ง€๋งŒ ๊ทธ ๋ฒ”์œ„์˜ PR๋„ ์กฐ์‚ฌํ–ˆ์œผ๋ฉฐ ์‹ค์ œ๋กœ ์˜์‹ฌ์Šค๋Ÿฌ์šด ๊ฒƒ์€ ์—†์Šต๋‹ˆ๋‹ค ...
๋ฐ”๋ผ๊ฑด๋Œ€ ๋ฒ”์œ„๋Š” ๋‚ด์ผ 4 ๋ฐฐ ๋” ์ž‘์•„ ์งˆ ๊ฒƒ์ž…๋‹ˆ๋‹ค.

์ข‹์•„, 99c87cf679e9cbd9647786bf7e81f0a2d771084f๊ฐ€ ์ข‹์•„ ๋ณด์ด์ง€๋งŒ ์ด๊ฒƒ์ด ํ”Œ๋ ˆ์ดํฌ๊ฐ€ ์•„๋‹Œ์ง€ ํ™•์ธํ•˜๋ ค๋ฉด ์„ธ ๋ฒˆ์˜ ์‹คํ–‰์ด ํ•„์š”ํ–ˆ์Šต๋‹ˆ๋‹ค.

2.901624657s (watch), 4.418169754s (pod-startup)
2.938653965s (watch), 4.423465198s (pod-startup)
3.047455619s (watch), 4.455485098s (pod-startup)

๋‹ค์Œ์œผ๋กœ a88ddac1e47e0bc4b43bfa1b0df2f19aea4455f2๊ฐ€ ์ž˜๋ชป๋˜์—ˆ์Šต๋‹ˆ๋‹ค.

3.769747695s (watch), 5.338517616s (pod-startup)

ํ˜„์žฌ ๋ฒ”์œ„๋Š” 99c87cf679e9cbd9647786bf7e81f0a2d771084f ... a88ddac1e47e0bc4b43bfa1b0df2f19aea4455f2์ž…๋‹ˆ๋‹ค. c105796e4ba7fc9cfafc2e7a3cc4a556d7d9defd ๋ถ„์„ ์ค‘.

์œ„์—์„œ ์–ธ๊ธ‰ ํ•œ ๋ฒ”์œ„๋ฅผ ์‚ดํŽด ๋ณด์•˜์Šต๋‹ˆ๋‹ค. PR์ด 9 ๊ฐœ๋ฟ์ž…๋‹ˆ๋‹ค.
https://github.com/kubernetes/kubernetes/pull/59944-100 % ์•„๋‹˜-์†Œ์œ ์ž ํŒŒ์ผ ๋งŒ ๋ณ€๊ฒฝ
https://github.com/kubernetes/kubernetes/pull/59953- ์ž ์žฌ์ ์œผ๋กœ
https://github.com/kubernetes/kubernetes/pull/59809-kubectl ์ฝ”๋“œ ๋งŒ ๊ฑด ๋“œ๋ฆฌ๊ธฐ ๋•Œ๋ฌธ์—์ด ๊ฒฝ์šฐ์—๋Š” ์ค‘์š”ํ•˜์ง€ ์•Š์Šต๋‹ˆ๋‹ค.
https://github.com/kubernetes/kubernetes/pull/59955-100 % NOT-๊ด€๋ จ์—†๋Š” e2e ํ…Œ์ŠคํŠธ ๋งŒ ๊ฑด ๋“œ๋ฆฌ๊ธฐ
https://github.com/kubernetes/kubernetes/pull/59808- ์ž ์žฌ์ ์œผ๋กœ (ํด๋Ÿฌ์Šคํ„ฐ ์„ค์ • ๋ณ€๊ฒฝ)
https://github.com/kubernetes/kubernetes/pull/59913-100 % NOT-๊ด€๋ จ์—†๋Š” e2e ํ…Œ์ŠคํŠธ ๋งŒ ๊ฑด ๋“œ๋ฆฌ๊ธฐ
https://github.com/kubernetes/kubernetes/pull/59917- ํ…Œ์ŠคํŠธ๋ฅผ ๋ณ€๊ฒฝํ•˜๊ณ  ์žˆ์ง€๋งŒ ๋ณ€๊ฒฝ ์‚ฌํ•ญ์„ ์ผœ์ง€ ์•Š๊ณ  ์žˆ์œผ๋ฏ€๋กœ ๊ฐ€๋Šฅ์„ฑ์ด ๋‚ฎ์Šต๋‹ˆ๋‹ค.
https://github.com/kubernetes/kubernetes/pull/59668-100 % ์•„๋‹˜-AWS ์ฝ”๋“œ ๋งŒ ๊ฑด ๋“œ๋ฆฌ๋ฉด
https://github.com/kubernetes/kubernetes/pull/59909-100 % ์•„๋‹˜-์†Œ์œ ์ž ํŒŒ์ผ ๋งŒ ๊ฑด ๋“œ๋ฆฌ๊ธฐ

๊ทธ๋ž˜์„œ ์ €๋Š” ์—ฌ๊ธฐ์— ๋‘ ๊ฐ€์ง€ ํ›„๋ณด๊ฐ€ ์žˆ๋‹ค๊ณ  ์ƒ๊ฐํ•ฉ๋‹ˆ๋‹ค : https://github.com/kubernetes/kubernetes/pull/59953 ๋ฐ https://github.com/kubernetes/kubernetes/pull/59808
๋‚˜๋Š” ๊ทธ๊ฒƒ๋“ค์„ ์ดํ•ดํ•˜๊ธฐ ์œ„ํ•ด ๋” ๊นŠ์ด ํŒŒ๊ณ  ๋“ค๋ ค๊ณ  ๋…ธ๋ ฅํ•  ๊ฒƒ์ž…๋‹ˆ๋‹ค.

c105796e4ba7fc9cfafc2e7a3cc4a556d7d9defd๋Š” ๋‹ค์†Œ ๋‚˜๋น  ๋ณด์ž…๋‹ˆ๋‹ค.

3.428891786s (watch), 4.909251611s (pod-startup)

์ด๊ฒƒ์ด Wojtek์˜ ์šฉ์˜์ž ์ค‘ ํ•˜๋‚˜ ์ธ # 59953์˜ ๋ณ‘ํ•ฉ์ด๋ผ๋Š” ์ ์„ ๊ฐ์•ˆํ•  ๋•Œ, ์ด์ œ ๊ทธ ์ „์— ํ•œ ์ปค๋ฐ‹์„ ์‹คํ–‰ํ•  ๊ฒƒ์ด๋ฏ€๋กœ f60083549a43f152b3142e01756e25611d911770์ž…๋‹ˆ๋‹ค.

๊ทธ๋Ÿฌ๋‚˜ ํ•ด๋‹น ์ปค๋ฐ‹์€ OWNERS_ALIASES ๋ณ€๊ฒฝ์ด๋ฉฐ ๊ทธ ์ „์— ํ•ด๋‹น ๋ฒ”์œ„์— ์•„๋ฌด๊ฒƒ๋„ ๋‚จ์•„ ์žˆ์ง€ ์•Š์œผ๋ฏ€๋กœ c105796e4ba7fc9cfafc2e7a3cc4a556d7d9defd๊ฐ€ ๋ฌธ์ œ๊ฐ€ ๋  ๊ฒƒ์ž…๋‹ˆ๋‹ค. ์–ด์จŒ๋“  ์•ˆ์ „์„ ์œ„ํ•ด ํ…Œ์ŠคํŠธ๋ฅผ ์‹คํ–‰ํ•  ๊ฒƒ์ž…๋‹ˆ๋‹ค.

์˜คํ”„๋ผ์ธ์œผ๋กœ ๋…ผ์˜-๋Œ€์‹ ์ด ์ปค๋ฐ‹์„ ๋กœ์ปฌ๋กœ ๋˜ ๋Œ๋ฆฐ ์ƒํƒœ์—์„œ ํ…Œ์ŠคํŠธ๋ฅผ ํ—ค๋“œ์—์„œ ์‹คํ–‰ํ•ฉ๋‹ˆ๋‹ค.

์™€! ๋„ˆ๋ฌด ๋งŽ์€ ๋ฌธ์ œ๋ฅผ ์ผ์œผํ‚ค๋Š” ์› ๋ผ์ด๋„ˆ. ๊ฐ์‚ฌํ•ฉ๋‹ˆ๋‹ค @wasylkowski @ wojtek-t

@dims One-
์ผ๋ฐ˜์ ์œผ๋กœ https://github.com/kubernetes/community/blob/master/sig-scalability/blogs/scalability-regressions-case-studies.md์—์„œ ์ข‹์€ ์ฝ๊ธฐ๋ฅผ ์›ํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค. :)

๋‹ค์‹œ ์—…๋ฐ์ดํŠธํ•˜์‹ญ์‹œ์˜ค. ํ—ค๋“œ์—์„œ ํ…Œ์ŠคํŠธ : ์ปค๋ฐ‹์„ ๋กœ์ปฌ๋กœ ๋˜ ๋Œ๋ฆฐ ์ƒํƒœ๋กœ ๋จผ์ € ์‹คํ–‰ํ•ฉ๋‹ˆ๋‹ค. ๊ทธ๋ž˜๋„ ํ”Œ๋ ˆ์ดํฌ ์ผ ์ˆ˜ ์žˆ์œผ๋ฏ€๋กœ ๋‹ค์‹œ ์‹คํ–‰ ์ค‘์ž…๋‹ˆ๋‹ค.

https://github.com/kubernetes/kubernetes/pull/59953 ์˜ ์ปค๋ฐ‹์„ ์‚ดํŽด๋ณด๋ฉด ๋ฒ„๊ทธ๊ฐ€ ์ˆ˜์ •๋˜์ง€ ์•Š์•˜์Šต๋‹ˆ๊นŒ? "์˜ˆ์•ฝ ๋œ"์ƒํƒœ๋ฅผ ์ž˜๋ชป๋œ ๊ฐœ์ฒด์— ๋ฐฐ์น˜ํ•˜๋Š” ๋ฒ„๊ทธ๋ฅผ ์ˆ˜์ • ํ•œ ๊ฒƒ์œผ๋กœ ๋ณด์ž…๋‹ˆ๋‹ค. ํ•ด๋‹น PR์—์„œ ์–ธ๊ธ‰ ๋œ ๋ฌธ์ œ์— ๋”ฐ๋ฅด๋ฉด kubelet์ด ํ•ด๋‹น ์ˆ˜์ •์—†์ด ํฌ๋“œ๊ฐ€ ์˜ˆ์•ฝ๋˜์—ˆ๋‹ค๊ณ ๋ณด๊ณ ํ•˜๋Š” ๊ฒƒ์„ ๋†“์น  ์ˆ˜์žˆ๋Š” ๊ฒƒ ๊ฐ™์Šต๋‹ˆ๋‹ค.

@ Random-Liu ๊ทธ ๋ณ€ํ™”์˜ ํšจ๊ณผ๊ฐ€ ๋ฌด์—‡์ธ์ง€ ์šฐ๋ฆฌ์—๊ฒŒ ๋” ์ž˜ ์„ค๋ช… ํ•  ์ˆ˜์žˆ๋Š” ์‚ฌ๋žŒ :)

# 59953์˜ ์ปค๋ฐ‹์„ ๋ณด๋ฉด ... ๋ฒ„๊ทธ๊ฐ€ ์ˆ˜์ •๋˜์ง€ ์•Š์•˜๋‚˜์š”? "์˜ˆ์•ฝ ๋œ"์ƒํƒœ๋ฅผ ์ž˜๋ชป๋œ ๊ฐœ์ฒด์— ๋ฐฐ์น˜ํ•˜๋Š” ๋ฒ„๊ทธ๋ฅผ ์ˆ˜์ • ํ•œ ๊ฒƒ์œผ๋กœ ๋ณด์ž…๋‹ˆ๋‹ค. kubelet์ด pod๊ฐ€ ์ˆ˜์ • ์ „์— ๋„ˆ๋ฌด ์ผ์ฐ ์˜ˆ์•ฝ๋˜์—ˆ๋‹ค๊ณ ๋ณด๊ณ ํ–ˆ์„ ์ˆ˜ ์žˆ์Šต๋‹ˆ๊นŒ?

์˜ˆ-๋ฒ„๊ทธ ์ˆ˜์ • ์ด์—ˆ์Œ์„ ์••๋‹ˆ๋‹ค. ๋‚˜๋Š” ๊ทธ๊ฒƒ์„ ์™„์ „ํžˆ ์ดํ•ดํ•˜์ง€ ๋ชปํ•ฉ๋‹ˆ๋‹ค.
pod๋ณด๊ณ  ๋ฌธ์ œ๋ฅผ "Scheduled"๋กœ ์ˆ˜์ • ํ•œ ๊ฒƒ ๊ฐ™์Šต๋‹ˆ๋‹ค. ๊ทธ๋Ÿฌ๋‚˜ kubelet์ด "StartedAt"์œผ๋กœ๋ณด๊ณ  ํ•  ๋•Œ๊นŒ์ง€๋„ ๋ฌธ์ œ๊ฐ€ ๋ฐœ์ƒํ•˜์ง€ ์•Š์Šต๋‹ˆ๋‹ค.
๋ฌธ์ œ๋Š” Kubelet์— ์˜ํ•ด "StartedAt"์œผ๋กœ๋ณด๊ณ  ๋œ ์‹œ๊ฐ„๊ณผ pod ์ƒํƒœ ์—…๋ฐ์ดํŠธ๊ฐ€๋ณด๊ณ ๋˜๊ณ  ํ…Œ์ŠคํŠธ์— ์˜ํ•ด ๊ฐ์‹œ๋˜๋Š” ์‹œ๊ฐ„ ์‚ฌ์ด์— ์ƒ๋‹นํ•œ ์ฆ๊ฐ€๊ฐ€ ์žˆ๋‹ค๋Š” ๊ฒƒ์ž…๋‹ˆ๋‹ค.
๊ทธ๋ž˜์„œ ์ €๋Š” "Scheduled"๋น„ํŠธ๊ฐ€ ์—ฌ๊ธฐ์—์„œ ๋ถ‰์€ ์ฒญ์–ด๋ผ๊ณ  ์ƒ๊ฐํ•ฉ๋‹ˆ๋‹ค.

๋‚ด ์ƒ๊ฐ์— (๊ทธ๋Ÿฌ๋‚˜ ์ด๊ฒƒ์€ ์—ฌ์ „ํžˆ โ€‹โ€‹์ถ”์ธก ์ผ๋ฟ์ž…๋‹ˆ๋‹ค)์ด ๋ณ€๊ฒฝ์œผ๋กœ ์ธํ•ด ๋” ๋งŽ์€ Pod ์ƒํƒœ ์—…๋ฐ์ดํŠธ๋ฅผ ๋ณด๋‚ด๊ณ  ๊ฒฐ๊ณผ์ ์œผ๋กœ ๋” ๋งŽ์€ 429 ๋˜๋Š” ๊ทธ์™€ ๊ฐ™์€ sth๊ฐ€ ๋ฐœ์ƒํ•œ๋‹ค๋Š” ๊ฒƒ์ž…๋‹ˆ๋‹ค. ๊ฒฐ๊ตญ Kubelet์ด ํฌ๋“œ ์ƒํƒœ๋ฅผ๋ณด๊ณ ํ•˜๋Š” ๋ฐ ๋” ๋งŽ์€ ์‹œ๊ฐ„์ด ๊ฑธ๋ฆฝ๋‹ˆ๋‹ค. ๊ทธ๋Ÿฌ๋‚˜ ๊ทธ๊ฒƒ์€ ์šฐ๋ฆฌ๊ฐ€ ์—ฌ์ „ํžˆ ํ™•์ธํ•ด์•ผ ํ•  ๊ฒƒ์ž…๋‹ˆ๋‹ค.

๋‘ ๋ฒˆ ์‹คํ–‰ ํ•œ ํ›„ # 59953์„ ๋˜ ๋Œ๋ฆฌ๋ฉด ๋ฌธ์ œ๊ฐ€ ํ•ด๊ฒฐ ๋  ๊ฒƒ์ด๋ผ๊ณ  ํ™•์‹ ํ•ฉ๋‹ˆ๋‹ค.

3.052567319s (watch), 4.489142104s (pod-startup)
2.799364978s (watch), 4.385999497s (pod-startup)

์šฐ๋ฆฌ๋Š” ๋” ๋งŽ์€ Pod ์ƒํƒœ ์—…๋ฐ์ดํŠธ๋ฅผ ๋ณด๋‚ด๊ณ  ์žˆ์œผ๋ฉฐ ๊ฒฐ๊ณผ์ ์œผ๋กœ ๋” ๋งŽ์€ 429s ๋˜๋Š” ๊ทธ์™€ ๊ฐ™์€ sth๊ฐ€ ๋ฐœ์ƒํ•ฉ๋‹ˆ๋‹ค. ๊ฒฐ๊ตญ Kubelet์ด ํฌ๋“œ ์ƒํƒœ๋ฅผ๋ณด๊ณ ํ•˜๋Š” ๋ฐ ๋” ๋งŽ์€ ์‹œ๊ฐ„์ด ๊ฑธ๋ฆฝ๋‹ˆ๋‹ค.

์ด๊ฒƒ์€ https://github.com/kubernetes/kubernetes/issues/60589#issuecomment -370573938 (๋‚ด๊ฐ€ ์ƒ๊ฐํ•œ ์›์ธ์ด ์ž˜๋ชป๋˜์—ˆ์ง€๋งŒ)์—์„œ ๊ฐ€์„ค์„ ์„ธ์šด ํšจ๊ณผ์ž…๋‹ˆ๋‹ค. :)
๋˜ํ•œ IIRC๋Š” ํ’‹ ์ฝœ (https://github.com/kubernetes/kubernetes/issues/60589#issuecomment-370582634 ์ฐธ์กฐ)์— ๋Œ€ํ•ด 429s์˜ ์ฆ๊ฐ€๋ฅผ ํ™•์ธํ•œ ๊ฒƒ์ฒ˜๋Ÿผ ๋ณด์˜€์ง€๋งŒ ์ด์ „ ๋ฒ”์œ„์—์„œ ๊ฐ€์ ธ์˜จ ๊ฒƒ์ž…๋‹ˆ๋‹ค ( etcd ๋ณ€๊ฒฝ ์ฃผ๋ณ€).

๋‘ ๋ฒˆ ์‹คํ–‰ ํ•œ ํ›„ # 59953์„ ๋˜ ๋Œ๋ฆฌ๋ฉด ๋ฌธ์ œ๊ฐ€ ํ•ด๊ฒฐ ๋  ๊ฒƒ์ด๋ผ๊ณ  ํ™•์‹ ํ•ฉ๋‹ˆ๋‹ค.

๋‚ด ์ง๊ฐ (https://github.com/kubernetes/kubernetes/issues/60589#issuecomment-370874602) ์Šค๋ ˆ๋“œ์—์„œ ๊ฝค ์ผ์ฐ kubelet ์ธก์— ๋ฌธ์ œ๊ฐ€ ์žˆ๋‹ค๋Š” ๊ฒƒ์€ ๊ฒฐ๊ตญ ์ •ํ™•ํ–ˆ์Šต๋‹ˆ๋‹ค :)

/ sig ๋…ธ๋“œ
@ kubernetes / sig-node-bugs ๋ฆด๋ฆฌ์Šค ํŒ€์€ # 59953 ์ปค๋ฐ‹ ๋Œ€ ๋˜๋Œ๋ฆฌ๊ธฐ ๋ฐ ์„ฑ๋Šฅ ๋ฌธ์ œ์— ๋Œ€ํ•œ ๋ฆฌ๋ทฐ๋ฅผ ์‹ค์ œ๋กœ ์‚ฌ์šฉํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค.

# 59953์˜ ์ปค๋ฐ‹์„ ๋ณด๋ฉด ... ๋ฒ„๊ทธ๊ฐ€ ์ˆ˜์ •๋˜์ง€ ์•Š์•˜๋‚˜์š”? "์˜ˆ์•ฝ ๋œ"์ƒํƒœ๋ฅผ ์ž˜๋ชป๋œ ๊ฐœ์ฒด์— ๋ฐฐ์น˜ํ•˜๋Š” ๋ฒ„๊ทธ๋ฅผ ์ˆ˜์ • ํ•œ ๊ฒƒ์œผ๋กœ ๋ณด์ž…๋‹ˆ๋‹ค. ํ•ด๋‹น PR์—์„œ ์–ธ๊ธ‰ ๋œ ๋ฌธ์ œ์— ๋”ฐ๋ฅด๋ฉด kubelet์ด ํ•ด๋‹น ์ˆ˜์ •์—†์ด ํฌ๋“œ๊ฐ€ ์˜ˆ์•ฝ๋˜์—ˆ๋‹ค๊ณ ๋ณด๊ณ ํ•˜๋Š” ๊ฒƒ์„ ๋†“์น  ์ˆ˜์žˆ๋Š” ๊ฒƒ ๊ฐ™์Šต๋‹ˆ๋‹ค.

@liggitt ์„ค๋ช…ํ•ด ์ฃผ์…”์„œ ๊ฐ์‚ฌํ•ฉ๋‹ˆ๋‹ค. ๋„ค, ๊ทธ PR์ด ๋ฒ„๊ทธ๋ฅผ ์ˆ˜์ •ํ•˜๊ณ  ์žˆ์Šต๋‹ˆ๋‹ค. ์ด์ „์—๋Š” kubelet์ด ํ•ญ์ƒ PodScheduled ์„ค์ •ํ•˜์ง€๋Š” ์•Š์•˜์Šต๋‹ˆ๋‹ค. # 59953์„ ์‚ฌ์šฉํ•˜๋ฉด kubelet์ด ์˜ฌ๋ฐ”๋ฅด๊ฒŒ ์ˆ˜ํ–‰ํ•ฉ๋‹ˆ๋‹ค.

@shyamjvs ๋” ๋งŽ์€ ํฌ๋“œ ์ƒํƒœ ์—…๋ฐ์ดํŠธ๋ฅผ ๋„์ž… ํ•  ์ˆ˜ ์žˆ๋Š”์ง€ ํ™•์‹คํ•˜์ง€ ์•Š์Šต๋‹ˆ๋‹ค.
๋‚ด๊ฐ€ ์˜ฌ๋ฐ”๋ฅด๊ฒŒ ์ดํ•ดํ•˜๋ฉด PodScheduled ์กฐ๊ฑด์ด ์ฒซ ๋ฒˆ์งธ ์ƒํƒœ ์—…๋ฐ์ดํŠธ์— ์„ค์ •๋˜๊ณ  ํ•ญ์ƒ ๊ฑฐ๊ธฐ์— ์žˆ์œผ๋ฉฐ ๋ณ€๊ฒฝ๋˜์ง€ ์•Š์Šต๋‹ˆ๋‹ค. ๋” ๋งŽ์€ ์ƒํƒœ ์—…๋ฐ์ดํŠธ๋ฅผ ์ƒ์„ฑํ•˜๋Š” ์ด์œ ๋ฅผ ์ดํ•ดํ•  ์ˆ˜ ์—†์Šต๋‹ˆ๋‹ค.

์‹ค์ œ๋กœ ๋” ๋งŽ์€ ์ƒํƒœ ์—…๋ฐ์ดํŠธ๋ฅผ ๋„์ž…ํ•œ๋‹ค๋ฉด 2 ๋…„ ์ „์— https://github.com/kubernetes/kubernetes/pull/24459์— ๋„์ž… ๋œ ๋ฌธ์ œ์ด์ง€๋งŒ ๋ฒ„๊ทธ๋กœ ๋ฎ์—ฌ ์žˆ์œผ๋ฉฐ # 59953์€ ๋ฒ„๊ทธ๋ฅผ ์ˆ˜์ •ํ•ฉ๋‹ˆ๋‹ค.

@ wasylkowski-a https://github.com/kubernetes/kubernetes/issues/60589#issuecomment -374982422 ๋ฐ https://github.com/kubernetes/kubernetes/issues/60589# ์—์„œ 2 ๋ฒˆ ํ…Œ์ŠคํŠธ ์‹คํ–‰์— ๋Œ€ํ•œ ๋กœ๊ทธ๊ฐ€ ์žˆ์Šต๋‹ˆ๊นŒ?

@yujuhong ๊ณผ ์ €๋Š” # 59953์ด ์ •์  ํฌ๋“œ์˜ PodScheduled ์กฐ๊ฑด์ด ๊ณ„์† ์—…๋ฐ์ดํŠธ๋˜๋Š” ๋ฌธ์ œ๋ฅผ ๋…ธ์ถœํ–ˆ์Œ์„ ๋ฐœ๊ฒฌํ–ˆ์Šต๋‹ˆ๋‹ค.

Kubelet์ด์—†๋Š” ํฌ๋“œ์— ๋Œ€ํ•ด ์ƒˆ๋กœ์šด PodScheduled ์กฐ๊ฑด์„ ์ƒ์„ฑํ•ฉ๋‹ˆ๋‹ค. ์ •์  ํฌ๋“œ์—๋Š”์ด ๊ธฐ๋Šฅ์ด ์—†์œผ๋ฉฐ ์ƒํƒœ๊ฐ€ ์—…๋ฐ์ดํŠธ๋˜์ง€ ์•Š์Šต๋‹ˆ๋‹ค (์˜ˆ์ƒ ๋œ ๋™์ž‘). ๋”ฐ๋ผ์„œ kubelet์€ ์ •์  ํฌ๋“œ์— ๋Œ€ํ•ด ์ƒˆ๋กœ์šด PodScheduled ์กฐ๊ฑด์„ ๊ณ„์† ์ƒ์„ฑํ•ฉ๋‹ˆ๋‹ค.

์ด ๋ฌธ์ œ๋Š” # 24459์—์„œ ์†Œ๊ฐœ๋˜์—ˆ์ง€๋งŒ ๋ฒ„๊ทธ๋กœ ๋ฎ์—ฌ ์žˆ์Šต๋‹ˆ๋‹ค. # 59953 ๋ฒ„๊ทธ๋ฅผ ์ˆ˜์ •ํ•˜๊ณ  ์›๋ž˜ ๋ฌธ์ œ๋ฅผ ๋…ธ์ถœํ–ˆ์Šต๋‹ˆ๋‹ค.

์ด ๋ฌธ์ œ๋ฅผ ์‹ ์†ํ•˜๊ฒŒ ํ•ด๊ฒฐํ•  ์ˆ˜์žˆ๋Š” ๋‘ ๊ฐ€์ง€ ์˜ต์…˜์ด ์žˆ์Šต๋‹ˆ๋‹ค.

  • ์˜ต์…˜ 1 : kubelet์ด PodScheduled ์กฐ๊ฑด์„ ์ถ”๊ฐ€ํ•˜๋„๋กํ•˜์ง€ ๋งˆ์‹ญ์‹œ์˜ค. kubelet์€ ์Šค์ผ€์ค„๋Ÿฌ๊ฐ€ ์„ค์ • ํ•œ PodScheduled ์กฐ๊ฑด ๋งŒ ์œ ์ง€ํ•ด์•ผํ•ฉ๋‹ˆ๋‹ค.

    • ์žฅ์  : ๊ฐ„๋‹จํ•ฉ๋‹ˆ๋‹ค.

    • ๋‹จ์  : ์Šค์ผ€์ค„๋Ÿฌ๋ฅผ ์šฐํšŒํ•˜๋Š” (๋…ธ๋“œ ์ด๋ฆ„ ์ง์ ‘ ํ• ๋‹น) ์ •์  ํฌ๋“œ ๋ฐ ํฌ๋“œ์—๋Š” PodScheduled ์กฐ๊ฑด์ด ์—†์Šต๋‹ˆ๋‹ค. ์‹ค์ œ๋กœ # 59953์ด ์—†์ง€๋งŒ kubelet์€ ๊ฒฐ๊ตญ ํ•ด๋‹น ํฌ๋“œ์— ๋Œ€ํ•ด์ด ์กฐ๊ฑด์„ ์„ค์ •ํ•˜์ง€๋งŒ ๋ฒ„๊ทธ๋กœ ์ธํ•ด ์‹œ๊ฐ„์ด ์˜ค๋ž˜ ๊ฑธ๋ฆด ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค.

  • ์˜ต์…˜ 2 : kubelet์ด ์ฒ˜์Œ์— ์ •์  ํฌ๋“œ๋ฅผ ๋ณผ ๋•Œ ์ •์  ํฌ๋“œ์— ๋Œ€ํ•œ PodScheduled ์กฐ๊ฑด์„ ์ƒ์„ฑํ•ฉ๋‹ˆ๋‹ค.

์˜ต์…˜ 2๋Š” ์‚ฌ์šฉ์ž๊ฐ€ ์ง๋ฉดํ•˜๋Š” ๋ณ€ํ™”๋ฅผ ๋œ ๋„์ž… ํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค.

ํ•˜์ง€๋งŒ ์Šค์ผ€์ค„๋Ÿฌ์— ์˜ํ•ด ์˜ˆ์•ฝ๋˜์ง€ ์•Š์€ ํฌ๋“œ์— PodScheduled ์˜๋ฏธ๊ฐ€ ๋ฌด์—‡์ธ์ง€ ๋ฌป๊ณ  ์‹ถ์Šต๋‹ˆ๋‹ค. ์ด๋Ÿฌํ•œ ํฌ๋“œ์—์ด ์กฐ๊ฑด์ด ์ •๋ง๋กœ ํ•„์š”ํ•ฉ๋‹ˆ๊นŒ? / cc @ kubernetes / sig-autoscaling-bugs @yujuhong ์ด ๋‚ด๊ฒŒ PodScheduled ๊ฐ€ ์ž๋™ ํ™•์žฅ์— ์‚ฌ์šฉ ๋œ๋‹ค๊ณ  ๋งํ–ˆ๊ธฐ ๋•Œ๋ฌธ์ž…๋‹ˆ๋‹ค.
/ cc @ kubernetes / sig-node-bugs @ kubernetes / sig-scheduling-bugs

@ Random-Liu very long time for kubelet to eventually set this condition ์˜ ํšจ๊ณผ๋Š” ๋ฌด์—‡์ž…๋‹ˆ๊นŒ? ์ตœ์ข… ์‚ฌ์šฉ์ž๋Š” ์–ด๋–ค ๋ฌธ์ œ๋ฅผ์ธ์ง€ํ•˜๊ณ  ์ง๋ฉดํ•˜๊ฒŒ๋ฉ๋‹ˆ๊นŒ (ํ…Œ์ŠคํŠธ ์žฅ์น˜์˜ ๋ฒ—๊ฒจ์ง ์™ธ๋ถ€)? (์˜ต์…˜ # 1์—์„œ)

@dims ์‚ฌ์šฉ์ž๋Š” PodScheduled ์ƒํƒœ๋ฅผ ์˜ค๋žซ๋™์•ˆ ๋ณผ ์ˆ˜ ์—†์Šต๋‹ˆ๋‹ค.

https://github.com/kubernetes/kubernetes/issues/60589#issuecomment -375103979์—์„œ ์˜ต์…˜ 2๋ฅผ ๊ตฌํ˜„ํ•˜๋Š” ์ˆ˜์ • # 61504๊ฐ€ ์žˆ์Šต๋‹ˆ๋‹ค.

์‚ฌ๋žŒ๋“ค์ด ๋” ๋‚˜์€ ํ•ด๊ฒฐ์ฑ…์ด๋ผ๊ณ  ์ƒ๊ฐํ•˜๋ฉด ์˜ต์…˜ 1๋กœ ๋ณ€๊ฒฝํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค. :)

์ด๊ฒƒ์„ ์•„๋Š” ์‚ฌ๋žŒ๋“ค์—๊ฒŒ ๋ฌผ์–ด ๋ณด๋Š” ๊ฒƒ์ด ์ข‹์Šต๋‹ˆ๋‹ค! (์ถœ์‹œ ํŒ€์ด ์•„๋‹™๋‹ˆ๋‹ค ๐Ÿ˜„!)

ํ•‘ @dashpole @ dchen1107 @derekwaynecarr

@ Random-Liu IIRC๋Š” ํ…Œ์ŠคํŠธ์—์„œ ๋…ธ๋“œ์—์„œ ์‹คํ–‰๋˜๋Š” ์œ ์ผํ•œ ์ •์  ํฌ๋“œ๋Š” kube-proxy์ž…๋‹ˆ๋‹ค. kubelet์ด ์ด๋Ÿฌํ•œ '์ง€์†์ ์ธ ์—…๋ฐ์ดํŠธ'๋ฅผ ์–ผ๋งˆ๋‚˜ ์ž์ฃผ ์ˆ˜ํ–‰ํ•˜๋Š”์ง€ ์•Œ ์ˆ˜ ์žˆ์Šต๋‹ˆ๊นŒ? (๋ฒ„๊ทธ์— ์˜ํ•ด ๋„์ž… ๋œ ์ถ”๊ฐ€ qps๋ฅผ ์ถ”์ •ํ•˜๊ธฐ ์œ„ํ•ด ์š”์ฒญ)

@ Random-Liu IIRC๋Š” ํ…Œ์ŠคํŠธ์—์„œ ๋…ธ๋“œ์—์„œ ์‹คํ–‰๋˜๋Š” ์œ ์ผํ•œ ์ •์  ํฌ๋“œ๋Š” kube-proxy์ž…๋‹ˆ๋‹ค. kubelet์ด ์ด๋Ÿฌํ•œ '์ง€์†์ ์ธ ์—…๋ฐ์ดํŠธ'๋ฅผ ์–ผ๋งˆ๋‚˜ ์ž์ฃผ ์ˆ˜ํ–‰ํ•˜๋Š”์ง€ ์•Œ ์ˆ˜ ์žˆ์Šต๋‹ˆ๊นŒ? (๋ฒ„๊ทธ์— ์˜ํ•ด ๋„์ž… ๋œ ์ถ”๊ฐ€ qps๋ฅผ ์ถ”์ •ํ•˜๊ธฐ ์œ„ํ•ด ์š”์ฒญ)

@shyamjvs ์˜ˆ, kube-proxy ์€ ํ˜„์žฌ ๋…ธ๋“œ์—์„œ ์œ ์ผํ•œ ๊ฒƒ์ž…๋‹ˆ๋‹ค.

ํฌ๋“œ ๋™๊ธฐํ™” ๋นˆ๋„ https://github.com/kubernetes/kubernetes/blob/master/pkg/kubelet/apis/kubeletconfig/v1beta1/defaults.go#L47 ์— ๋”ฐ๋ผ ๋‹ฌ๋ผ์ง‘๋‹ˆ๋‹ค. ๋”ฐ๋ผ์„œ kubelet์€ 1 ๋ถ„๋งˆ๋‹ค ํ•˜๋‚˜์˜ ์ถ”๊ฐ€ ํฌ๋“œ ์ƒํƒœ ์—…๋ฐ์ดํŠธ๋ฅผ ์ƒ์„ฑํ•ฉ๋‹ˆ๋‹ค.

๊ฐ์‚ฌ. ์ฆ‰, pod-status ํ˜ธ์ถœ๋กœ ์ธํ•ด 5000/60 = ~ 83 qps๊ฐ€ ์ถ”๊ฐ€๋˜์—ˆ์Šต๋‹ˆ๋‹ค. ๋ฒ„๊ทธ์—์„œ ์•ž์„œ ์–ธ๊ธ‰ ํ•œ ์ฆ๊ฐ€ ๋œ 429๋ฅผ ์„ค๋ช…ํ•˜๋Š” ๊ฒƒ ๊ฐ™์Šต๋‹ˆ๋‹ค.

@ Random-Liu์ด ๋ถ„๋ฅ˜๋ฅผ ๋„์™€ ์ฃผ์…”์„œ ๋Œ€๋‹จํžˆ ๊ฐ์‚ฌํ•ฉ๋‹ˆ๋‹ค.

@jdumars np ~ @yujuhong ์ด ์ €๋ฅผ ๋งŽ์ด ๋„์™”์Šต๋‹ˆ๋‹ค!

ํ•˜์ง€๋งŒ ์Šค์ผ€์ค„๋Ÿฌ์— ์˜ํ•ด ์˜ˆ์•ฝ๋˜์ง€ ์•Š์€ ํฌ๋“œ์— ๋Œ€ํ•ด PodScheduled๊ฐ€ ๋ฌด์—‡์„ ์˜๋ฏธํ•˜๋Š”์ง€ ๋ฌป๊ณ  ์‹ถ์Šต๋‹ˆ๋‹ค. ์ด๋Ÿฌํ•œ ํฌ๋“œ์—์ด ์กฐ๊ฑด์ด ์ •๋ง๋กœ ํ•„์š”ํ•ฉ๋‹ˆ๊นŒ? / CC @๋Š” Kubernetes / ์‹œ๊ทธ๋งˆ --๋ฒ„๊ทธ๋ฅผ ์ž๋™ ํ™•์žฅ @yujuhong์ด PodScheduled ์ด์ œ ์ž๋™ ํ™•์žฅ์— ์˜ํ•ด ์‚ฌ์šฉ๋˜๋Š” ๊ฒƒ์„ ์ €์—๊ฒŒ ๋งํ–ˆ๋‹ค ๋•Œ๋ฌธ์ž…๋‹ˆ๋‹ค.

๋‚˜๋Š” ์—ฌ์ „ํžˆ kubelet์ด PodScheduled ์กฐ๊ฑด์„ ์„ค์ •ํ•˜๋„๋กํ•˜๋Š” ๊ฒƒ์ด ๋‹ค์†Œ ์ด์ƒํ•˜๋‹ค๊ณ  ์ƒ๊ฐํ•ฉ๋‹ˆ๋‹ค (์›๋ž˜ PR์—์„œ ์–ธ๊ธ‰ํ–ˆ๋“ฏ์ด). kubelet์ด์ด ์กฐ๊ฑด์„ ์„ค์ •ํ•˜์ง€ ์•Š๋”๋ผ๋„ ์ž๋™ ํ™•์žฅ ์ฒ˜๋ฆฌ๊ฐ€ ํŠน์ • ์กฐ๊ฑด์—†์ด ํฌ๋“œ๋ฅผ ๋ฌด์‹œํ•˜๋ฏ€๋กœ ํด๋Ÿฌ์Šคํ„ฐ ์ž๋™ ํ™•์žฅ ์ฒ˜๋ฆฌ์— ์˜ํ–ฅ์„์ฃผ์ง€ ์•Š์Šต๋‹ˆ๋‹ค. ์–ด์จŒ๋“ , ์šฐ๋ฆฌ๊ฐ€ ๊ฒฐ๊ตญ์— ๋‚ด๋†“์€ ์ˆ˜์ •์€ ๋งค์šฐ ์‚ฌ์†Œํ•œ ํ’‹ ํ”„๋ฆฐํŠธ๋ฅผ ๊ฐ€์ง€๊ณ  ์žˆ์œผ๋ฉฐ ํ˜„์žฌ ๋™์ž‘์„ ์œ ์ง€ํ•  ๊ฒƒ์ž…๋‹ˆ๋‹ค (์ฆ‰, ํ•ญ์ƒ PodScheduled ์กฐ๊ฑด์„ ์„ค์ •). ๊ทธ๋ž˜์„œ ์šฐ๋ฆฌ๋Š” ๊ทธ๊ฒƒ์œผ๋กœ ๊ฐˆ ๊ฒƒ์ž…๋‹ˆ๋‹ค.

๋˜ํ•œ ์ •์ƒ ์ƒํƒœ ํฌ๋“œ ์—…๋ฐ์ดํŠธ ์†๋„ # 14391์— ๋Œ€ํ•œ ํ…Œ์ŠคํŠธ๋ฅผ ์ถ”๊ฐ€ํ•˜๋Š” ์ •๋ง ์˜ค๋ž˜๋œ ๋ฌธ์ œ๋ฅผ ๋˜์‚ด ๋ ธ์Šต๋‹ˆ๋‹ค.

์–ด์จŒ๋“ , ์šฐ๋ฆฌ๊ฐ€ ๊ฒฐ๊ตญ์— ๋‚ด๋†“์€ ์ˆ˜์ •์€ ๋งค์šฐ ์‚ฌ์†Œํ•œ ํ’‹ ํ”„๋ฆฐํŠธ๋ฅผ ๊ฐ€์ง€๊ณ  ์žˆ์œผ๋ฉฐ ํ˜„์žฌ ๋™์ž‘์„ ์œ ์ง€ํ•  ๊ฒƒ์ž…๋‹ˆ๋‹ค (์ฆ‰, ํ•ญ์ƒ PodScheduled ์กฐ๊ฑด์„ ์„ค์ •). ๊ทธ๋ž˜์„œ ์šฐ๋ฆฌ๋Š” ๊ทธ๊ฒƒ์œผ๋กœ ๊ฐˆ ๊ฒƒ์ž…๋‹ˆ๋‹ค.

@yujuhong- ๋‹น์‹ ์€ ์ด๊ฒƒ์— ๋Œ€ํ•ด ์ด์•ผ๊ธฐํ•˜๊ณ  ์žˆ์Šต๋‹ˆ๊นŒ : #

@wasylkowski @ shyamjvs- ์ด๊ฒƒ์ด ์ •๋ง๋กœ ๋„์›€์ด๋˜๋Š”์ง€ ํ™•์ธํ•˜๊ธฐ ์œ„ํ•ด ๋กœ์ปฌ๋กœ ํŒจ์น˜ ๋œ PR์„ ์‚ฌ์šฉํ•˜์—ฌ 5000 ๊ฐœ ๋…ธ๋“œ ํ…Œ์ŠคํŠธ๋ฅผ ์‹คํ–‰ ํ•ด ์ฃผ์‹œ๊ฒ ์Šต๋‹ˆ๊นŒ?

1.10 HEAD + # 61504์— ๋Œ€ํ•ด ํ…Œ์ŠคํŠธ๋ฅผ ์‹คํ–‰ํ–ˆ๋Š”๋ฐ ํฌ๋“œ ์‹œ์ž‘ ๋Œ€๊ธฐ ์‹œ๊ฐ„์ด ๊ดœ์ฐฎ์€ ๊ฒƒ ๊ฐ™์Šต๋‹ˆ๋‹ค.

INFO: perc50: 2.594635536s, perc90: 3.483550118s, perc99: 4.327417676s

ํ™•์ธ์„ ์œ„ํ•ด ๋‹ค์‹œ ํ•œ ๋ฒˆ ์‹คํ–‰๋ฉ๋‹ˆ๋‹ค.

@shyamjvs- ๊ฐ์‚ฌํ•ฉ๋‹ˆ๋‹ค!

๋‘ ๋ฒˆ์งธ ์‹คํ–‰๋„ ์ข‹์Šต๋‹ˆ๋‹ค.

INFO: perc50: 2.583489146s, perc90: 3.466873901s, perc99: 4.380595534s

์ด์ œ ์ˆ˜์ •์ด ํŠธ๋ฆญ์„ ์ˆ˜ํ–‰ํ–ˆ๋‹ค๊ณ  ํ™•์‹ ํ•ฉ๋‹ˆ๋‹ค. ์ตœ๋Œ€ํ•œ ๋นจ๋ฆฌ 1.10์— ๋“ค์–ด๊ฐ€ ๋ณด๊ฒ ์Šต๋‹ˆ๋‹ค.

๊ฐ์‚ฌํ•ฉ๋‹ˆ๋‹ค @shyamjvs

์˜คํ”„๋ผ์ธ์œผ๋กœ ์ด์•ผ๊ธฐํ•˜๋ฉด์„œ-์ง€๋‚œ ๋‹ฌ์— ํ•œ ๋ฒˆ ๋” ํšŒ๊ท€๊ฐ€ ์žˆ์—ˆ์ง€๋งŒ ์ด๋กœ ์ธํ•ด ๋ฆด๋ฆฌ์Šค๋ฅผ ์ฐจ๋‹จํ•ด์„œ๋Š” ์•ˆ๋ฉ๋‹ˆ๋‹ค.

@yujuhong- ๋‹น์‹ ์€ ์ด๊ฒƒ์— ๋Œ€ํ•ด ์ด์•ผ๊ธฐํ•˜๊ณ  ์žˆ์Šต๋‹ˆ๊นŒ : #

๋„ค. ํ•ด๋‹น PR์˜ ํ˜„์žฌ ์ˆ˜์ • ์‚ฌํ•ญ์€ https://github.com/kubernetes/kubernetes/issues/60589#issuecomment -375103979์—์„œ ์ฒ˜์Œ ์ œ์•ˆ ๋œ ์˜ต์…˜์— ์—†์Šต๋‹ˆ๋‹ค.

์ข‹์€ ์„ฑ๋Šฅ ํ…Œ์ŠคํŠธ ๊ฒฐ๊ณผ๊ฐ€ ๋‚˜์˜ฌ ๋•Œ๊นŒ์ง€ ๋‹ค์‹œ ์—ฝ๋‹ˆ ๋‹ค.

@yujuhong @krzyzacy @shyamjvs @ wojtek-t @ Random-Liu @ wasylkowski-a์— ๋Œ€ํ•œ ์—…๋ฐ์ดํŠธ๊ฐ€ ์žˆ์Šต๋‹ˆ๊นŒ? ์ด๊ฒƒ์€ ํ˜„์žฌ 1.10์„ ์ฐจ๋‹จํ•˜๊ณ  ์žˆ์Šต๋‹ˆ๋‹ค.

๋”ฐ๋ผ์„œ ๋ฆด๋ฆฌ์Šค๋ฅผ ์ฐจ๋‹จํ•˜๋Š”์ด ๋ฒ„๊ทธ์˜ ์œ ์ผํ•œ ๋ถ€๋ถ„์€ 5k ๋…ธ๋“œ ์„ฑ๋Šฅ ์ž‘์—…์ž…๋‹ˆ๋‹ค. ๋ถˆํ–‰ํžˆ๋„ ์šฐ๋ฆฌ๋Š” ๋‹ค๋ฅธ ์ด์œ ๋กœ ์˜ค๋Š˜๋ถ€ํ„ฐ ์‹คํ–‰์„ ์žƒ์—ˆ์Šต๋‹ˆ๋‹ค (์ฐธ์กฐ : https://github.com/kubernetes/kubernetes/issues/61190#issuecomment-376150569)

์ฆ‰, ์ˆ˜๋™ ์‹คํ–‰ (https://github.com/kubernetes/kubernetes/issues/60589#issuecomment-375350217์— ๋ถ™์—ฌ ๋„ฃ์€ ๊ฒฐ๊ณผ)์„ ๊ธฐ๋ฐ˜์œผ๋กœ ์ˆ˜์ •์ด ์ž‘๋™ํ•œ๋‹ค๊ณ  ํ™•์‹ ํ•ฉ๋‹ˆ๋‹ค. ๊ทธ๋ž˜์„œ IMHO ์šฐ๋ฆฌ๋Š” ๊ทธ๊ฒƒ์— ๋Œ€ํ•œ ๋ฆด๋ฆฌ์Šค๋ฅผ ์ฐจ๋‹จํ•  ํ•„์š”๊ฐ€ ์—†์Šต๋‹ˆ๋‹ค (๋‹ค์Œ ์‹คํ–‰์€ ์ˆ˜์š”์ผ์—์žˆ์„ ๊ฒƒ์ž…๋‹ˆ๋‹ค).

+1
@jdumars- ๋‚˜๋Š” ์ด๊ฒƒ์„ ๋น„ ์ฐจ๋‹จ์ œ๋กœ ์ทจ๊ธ‰ ํ•  ์ˆ˜ ์žˆ๋‹ค๊ณ  ์ƒ๊ฐํ•ฉ๋‹ˆ๋‹ค.

์ฃ„์†กํ•ฉ๋‹ˆ๋‹ค. ์œ„์˜ ๊ฒŒ์‹œ๋ฌผ์„ ์ˆ˜์ •ํ–ˆ์Šต๋‹ˆ๋‹ค. ๋‚˜๋Š” ๊ทธ๊ฒƒ์„ "๋น„ ์ฐจ๋‹จ์ œ"๋กœ ์ทจ๊ธ‰ํ•ด์•ผํ•œ๋‹ค๋Š” ๊ฒƒ์„ ์˜๋ฏธํ–ˆ์Šต๋‹ˆ๋‹ค.

๋„ค, ๋Œ€๋‹จํžˆ ๊ฐ์‚ฌํ•ฉ๋‹ˆ๋‹ค. ์ด ๊ฒฐ๋ก ์€ ๋‹น์‹ ์ด ํˆฌ์ž ํ•œ ์—„์ฒญ๋‚œ ์‹œ๊ฐ„์„ ๋‚˜ํƒ€๋‚ด๋ฉฐ ๋‹น์‹ ์ด ํ•œ ์ผ์— ๋Œ€ํ•ด ์ถฉ๋ถ„ํžˆ ๊ฐ์‚ฌ ํ•  ์ˆ˜๋Š” ์—†์Šต๋‹ˆ๋‹ค. ์ดˆ๋ก์—์„œ "์ปค๋ฎค๋‹ˆํ‹ฐ"์™€ "๊ธฐ๊ณ ์ž"์— ๋Œ€ํ•ด ์ด์•ผ๊ธฐํ•˜๋Š” ๋™์•ˆ์ด ๋ฌธ์ œ๋ฅผ ํ•ด๊ฒฐ ํ•œ ๋‹ค๋ฅธ ์‚ฌ๋žŒ๋“ค์€์ด๋ฅผ ๊ตฌ์ฒด์ ์ธ ์šฉ์–ด๋กœ ํ‘œํ˜„ํ•ฉ๋‹ˆ๋‹ค. ์—ฌ๋Ÿฌ๋ถ„์€์ด ํ”„๋กœ์ ํŠธ์˜ ํ•ต์‹ฌ์ด์ž ์˜ํ˜ผ์ด๋ฉฐ, ๊ทธ๋Ÿฌํ•œ ์—ด์ •, ํ—Œ์‹  ๋ฐ ์ „๋ฌธ์„ฑ๊ณผ ํ•จ๊ป˜ ์ผํ•˜๋Š” ๊ฒƒ์ด ์˜๊ด‘์ด๋ผ๊ณ  ๋งํ•  ๋•Œ ๊ด€๋ จ๋œ ๋ชจ๋“  ์‚ฌ๋žŒ์„ ๋Œ€๋ณ€ํ•˜๋Š” ๊ฒƒ์„ ์•Œ๊ณ  ์žˆ์Šต๋‹ˆ๋‹ค.

[MILESTONENOTIFIER] ๋งˆ์ผ์Šคํ†ค ๋ฌธ์ œ : ํ”„๋กœ์„ธ์Šค์— ๋Œ€ํ•œ ์ตœ์‹  ์ •๋ณด

ํŠธ์œ— ๋‹ด์•„ ๊ฐ€๊ธฐ


๋ฌธ์ œ ๋ผ๋ฒจ

  • sig/api-machinery sig/autoscaling sig/node sig/scalability sig/scheduling sig/storage : ํ•„์š”ํ•œ ๊ฒฝ์šฐ ๋ฌธ์ œ๊ฐ€์ด SIG๋กœ ์—์Šค์ปฌ๋ ˆ์ด์…˜๋ฉ๋‹ˆ๋‹ค.
  • priority/critical-urgent : ๋ฆด๋ฆฌ์Šค ๋งˆ์ผ์Šคํ†ค์—์„œ ์ด์Šˆ๋ฅผ ์ž๋™์œผ๋กœ ์ด๋™ํ•˜์ง€ ์•Š์Šต๋‹ˆ๋‹ค. ์‚ฌ์šฉ ๊ฐ€๋Šฅํ•œ ๋ชจ๋“  ์ฑ„๋„์„ ํ†ตํ•ด ๊ธฐ์—ฌ์ž ๋ฐ SIG์—๊ฒŒ ์ง€์†์ ์œผ๋กœ ์—์Šค์ปฌ๋ ˆ์ด์…˜ํ•ฉ๋‹ˆ๋‹ค.
  • kind/bug : ํ˜„์žฌ ๋ฆด๋ฆฌ์Šค์—์„œ ๋ฐœ๊ฒฌ ๋œ ๋ฒ„๊ทธ๋ฅผ ์ˆ˜์ •ํ•ฉ๋‹ˆ๋‹ค.


    ๋„์›€

์ด ๋ฌธ์ œ๋Š” 1.10์˜ ๊ด€๋ จ ์ˆ˜์ •์„ ํ†ตํ•ด ํ•ด๊ฒฐ๋˜์—ˆ์Šต๋‹ˆ๋‹ค.
1.11์˜ ๊ฒฝ์šฐ https://github.com/kubernetes/kubernetes/issues/63030 ์—์„œ ์˜ค๋ฅ˜๋ฅผ ์ถ”์ ํ•˜๊ณ  ์žˆ์Šต๋‹ˆ๋‹ค

/๋‹ซ๊ธฐ

์ด ํŽ˜์ด์ง€๊ฐ€ ๋„์›€์ด ๋˜์—ˆ๋‚˜์š”?
0 / 5 - 0 ๋“ฑ๊ธ‰