เบเบฒเบ™โ€‹เบ‚เบฐโ€‹เบซเบเบฒเบโ€‹เบญเบฑเบ”โ€‹เบ•เบฐโ€‹เป‚เบ™โ€‹เบกเบฑเบ”โ€‹เปเบฅเบฐโ€‹เบเบฒเบ™โ€‹เบ„เบธเป‰เบกโ€‹เบ„เบญเบ‡โ€‹เบŠเบฑเบšโ€‹เบžเบฐโ€‹เบเบฒโ€‹เบเบญเบ™โ€‹เปƒเบ™ Kubernetes (เบžเบฒเบšโ€‹เบฅเบงเบกโ€‹เปเบฅเบฐโ€‹เบฅเบฒเบโ€‹เบ‡เบฒเบ™โ€‹เบงเบดโ€‹เบ”เบตโ€‹เป‚เบญโ€‹)

เบงเบฑเบ™เบ—เบต 27 เป€เบกเบชเบฒ เบ—เบตเปˆเบเบญเบ‡เบ›เบฐเบŠเบธเบก เบเบฒเบ™เบ›เบฐเบ—เป‰เบงเบ‡ 2019, เป€เบ›เบฑเบ™เบชเปˆเบงเบ™เบซเบ™เบถเปˆเบ‡เบ‚เบญเบ‡เบžเบฒเบ "DevOps", เบšเบปเบ”เบฅเบฒเบเบ‡เบฒเบ™ "เบเบฒเบ™เบ›เบฑเบšเบ‚เบฐเบซเบ™เบฒเบ”เบญเบฑเบ”เบ•เบฐเป‚เบ™เบกเบฑเบ”เปเบฅเบฐเบเบฒเบ™เบ„เบธเป‰เบกเบ„เบญเบ‡เบŠเบฑเบšเบžเบฐเบเบฒเบเบญเบ™เปƒเบ™ Kubernetes" เป„เบ”เป‰เบ–เบทเบเบกเบญเบšเปƒเบซเป‰. เบกเบฑเบ™เป€เบงเบปเป‰เบฒเบเปˆเบฝเบงเบเบฑเบšเบงเบดเบ—เบตเบ—เบตเปˆเบ—เปˆเบฒเบ™เบชเบฒเบกเบฒเบ”เบ™เปเบฒเปƒเบŠเป‰ K8s เป€เบžเบทเปˆเบญเบฎเบฑเบšเบ›เบฐเบเบฑเบ™เบ„เบงเบฒเบกเบžเป‰เบญเบกเบ‚เบญเบ‡เบ„เปเบฒเบฎเป‰เบญเบ‡เบชเบฐเบซเบกเบฑเบเบ‚เบญเบ‡เบ—เปˆเบฒเบ™เปเบฅเบฐเบฎเบฑเบšเบ›เบฐเบเบฑเบ™เบเบฒเบ™เบ›เบฐเบ•เบดเบšเบฑเบ”เบชเบนเบ‡เบชเบธเบ”.

เบเบฒเบ™โ€‹เบ‚เบฐโ€‹เบซเบเบฒเบโ€‹เบญเบฑเบ”โ€‹เบ•เบฐโ€‹เป‚เบ™โ€‹เบกเบฑเบ”โ€‹เปเบฅเบฐโ€‹เบเบฒเบ™โ€‹เบ„เบธเป‰เบกโ€‹เบ„เบญเบ‡โ€‹เบŠเบฑเบšโ€‹เบžเบฐโ€‹เบเบฒโ€‹เบเบญเบ™โ€‹เปƒเบ™ Kubernetes (เบžเบฒเบšโ€‹เบฅเบงเบกโ€‹เปเบฅเบฐโ€‹เบฅเบฒเบโ€‹เบ‡เบฒเบ™โ€‹เบงเบดโ€‹เบ”เบตโ€‹เป‚เบญโ€‹)

เบ•เบฒเบกเบ›เบฐเป€เบžเบ™เบต, เบžเบงเบเป€เบฎเบปเบฒเบกเบตเบ„เบงเบฒเบกเบเบดเบ™เบ”เบตเบ—เบตเปˆเบˆเบฐเบ™เปเบฒเบชเบฐเป€เบซเบ™เบต เบงเบดโ€‹เบ”เบตโ€‹เป‚เบญโ€‹เบ‚เบญเบ‡โ€‹เบšเบปเบ”โ€‹เบฅเบฒเบโ€‹เบ‡เบฒเบ™โ€‹ (44 เบ™เบฒเบ—เบต, เบกเบตเบ‚เปเป‰เบกเบนเบ™เบซเบผเบฒเบเบเบงเปˆเบฒเบšเบปเบ”เบ„เบงเบฒเบก) เปเบฅเบฐเบšเบปเบ”เบชเบฐเบซเบผเบธเบšเบ•เบปเป‰เบ™เบ•เปเปƒเบ™เบฎเบนเบšเปเบšเบšเบ‚เปเป‰เบ„เบงเบฒเบก. เป„เบ›!

เบ‚เปเปƒเบซเป‰เบงเบดเป€เบ„เบฒเบฐเบซเบปเบงเบ‚เปเป‰เบ‚เบญเบ‡เบšเบปเบ”เบฅเบฒเบเบ‡เบฒเบ™เป‚เบ”เบเบ„เปเบฒเบชเบฑเบšเปเบฅเบฐเป€เบฅเบตเปˆเบกเบ•เบปเป‰เบ™เบˆเบฒเบเบ—เป‰เบฒเบ.

Kubernetes

เปƒเบซเป‰เป€เบงเบปเป‰เบฒเบงเปˆเบฒเบžเบงเบเป€เบฎเบปเบฒเบกเบต Docker containers เบขเบนเปˆเปƒเบ™เป‚เบฎเบ”เบ‚เบญเบ‡เบžเบงเบเป€เบฎเบปเบฒ. เป€เบžเบทเปˆเบญโ€‹เบซเบเบฑเบ‡? เป€เบžเบทเปˆเบญเบฎเบฑเบšเบ›เบฐเบเบฑเบ™เบเบฒเบ™เป€เบฎเบฑเบ”เบŠเป‰เบณ เปเบฅเบฐเป‚เบ”เบ”เบ”เปˆเบฝเบง, เป€เบŠเบดเปˆเบ‡เป€เบฎเบฑเบ”เปƒเบซเป‰เบเบฒเบ™เบ™เบณเปƒเบŠเป‰เบ‡เปˆเบฒเบ เปเบฅเบฐ เบ”เบต, CI/CD. เบžเบงเบโ€‹เป€เบฎเบปเบฒโ€‹เบกเบตโ€‹เบžเบฒโ€‹เบซเบฐโ€‹เบ™เบฐโ€‹เบ”เบฑเปˆเบ‡โ€‹เบเปˆเบฒเบงโ€‹เบˆเปเบฒโ€‹เบ™เบงเบ™โ€‹เบซเบผเบฒเบโ€‹เบ—เบตเปˆโ€‹เบกเบตโ€‹เบžเบฒโ€‹เบŠเบฐเบ™เบฐโ€‹.

Kubernetes เปƒเบซเป‰เบซเบเบฑเบ‡เปƒเบ™เบเปเบฅเบฐเบ™เบตเบ™เบตเป‰?

  1. เบžเบงเบเป€เบฎเบปเบฒเบขเบธเบ”เบ„เบดเบ”เบเปˆเบฝเบงเบเบฑเบšเป€เบ„เบทเปˆเบญเบ‡เบˆเบฑเบเป€เบซเบผเบปเปˆเบฒเบ™เบตเป‰เปเบฅเบฐเป€เบฅเบตเปˆเบกเป€เบฎเบฑเบ”เบงเบฝเบเบเบฑเบš "cloud" เบเบธเปˆเบกเบšเบฑเบ™เบˆเบธ เบซเบผเบทเบเบฑเบ (เบเบธเปˆเบกเบ‚เบญเบ‡เบšเบฑเบ™เบˆเบธ).
  2. เบเบดเปˆเบ‡เป„เบ›เบเบงเปˆเบฒเบ™เบฑเป‰เบ™, เบžเบงเบเป€เบฎเบปเบฒเบšเปเปˆเบ„เบดเบ”เบเปˆเบฝเบงเบเบฑเบšเปเบ•เปˆเบฅเบฐเบเบฑเบ, เปเบ•เปˆเบˆเบฑเบ”เบเบฒเบ™เป€เบžเบตเปˆเบกเป€เบ•เบตเบกะพเบเบธเปˆเบกเปƒเบซเบเปˆ. เบ”เบฑเปˆเบ‡เบเปˆเบฒเบง primitives เบฅเบฐเบ”เบฑเบšเบชเบนเบ‡ เบญเบฐเบ™เบธเบเบฒเบ”เปƒเบซเป‰เบžเบงเบเป€เบฎเบปเบฒเป€เบงเบปเป‰เบฒเบงเปˆเบฒเบกเบตเปเบกเปˆเปเบšเบšเบชเปเบฒเบฅเบฑเบšเบเบฒเบ™เป€เบฎเบฑเบ”เบงเบฝเบเบ—เบตเปˆเปเบ™เปˆเบ™เบญเบ™, เปเบฅเบฐเบ™เบตเป‰เปเบกเปˆเบ™เบˆเปเบฒเบ™เบงเบ™เบ•เบปเบงเบขเปˆเบฒเบ‡เบ—เบตเปˆเบ•เป‰เบญเบ‡เบเบฒเบ™เป€เบžเบทเปˆเบญเบ”เปเบฒเป€เบ™เบตเบ™เบเบฒเบ™เบกเบฑเบ™. เบ–เป‰เบฒเบžเบงเบเป€เบฎเบปเบฒเบ›เปˆเบฝเบ™เปเบกเปˆเปเบšเบšเบ•เปเปˆเบกเบฒ, เบ—เบธเบเป†เบ•เบปเบงเบขเปˆเบฒเบ‡เบˆเบฐเบ›เปˆเบฝเบ™เปเบ›เบ‡.
  3. เบ”เป‰เบงเบเบ„เบงเบฒเบกเบŠเปˆเบงเบเป€เบซเบผเบทเบญเบ‚เบญเบ‡ API เบ›เบฐเบเบฒเบ” เปเบ—เบ™เบ—เบตเปˆเบˆเบฐเบ›เบฐเบ•เบดเบšเบฑเบ”เบฅเปเบฒเบ”เบฑเบšเบ‚เบญเบ‡เบ„เปเบฒเบชเบฑเปˆเบ‡เบชเบฐเป€เบžเบฒเบฐ, เบžเบงเบเป€เบฎเบปเบฒเบญเบฐเบ—เบดเบšเบฒเบ "เป‚เบ„เบ‡เบชเป‰เบฒเบ‡เบ‚เบญเบ‡เป‚เบฅเบ" (เปƒเบ™ YAML), เป€เบŠเบดเปˆเบ‡เบชเป‰เบฒเบ‡เป‚เบ”เบ Kubernetes. เปเบฅเบฐเบญเบตเบเป€เบ—เบทเปˆเบญเบซเบ™เบถเปˆเบ‡: เป€เบกเบทเปˆเบญเบ„เปเบฒเบญเบฐเบ—เบดเบšเบฒเบเบ›เปˆเบฝเบ™เปเบ›เบ‡, เบเบฒเบ™เบชเบฐเปเบ”เบ‡เบ•เบปเบงเบˆเบดเบ‡เบ‚เบญเบ‡เบกเบฑเบ™เบˆเบฐเบ›เปˆเบฝเบ™เปเบ›เบ‡เป€เบŠเบฑเปˆเบ™เบเบฑเบ™.

เบเบฒเบ™เบ„เบธเป‰เบกเบ„เบญเบ‡เบŠเบฑเบšเบžเบฐเบเบฒเบเบญเบ™

CPU

เปƒเบซเป‰เบžเบงเบเป€เบฎเบปเบฒเบ”เปเบฒเป€เบ™เบตเบ™เบเบฒเบ™ nginx, php-fpm เปเบฅเบฐ mysql เปƒเบ™เป€เบ„เบทเปˆเบญเบ‡เปเบกเปˆเบ‚เปˆเบฒเบ. เบเบฒเบ™เบšเปเบฅเบดเบเบฒเบ™เป€เบซเบผเบปเปˆเบฒเบ™เบตเป‰เบ•เบปเบงเบˆเบดเบ‡เปเบฅเป‰เบงเบˆเบฐเบกเบตเบ‚เบฐเบšเบงเบ™เบเบฒเบ™เป€เบฎเบฑเบ”เบงเบฝเบเบซเบผเบฒเบเบ‚เบถเป‰เบ™, เปเบ•เปˆเบฅเบฐเบญเบฑเบ™เบ•เป‰เบญเบ‡เบเบฒเบ™เบŠเบฑเบšเบžเบฐเบเบฒเบเบญเบ™เบ„เบญเบกเบžเบดเบงเป€เบ•เบต:

เบเบฒเบ™โ€‹เบ‚เบฐโ€‹เบซเบเบฒเบโ€‹เบญเบฑเบ”โ€‹เบ•เบฐโ€‹เป‚เบ™โ€‹เบกเบฑเบ”โ€‹เปเบฅเบฐโ€‹เบเบฒเบ™โ€‹เบ„เบธเป‰เบกโ€‹เบ„เบญเบ‡โ€‹เบŠเบฑเบšโ€‹เบžเบฐโ€‹เบเบฒโ€‹เบเบญเบ™โ€‹เปƒเบ™ Kubernetes (เบžเบฒเบšโ€‹เบฅเบงเบกโ€‹เปเบฅเบฐโ€‹เบฅเบฒเบโ€‹เบ‡เบฒเบ™โ€‹เบงเบดโ€‹เบ”เบตโ€‹เป‚เบญโ€‹)
(เบ•เบปเบงเป€เบฅเบเบขเบนเปˆเปƒเบ™เบชเบฐเป„เบฅเป‰เปเบกเปˆเบ™ "เบ™เบปเบเปเบเป‰เบง", เบ„เบงเบฒเบกเบ•เป‰เบญเบ‡เบเบฒเบ™เบ—เบตเปˆเบšเปเปˆเบกเบตเบ•เบปเบงเบ•เบปเบ™เบ‚เบญเบ‡เปเบ•เปˆเบฅเบฐเบ‚เบฐเบšเบงเบ™เบเบฒเบ™เบชเปเบฒเบฅเบฑเบšเบžเบฐเบฅเบฑเบ‡เบ‡เบฒเบ™เบ„เบญเบกเบžเบดเบงเป€เบ•เบตเป‰)

เป€เบžเบทเปˆเบญเป€เบฎเบฑเบ”เปƒเบซเป‰เบกเบฑเบ™เบ‡เปˆเบฒเบเบ•เปเปˆเบเบฒเบ™เป€เบฎเบฑเบ”เบงเบฝเบเบเบฑเบšเบชเบดเปˆเบ‡เบ™เบตเป‰, เบกเบฑเบ™เบชเบปเบกเป€เบซเบ”เบชเบปเบกเบœเบปเบ™เบ—เบตเปˆเบˆเบฐเบชเบปเบกเบ—เบปเบšเบ‚เบฐเบšเบงเบ™เบเบฒเบ™เป€เบ‚เบปเป‰เบฒเป„เบ›เปƒเบ™เบเบธเปˆเบก (เบ•เบปเบงเบขเปˆเบฒเบ‡, เบ‚เบฐเบšเบงเบ™เบเบฒเบ™ nginx เบ—เบฑเบ‡เบซเบกเบปเบ”เป€เบ‚เบปเป‰เบฒเป„เบ›เปƒเบ™เบเบธเปˆเบก "nginx"). เบงเบดเบ—เบตเบ—เบตเปˆเบ‡เปˆเบฒเบเบ”เบฒเบเปเบฅเบฐเบŠเบฑเบ”เป€เบˆเบ™เบ—เบตเปˆเบˆเบฐเป€เบฎเบฑเบ”เบ„เบทเบเบฒเบ™เบงเบฒเบ‡เปเบ•เปˆเบฅเบฐเบเบธเปˆเบกเปƒเบชเปˆเปƒเบ™เบ–เบฑเบ‡:

เบเบฒเบ™โ€‹เบ‚เบฐโ€‹เบซเบเบฒเบโ€‹เบญเบฑเบ”โ€‹เบ•เบฐโ€‹เป‚เบ™โ€‹เบกเบฑเบ”โ€‹เปเบฅเบฐโ€‹เบเบฒเบ™โ€‹เบ„เบธเป‰เบกโ€‹เบ„เบญเบ‡โ€‹เบŠเบฑเบšโ€‹เบžเบฐโ€‹เบเบฒโ€‹เบเบญเบ™โ€‹เปƒเบ™ Kubernetes (เบžเบฒเบšโ€‹เบฅเบงเบกโ€‹เปเบฅเบฐโ€‹เบฅเบฒเบโ€‹เบ‡เบฒเบ™โ€‹เบงเบดโ€‹เบ”เบตโ€‹เป‚เบญโ€‹)

เป€เบžเบทเปˆเบญเบชเบทเบšเบ•เปเปˆ, เบ—เปˆเบฒเบ™เบˆเปเบฒเป€เบ›เบฑเบ™เบ•เป‰เบญเบ‡เบˆเบทเปˆเบชเบดเปˆเบ‡เบ—เบตเปˆเบšเบฑเบ™เบˆเบธเปเบกเปˆเบ™เบซเบเบฑเบ‡ (เปƒเบ™ Linux). เบฎเบนเบšเบฅเบฑเบเบชเบฐเบ™เบฐเบ‚เบญเบ‡เบžเบงเบเป€เบ‚เบปเบฒเปเบกเปˆเบ™เป€เบ›เบฑเบ™เป„เบ›เป„เบ”เป‰เบเป‰เบญเบ™เบชเบฒเบกเบฅเบฑเบเบชเบฐเบ™เบฐเบ—เบตเปˆเบชเปเบฒเบ„เบฑเบ™เปƒเบ™ kernel, เบ›เบฐเบ•เบดเบšเบฑเบ”เป€เบ›เบฑเบ™เป€เบงเบฅเบฒเบ”เบปเบ™เบ™เบฒเบ™เบเปˆเบญเบ™เบซเบ™เป‰เบฒเบ™เบตเป‰: เบ„เบงเบฒเบกเบชเบฒเบกเบฒเบ”, namespaces ะธ เบเบธเปˆเบก. เปเบฅเบฐเบเบฒเบ™เบžเบฑเบ”เบ—เบฐเบ™เบฒเบ•เบทเปˆเบกเบญเบตเบเป„เบ”เป‰เบ–เบทเบเบญเปเบฒเบ™เบงเบเบ„เบงเบฒเบกเบชเบฐเบ”เบงเบเป‚เบ”เบเป€เบ•เบฑเบเป‚เบ™เป‚เบฅเบขเบตเบญเบทเปˆเบ™เป† (เบฅเบงเบกเบ—เบฑเบ‡ "เปเบเบฐ" เบ—เบตเปˆเบชเบฐเบ”เบงเบเป€เบŠเบฑเปˆเบ™ Docker):

เบเบฒเบ™โ€‹เบ‚เบฐโ€‹เบซเบเบฒเบโ€‹เบญเบฑเบ”โ€‹เบ•เบฐโ€‹เป‚เบ™โ€‹เบกเบฑเบ”โ€‹เปเบฅเบฐโ€‹เบเบฒเบ™โ€‹เบ„เบธเป‰เบกโ€‹เบ„เบญเบ‡โ€‹เบŠเบฑเบšโ€‹เบžเบฐโ€‹เบเบฒโ€‹เบเบญเบ™โ€‹เปƒเบ™ Kubernetes (เบžเบฒเบšโ€‹เบฅเบงเบกโ€‹เปเบฅเบฐโ€‹เบฅเบฒเบโ€‹เบ‡เบฒเบ™โ€‹เบงเบดโ€‹เบ”เบตโ€‹เป‚เบญโ€‹)

เปƒเบ™เบชเบฐเบžเบฒเบšเบเบฒเบ™เบ‚เบญเบ‡เบšเบปเบ”เบฅเบฒเบเบ‡เบฒเบ™, เบžเบงเบเป€เบฎเบปเบฒเบžเบฝเบ‡เปเบ•เปˆเบกเบตเบ„เบงเบฒเบกเบชเบปเบ™เปƒเบˆเปƒเบ™ เบเบธเปˆเบก, เป€เบ™เบทเปˆเบญเบ‡เบˆเบฒเบเบงเปˆเบฒเบเบธเปˆเบกเบ„เบงเบšเบ„เบธเบกเปเบกเปˆเบ™เบชเปˆเบงเบ™เบซเบ™เบถเปˆเบ‡เบ‚เบญเบ‡เบเบฒเบ™เป€เบฎเบฑเบ”เบงเบฝเบเบ‚เบญเบ‡เบšเบฑเบ™เบˆเบธ (Docker, เปเบฅเบฐเบญเบทเปˆเบ™เป†) เบ—เบตเปˆเบ›เบฐเบ•เบดเบšเบฑเบ”เบเบฒเบ™เบ„เบธเป‰เบกเบ„เบญเบ‡เบŠเบฑเบšเบžเบฐเบเบฒเบเบญเบ™. เบ‚เบฐเบšเบงเบ™เบเบฒเบ™เบฅเบงเบกเป€เบ‚เบปเป‰เบฒเบเบฑเบ™เป€เบ›เบฑเบ™เบเบธเปˆเบก, เบ•เบฒเบกเบ—เบตเปˆเบžเบงเบเป€เบฎเบปเบฒเบ•เป‰เบญเบ‡เบเบฒเบ™, เปเบกเปˆเบ™เบเบธเปˆเบกเบ„เบงเบšเบ„เบธเบก.

เปƒเบซเป‰เบเบฑเบšเบ„เบทเบ™เป„เบ›เบซเบฒเบ„เบงเบฒเบกเบ•เป‰เบญเบ‡เบเบฒเบ™ CPU เบชเปเบฒเบฅเบฑเบšเบ‚เบฐเบšเบงเบ™เบเบฒเบ™เป€เบซเบผเบปเปˆเบฒเบ™เบตเป‰, เปเบฅเบฐเปƒเบ™เบ›เบฑเบ”เบˆเบธเบšเบฑเบ™เบชเปเบฒเบฅเบฑเบšเบเบธเปˆเบกเบ‚เบญเบ‡เบ‚เบฐเบšเบงเบ™เบเบฒเบ™:

เบเบฒเบ™โ€‹เบ‚เบฐโ€‹เบซเบเบฒเบโ€‹เบญเบฑเบ”โ€‹เบ•เบฐโ€‹เป‚เบ™โ€‹เบกเบฑเบ”โ€‹เปเบฅเบฐโ€‹เบเบฒเบ™โ€‹เบ„เบธเป‰เบกโ€‹เบ„เบญเบ‡โ€‹เบŠเบฑเบšโ€‹เบžเบฐโ€‹เบเบฒโ€‹เบเบญเบ™โ€‹เปƒเบ™ Kubernetes (เบžเบฒเบšโ€‹เบฅเบงเบกโ€‹เปเบฅเบฐโ€‹เบฅเบฒเบโ€‹เบ‡เบฒเบ™โ€‹เบงเบดโ€‹เบ”เบตโ€‹เป‚เบญโ€‹)
(เบ‚เป‰เบฒเบžเบฐเป€เบˆเบปเป‰เบฒเป€เบงเบปเป‰เบฒเบ„เบทเบ™เบงเปˆเบฒเบ•เบปเบงเป€เบฅเบเบ—เบฑเบ‡เบซเบกเบปเบ”เป€เบ›เบฑเบ™เบเบฒเบ™เบชเบฐเปเบ”เบ‡เบญเบญเบเบ—เบตเปˆเบšเปเปˆเบกเบตเบ•เบปเบงเบ•เบปเบ™เบ‚เบญเบ‡เบ„เบงเบฒเบกเบ•เป‰เบญเบ‡เบเบฒเบ™เบŠเบฑเบšเบžเบฐเบเบฒเบเบญเบ™)

เปƒเบ™เป€เบงเบฅเบฒเบ”เบฝเบงเบเบฑเบ™, CPU เบ•เบปเบงเบ‚เบญเบ‡เบกเบฑเบ™เป€เบญเบ‡เบกเบตเบŠเบฑเบšเบžเบฐเบเบฒเบเบญเบ™เบ—เบตเปˆเปเบ™เปˆเบ™เบญเบ™ (เปƒเบ™เบ•เบปเบงเบขเปˆเบฒเบ‡เบ™เบตเป‰เปเบกเปˆเบ™ 1000), เป€เบŠเบดเปˆเบ‡เบ—เบธเบเบ„เบปเบ™เบญเบฒเบ”เบˆเบฐเบ‚เบฒเบ” (เบœเบปเบ™เบฅเบงเบกเบ‚เบญเบ‡เบ„เบงเบฒเบกเบ•เป‰เบญเบ‡เบเบฒเบ™เบ‚เบญเบ‡เบเบธเปˆเบกเบ—เบฑเบ‡เบซเบกเบปเบ”เปเบกเปˆเบ™ 150+850+460=1460). เบˆเบฐเป€เบเบตเบ”เบซเบเบฑเบ‡เบ‚เบถเป‰เบ™เปƒเบ™เบเปเบฅเบฐเบ™เบตเบ™เบตเป‰?

kernel เป€เบฅเบตเปˆเบกเปเบˆเบเบขเบฒเบเบŠเบฑเบšเบžเบฐเบเบฒเบเบญเบ™เปเบฅเบฐเป€เบฎเบฑเบ”เบกเบฑเบ™ "เบเบธเบ”เบ•เบดเบ—เปเบฒ", เปƒเบซเป‰เบˆเปเบฒเบ™เบงเบ™เบŠเบฑเบšเบžเบฐเบเบฒเบเบญเบ™เบ”เบฝเบงเบเบฑเบ™เบเบฑเบšเปเบ•เปˆเบฅเบฐเบเบธเปˆเบก. เปเบ•เปˆเปƒเบ™เบเปเบฅเบฐเบ™เบตเบ—เปเบฒเบญเบดเบ”, เบกเบฑเบ™เบกเบตเบซเบผเบฒเบเบเบงเปˆเบฒเบ—เบตเปˆเบ•เป‰เบญเบ‡เบเบฒเบ™ (333> 150), เบ”เบฑเปˆเบ‡เบ™เบฑเป‰เบ™เบชเปˆเบงเบ™เป€เบเบตเบ™ (333-150 = 183) เบเบฑเบ‡เบ„เบปเบ‡เบขเบนเปˆเปƒเบ™เบชเบฐเบซเบ‡เบงเบ™, เป€เบŠเบดเปˆเบ‡เบเบฑเบ‡เบ–เบทเบเปเบˆเบเบขเบฒเบเป€เบ—เบปเปˆเบฒเบ—เบฝเบกเบเบฑเบ™เบฅเบฐเบซเบงเปˆเบฒเบ‡เบชเบญเบ‡เบ–เบฑเบ‡เบญเบทเปˆเบ™เป†:

เบเบฒเบ™โ€‹เบ‚เบฐโ€‹เบซเบเบฒเบโ€‹เบญเบฑเบ”โ€‹เบ•เบฐโ€‹เป‚เบ™โ€‹เบกเบฑเบ”โ€‹เปเบฅเบฐโ€‹เบเบฒเบ™โ€‹เบ„เบธเป‰เบกโ€‹เบ„เบญเบ‡โ€‹เบŠเบฑเบšโ€‹เบžเบฐโ€‹เบเบฒโ€‹เบเบญเบ™โ€‹เปƒเบ™ Kubernetes (เบžเบฒเบšโ€‹เบฅเบงเบกโ€‹เปเบฅเบฐโ€‹เบฅเบฒเบโ€‹เบ‡เบฒเบ™โ€‹เบงเบดโ€‹เบ”เบตโ€‹เป‚เบญโ€‹)

เบ”เบฑเปˆเบ‡เบ™เบฑเป‰เบ™: เบ–เบฑเบ‡เบ—เปเบฒเบญเบดเบ”เบกเบตเบŠเบฑเบšเบžเบฐเบเบฒเบเบญเบ™เบžเบฝเบ‡เบžเป, เบญเบฑเบ™เบ—เบตเบชเบญเบ‡ - เบกเบฑเบ™เบšเปเปˆเบกเบตเบŠเบฑเบšเบžเบฐเบเบฒเบเบญเบ™เบžเบฝเบ‡เบžเป, เบ—เบตเบชเบฒเบก - เบกเบฑเบ™เบšเปเปˆเบกเบตเบŠเบฑเบšเบžเบฐเบเบฒเบเบญเบ™เบžเบฝเบ‡เบžเป. เบ™เบตเป‰เปเบกเปˆเบ™เบœเบปเบ™เบ‚เบญเบ‡เบเบฒเบ™เบเบฐเบ—เปเบฒ "เบŠเบทเปˆเบชเบฑเบ”" เบเปเบฒเบ™เบปเบ”เป€เบงเบฅเบฒเปƒเบ™ Linux - CFS. เบเบฒเบ™เบ”เปเบฒเป€เบ™เบตเบ™เบ‡เบฒเบ™เบ‚เบญเบ‡เบกเบฑเบ™เบชเบฒเบกเบฒเบ”เบ›เบฑเบšเป„เบ”เป‰เป‚เบ”เบเปƒเบŠเป‰เบเบฒเบ™เบกเบญเบšเบซเบกเบฒเบ เบ™เป‰เปเบฒเบซเบ™เบฑเบ เปเบ•เปˆเบฅเบฐเบšเบฑเบ™เบˆเบธ. เบ•เบปเบงเบขเปˆเบฒเบ‡เป€เบŠเบฑเปˆเบ™เบ™เบตเป‰:

เบเบฒเบ™โ€‹เบ‚เบฐโ€‹เบซเบเบฒเบโ€‹เบญเบฑเบ”โ€‹เบ•เบฐโ€‹เป‚เบ™โ€‹เบกเบฑเบ”โ€‹เปเบฅเบฐโ€‹เบเบฒเบ™โ€‹เบ„เบธเป‰เบกโ€‹เบ„เบญเบ‡โ€‹เบŠเบฑเบšโ€‹เบžเบฐโ€‹เบเบฒโ€‹เบเบญเบ™โ€‹เปƒเบ™ Kubernetes (เบžเบฒเบšโ€‹เบฅเบงเบกโ€‹เปเบฅเบฐโ€‹เบฅเบฒเบโ€‹เบ‡เบฒเบ™โ€‹เบงเบดโ€‹เบ”เบตโ€‹เป‚เบญโ€‹)

เปƒเบซเป‰เป€เบšเบดเปˆเบ‡เบเปเบฅเบฐเบ™เบตเบ‚เบญเบ‡เบเบฒเบ™เบ‚เบฒเบ”เบŠเบฑเบšเบžเบฐเบเบฒเบเบญเบ™เปƒเบ™เบ–เบฑเบ‡เบ—เบตเบชเบญเบ‡ (php-fpm). เบŠเบฑเบšเบžเบฐเบเบฒเบเบญเบ™เบšเบฑเบ™เบˆเบธเบ—เบฑเบ‡เบซเบกเบปเบ”เปเบกเปˆเบ™เปเบˆเบเบขเบฒเบเป€เบ—เบปเปˆเบฒเบ—เบฝเบกเบเบฑเบ™เบฅเบฐเบซเบงเปˆเบฒเบ‡เบ‚เบฐเบšเบงเบ™เบเบฒเบ™. เบ”เบฑเปˆเบ‡เบ™เบฑเป‰เบ™, เบ‚เบฐเบšเบงเบ™เบเบฒเบ™เปเบกเปˆเบšเบปเบ”เป€เบฎเบฑเบ”เบงเบฝเบเป„เบ”เป‰เบ”เบต, เปเบ•เปˆเปเบฎเบ‡เบ‡เบฒเบ™เบ—เบฑเบ‡เบซเบกเบปเบ”เบŠเป‰เบฒเบฅเบปเบ‡, เป„เบ”เป‰เบฎเบฑเบšเบซเบ™เป‰เบญเบเบเบงเปˆเบฒเป€เบ„เบดเปˆเบ‡เบซเบ™เบถเปˆเบ‡เบ‚เบญเบ‡เบชเบดเปˆเบ‡เบ—เบตเปˆเป€เบ‚เบปเบฒเป€เบˆเบปเป‰เบฒเบ•เป‰เบญเบ‡เบเบฒเบ™:

เบเบฒเบ™โ€‹เบ‚เบฐโ€‹เบซเบเบฒเบโ€‹เบญเบฑเบ”โ€‹เบ•เบฐโ€‹เป‚เบ™โ€‹เบกเบฑเบ”โ€‹เปเบฅเบฐโ€‹เบเบฒเบ™โ€‹เบ„เบธเป‰เบกโ€‹เบ„เบญเบ‡โ€‹เบŠเบฑเบšโ€‹เบžเบฐโ€‹เบเบฒโ€‹เบเบญเบ™โ€‹เปƒเบ™ Kubernetes (เบžเบฒเบšโ€‹เบฅเบงเบกโ€‹เปเบฅเบฐโ€‹เบฅเบฒเบโ€‹เบ‡เบฒเบ™โ€‹เบงเบดโ€‹เบ”เบตโ€‹เป‚เบญโ€‹)

เบ™เบตเป‰เปเบกเปˆเบ™เบงเบดเบ—เบตเบเบฒเบ™เบเปเบฒเบ™เบปเบ”เป€เบงเบฅเบฒ CFS เป€เบฎเบฑเบ”เบงเบฝเบ. เบžเบงเบโ€‹เป€เบฎเบปเบฒโ€‹เบˆเบฐโ€‹เป€เบญเบตเป‰เบ™โ€‹เบ•เบทเปˆเบกโ€‹เบงเปˆเบฒโ€‹เบ™โ€‹เป‰โ€‹เปเบฒโ€‹เบซเบ™เบฑเบโ€‹เบ—เบตเปˆโ€‹เบžเบงเบโ€‹เป€เบฎเบปเบฒโ€‹เบเปเบฒโ€‹เบ™เบปเบ”โ€‹เปƒเบซเป‰โ€‹เบšเบฑเบ™โ€‹เบˆเบธโ€‹ เบเบฒเบ™เบฎเป‰เบญเบ‡เบ‚เป. เป€เบ›เบฑเบ™เบซเบเบฑเบ‡เบ„เบทเปเบ™เบงเบ™เบตเป‰ - เป€เบšเบดเปˆเบ‡เบ•เบทเปˆเบกเบญเบตเบ.

เบ‚เปเปƒเบซเป‰เป€เบšเบดเปˆเบ‡เบชเบฐเบ–เบฒเบ™เบฐเบเบฒเบ™เบ—เบฑเบ‡เบซเบกเบปเบ”เบˆเบฒเบเบญเบตเบเบ”เป‰เบฒเบ™เบซเบ™เบถเปˆเบ‡. เบ•เบฒเบกเบ—เบตเปˆเบ—เปˆเบฒเบ™เบฎเบนเป‰, เบ–เบฐเบซเบ™เบปเบ™เบซเบปเบ™เบ—เบฒเบ‡เบ—เบฑเบ‡เบซเบกเบปเบ”เบ™เปเบฒเป„เบ›เบชเบนเปˆ Rome, เปเบฅเบฐเปƒเบ™เบเปเบฅเบฐเบ™เบตเบ‚เบญเบ‡เบ„เบญเบกเบžเบดเบงเป€เบ•เบต, เบเบฑเบš CPU. เบซเบ™เบถเปˆเบ‡ CPU, เบซเบผเบฒเบเบงเบฝเบเบ‡เบฒเบ™ - เบ—เปˆเบฒเบ™เบ•เป‰เบญเบ‡เบเบฒเบ™เป„เบŸเบˆเบฐเบฅเบฒเบˆเบญเบ™. เบงเบดเบ—เบตเบ—เบตเปˆเบ‡เปˆเบฒเบเบ—เบตเปˆเบชเบธเบ”เปƒเบ™เบเบฒเบ™เบ„เบธเป‰เบกเบ„เบญเบ‡เบŠเบฑเบšเบžเบฐเบเบฒเบเบญเบ™เปเบกเปˆเบ™ "เป„เบŸเบˆเบฐเบฅเบฒเบˆเบญเบ™": เบžเบงเบเป€เบ‚เบปเบฒเป„เบ”เป‰เปƒเบซเป‰เบ‚เบฐเบšเบงเบ™เบเบฒเบ™เบซเบ™เบถเปˆเบ‡เบกเบตเป€เบงเบฅเบฒเบเบฒเบ™เป€เบ‚เบปเป‰เบฒเป€เบ–เบดเบ‡เบ„เบปเบ‡เบ—เบตเปˆเบเบฑเบš CPU, เบซเบผเบฑเบ‡เบˆเบฒเบเบ™เบฑเป‰เบ™เบญเบฑเบ™เบ•เปเปˆเป„เบ›, เปเบฅเบฐเบญเบทเปˆเบ™เป†.

เบเบฒเบ™โ€‹เบ‚เบฐโ€‹เบซเบเบฒเบโ€‹เบญเบฑเบ”โ€‹เบ•เบฐโ€‹เป‚เบ™โ€‹เบกเบฑเบ”โ€‹เปเบฅเบฐโ€‹เบเบฒเบ™โ€‹เบ„เบธเป‰เบกโ€‹เบ„เบญเบ‡โ€‹เบŠเบฑเบšโ€‹เบžเบฐโ€‹เบเบฒโ€‹เบเบญเบ™โ€‹เปƒเบ™ Kubernetes (เบžเบฒเบšโ€‹เบฅเบงเบกโ€‹เปเบฅเบฐโ€‹เบฅเบฒเบโ€‹เบ‡เบฒเบ™โ€‹เบงเบดโ€‹เบ”เบตโ€‹เป‚เบญโ€‹)

เบงเบดเบ—เบตเบเบฒเบ™เบ™เบตเป‰เป€เบญเบตเป‰เบ™เบงเปˆเบฒเป‚เบ„เบ•เป‰เบฒเบเบฒเบ (เบเบฒเบ™โ€‹เบˆเปเบฒโ€‹เบเบฑเบ”โ€‹เบเบฒเบโ€‹). เบ‚เปเปƒเบซเป‰เบˆเบทเปˆเบกเบฑเบ™เบžเบฝเบ‡เปเบ•เปˆเป€เบ›เบฑเบ™ เบ‚เบตเบ”เบˆเบณเบเบฑเบ”. เบขเปˆเบฒเบ‡เปƒเบ”เบเปเบ•เบฒเบก, เบ–เป‰เบฒเบ—เปˆเบฒเบ™เปเบˆเบเบขเบฒเบเบ‚เปเป‰เบˆเปเบฒเบเบฑเบ”เปƒเบซเป‰เบเบฑเบšเบ–เบฑเบ‡เบ—เบฑเบ‡เบซเบกเบปเบ”, เบšเบฑเบ™เบซเบฒเบˆเบฐเป€เบเบตเบ”เบ‚เบทเป‰เบ™: mysql เบเปเบฒเบฅเบฑเบ‡เบ‚เบฑเบšเบฅเบปเบ”เป„เบ›เบ•เบฒเบกเบ–เบฐเบซเบ™เบปเบ™เปเบฅเบฐเปƒเบ™เบšเบฒเบ‡เบˆเบธเบ”เบ„เบงเบฒเบกเบ•เป‰เบญเบ‡เบเบฒเบ™เบ‚เบญเบ‡ CPU เบชเบดเป‰เบ™เบชเบธเบ”เบฅเบปเบ‡, เปเบ•เปˆเบ‚เบฐเบšเบงเบ™เบเบฒเบ™เบญเบทเปˆเบ™เป†เบ—เบฑเบ‡เบซเบกเบปเบ”เบ–เบทเบเบšเบฑเบ‡เบ„เบฑเบšเปƒเบซเป‰เบฅเปเบ–เป‰เบฒเบˆเบปเบ™เบเปˆเบงเบฒ CPU. เบšเปเปˆเป„เบ”เป‰เป€เบฎเบฑเบ”เบงเบฝเบ.

เบเบฒเบ™โ€‹เบ‚เบฐโ€‹เบซเบเบฒเบโ€‹เบญเบฑเบ”โ€‹เบ•เบฐโ€‹เป‚เบ™โ€‹เบกเบฑเบ”โ€‹เปเบฅเบฐโ€‹เบเบฒเบ™โ€‹เบ„เบธเป‰เบกโ€‹เบ„เบญเบ‡โ€‹เบŠเบฑเบšโ€‹เบžเบฐโ€‹เบเบฒโ€‹เบเบญเบ™โ€‹เปƒเบ™ Kubernetes (เบžเบฒเบšโ€‹เบฅเบงเบกโ€‹เปเบฅเบฐโ€‹เบฅเบฒเบโ€‹เบ‡เบฒเบ™โ€‹เบงเบดโ€‹เบ”เบตโ€‹เป‚เบญโ€‹)

เปƒเบซเป‰เบเบฑเบšเบ„เบทเบ™เป„เบ›เบซเบฒ Linux kernel เปเบฅเบฐเบ›เบฐเบ•เบดเบชเปเบฒเบžเบฑเบ™เบ‚เบญเบ‡เบกเบฑเบ™เบเบฑเบš CPU - เบžเบฒเบšเบฅเบงเบกเปเบกเปˆเบ™เบ”เบฑเปˆเบ‡เบ•เปเปˆเป„เบ›เบ™เบตเป‰:

เบเบฒเบ™โ€‹เบ‚เบฐโ€‹เบซเบเบฒเบโ€‹เบญเบฑเบ”โ€‹เบ•เบฐโ€‹เป‚เบ™โ€‹เบกเบฑเบ”โ€‹เปเบฅเบฐโ€‹เบเบฒเบ™โ€‹เบ„เบธเป‰เบกโ€‹เบ„เบญเบ‡โ€‹เบŠเบฑเบšโ€‹เบžเบฐโ€‹เบเบฒโ€‹เบเบญเบ™โ€‹เปƒเบ™ Kubernetes (เบžเบฒเบšโ€‹เบฅเบงเบกโ€‹เปเบฅเบฐโ€‹เบฅเบฒเบโ€‹เบ‡เบฒเบ™โ€‹เบงเบดโ€‹เบ”เบตโ€‹เป‚เบญโ€‹)

cgroup เบกเบตเบชเบญเบ‡เบเบฒเบ™เบ•เบฑเป‰เบ‡เบ„เปˆเบฒ - เบ—เบตเปˆเบชเปเบฒเบ„เบฑเบ™เป€เบซเบผเบปเปˆเบฒเบ™เบตเป‰เปเบกเปˆเบ™เบชเบญเบ‡ "เบšเบดเบ”" เบ‡เปˆเบฒเบเบ”เบฒเบเบ—เบตเปˆเบญเบฐเบ™เบธเบเบฒเบ”เปƒเบซเป‰เบ—เปˆเบฒเบ™เบชเบฒเบกเบฒเบ”เบเปเบฒเบ™เบปเบ”:

  1. เบ™เป‰เปเบฒเบซเบ™เบฑเบเบชเปเบฒเบฅเบฑเบšเบšเบฑเบ™เบˆเบธ (เบ„เปเบฒเบฎเป‰เบญเบ‡เบ‚เป) เปเบกเปˆเบ™ เบฎเบธเป‰เบ™;
  2. เป€เบ›เบตเป€เบŠเบฑเบ™เบ‚เบญเบ‡เป€เบงเบฅเบฒ CPU เบ—เบฑเบ‡เบซเบกเบปเบ”เบชเปเบฒเบฅเบฑเบšเบเบฒเบ™เป€เบฎเบฑเบ”เบงเบฝเบเปƒเบ™เบงเบฝเบเบ‡เบฒเบ™เบšเบฑเบ™เบˆเบธ (เบˆเปเบฒเบเบฑเบ”) เปเบกเปˆเบ™ quota.

เบงเบดเบ—เบตเบเบฒเบ™เบงเบฑเบ”เปเบ—เบ CPU?

เบกเบตเบงเบดเบ—เบตเบ—เบตเปˆเปเบ•เบเบ•เปˆเบฒเบ‡เบเบฑเบ™:

  1. เบˆเบฐเป€เบ›เบฑเบ™เปเบ™เบงเปƒเบ” parrots, เบšเปเปˆเบกเบตเปƒเบœเบฎเบนเป‰ - เบ—เปˆเบฒเบ™เบˆเปเบฒเป€เบ›เบฑเบ™เบ•เป‰เบญเบ‡เป€เบˆเบฅเบฐเบˆเบฒเบ—เบธเบเป†เบ„เบฑเป‰เบ‡.
  2. เบ„เบงเบฒเบกเบชเบปเบ™เปƒเบˆ clearer, เปเบ•เปˆเบžเบตเปˆเบ™เป‰เบญเบ‡: 50% เบ‚เบญเบ‡เป€เบ„เบทเปˆเบญเบ‡เปเบกเปˆเบ‚เปˆเบฒเบเบ—เบตเปˆเบกเบต 4 cores เปเบฅเบฐเบกเบต 20 cores เปเบกเปˆเบ™เบชเบดเปˆเบ‡เบ—เบตเปˆเปเบ•เบเบ•เปˆเบฒเบ‡เบเบฑเบ™เบซเบกเบปเบ”.
  3. เบ—เปˆเบฒเบ™เบชเบฒเบกเบฒเบ”เบ™เปเบฒเปƒเบŠเป‰เบชเบดเปˆเบ‡เบ—เบตเปˆเป„เบ”เป‰เบเปˆเบฒเบงเบกเบฒเปเบฅเป‰เบง เบ™เป‰เปเบฒเบซเบ™เบฑเบ, เบ—เบตเปˆ Linux เบฎเบนเป‰, เปเบ•เปˆเบžเบงเบเป€เบ‚เบปเบฒเบเบฑเบ‡เป€เบ›เบฑเบ™เบžเบตเปˆเบ™เป‰เบญเบ‡.
  4. เบ—เบฒเบ‡เป€เบฅเบทเบญเบเบ—เบตเปˆเบžเบฝเบ‡เบžเปเบ—เบตเปˆเบชเบธเบ”เปเบกเปˆเบ™เบเบฒเบ™เบงเบฑเบ”เปเบ—เบเบŠเบฑเบšเบžเบฐเบเบฒเบเบญเบ™เบ„เบญเบกเบžเบดเบงเป€เบ•เบตเปƒเบ™ เบงเบดเบ™เบฒเบ—เบต. เป€เบซเบผเบปเปˆเบฒเบ™เบฑเป‰เบ™. เปƒเบ™เบงเบดเบ™เบฒเบ—เบตเบ‚เบญเบ‡เป€เบงเบฅเบฒเบ‚เบญเบ‡เป‚เบ›เป€เบŠเบ”เป€เบŠเบตเบ—เบฝเบšเบเบฑเบšเบงเบดเบ™เบฒเบ—เบตเบ‚เบญเบ‡เป€เบงเบฅเบฒเบ—เบตเปˆเปเบ—เป‰เบˆเบดเบ‡: 1 เบงเบดเบ™เบฒเบ—เบตเบ‚เบญเบ‡เป€เบงเบฅเบฒเบ‚เบญเบ‡เป‚เบ›เป€เบŠเบ”เป€เบŠเบตเบ–เบทเบเปƒเบซเป‰เบ•เปเปˆ 1 เบงเบดเบ™เบฒเบ—เบตเบ—เบตเปˆเปเบ—เป‰เบˆเบดเบ‡ - เบ™เบตเป‰เปเบกเปˆเบ™เบซเบ™เบถเปˆเบ‡เบซเบผเบฑเบเบ‚เบญเบ‡ CPU.

เป€เบžเบทเปˆเบญเป€เบฎเบฑเบ”เปƒเบซเป‰เบกเบฑเบ™เบ‡เปˆเบฒเบเบ‚เบถเป‰เบ™เปƒเบ™เบเบฒเบ™เป€เบงเบปเป‰เบฒ, เบžเบงเบเป€เบ‚เบปเบฒเป€เบฅเบตเปˆเบกเบงเบฑเบ”เปเบ—เบเป‚เบ”เบเบเบปเบ‡ เปเบเปˆเบ™, เบŠเบถเปˆเบ‡เบซเบกเบฒเบเบ„เบงเบฒเบกเบงเปˆเบฒเบžเบงเบเป€เบ‚เบปเบฒเปƒเบŠเป‰เป€เบงเบฅเบฒ CPU เบ”เบฝเบงเบเบฑเบ™เบเบฑเบšเบ•เบปเบงเบˆเบดเบ‡. เป€เบ™เบทเปˆเบญเบ‡เบˆเบฒเบ Linux เป€เบ‚เบปเป‰เบฒเปƒเบˆเบ™เป‰เปเบฒเบซเบ™เบฑเบ, เปเบ•เปˆเบšเปเปˆเบกเบตเป€เบงเบฅเบฒ CPU / cores เบซเบผเบฒเบ, เบเบปเบ™เป„เบเปเบกเปˆเบ™เบˆเปเบฒเป€เบ›เบฑเบ™เป€เบžเบทเปˆเบญเปเบ›เบˆเบฒเบเบซเบ™เบถเปˆเบ‡เป„เบ›เบซเบฒเบญเบตเบ.

เบ‚เปเปƒเบซเป‰เบžเบดเบˆเบฒเบฅเบฐเบ™เบฒเบ•เบปเบงเบขเปˆเบฒเบ‡เบ‡เปˆเบฒเบเป†เบเบฑเบšเป€เบ„เบทเปˆเบญเบ‡เปเบกเปˆเบ‚เปˆเบฒเบเบ—เบตเปˆเบกเบต 3 เปเบเบ™ CPU, เบšเปˆเบญเบ™เบ—เบตเปˆเบชเบฒเบกเบเบฑเบเบˆเบฐเป„เบ”เป‰เบฎเบฑเบšเบ™เป‰เปเบฒเบซเบ™เบฑเบ (500, 1000 เปเบฅเบฐ 1500) เบ—เบตเปˆเบชเบฒเบกเบฒเบ”เบ›เปˆเบฝเบ™เป„เบ”เป‰เบขเปˆเบฒเบ‡เบ‡เปˆเบฒเบเบ”เบฒเบเบเบฑเบšเบชเปˆเบงเบ™เบ—เบตเปˆเบชเบญเบ”เบ„เป‰เบญเบ‡เบเบฑเบ™เบ‚เบญเบ‡เปเบเบ™เบ—เบตเปˆเบˆเบฑเบ”เบชเบฑเบ™เปƒเบซเป‰เบžเบงเบเป€เบ‚เบปเบฒ (0,5, 1 เปเบฅเบฐ 1,5).

เบเบฒเบ™โ€‹เบ‚เบฐโ€‹เบซเบเบฒเบโ€‹เบญเบฑเบ”โ€‹เบ•เบฐโ€‹เป‚เบ™โ€‹เบกเบฑเบ”โ€‹เปเบฅเบฐโ€‹เบเบฒเบ™โ€‹เบ„เบธเป‰เบกโ€‹เบ„เบญเบ‡โ€‹เบŠเบฑเบšโ€‹เบžเบฐโ€‹เบเบฒโ€‹เบเบญเบ™โ€‹เปƒเบ™ Kubernetes (เบžเบฒเบšโ€‹เบฅเบงเบกโ€‹เปเบฅเบฐโ€‹เบฅเบฒเบโ€‹เบ‡เบฒเบ™โ€‹เบงเบดโ€‹เบ”เบตโ€‹เป‚เบญโ€‹)

เบ–เป‰เบฒเบ—เปˆเบฒเบ™เป€เบญเบปเบฒเป€เบ„เบทเปˆเบญเบ‡เปเบกเปˆเบ‚เปˆเบฒเบเบ—เบตเบชเบญเบ‡, เบšเปˆเบญเบ™เบ—เบตเปˆเบˆเบฐเบกเบตเปเบเบ™เบซเบผเบฒเบเป€เบ—เบปเปˆเบฒ (6), เปเบฅเบฐเบงเบฒเบ‡ pods เบ”เบฝเบงเบเบฑเบ™เบขเบนเปˆเบ—เบตเปˆเบ™เบฑเป‰เบ™, เบเบฒเบ™เปเบœเปˆเบเบฐเบˆเบฒเบเบ‚เบญเบ‡เปเบเบ™เบชเบฒเบกเบฒเบ”เบ–เบทเบเบ„เบดเบ”เป„เบฅเปˆเป„เบ”เป‰เบ‡เปˆเบฒเบเป‚เบ”เบเบเบฒเบ™เบ„เบนเบ™เบ”เป‰เบงเบ 2 (1, 2 เปเบฅเบฐ 3, เบ•เบฒเบกเบฅเปเบฒเบ”เบฑเบš). เปเบ•เปˆเบŠเปˆเบงเบ‡เป€เบงเบฅเบฒเบ—เบตเปˆเบชเปเบฒเบ„เบฑเบ™เปเบกเปˆเบ™เป€เบเบตเบ”เบ‚เบทเป‰เบ™เป€เบกเบทเปˆเบญเบเบฑเบเบ—เบตเบชเบตเปˆเบ›เบฒเบเบปเบ”เบขเบนเปˆเปƒเบ™เป€เบ„เบทเปˆเบญเบ‡เปเบกเปˆเบ‚เปˆเบฒเบเบ™เบตเป‰, เบ™เป‰เปเบฒเบซเบ™เบฑเบ, เป€เบžเบทเปˆเบญเบ„เบงเบฒเบกเบชเบฐเบ”เบงเบ, เบˆเบฐเป€เบ›เบฑเบ™ 3000. เบกเบฑเบ™เปƒเบŠเป‰เป€เบงเบฅเบฒเบชเปˆเบงเบ™เบซเบ™เบถเปˆเบ‡เบ‚เบญเบ‡เบŠเบฑเบšเบžเบฐเบเบฒเบเบญเบ™ CPU (เป€เบ„เบดเปˆเบ‡เบซเบ™เบถเปˆเบ‡เบ‚เบญเบ‡เปเบเบ™), เปเบฅเบฐเบชเปเบฒเบฅเบฑเบšเบเบฑเบเบ—เบตเปˆเบเบฑเบ‡เป€เบซเบผเบทเบญเปเบกเปˆเบ™เบžเบงเบเป€เบ‚เบปเบฒเบ–เบทเบเบ„เบดเบ”เป„เบฅเปˆเบ„เบทเบ™เปƒเบซเบกเปˆ (เป€เบ„เบดเปˆเบ‡เบซเบ™เบถเปˆเบ‡):

เบเบฒเบ™โ€‹เบ‚เบฐโ€‹เบซเบเบฒเบโ€‹เบญเบฑเบ”โ€‹เบ•เบฐโ€‹เป‚เบ™โ€‹เบกเบฑเบ”โ€‹เปเบฅเบฐโ€‹เบเบฒเบ™โ€‹เบ„เบธเป‰เบกโ€‹เบ„เบญเบ‡โ€‹เบŠเบฑเบšโ€‹เบžเบฐโ€‹เบเบฒโ€‹เบเบญเบ™โ€‹เปƒเบ™ Kubernetes (เบžเบฒเบšโ€‹เบฅเบงเบกโ€‹เปเบฅเบฐโ€‹เบฅเบฒเบโ€‹เบ‡เบฒเบ™โ€‹เบงเบดโ€‹เบ”เบตโ€‹เป‚เบญโ€‹)

Kubernetes เปเบฅเบฐเบŠเบฑเบšเบžเบฐเบเบฒเบเบญเบ™ CPU

เปƒเบ™ Kubernetes, เบŠเบฑเบšเบžเบฐเบเบฒเบเบญเบ™ CPU เบกเบฑเบเบˆเบฐเบ–เบทเบเบงเบฑเบ”เปเบ—เบเปƒเบ™ milliadrax, i.e. 0,001 cores เบ–เบทเบเบ›เบฐเบ•เบดเบšเบฑเบ”เป€เบ›เบฑเบ™เบ™เป‰เปเบฒเบซเบ™เบฑเบเบžเบทเป‰เบ™เบ–เบฒเบ™. (เบชเบดเปˆเบ‡เบ”เบฝเบงเบเบฑเบ™เปƒเบ™ Linux/cgroups terminology เป€เบญเบตเป‰เบ™เบงเปˆเบฒเบเบฒเบ™เปเบšเปˆเบ‡เบ›เบฑเบ™ CPU, เป€เบ–เบดเบ‡เปเบกเปˆเบ™เบงเปˆเบฒ, เบŠเบฑเบ”เป€เบˆเบ™เบเบงเปˆเบฒ, 1000 millicores = 1024 CPU shares.) K8s เบฎเบฑเบšเบ›เบฐเบเบฑเบ™เบงเปˆเบฒเบกเบฑเบ™เบšเปเปˆเป„เบ”เป‰เบงเบฒเบ‡ pods เบขเบนเปˆเปƒเบ™เป€เบ„เบทเปˆเบญเบ‡เปเบกเปˆเบ‚เปˆเบฒเบเบซเบผเบฒเบเบเปˆเบงเบฒเบกเบตเบŠเบฑเบšเบžเบฐเบเบฒเบเบญเบ™ CPU เบชเปเบฒเบฅเบฑเบšเบœเบปเบ™เบฅเบงเบกเบ‚เบญเบ‡เบ™เป‰เปเบฒเบซเบ™เบฑเบเบ‚เบญเบ‡ pods เบ—เบฑเบ‡เบซเบกเบปเบ”.

เบ™เบตเป‰เป€เบเบตเบ”เบ‚เบถเป‰เบ™เปเบ™เบงเปƒเบ”? เป€เบกเบทเปˆเบญเบ—เปˆเบฒเบ™เป€เบžเบตเปˆเบกเป€เบŠเบตเบšเป€เบงเบตเปƒเบชเปˆเบเบธเปˆเบก Kubernetes, เบกเบฑเบ™เป„เบ”เป‰เบ–เบทเบเบฅเบฒเบเบ‡เบฒเบ™เบงเปˆเบฒเบกเบต CPU cores เป€เบ—เบปเปˆเบฒเปƒเบ”. เปเบฅเบฐเป€เบกเบทเปˆเบญเบชเป‰เบฒเบ‡เบเบฑเบเปƒเปเปˆ, เบ•เบปเบงเบเบณเบ™เบปเบ”เป€เบงเบฅเบฒ Kubernetes เบฎเบนเป‰เบงเปˆเบฒเบžเบญเบ”เบ™เบตเป‰เบˆเบฐเบ•เป‰เบญเบ‡เบเบฒเบ™เบˆเบฑเบเปเบเบ™. เบ”เบฑเปˆเบ‡เบ™เบฑเป‰เบ™, เบเบฑเบเบˆเบฐเบ–เบทเบเบกเบญเบšเปƒเบซเป‰เป€เบ„เบทเปˆเบญเบ‡เปเบกเปˆเบ‚เปˆเบฒเบเบ—เบตเปˆเบกเบตเปเบเบ™เบžเบฝเบ‡เบžเป.

เบˆเบฐเป€เบเบตเบ”เบซเบเบฑเบ‡เบ‚เบถเป‰เบ™เบ–เป‰เบฒ เบšเปเปˆ เบเบฒเบ™เบฎเป‰เบญเบ‡เบ‚เปเบ–เบทเบเบฅเบฐเบšเบธ (i. e. เบเบฑเบเบšเปเปˆเบกเบตเบˆเปเบฒเบ™เบงเบ™เบซเบผเบฑเบเบ—เบตเปˆเบกเบฑเบ™เบ•เป‰เบญเบ‡เบเบฒเบ™)? เบฅเบญเบ‡เบ„เบดเบ”เป€เบšเบดเปˆเบ‡เบงเปˆเบฒ เป‚เบ”เบเบ—เบปเปˆเบงเป„เบ›เปเบฅเป‰เบง Kubernetes เบ™เบฑเบšเบŠเบฑเบšเบžเบฐเบเบฒเบเบญเบ™เปเบ™เบงเปƒเบ”.

เบชเปเบฒโ€‹เบฅเบฑเบšโ€‹เบเบฑเบโ€‹เบ—เบตเปˆโ€‹เบ—เปˆเบฒเบ™โ€‹เบชเบฒโ€‹เบกเบฒเบ”โ€‹เบฅเบฐโ€‹เบšเบธโ€‹เบ—เบฑเบ‡โ€‹เบชเบญเบ‡โ€‹เบ„เปเบฒโ€‹เบฎเป‰เบญเบ‡โ€‹เบชเบฐโ€‹เบซเบกเบฑเบ (CFS เบเปเบฒโ€‹เบ™เบปเบ”โ€‹เป€เบงโ€‹เบฅเบฒโ€‹) เปเบฅเบฐโ€‹เบˆเปเบฒโ€‹เบเบฑเบ” (เบˆเบทเปˆโ€‹เบˆเปเบฒโ€‹เป„เบŸโ€‹เบˆเบฐโ€‹เบฅเบฒโ€‹เบˆเบญเบ™โ€‹?):

  • เบ–เป‰เบฒเบžเบงเบเป€เบ‚เบปเบฒเบ–เบทเบเบฅเบฐเบšเบธเป€เบ—เบปเปˆเบฒเบ—เบฝเบกเบเบฑเบ™, เบซเบผเบฑเบ‡เบˆเบฒเบเบ™เบฑเป‰เบ™เบเบฑเบเบˆเบฐเบ–เบทเบเบกเบญเบšเบซเบกเบฒเบเป€เบ›เบฑเบ™เบŠเบฑเป‰เบ™ QoS เบฎเบฑเบšเบ›เบฐเบเบฑเบ™. เบˆเปเบฒโ€‹เบ™เบงเบ™โ€‹เบ‚เบญเบ‡โ€‹เบซเบผเบฑเบโ€‹เบเบฒเบ™โ€‹เบ™เบตเป‰โ€‹เบชเบฐโ€‹เป€เบซเบกเบตโ€‹เป„เบ›โ€‹เบ—เบตเปˆโ€‹เบกเบฑเบ™โ€‹เปเบกเปˆเบ™โ€‹เบเบฒเบ™โ€‹เบฎเบฑเบšโ€‹เบ›เบฐโ€‹เบเบฑเบ™โ€‹.
  • เบ–เป‰เบฒเบ„เปเบฒเบฎเป‰เบญเบ‡เบ‚เปเปเบกเปˆเบ™เบซเบ™เป‰เบญเบเบเบงเปˆเบฒเบ‚เบญเบšเป€เบ‚เบ”เบˆเปเบฒเบเบฑเบ” - QoS class เบฅเบฐเป€เบšเบตเบ”เป„เบ”เป‰. เป€เบซเบผเบปเปˆเบฒเบ™เบฑเป‰เบ™. เบ•เบปเบงเบขเปˆเบฒเบ‡, เบžเบงเบเป€เบฎเบปเบฒเบ„เบฒเบ”เบซเบงเบฑเบ‡เบงเปˆเบฒเบเบฑเบเบˆเบฐเปƒเบŠเป‰ 1 เบซเบผเบฑเบเบชเบฐเป€เปเบต, เปเบ•เปˆเบ„เปˆเบฒเบ™เบตเป‰เบšเปเปˆเปเบกเปˆเบ™เบ‚เปเป‰เบˆเบณเบเบฑเบ”เบชเบณเบฅเบฑเบšเบกเบฑเบ™: เบšเบฒเบ‡เบ„เบฑเป‰เบ‡ pod เบชเบฒเบกเบฒเบ”เบ™เปเบฒเปƒเบŠเป‰เป„เบ”เป‰เบซเบผเบฒเบ (เป€เบกเบทเปˆเบญเป€เบ„เบทเปˆเบญเบ‡เปเบกเปˆเบ‚เปˆเบฒเบเบกเบตเบŠเบฑเบšเบžเบฐเบเบฒเบเบญเบ™เบŸเบฃเบตเบชเปเบฒเบฅเบฑเบšเบเบฒเบ™เบ™เบตเป‰).
  • เบ™เบญเบเบ™เบฑเป‰เบ™เบเบฑเบ‡เบกเบตเบซเป‰เบญเบ‡เบฎเบฝเบ™ QoS เบžเบฐเบเบฒเบเบฒเบกเบ—เบตเปˆเบ”เบตเบ—เบตเปˆเบชเบธเบ” โ€” เบกเบฑเบ™โ€‹เบฅเบงเบกโ€‹เป€เบญเบปเบฒโ€‹เบเบฑเบโ€‹เบ—เบตเปˆโ€‹เบฎเป‰เบญเบ‡โ€‹เบ‚เปโ€‹เบšเปเปˆโ€‹เป„เบ”เป‰โ€‹เบฅเบฐโ€‹เบšเบธโ€‹เป„เบงเป‰โ€‹. เบŠเบฑเบšเบžเบฐเบเบฒเบเบญเบ™เป„เบ”เป‰เบ–เบทเบเบกเบญเบšเปƒเบซเป‰เบžเบงเบเป€เบ‚เบปเบฒเบชเบธเบ”เบ—เป‰เบฒเบ.

เบซเบ™เปˆเบงเบเบ„เบงเบฒเบกเบˆเปเบฒ

เบ”เป‰เบงเบเบ„เบงเบฒเบกเบŠเบปเบ‡เบˆเปเบฒ, เบชเบฐเบ–เบฒเบ™เบฐเบเบฒเบ™เปเบกเปˆเบ™เบ„เป‰เบฒเบเบ„เบทเบเบฑเบ™, เปเบ•เปˆเปเบ•เบเบ•เปˆเบฒเบ‡เบเบฑเบ™เป€เบฅเบฑเบเบ™เป‰เบญเบ - เบซเบผเบฑเบ‡เบˆเบฒเบเบ—เบตเปˆเบ—เบฑเบ‡เบซเบกเบปเบ”, เบฅเบฑเบเบชเบฐเบ™เบฐเบ‚เบญเบ‡เบŠเบฑเบšเบžเบฐเบเบฒเบเบญเบ™เป€เบซเบผเบปเปˆเบฒเบ™เบตเป‰เปเบกเปˆเบ™เปเบ•เบเบ•เปˆเบฒเบ‡เบเบฑเบ™. เป‚เบ”เบเบ—เบปเปˆเบงเป„เบ›, เบเบฒเบ™เบ›เบฝเบšเบ—เบฝเบšเปเบกเปˆเบ™เบ”เบฑเปˆเบ‡เบ•เปเปˆเป„เบ›เบ™เบตเป‰:

เบเบฒเบ™โ€‹เบ‚เบฐโ€‹เบซเบเบฒเบโ€‹เบญเบฑเบ”โ€‹เบ•เบฐโ€‹เป‚เบ™โ€‹เบกเบฑเบ”โ€‹เปเบฅเบฐโ€‹เบเบฒเบ™โ€‹เบ„เบธเป‰เบกโ€‹เบ„เบญเบ‡โ€‹เบŠเบฑเบšโ€‹เบžเบฐโ€‹เบเบฒโ€‹เบเบญเบ™โ€‹เปƒเบ™ Kubernetes (เบžเบฒเบšโ€‹เบฅเบงเบกโ€‹เปเบฅเบฐโ€‹เบฅเบฒเบโ€‹เบ‡เบฒเบ™โ€‹เบงเบดโ€‹เบ”เบตโ€‹เป‚เบญโ€‹)

เปƒเบซเป‰เป€เบšเบดเปˆเบ‡เบงเบดเบ—เบตเบเบฒเบ™เบฎเป‰เบญเบ‡เบ‚เปเบ–เบทเบเบ›เบฐเบ•เบดเบšเบฑเบ”เปƒเบ™เบซเบ™เปˆเบงเบเบ„เบงเบฒเบกเบˆเปเบฒ. เปƒเบซเป‰ pods เบ”เปเบฒเบฅเบปเบ‡เบŠเบตเบงเบดเบ”เบขเบนเปˆเปƒเบ™เป€เบ„เบทเปˆเบญเบ‡เปเบกเปˆเบ‚เปˆเบฒเบ, เบเบฒเบ™เบ›เปˆเบฝเบ™เปเบ›เบ‡เบเบฒเบ™เบšเปเบฅเบดเป‚เบžเบเบซเบ™เปˆเบงเบเบ„เบงเบฒเบกเบˆเปเบฒ, เบˆเบปเบ™เบเปˆเบงเบฒเบซเบ™เบถเปˆเบ‡เบ‚เบญเบ‡เป€เบ‚เบปเบฒเป€เบˆเบปเป‰เบฒเป„เบ”เป‰เบฎเบฑเบšเบ‚เบฐเบซเบ™เบฒเบ”เปƒเบซเบเปˆเบ”เบฑเปˆเบ‡เบ™เบฑเป‰เบ™เบกเบฑเบ™เปเบฅเปˆเบ™เบญเบญเบเบˆเบฒเบเบ„เบงเบฒเบกเบŠเบปเบ‡เบˆเปเบฒ. เปƒเบ™เบเปเบฅเบฐเบ™เบตเบ™เบตเป‰, killer OOM เบ›เบฒเบเบปเบ”เปเบฅเบฐเบ‚เป‰เบฒเบ‚เบฐเบšเบงเบ™เบเบฒเบ™เบ—เบตเปˆเปƒเบซเบเปˆเบ—เบตเปˆเบชเบธเบ”:

เบเบฒเบ™โ€‹เบ‚เบฐโ€‹เบซเบเบฒเบโ€‹เบญเบฑเบ”โ€‹เบ•เบฐโ€‹เป‚เบ™โ€‹เบกเบฑเบ”โ€‹เปเบฅเบฐโ€‹เบเบฒเบ™โ€‹เบ„เบธเป‰เบกโ€‹เบ„เบญเบ‡โ€‹เบŠเบฑเบšโ€‹เบžเบฐโ€‹เบเบฒโ€‹เบเบญเบ™โ€‹เปƒเบ™ Kubernetes (เบžเบฒเบšโ€‹เบฅเบงเบกโ€‹เปเบฅเบฐโ€‹เบฅเบฒเบโ€‹เบ‡เบฒเบ™โ€‹เบงเบดโ€‹เบ”เบตโ€‹เป‚เบญโ€‹)

เบ™เบตเป‰เบšเปเปˆเป€เบซเบกเบฒเบฐเบชเบปเบกเบเบฑเบšเบžเบงเบเป€เบฎเบปเบฒเบชเบฐเป€เบซเบกเบต, เบ”เบฑเปˆเบ‡เบ™เบฑเป‰เบ™เบกเบฑเบ™เป€เบ›เบฑเบ™เป„เบ›เป„เบ”เป‰เบ—เบตเปˆเบˆเบฐเบเปเบฒเบ™เบปเบ”เบ‚เบฐเบšเบงเบ™เบเบฒเบ™เปƒเบ”เบ—เบตเปˆเบชเปเบฒเบ„เบฑเบ™เบเบฑเบšเบžเบงเบเป€เบฎเบปเบฒเปเบฅเบฐเบšเปเปˆเบ„เบงเบ™เบ–เบทเบเบ‚เป‰เบฒเบ•เบฒเบ. เป€เบžเบทเปˆเบญเป€เบฎเบฑเบ”เบชเบดเปˆเบ‡เบ™เบตเป‰, เปƒเบŠเป‰เบ•เบปเบงเบเปเบฒเบ™เบปเบ”เบเบฒเบ™ oom_score_adj.

เปƒเบซเป‰เบเบฑเบšเบ„เบทเบ™เป„เบ›เบซเบฒเบซเป‰เบญเบ‡เบฎเบฝเบ™ QoS เบ‚เบญเบ‡ CPU เปเบฅเบฐเปเบ•เป‰เบกเบเบฒเบ™เบ›เบฝเบšเบ—เบฝเบšเบเบฑเบšเบ„เปˆเบฒ oom_score_adj เบ—เบตเปˆเบเปเบฒเบ™เบปเบ”เบšเบนเบฅเบดเบกเบฐเบชเบดเบ”เบเบฒเบ™เบšเปเบฅเบดเป‚เบžเบเบซเบ™เปˆเบงเบเบ„เบงเบฒเบกเบˆเปเบฒเบชเปเบฒเบฅเบฑเบš pods:

  • เบ„เปˆเบฒ oom_score_adj เบ•เปเปˆเบฒเบชเบธเบ”เบชเปเบฒเบฅเบฑเบšเบเบฑเบ - -998 - เบซเบกเบฒเบเบ„เบงเบฒเบกเบงเปˆเบฒเบเบฑเบเบ”เบฑเปˆเบ‡เบเปˆเบฒเบงเบ„เบงเบ™เบˆเบฐเบ–เบทเบเบ‚เป‰เบฒเบชเบธเบ”เบ—เป‰เบฒเบ, เบ™เบตเป‰ เบฎเบฑเบšเบ›เบฐเบเบฑเบ™.
  • เบชเบนเบ‡เบชเบธเบ” - 1000 - เปเบกเปˆเบ™ เบžเบฐเบเบฒเบเบฒเบกเบ—เบตเปˆเบ”เบตเบ—เบตเปˆเบชเบธเบ”, เบเบฑเบเบ”เบฑเปˆเบ‡เบเปˆเบฒเบงเบ–เบทเบเบ‚เป‰เบฒเบ•เบฒเบเบเปˆเบญเบ™.
  • เป€เบžเบทเปˆเบญเบ„เบดเบ”เป„เบฅเปˆเบ„เปˆเบฒเบ—เบตเปˆเบเบฑเบ‡เป€เบซเบผเบทเบญ (เบฅเบฐเป€เบšเบตเบ”เป„เบ”เป‰) เบกเบตเบชเบนเบ”เบซเบ™เบถเปˆเบ‡, เป‚เบ”เบเป€เบ™เบทเป‰เบญเปเบ—เป‰เปเบฅเป‰เบงเบ‚เบญเบ‡เบ—เบตเปˆเบ•เบปเป‰เบกเบฅเบปเบ‡เบเบฑเบšเบ„เบงเบฒเบกเบˆเบดเบ‡เบ—เบตเปˆเบงเปˆเบฒเบŠเบฑเบšเบžเบฐเบเบฒเบเบญเบ™เบซเบผเบฒเบเบเบฑเบเป„เบ”เป‰เบฎเป‰เบญเบ‡เบ‚เป, เบ„เบงเบฒเบกเป€เบ›เบฑเบ™เป„เบ›เป„เบ”เป‰เบซเบ™เป‰เบญเบเบ—เบตเปˆเบˆเบฐเบ‚เป‰เบฒ.

เบเบฒเบ™โ€‹เบ‚เบฐโ€‹เบซเบเบฒเบโ€‹เบญเบฑเบ”โ€‹เบ•เบฐโ€‹เป‚เบ™โ€‹เบกเบฑเบ”โ€‹เปเบฅเบฐโ€‹เบเบฒเบ™โ€‹เบ„เบธเป‰เบกโ€‹เบ„เบญเบ‡โ€‹เบŠเบฑเบšโ€‹เบžเบฐโ€‹เบเบฒโ€‹เบเบญเบ™โ€‹เปƒเบ™ Kubernetes (เบžเบฒเบšโ€‹เบฅเบงเบกโ€‹เปเบฅเบฐโ€‹เบฅเบฒเบโ€‹เบ‡เบฒเบ™โ€‹เบงเบดโ€‹เบ”เบตโ€‹เป‚เบญโ€‹)

เบ—เบตเบชเบญเบ‡ "เบšเบดเบ”" - limit_in_bytes - เบชเปเบฒโ€‹เบฅเบฑเบšโ€‹เบเบฒเบ™โ€‹เบˆเปเบฒโ€‹เบเบฑเบ”โ€‹. เบ”เป‰เบงเบเบกเบฑเบ™, เบ—เบธเบเบชเบดเปˆเบ‡เบ—เบธเบเบขเปˆเบฒเบ‡เปเบกเปˆเบ™เบ‡เปˆเบฒเบเบ”เบฒเบ: เบžเบงเบเป€เบฎเบปเบฒเบžเบฝเบ‡เปเบ•เปˆเบเปเบฒเบ™เบปเบ”เบˆเปเบฒเบ™เบงเบ™เบชเบนเบ‡เบชเบธเบ”เบ‚เบญเบ‡เบซเบ™เปˆเบงเบเบ„เบงเบฒเบกเบˆเปเบฒเบ—เบตเปˆเบญเบญเบเบกเบฒ, เปเบฅเบฐเปƒเบ™เบ—เบตเปˆเบ™เบตเป‰ (เบšเปเปˆเบ„เบทเบเบฑเบš CPU) เบšเปเปˆเบกเบตเบ„เปเบฒเบ–เบฒเบกเบเปˆเบฝเบงเบเบฑเบšเบงเบดเบ—เบตเบเบฒเบ™เบงเบฑเบ”เปเบ—เบเบกเบฑเบ™ (เบซเบ™เปˆเบงเบเบ„เบงเบฒเบกเบˆเปเบฒ).

เบฅเบงเบก

เปเบ•เปˆเบฅเบฐเบเบฑเบเปƒเบ™ Kubernetes เปเบกเปˆเบ™เปƒเบซเป‰ requests ะธ limits - เบ•เบปเบงเบเปเบฒเบ™เบปเบ”เบเบฒเบ™เบ—เบฑเบ‡เบชเบญเบ‡เบชเปเบฒเบฅเบฑเบš CPU เปเบฅเบฐเบซเบ™เปˆเบงเบเบ„เบงเบฒเบกเบˆเปเบฒ:

  1. เบญเบตเบ‡เบ•เบฒเบกเบเบฒเบ™เบฎเป‰เบญเบ‡เบ‚เป, เบ•เบปเบงเบเปเบฒเบ™เบปเบ”เป€เบงเบฅเบฒ Kubernetes เป€เบฎเบฑเบ”เบงเบฝเบ, เป€เบŠเบดเปˆเบ‡เปเบˆเบเบขเบฒเบ pods เบฅเบฐเบซเบงเปˆเบฒเบ‡เป€เบ„เบทเปˆเบญเบ‡เปเบกเปˆเบ‚เปˆเบฒเบ;
  2. เบญเบตเบ‡เบ•เบฒเบกเบ•เบปเบงเบเปเบฒเบ™เบปเบ”เบเบฒเบ™เบ—เบฑเบ‡เบซเบกเบปเบ”, เบซเป‰เบญเบ‡เบฎเบฝเบ™ QoS เบ‚เบญเบ‡เบเบฑเบเปเบกเปˆเบ™เบ–เบทเบเบเปเบฒเบ™เบปเบ”;
  3. เบ™เป‰เบณเปœเบฑเบเบชเบปเบกเบ—เบฝเบšเปเบกเปˆเบ™เบ„เบณเบ™เบงเบ™เบ•เบฒเบกเบ„เบณเบฎเป‰เบญเบ‡เบ‚เป CPU;
  4. เบ•เบปเบงเบเปเบฒเบ™เบปเบ”เป€เบงเบฅเบฒ CFS เบ–เบทเบเบ•เบฑเป‰เบ‡เบ„เปˆเบฒเป‚เบ”เบเบญเบตเบ‡เปƒเบชเปˆเบเบฒเบ™เบฎเป‰เบญเบ‡เบ‚เป CPU;
  5. killer OOM เบ–เบทเบเบ•เบฑเป‰เบ‡เบ„เปˆเบฒเป‚เบ”เบเบญเบตเบ‡เปƒเบชเปˆเบเบฒเบ™เบฎเป‰เบญเบ‡เบ‚เปเบ„เบงเบฒเบกเบˆเปเบฒ;
  6. "เป„เบŸเบˆเบฐเบฅเบฒเบˆเบญเบ™" เบ–เบทเบเบ•เบฑเป‰เบ‡เบ„เปˆเบฒเป‚เบ”เบเบญเบตเบ‡เปƒเบชเปˆเบเบฒเบ™เบˆเปเบฒเบเบฑเบ” CPU;
  7. เบญเบตเบ‡เบ•เบฒเบกเบเบฒเบ™เบˆเปเบฒเบเบฑเบ”เบซเบ™เปˆเบงเบเบ„เบงเบฒเบกเบˆเปเบฒ, เบเปเบฒเบ™เบปเบ”เบ‚เบญเบšเป€เบ‚เบ”เบˆเปเบฒเบเบฑเบ”เบชเปเบฒเบฅเบฑเบš cgroup.

เบเบฒเบ™โ€‹เบ‚เบฐโ€‹เบซเบเบฒเบโ€‹เบญเบฑเบ”โ€‹เบ•เบฐโ€‹เป‚เบ™โ€‹เบกเบฑเบ”โ€‹เปเบฅเบฐโ€‹เบเบฒเบ™โ€‹เบ„เบธเป‰เบกโ€‹เบ„เบญเบ‡โ€‹เบŠเบฑเบšโ€‹เบžเบฐโ€‹เบเบฒโ€‹เบเบญเบ™โ€‹เปƒเบ™ Kubernetes (เบžเบฒเบšโ€‹เบฅเบงเบกโ€‹เปเบฅเบฐโ€‹เบฅเบฒเบโ€‹เบ‡เบฒเบ™โ€‹เบงเบดโ€‹เบ”เบตโ€‹เป‚เบญโ€‹)

เป‚เบ”เบเบ—เบปเปˆเบงเป„เบ›, เบฎเบนเบšเบžเบฒเบšเบ™เบตเป‰เบ•เบญเบšเบ„เปเบฒเบ–เบฒเบกเบ—เบฑเบ‡เบซเบกเบปเบ”เบเปˆเบฝเบงเบเบฑเบšเบงเบดเบ—เบตเบเบฒเบ™เบชเปˆเบงเบ™เบ•เบปเป‰เบ™เบ•เปเบ‚เบญเบ‡เบเบฒเบ™เบ„เบธเป‰เบกเบ„เบญเบ‡เบŠเบฑเบšเบžเบฐเบเบฒเบเบญเบ™เป€เบเบตเบ”เบ‚เบทเป‰เบ™เปƒเบ™ Kubernetes.

เบ›เบฑเบšเบ‚เบฐเปœเบฒเบ”เบญเบฑเบ”เบ•เบฐเป‚เบ™เบกเบฑเบ”

K8s cluster-autoscaler

เบฅเบญเบ‡เบ™เบถเบเบžเบฒเบšเป€เบšเบดเปˆเบ‡เบงเปˆเบฒเบเบธเปˆเบกเบ—เบฑเบ‡เปเบปเบ”เบ–เบทเบเบ„เบญเบšเบ„เบญเบ‡เปเบฅเป‰เบง เปเบฅเบฐเบˆเบฐเบ•เป‰เบญเบ‡เบชเป‰เบฒเบ‡เบเบฑเบเปƒเปเปˆ. เปƒเบ™เบ‚เบฐเบ™เบฐเบ—เบตเปˆเบเบฑเบเบšเปเปˆเบชเบฒเบกเบฒเบ”เบ›เบฒเบเบปเบ”, เบกเบฑเบ™เบขเบนเปˆเปƒเบ™เบชเบฐเบ–เบฒเบ™เบฐ เบ—เบตเปˆเบเบฑเบ‡เบ„เป‰เบฒเบ‡. เป€เบžเบทเปˆเบญเปƒเบซเป‰เบกเบฑเบ™เบ›เบฒเบเบปเบ”, เบžเบงเบเป€เบฎเบปเบฒเบชเบฒเบกเบฒเบ”เป€เบŠเบทเปˆเบญเบกเบ•เปเปˆเป€เบ„เบทเปˆเบญเบ‡เปเบกเปˆเบ‚เปˆเบฒเบเปƒเบซเบกเปˆเบเบฑเบš cluster เบซเบผเบท ... เบ•เบดเบ”เบ•เบฑเป‰เบ‡ cluster-autoscaler, เป€เบŠเบดเปˆเบ‡เบˆเบฐเป€เบฎเบฑเบ”เบกเบฑเบ™เบชเปเบฒเบฅเบฑเบšเบžเบงเบเป€เบฎเบปเบฒ: เบชเบฑเปˆเบ‡เป€เบ„เบทเปˆเบญเบ‡ virtual เบˆเบฒเบเบœเบนเป‰เปƒเบซเป‰เบšเปเบฅเบดเบเบฒเบ™เบŸเบฑเบ‡ (เปƒเบŠเป‰เบ„เปเบฒเบฎเป‰เบญเบ‡เบ‚เป API) เปเบฅเบฐเป€เบŠเบทเปˆเบญเบกเบ•เปเปˆเบกเบฑเบ™เบเบฑเบš cluster. , เบซเบผเบฑเบ‡เบˆเบฒเบเบ™เบฑเป‰เบ™เบเบฑเบเบˆเบฐเบ–เบทเบเป€เบžเบตเปˆเบก.

เบเบฒเบ™โ€‹เบ‚เบฐโ€‹เบซเบเบฒเบโ€‹เบญเบฑเบ”โ€‹เบ•เบฐโ€‹เป‚เบ™โ€‹เบกเบฑเบ”โ€‹เปเบฅเบฐโ€‹เบเบฒเบ™โ€‹เบ„เบธเป‰เบกโ€‹เบ„เบญเบ‡โ€‹เบŠเบฑเบšโ€‹เบžเบฐโ€‹เบเบฒโ€‹เบเบญเบ™โ€‹เปƒเบ™ Kubernetes (เบžเบฒเบšโ€‹เบฅเบงเบกโ€‹เปเบฅเบฐโ€‹เบฅเบฒเบโ€‹เบ‡เบฒเบ™โ€‹เบงเบดโ€‹เบ”เบตโ€‹เป‚เบญโ€‹)

เบ™เบตเป‰เปเบกเปˆเบ™เบเบฒเบ™เบ›เบฑเบšเบ‚เบฐเปœเบฒเบ”เบญเบฑเบ”เบ•เบฐเป‚เบ™เบกเบฑเบ”เบ‚เบญเบ‡เบเบธเปˆเบก Kubernetes, เป€เบŠเบดเปˆเบ‡เป€เบฎเบฑเบ”เบงเบฝเบเป„เบ”เป‰เบ”เบต (เปƒเบ™เบ›เบฐเบชเบปเบšเบเบฒเบ™เบ‚เบญเบ‡เบžเบงเบเป€เบฎเบปเบฒ). เบขเปˆเบฒเบ‡เปƒเบ”เบเปเบ•เบฒเบก, เป€เบ›เบฑเบ™เบšเปˆเบญเบ™เบญเบทเปˆเบ™, เบกเบตเบšเบฒเบ‡ nuances เบขเบนเปˆเบ—เบตเปˆเบ™เบตเป‰ ...

เบ•เบฒเบšเปƒเบ”เบ—เบตเปˆเบžเบงเบเป€เบฎเบปเบฒเป€เบžเบตเปˆเบกเบ‚เบฐเบซเบ™เบฒเบ”เบ‚เบญเบ‡เบเบธเปˆเบก, เบ—เบธเบเบชเบดเปˆเบ‡เบ—เบธเบเบขเปˆเบฒเบ‡เปเบกเปˆเบ™เบ”เบต, เปเบ•เปˆเบงเปˆเบฒเบˆเบฐเป€เบเบตเบ”เบซเบเบฑเบ‡เบ‚เบถเป‰เบ™เป€เบกเบทเปˆเบญเบเบธเปˆเบก เป€เบฅเบตเปˆเบกเบ›เบปเบ”เบ›เปˆเบญเบเบ•เบปเบ™เป€เบญเบ‡? เบšเบฑเบ™เบซเบฒเปเบกเปˆเบ™เบงเปˆเบฒเบเบฒเบ™เป€เบ„เบทเปˆเบญเบ™เบเป‰เบฒเบเบเบฑเบ (เป€เบžเบทเปˆเบญเบ›เบปเบ”เบ›เปˆเบญเบเป€เบˆเบปเป‰เบฒเบžเบฒเบš) เปเบกเปˆเบ™เบกเบตเบ„เบงเบฒเบกเบซเบเบธเป‰เบ‡เบเบฒเบเบ—เบฒเบ‡เบ”เป‰เบฒเบ™เป€เบ•เบฑเบเบ™เบดเบเบซเบผเบฒเบเปเบฅเบฐเบกเบตเบฅเบฒเบ„เบฒเปเบžเบ‡เปƒเบ™เบ”เป‰เบฒเบ™เบŠเบฑเบšเบžเบฐเบเบฒเบเบญเบ™. Kubernetes เปƒเบŠเป‰เบงเบดเบ—เบตเบเบฒเบ™เบ—เบตเปˆเปเบ•เบเบ•เปˆเบฒเบ‡เบเบฑเบ™เบซเบกเบปเบ”.

เบžเบดเบˆเบฒเบฅเบฐเบ™เบฒเบเบธเปˆเบกเบ‚เบญเบ‡ 3 เป€เบŠเบตเบšเป€เบงเบตเบ—เบตเปˆเบกเบต Deployment. เบกเบฑเบ™เบกเบต 6 เบเบฑเบ: เปƒเบ™เบ›เบฑเบ”เบˆเบธเบšเบฑเบ™เบกเบต 2 เบชเปเบฒเบฅเบฑเบšเปเบ•เปˆเบฅเบฐเป€เบ„เบทเปˆเบญเบ‡เปเบกเปˆเบ‚เปˆเบฒเบ. เบชเปเบฒเบฅเบฑเบšเป€เบซเบ”เบœเบปเบ™เบšเบฒเบ‡เบขเปˆเบฒเบ‡เบ—เบตเปˆเบžเบงเบเป€เบฎเบปเบฒเบ•เป‰เบญเบ‡เบเบฒเบ™เบ›เบดเบ”เบซเบ™เบถเปˆเบ‡เปƒเบ™เป€เบ„เบทเปˆเบญเบ‡เปเบกเปˆเบ‚เปˆเบฒเบ. เป€เบžเบทเปˆเบญเป€เบฎเบฑเบ”เบชเบดเปˆเบ‡เบ™เบตเป‰, เบžเบงเบเป€เบฎเบปเบฒเบˆเบฐเบ™เปเบฒเปƒเบŠเป‰เบ„เปเบฒเบชเบฑเปˆเบ‡ kubectl drain, เป€เบŠเบดเปˆเบ‡:

  • เบˆเบฐเบซเป‰เบฒเบกเบเบฒเบ™เบชเบปเปˆเบ‡ pods เปƒเบซเบกเปˆเป„เบ›เบซเบฒเป€เบ„เบทเปˆเบญเบ‡เปเบกเปˆเบ‚เปˆเบฒเบเบ™เบตเป‰;
  • เบˆเบฐเบฅเบถเบšเบžเบญเบ”เบ—เบตเปˆเบกเบตเบขเบนเปˆเปƒเบ™เป€เบŠเบตเบšเป€เบงเบต.

เป€เบ™เบทเปˆเบญเบ‡เบˆเบฒเบ Kubernetes เบกเบตเบ„เบงเบฒเบกเบฎเบฑเบšเบœเบดเบ”เบŠเบญเบšเปƒเบ™เบเบฒเบ™เบฎเบฑเบเบชเบฒเบˆเปเบฒเบ™เบงเบ™เบ‚เบญเบ‡เบเบฑเบ (6), เบกเบฑเบ™เบ‡เปˆเบฒเบเบ”เบฒเบ เบˆเบฐเบชเป‰เบฒเบ‡เปƒเบซเบกเปˆ เบžเบงเบเบกเบฑเบ™เบขเบนเปˆเปƒเบ™เบ‚เปเป‰เบญเบทเปˆเบ™, เปเบ•เปˆเบšเปเปˆเปเบกเปˆเบ™เบขเบนเปˆเปƒเบ™เบญเบฑเบ™เบ—เบตเปˆเบ–เบทเบเบ›เบดเบ”เบเบฒเบ™เปƒเบŠเป‰เบ‡เบฒเบ™, เป€เบžเบฒเบฐเบงเปˆเบฒเบกเบฑเบ™เบ–เบทเบเปเบฒเบเป„เบงเป‰เปเบฅเป‰เบงเบงเปˆเบฒเบšเปเปˆเบชเบฒเบกเบฒเบ”เปƒเบŠเป‰เป„เบ”เป‰เบชเปเบฒเบฅเบฑเบšเบเบฒเบ™เป‚เบฎเบ”เบเบฑเบเปƒเปเปˆ. เบ™เบตเป‰เปเบกเปˆเบ™เบเบปเบ™เป„เบเบžเบทเป‰เบ™เบ–เบฒเบ™เบชเปเบฒเบฅเบฑเบš Kubernetes.

เบเบฒเบ™โ€‹เบ‚เบฐโ€‹เบซเบเบฒเบโ€‹เบญเบฑเบ”โ€‹เบ•เบฐโ€‹เป‚เบ™โ€‹เบกเบฑเบ”โ€‹เปเบฅเบฐโ€‹เบเบฒเบ™โ€‹เบ„เบธเป‰เบกโ€‹เบ„เบญเบ‡โ€‹เบŠเบฑเบšโ€‹เบžเบฐโ€‹เบเบฒโ€‹เบเบญเบ™โ€‹เปƒเบ™ Kubernetes (เบžเบฒเบšโ€‹เบฅเบงเบกโ€‹เปเบฅเบฐโ€‹เบฅเบฒเบโ€‹เบ‡เบฒเบ™โ€‹เบงเบดโ€‹เบ”เบตโ€‹เป‚เบญโ€‹)

เบขเปˆเบฒเบ‡เปƒเบ”เบเปเบ•เบฒเบก, เบกเบต nuance เบขเบนเปˆเบ—เบตเปˆเบ™เบตเป‰เป€เบŠเบฑเปˆเบ™เบ”เบฝเบงเบเบฑเบ™. เปƒเบ™เบชเบฐเบ–เบฒเบ™เบฐเบเบฒเบ™เบ—เบตเปˆเบ„เป‰เบฒเบเบ„เบทเบเบฑเบ™, เบชเปเบฒเบฅเบฑเบš StatefulSet (เปเบ—เบ™เบ—เบตเปˆเบˆเบฐ Deployment), เบเบฒเบ™เบเบฐเบ—เปเบฒเบˆเบฐเปเบ•เบเบ•เปˆเบฒเบ‡เบเบฑเบ™. เปƒเบ™เบ›เบฑเบ”เบˆเบธเบšเบฑเบ™เบžเบงเบเป€เบฎเบปเบฒเบกเบตเบ„เปเบฒเบฎเป‰เบญเบ‡เบชเบฐเบซเบกเบฑเบเบ‚เบญเบ‡เบฅเบฑเบ”เปเบฅเป‰เบง - เบ•เบปเบงเบขเปˆเบฒเบ‡, เบชเบฒเบกเบเบฑเบเบเบฑเบš MongoDB, เบซเบ™เบถเปˆเบ‡เปƒเบ™เบ™เบฑเป‰เบ™เบกเบตเบšเบฑเบ™เบซเบฒเบšเบฒเบ‡เบขเปˆเบฒเบ‡ (เบ‚เปเป‰เบกเบนเบ™เป„เบ”เป‰เบเบฒเบเป€เบ›เบฑเบ™เบ„เบงเบฒเบกเป€เบชเบเบซเบฒเบเบซเบผเบทเบ‚เปเป‰เบœเบดเบ”เบžเบฒเบ”เบญเบทเปˆเบ™เบ—เบตเปˆเบ›เป‰เบญเบ‡เบเบฑเบ™เบšเปเปˆเปƒเบซเป‰เบเบฑเบเป€เบฅเบตเปˆเบกเบ•เบปเป‰เบ™เบขเปˆเบฒเบ‡เบ–เบทเบเบ•เป‰เบญเบ‡). เปเบฅเบฐเบžเบงเบเป€เบฎเบปเบฒเบ•เบฑเบ”เบชเบดเบ™เปƒเบˆเบ›เบดเบ”เบเบฒเบ™เปƒเบŠเป‰เบ‡เบฒเบ™เป€เบ„เบทเปˆเบญเบ‡เปเบกเปˆเบ‚เปˆเบฒเบเบซเบ™เบถเปˆเบ‡เบญเบตเบเบ„เบฑเป‰เบ‡. เบชเบดเปˆเบ‡โ€‹เบ—เบตเปˆโ€‹เบˆเบฐโ€‹เป€เบเบตเบ”โ€‹เบ‚เบถเป‰เบ™?

เบเบฒเบ™โ€‹เบ‚เบฐโ€‹เบซเบเบฒเบโ€‹เบญเบฑเบ”โ€‹เบ•เบฐโ€‹เป‚เบ™โ€‹เบกเบฑเบ”โ€‹เปเบฅเบฐโ€‹เบเบฒเบ™โ€‹เบ„เบธเป‰เบกโ€‹เบ„เบญเบ‡โ€‹เบŠเบฑเบšโ€‹เบžเบฐโ€‹เบเบฒโ€‹เบเบญเบ™โ€‹เปƒเบ™ Kubernetes (เบžเบฒเบšโ€‹เบฅเบงเบกโ€‹เปเบฅเบฐโ€‹เบฅเบฒเบโ€‹เบ‡เบฒเบ™โ€‹เบงเบดโ€‹เบ”เบตโ€‹เป‚เบญโ€‹)

MongoDB เบชเบฒเบกเบฒเบ” เบ•เบฒเบเป€เบžเบฒเบฐเบงเปˆเบฒเบกเบฑเบ™เบ•เป‰เบญเบ‡เบเบฒเบ™เบเบธเปˆเบก: เบชเปเบฒเบฅเบฑเบšเบเบธเปˆเบกเบ‚เบญเบ‡เบชเบฒเบกเบเบฒเบ™เบ•เบดเบ”เบ•เบฑเป‰เบ‡, เบขเปˆเบฒเบ‡เบซเบ™เป‰เบญเบเบชเบญเบ‡เบ•เป‰เบญเบ‡เป„เบ”เป‰เป€เบฎเบฑเบ”เบงเบฝเบ. เบขเปˆเบฒเบ‡เปƒเบ”เบเปเบ•เบฒเบก, เบ™เบตเป‰ เบšเปเปˆเป€เบเบตเบ”เบ‚เบถเป‰เบ™ - เบ‚เบญเบšเปƒเบˆ PodDisruptionBudget. เบžเบฒเบฅเบฒเบกเบดเป€เบ•เบตเบ™เบตเป‰เบเปเบฒเบ™เบปเบ”เบˆเปเบฒเบ™เบงเบ™เบ•เปเบฒเปˆเบชเบธเบ”เบ—เบตเปˆเบ•เป‰เบญเบ‡เบเบฒเบ™เบ‚เบญเบ‡เบเบฑเบเป€เบฎเบฑเบ”เบงเบฝเบ. เบฎเบนเป‰เบงเปˆเบฒเบซเบ™เบถเปˆเบ‡เปƒเบ™เบเบฑเบ MongoDB เบšเปเปˆเป„เบ”เป‰เป€เบฎเบฑเบ”เบงเบฝเบเบญเบตเบเบ•เปเปˆเป„เบ›, เปเบฅเบฐเป€เบซเบฑเบ™เบงเปˆเบฒ PodDisruptionBudget เบ–เบทเบเบ•เบฑเป‰เบ‡เป„เบงเป‰เบชเปเบฒเบฅเบฑเบš MongoDB. minAvailable: 2, Kubernetes เบˆเบฐเบšเปเปˆเบญเบฐเบ™เบธเบเบฒเบ”เปƒเบซเป‰เบ—เปˆเบฒเบ™เบฅเบถเบšเบเบฑเบ.

เป€เบชเบฑเป‰เบ™เบ—เบฒเบ‡เบฅเบธเปˆเบก: เป€เบžเบทเปˆเบญเปƒเบซเป‰เบเบฒเบ™เป€เบ„เบทเปˆเบญเบ™เป„เบซเบง (เปเบฅเบฐเปƒเบ™เบ„เบงเบฒเบกเป€เบ›เบฑเบ™เบˆเบดเบ‡, เบเบฒเบ™เบชเป‰เบฒเบ‡เปƒเบซเบกเปˆ) เบ‚เบญเบ‡เบเบฑเบเป€เบžเบทเปˆเบญเป€เบฎเบฑเบ”เบงเบฝเบเบขเปˆเบฒเบ‡เบ–เบทเบเบ•เป‰เบญเบ‡เป€เบกเบทเปˆเบญเบเบธเปˆเบกเบ–เบทเบเบ›เปˆเบญเบเบญเบญเบเบกเบฒ, เบกเบฑเบ™เบˆเปเบฒเป€เบ›เบฑเบ™เบ•เป‰เบญเบ‡เบ•เบฑเป‰เบ‡เบ„เปˆเบฒ PodDisruptionBudget.

เบเบฒเบ™โ€‹เบ‚เบฐโ€‹เบซเบเบฒเบโ€‹เบญเบญเบโ€‹เบ•เบฒเบกโ€‹เบฅเบงเบ‡โ€‹เบ™เบญเบ™โ€‹

เปƒเบซเป‰เบžเบดเบˆเบฒเบฅเบฐเบ™เบฒเบชเบฐเบ–เบฒเบ™เบฐเบเบฒเบ™เบญเบทเปˆเบ™. เบกเบตเปเบญเบฑเบšเบžเบฅเบดเป€เบ„เบŠเบฑเบ™เบ—เบตเปˆเป€เบฎเบฑเบ”เบงเบฝเบเป€เบ›เบฑเบ™ Deployment เปƒเบ™ Kubernetes. เบเบฒเบ™เบˆเบฐเบฅเบฒเบˆเบญเบ™เบ‚เบญเบ‡เบœเบนเป‰เปƒเบŠเป‰เบกเบฒเบฎเบญเบ” pods เบ‚เบญเบ‡เบกเบฑเบ™ (เบ•เบปเบงเบขเปˆเบฒเบ‡, เบกเบตเบชเบฒเบกเบ‚เบญเบ‡เบžเบงเบเป€เบ‚เบปเบฒ), เปเบฅเบฐเบžเบงเบเป€เบฎเบปเบฒเบงเบฑเบ”เปเบ—เบเบ•เบปเบงเบŠเบตเป‰เบงเบฑเบ”เบ—เบตเปˆเปเบ™เปˆเบ™เบญเบ™เปƒเบ™เบžเบงเบเบกเบฑเบ™ (เป€เบงเบปเป‰เบฒเบงเปˆเบฒ, CPU load). เป€เบกเบทเปˆเบญเบเบฒเบ™เป‚เบซเบผเบ”เป€เบžเบตเปˆเบกเบ‚เบถเป‰เบ™, เบžเบงเบเป€เบฎเบปเบฒเบšเบฑเบ™เบ—เบถเบเบ™เบตเป‰เบขเบนเปˆเปƒเบ™เบ•เบฒเบ•เบฐเบฅเบฒเบ‡เปเบฅเบฐเป€เบžเบตเปˆเบกเบˆเปเบฒเบ™เบงเบ™เบเบฑเบเป€เบžเบทเปˆเบญเปเบˆเบเบขเบฒเบเบเบฒเบ™เบฎเป‰เบญเบ‡เบ‚เป.

เบกเบทเป‰เบ™เบตเป‰เปƒเบ™ Kubernetes เบกเบฑเบ™เบšเปเปˆเบˆเปเบฒเป€เบ›เบฑเบ™เบ•เป‰เบญเบ‡เป€เบฎเบฑเบ”เบ”เป‰เบงเบเบ•เบปเบ™เป€เบญเบ‡: เบเบฒเบ™เป€เบžเบตเปˆเบก / เบซเบผเบธเบ”เบฅเบปเบ‡เบ‚เบญเบ‡เบˆเปเบฒเบ™เบงเบ™เบเบฑเบเบญเบฑเบ”เบ•เบฐเป‚เบ™เบกเบฑเบ”เปเบกเปˆเบ™เบ–เบทเบเบเปเบฒเบ™เบปเบ”เป‚เบ”เบเบ‚เบถเป‰เบ™เบเบฑเบšเบ„เปˆเบฒเบ‚เบญเบ‡เบ•เบปเบงเบŠเบตเป‰เบงเบฑเบ”เบเบฒเบ™เป‚เบซเบผเบ”เบ—เบตเปˆเบงเบฑเบ”เปเบ—เบ.

เบเบฒเบ™โ€‹เบ‚เบฐโ€‹เบซเบเบฒเบโ€‹เบญเบฑเบ”โ€‹เบ•เบฐโ€‹เป‚เบ™โ€‹เบกเบฑเบ”โ€‹เปเบฅเบฐโ€‹เบเบฒเบ™โ€‹เบ„เบธเป‰เบกโ€‹เบ„เบญเบ‡โ€‹เบŠเบฑเบšโ€‹เบžเบฐโ€‹เบเบฒโ€‹เบเบญเบ™โ€‹เปƒเบ™ Kubernetes (เบžเบฒเบšโ€‹เบฅเบงเบกโ€‹เปเบฅเบฐโ€‹เบฅเบฒเบโ€‹เบ‡เบฒเบ™โ€‹เบงเบดโ€‹เบ”เบตโ€‹เป‚เบญโ€‹)

เบ„เปเบฒเบ–เบฒเบกเบ•เบปเป‰เบ™เบ•เปเบขเบนเปˆเบ—เบตเปˆเบ™เบตเป‰เปเบกเปˆเบ™: เบชเบดเปˆเบ‡เบ—เบตเปˆเปเบ™เปˆเบ™เบญเบ™เบ—เบตเปˆเบˆเบฐเบงเบฑเบ”เปเบ—เบ ะธ เบงเบดโ€‹เบ—เบตโ€‹เบเบฒเบ™โ€‹เบ•เบตโ€‹เบ„เบงเบฒเบกโ€‹เบซเบกเบฒเบโ€‹ เป„เบ”เป‰เบฎเบฑเบšเบ„เปˆเบฒ (เบชเปเบฒเบฅเบฑเบšเบเบฒเบ™เบ•เบฑเบ”เบชเบดเบ™เปƒเบˆเบเปˆเบฝเบงเบเบฑเบšเบเบฒเบ™เบ›เปˆเบฝเบ™เปเบ›เบ‡เบˆเปเบฒเบ™เบงเบ™เบ‚เบญเบ‡เบเบฑเบ). เบ—เปˆเบฒเบ™เบชเบฒเบกเบฒเบ”เบงเบฑเบ”เปเบ—เบเป„เบ”เป‰เบซเบผเบฒเบ:

เบเบฒเบ™โ€‹เบ‚เบฐโ€‹เบซเบเบฒเบโ€‹เบญเบฑเบ”โ€‹เบ•เบฐโ€‹เป‚เบ™โ€‹เบกเบฑเบ”โ€‹เปเบฅเบฐโ€‹เบเบฒเบ™โ€‹เบ„เบธเป‰เบกโ€‹เบ„เบญเบ‡โ€‹เบŠเบฑเบšโ€‹เบžเบฐโ€‹เบเบฒโ€‹เบเบญเบ™โ€‹เปƒเบ™ Kubernetes (เบžเบฒเบšโ€‹เบฅเบงเบกโ€‹เปเบฅเบฐโ€‹เบฅเบฒเบโ€‹เบ‡เบฒเบ™โ€‹เบงเบดโ€‹เบ”เบตโ€‹เป‚เบญโ€‹)

เบงเบดเบ—เบตเบเบฒเบ™เป€เบฎเบฑเบ”เปเบ™เบงเบ™เบตเป‰เบ—เบฒเบ‡เบ”เป‰เบฒเบ™เบงเบดเบŠเบฒเบเบฒเบ™ - เป€เบเบฑเบšเบเปเบฒ metrics, เปเบฅเบฐเบญเบทเปˆเบ™เป†. โ€” เบ‚เป‰เบฒโ€‹เบžเบฐโ€‹เป€เบˆเบปเป‰เบฒโ€‹เป„เบ”เป‰โ€‹เป€เบงเบปเป‰เบฒโ€‹เปƒเบ™โ€‹เบฅเบฒเบโ€‹เบฅเบฐโ€‹เบญเบฝเบ”โ€‹เปƒเบ™โ€‹เบฅเบฒเบโ€‹เบ‡เบฒเบ™โ€‹เบเปˆเบฝเบงโ€‹เบเบฑเบšโ€‹เบเบฒเบ™โ€‹ เบเบฒเบ™เบ•เบดเบ”เบ•เบฒเบกเปเบฅเบฐ Kubernetes. เปเบฅเบฐเบ„เปเบฒเปเบ™เบฐเบ™เปเบฒเบ•เบปเป‰เบ™เบ•เปเบชเปเบฒเบฅเบฑเบšเบเบฒเบ™เป€เบฅเบทเบญเบเบ•เบปเบงเบเปเบฒเบ™เบปเบ”เบเบฒเบ™เบ—เบตเปˆเบ”เบตเบ—เบตเปˆเบชเบธเบ”เปเบกเปˆเบ™ เบเบฒเบ™เบ—เบปเบ”เบฅเบญเบ‡!

เบกเบต เปƒเบŠเป‰เบงเบดเบ—เบตเบเบฒเบ™ (เบเบฒเบ™เปƒเบŠเป‰เบ„เบงเบฒเบกเบญเบตเปˆเบกเบ•เบปเบง เปเบฅเบฐเบ„เบงเบฒเบกเบœเบดเบ”เบžเบฒเบ”), เบ„เบงเบฒเบกโ€‹เบซเบกเบฒเบโ€‹เบ‚เบญเบ‡โ€‹เบ—เบตเปˆโ€‹เบกเบตโ€‹เบ”เบฑเปˆเบ‡โ€‹เบ•เปเปˆโ€‹เป„เบ›โ€‹เบ™เบตเป‰โ€‹. เบšเบปเบ™เบžเบทเป‰เบ™เบ–เบฒเบ™เบญเบฑเบ™เปƒเบ”เบ—เบตเปˆเบกเบฑเบ™เบกเบตเบ„เบงเบฒเบกเบซเบกเบฒเบเบ—เบตเปˆเบˆเบฐเบ‚เบฐเบซเบ™เบฒเบ”, เบ•เบปเบงเบขเปˆเบฒเบ‡, php-fpm? เบญเบตเบ‡เปƒเบชเปˆเบ„เบงเบฒเบกเบˆเบดเบ‡เบ—เบตเปˆเบงเปˆเบฒเบžเบฐเบ™เบฑเบเบ‡เบฒเบ™เบเปเบฒเบฅเบฑเบ‡เปเบฅเปˆเบ™เบญเบญเบ, เบ™เบตเป‰เปเบกเปˆเบ™ เบเบฒเบ™ เบ™เบณ เปƒเบŠเป‰. เปเบฅเบฐเบ–เป‰เบฒเบœเบนเป‰เบญเบญเบเปเบฎเบ‡เบ‡เบฒเบ™เบซเบกเบปเบ”เป„เบ›เปเบฅเบฐเบเบฒเบ™เป€เบŠเบทเปˆเบญเบกเบ•เปเปˆเปƒเบซเบกเปˆเบšเปเปˆเป„เบ”เป‰เบฎเบฑเบšเบเบฒเบ™เบเบญเบกเบฎเบฑเบš, เบ™เบตเป‰เปเบกเปˆเบ™เปเบฅเป‰เบง เบเบฒเบ™เบญเบตเปˆเบกเบ•เบปเบง. เบ—เบฑเบ‡เบชเบญเบ‡เบ•เบปเบงเบเปเบฒเบ™เบปเบ”เบเบฒเบ™เป€เบซเบผเบปเปˆเบฒเบ™เบตเป‰เบ•เป‰เบญเบ‡เป„เบ”เป‰เบฎเบฑเบšเบเบฒเบ™เบงเบฑเบ”เปเบ—เบ, เปเบฅเบฐเบ‚เบถเป‰เบ™เบเบฑเบšเบ„เปˆเบฒ, เบเบฒเบ™เบ›เบฑเบšเบ‚เบฐเบซเบ™เบฒเบ”เบ•เป‰เบญเบ‡เป„เบ”เป‰เบฎเบฑเบšเบเบฒเบ™เบ›เบฐเบ•เบดเบšเบฑเบ”.

เปเบ—เบ™เบ—เบตเปˆเบˆเบฐเป€เบ›เบฑเบ™เบเบฒเบ™เบชเบฐเบซเบฅเบธเบšเป„เบ”เป‰

เบšเบปเบ”เบฅเบฒเบเบ‡เบฒเบ™เบกเบตเบเบฒเบ™เบชเบทเบšเบ•เปเปˆ: เบเปˆเบฝเบงเบเบฑเบšเบเบฒเบ™เบ›เบฑเบšเบ‚เบฐเบซเบ™เบฒเบ”เบ•เบฒเบกเปเบ™เบงเบ•เบฑเป‰เบ‡เปเบฅเบฐเบงเบดเบ—เบตเบเบฒเบ™เป€เบฅเบทเบญเบเบŠเบฑเบšเบžเบฐเบเบฒเบเบญเบ™เบ—เบตเปˆเบ–เบทเบเบ•เป‰เบญเบ‡. เบ‚เป‰เบญเบเบˆเบฐเป€เบงเบปเป‰เบฒเบเปˆเบฝเบงเบเบฑเบšเป€เบฅเบทเปˆเบญเบ‡เบ™เบตเป‰เปƒเบ™เบงเบดเบ”เบตเป‚เบญเปƒเบ™เบญเบฐเบ™เบฒเบ„เบปเบ” YouTube เบ‚เบญเบ‡เบžเบงเบเป€เบฎเบปเบฒ - เบˆเบญเบ‡โ€‹เป€เบžเบทเปˆเบญโ€‹เบšเปเปˆโ€‹เปƒเบซเป‰โ€‹เบžเบฒเบ”โ€‹!

เบงเบดเบ”เบตเป‚เบญ เปเบฅเบฐเบชเบฐเป„เบฅเป‰

เบงเบดเบ”เบตเป‚เบญเบˆเบฒเบเบเบฒเบ™เบชเบฐเปเบ”เบ‡ (44 เบ™เบฒเบ—เบต):

เบเบฒเบ™โ€‹เบ™เปเบฒโ€‹เบชเบฐโ€‹เป€เบซเบ™เบตโ€‹เบšเบปเบ”โ€‹เบฅเบฒเบโ€‹เบ‡เบฒเบ™โ€‹:

PS

เบšเบปเบ”เบฅเบฒเบเบ‡เบฒเบ™เบญเบทเปˆเบ™เป†เบเปˆเบฝเบงเบเบฑเบš Kubernetes เปƒเบ™ blog เบ‚เบญเบ‡เบžเบงเบเป€เบฎเบปเบฒ:

เปเบซเบผเปˆเบ‡เบ‚เปเป‰เบกเบนเบ™: www.habr.com

เป€เบžเบตเปˆเบกเบ„เบงเบฒเบกเบ„เบดเบ”เป€เบซเบฑเบ™