เบซเป‰เบฒเบžเบฒเบ”เป€เบกเบทเปˆเบญเบ™เบณเปƒเบŠเป‰เปเบญเบฑเบšเบžเบฅเบดเป€เบ„เบŠเบฑเบ™เบ—เบณเบญเบดเบ”เปƒเบ™ Kubernetes

เบซเป‰เบฒเบžเบฒเบ”เป€เบกเบทเปˆเบญเบ™เบณเปƒเบŠเป‰เปเบญเบฑเบšเบžเบฅเบดเป€เบ„เบŠเบฑเบ™เบ—เบณเบญเบดเบ”เปƒเบ™ Kubernetesเบฅเบปเป‰เบกเป€เบซเบฅเบงเป‚เบ”เบ Aris-Dreamer

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

เบ—เบตเบกเบ‡เบฒเบ™ Mail.ru Cloud Solutions เปเบ›เบšเบปเบ”เบ„เบงเบฒเบกเป‚เบ”เบเบงเบดเบชเบฐเบงเบฐเบเบญเบ™ DevOps Julian Gindi. เบฅเบฒเบงเปเบšเปˆเบ‡เบ›เบฑเบ™เบชเบดเปˆเบ‡เบ—เบตเปˆเบ›เบฐเบชเบปเบšเบเบฑเบšเบšเบฑเบ™เบซเบฒเบ—เบตเปˆเบšเปเบฅเบดเบชเบฑเบ”เบฅเบฒเบงเบžเบปเบšเปƒเบ™เบฅเบฐเบซเบงเปˆเบฒเบ‡เบ‚เบฐเบšเบงเบ™เบเบฒเบ™เบเบฒเบ™เป€เบ„เบทเปˆเบญเบ™เบเป‰เบฒเบเป€เบžเบทเปˆเบญเบšเปเปˆเปƒเบซเป‰เป€เบˆเบปเป‰เบฒเบเป‰เบฒเบงเป„เบ›เบชเบนเปˆ rake เบ”เบฝเบงเบเบฑเบ™.

เบ‚เบฑเป‰เบ™เบ•เบญเบ™เบ—เบตเบซเบ™เบถเปˆเบ‡: เบเบฒเบ™เบ•เบฑเป‰เบ‡เบ„เปˆเบฒเบเบฒเบ™เบฎเป‰เบญเบ‡เบ‚เป Pod เปเบฅเบฐเบ‚เบญเบšเป€เบ‚เบ”เบˆเปเบฒเบเบฑเบ”

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

เบ„เบณเบฎเป‰เบญเบ‡เบ‚เป Pod - เบ™เบตเป‰เปเบกเปˆเบ™เบ„เปˆเบฒเบซเบผเบฑเบเบ—เบตเปˆเปƒเบŠเป‰เป‚เบ”เบเบœเบนเป‰เบเบณเบ™เบปเบ”เป€เบงเบฅเบฒเป€เบžเบทเปˆเบญเบงเบฒเบ‡เบเบฑเบเปƒเบซเป‰เบ”เบตเบ—เบตเปˆเบชเบธเบ”.

เบˆเบฒเบ เป€เบญเบเบฐเบชเบฒเบ™ Kubernetes: เบ‚เบฑเป‰เบ™เบ•เบญเบ™เบเบฒเบ™เบเบฑเปˆเบ™เบ•เบญเบ‡เบเปเบฒเบ™เบปเบ”เบŠเบธเบ”เบ‚เบญเบ‡ nodes เบšเปˆเบญเบ™เบ—เบตเปˆ pod เบชเบฒเบกเบฒเบ”เบเปเบฒเบ™เบปเบ”เป€เบงเบฅเบฒ. เบ•เบปเบงเบขเปˆเบฒเบ‡, เบ•เบปเบงเบเบญเบ‡ PodFitsResources เบเบงเบ”เป€เบšเบดเปˆเบ‡เบงเปˆเบฒ node เบกเบตเบŠเบฑเบšเบžเบฐเบเบฒเบเบญเบ™เบžเบฝเบ‡เบžเปเป€เบžเบทเปˆเบญเบ•เบญเบšเบชเบฐเปœเบญเบ‡เบเบฒเบ™เบฎเป‰เบญเบ‡เบ‚เปเบŠเบฑเบšเบžเบฐเบเบฒเบเบญเบ™เบชเบฐเป€เบžเบฒเบฐเบ‚เบญเบ‡ pod เบซเบผเบทเบšเปเปˆ.

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

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

เบ‚เบตเบ”เบˆเบณเบเบฑเบ” Pod - เบ™เบตเป‰เปเบกเปˆเบ™เบ‚เบญเบšเป€เบ‚เบ”เบˆเปเบฒเบเบฑเบ”เบ—เบตเปˆเบŠเบฑเบ”เป€เบˆเบ™เบเบงเปˆเบฒเบชเปเบฒเบฅเบฑเบšเบเบฑเบ. เบกเบฑเบ™เบชเบฐเปเบ”เบ‡เป€เบ–เบดเบ‡เบ›เบฐเบฅเบดเบกเบฒเบ™เบชเบนเบ‡เบชเบธเบ”เบ‚เบญเบ‡เบŠเบฑเบšเบžเบฐเบเบฒเบเบญเบ™เบ—เบตเปˆเบเบธเปˆเบกเบˆเบฐเบˆเบฑเบ”เบชเบฑเบ™เปƒเบซเป‰เบเบฑเบšเบšเบฑเบ™เบˆเบธ.

เบญเบตเบเป€เบ—เบทเปˆเบญเบซเบ™เบถเปˆเบ‡, เบˆเบฒเบ เป€เบญเบเบฐเบชเบฒเบ™เบ—เบฒเบ‡เบเบฒเบ™: เบ–เป‰เบฒเบšเบฑเบ™เบˆเบธเบกเบตเบเปเบฒเบ™เบปเบ”เบ‚เบญเบšเป€เบ‚เบ”เบˆเปเบฒเบเบฑเบ”เบซเบ™เปˆเบงเบเบ„เบงเบฒเบกเบˆเปเบฒ 4 GiB, kubelet (เปเบฅเบฐเป€เบงเบฅเบฒเปเบฅเปˆเบ™ container) เบˆเบฐเบšเบฑเบ‡เบ„เบฑเบšเบกเบฑเบ™. เป€เบงเบฅเบฒเปเบฅเปˆเบ™เบšเปเปˆเบญเบฐเบ™เบธเบเบฒเบ”เปƒเบซเป‰เบžเบฒเบŠเบฐเบ™เบฐเปƒเบŠเป‰เป€เบเบตเบ™เบ‚เบตเบ”เบˆเบณเบเบฑเบ”เบŠเบฑเบšเบžเบฐเบเบฒเบเบญเบ™เบ—เบตเปˆเบเบณเบ™เบปเบ”เป„เบงเป‰. เบ•เบปเบงเบขเปˆเบฒเบ‡เป€เบŠเบฑเปˆเบ™, เป€เบกเบทเปˆเบญเบ‚เบฐเบšเบงเบ™เบเบฒเบ™เปƒเบ™เบšเบฑเบ™เบˆเบธเบžเบฐเบเบฒเบเบฒเบกเปƒเบŠเป‰เบซเบผเบฒเบเบเปˆเบงเบฒเบˆเปเบฒเบ™เบงเบ™เบซเบ™เปˆเบงเบเบ„เบงเบฒเบกเบˆเปเบฒเบ—เบตเปˆเบญเบฐเบ™เบธเบเบฒเบ”เปƒเบซเป‰, kernel เบฅเบฐเบšเบปเบšเบˆเบฐเบขเบธเบ”เบ‚เบฐเบšเบงเบ™เบเบฒเบ™เบ”เป‰เบงเบเบ„เบงเบฒเบกเบœเบดเบ”เบžเบฒเบ” "out of memory" (OOM).

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

เป‚เบ”เบเบซเบฅเบฑเบเบเบฒเบ™เปเบฅเป‰เบง, เบžเบงเบเป€เบฎเบปเบฒเบ•เป‰เบญเบ‡เบเบฒเบ™เบ„เบงเบฒเบกเบ•เป‰เบญเบ‡เบเบฒเบ™เบŠเบฑเบšเบžเบฐเบเบฒเบเบญเบ™เบ‚เบญเบ‡เบเบฑเบเป€เบžเบทเปˆเบญเบ›เปˆเบฝเบ™เปเบ›เบ‡เบ•เบฐเบซเบผเบญเบ”เบŠเบตเบงเบดเบ”เบ‚เบญเบ‡เบ‚เบฐเบšเบงเบ™เบเบฒเบ™เป‚เบ”เบเบšเปเปˆเปเบŠเบเปเบŠเบ‡เบ‚เบฐเบšเบงเบ™เบเบฒเบ™เบญเบทเปˆเบ™เป†เปƒเบ™เบฅเบฐเบšเบปเบš - เบ™เบฑเป‰เบ™เปเบกเปˆเบ™เป€เบ›เบปเป‰เบฒเบซเบกเบฒเบเบ‚เบญเบ‡เบเบฒเบ™เบเปเบฒเบ™เบปเบ”เบ‚เบญเบšเป€เบ‚เบ”เบˆเปเบฒเบเบฑเบ”.

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

  1. เบเบฒเบ™เบ™เปเบฒเปƒเบŠเป‰เป€เบ„เบทเปˆเบญเบ‡เบกเบทเบเบฒเบ™เบ—เบปเบ”เบชเบญเบšเบเบฒเบ™เป‚เบซเบผเบ”, เบžเบงเบเป€เบฎเบปเบฒเบˆเปเบฒเบฅเบญเบ‡เบฅเบฐเบ”เบฑเบšเบžเบทเป‰เบ™เบ–เบฒเบ™เบ‚เบญเบ‡เบเบฒเบ™เบˆเบฐเบฅเบฒเบˆเบญเบ™เปเบฅเบฐเบ•เบดเบ”เบ•เบฒเบกเบเบฒเบ™เบ™เปเบฒเปƒเบŠเป‰เบŠเบฑเบšเบžเบฐเบเบฒเบเบญเบ™เบเบฑเบ (เบซเบ™เปˆเบงเบเบ„เบงเบฒเบกเบˆเปเบฒเปเบฅเบฐเป‚เบ›เป€เบŠเบ”เป€เบŠเบต).
  2. เบžเบงเบเป€เบฎเบปเบฒเบเปเบฒเบ™เบปเบ”เบเบฒเบ™เบฎเป‰เบญเบ‡เบ‚เป pod เป€เบ›เบฑเบ™เบกเบนเบ™เบ„เปˆเบฒเบ•เปˆเปเบฒ arbitrarily (เบกเบตเบ‚เบญเบšเป€เบ‚เบ”เบˆเปเบฒเบเบฑเบ”เบ‚เบญเบ‡เบŠเบฑเบšเบžเบฐเบเบฒเบเบญเบ™เบ›เบฐเบกเบฒเบ™ 5 เป€เบ—เบปเปˆเบฒเบ‚เบญเบ‡เบกเบนเบ™เบ„เปˆเบฒเบเบฒเบ™เบฎเป‰เบญเบ‡เบ‚เป) เปเบฅเบฐเบชเบฑเบ‡เป€เบเบ”เป€เบซเบฑเบ™. เป€เบกเบทเปˆเบญเบเบฒเบ™เบฎเป‰เบญเบ‡เบ‚เปเบ•เปเปˆเบฒเป€เบเบตเบ™เป„เบ›, เบ‚เบฐเบšเบงเบ™เบเบฒเบ™เบšเปเปˆเบชเบฒเบกเบฒเบ”เป€เบฅเบตเปˆเบกเบ•เบปเป‰เบ™เป„เบ”เป‰, เบกเบฑเบเบˆเบฐเป€เบฎเบฑเบ”เปƒเบซเป‰เป€เบเบตเบ”เบ„เบงเบฒเบกเบœเบดเบ”เบžเบฒเบ”เบ‚เบญเบ‡ Go runtime เบ—เบตเปˆเบฅเบถเบเบฅเบฑเบš.

เปƒเบซเป‰เบชเบฑเบ‡เป€เบเบ”เบงเปˆเบฒเบเบฒเบ™เบˆเปเบฒเบเบฑเบ”เบŠเบฑเบšเบžเบฐเบเบฒเบเบญเบ™เบ—เบตเปˆเบชเบนเบ‡เบ‚เบถเป‰เบ™เป€เบฎเบฑเบ”เปƒเบซเป‰เบเบฒเบ™เบเปเบฒเบ™เบปเบ”เป€เบงเบฅเบฒเบกเบตเบ„เบงเบฒเบกเบซเบเบธเป‰เบ‡เบเบฒเบเบซเบผเบฒเบเป€เบžเบฒเบฐเบงเปˆเบฒ pod เบ•เป‰เบญเบ‡เบเบฒเบ™ node เป€เบ›เบปเป‰เบฒเบซเบกเบฒเบเบ—เบตเปˆเบกเบตเบŠเบฑเบšเบžเบฐเบเบฒเบเบญเบ™เบžเบฝเบ‡เบžเป.

เบˆเบดเบ™เบ•เบฐเบ™เบฒเบเบฒเบ™เบชเบฐเบ–เบฒเบ™เบฐเบเบฒเบ™เบ—เบตเปˆเบ—เปˆเบฒเบ™เบกเบตเป€เบ„เบทเปˆเบญเบ‡เปเบกเปˆเบ‚เปˆเบฒเบเป€เบงเบฑเบšเป„เบŠเบ•เปŒเบ—เบตเปˆเบกเบตเบ™เป‰เปเบฒเบซเบ™เบฑเบเป€เบšเบปเบฒเบ—เบตเปˆเบกเบตเบ‚เบญเบšเป€เบ‚เบ”เบˆเปเบฒเบเบฑเบ”เบ‚เบญเบ‡เบŠเบฑเบšเบžเบฐเบเบฒเบเบญเบ™เบชเบนเบ‡, เป€เบงเบปเป‰เบฒเบงเปˆเบฒ 4 GB เบ‚เบญเบ‡เบซเบ™เปˆเบงเบเบ„เบงเบฒเบกเบˆเปเบฒ. เบ‚เบฐเบšเบงเบ™เบเบฒเบ™เบ™เบตเป‰เบญเบฒเบ”เบˆเบฐเบ•เป‰เบญเบ‡เบ›เบฑเบšเบ‚เบฐเบซเบ™เบฒเบ”เบ•เบฒเบกเปเบ™เบงเบ™เบญเบ™, เปเบฅเบฐเปเบ•เปˆเบฅเบฐเป‚เบกเบ”เบนเบ™เปƒเบซเบกเปˆเบˆเบฐเบ•เป‰เบญเบ‡เบ–เบทเบเบเปเบฒเบ™เบปเบ”เป„เบงเป‰เปƒเบ™ node เบ—เบตเปˆเบกเบตเบซเบ™เปˆเบงเบเบ„เบงเบฒเบกเบˆเปเบฒเบขเปˆเบฒเบ‡เบซเบ™เป‰เบญเบ 4 GB. เบ–เป‰เบฒเบšเปเปˆเบกเบต node เบ”เบฑเปˆเบ‡เบเปˆเบฒเบง, cluster เบ•เป‰เบญเบ‡เปเบ™เบฐเบ™เบณ node เปƒเปเปˆเป€เบžเบทเปˆเบญเบ›เบฐเบกเบงเบ™เบœเบปเบ™ pod เบ™เบฑเป‰เบ™, เป€เบŠเบดเปˆเบ‡เบญเบฒเบ”เบˆเบฐเปƒเบŠเป‰เป€เบงเบฅเบฒเป„เบฅเบเบฐเปœเบถเปˆเบ‡. เบกเบฑเบ™เป€เบ›เบฑเบ™เบชเบดเปˆเบ‡เบชเปเบฒเบ„เบฑเบ™เบ—เบตเปˆเบˆเบฐเบฎเบฑเบเบชเบฒเบ„เบงเบฒเบกเปเบ•เบเบ•เปˆเบฒเบ‡เบฅเบฐเบซเบงเปˆเบฒเบ‡เบเบฒเบ™เบฎเป‰เบญเบ‡เบ‚เปเบŠเบฑเบšเบžเบฐเบเบฒเบเบญเบ™เปเบฅเบฐเบ‚เบญเบšเป€เบ‚เบ”เบˆเปเบฒเบเบฑเบ”เบซเบ™เป‰เบญเบเบ—เบตเปˆเบชเบธเบ”เป€เบžเบทเปˆเบญเบฎเบฑเบšเบ›เบฐเบเบฑเบ™เบเบฒเบ™เบ›เบฑเบšเบ‚เบฐเบซเบ™เบฒเบ”เป„เบงเปเบฅเบฐเบฅเบฝเบšเบ‡เปˆเบฒเบ.

เบ‚เบฑเป‰เบ™โ€‹เบ•เบญเบ™โ€‹เบ—เบตโ€‹เบชเบญเบ‡โ€‹: เบเบฒเบ™โ€‹เบ•เบฑเป‰เบ‡โ€‹เบ„เปˆเบฒโ€‹เบเบฒเบ™โ€‹เบ—เบปเบ”โ€‹เบชเบญเบšโ€‹เบเบฒเบ™โ€‹เบกเบตโ€‹เบŠเบตโ€‹เบงเบดเบ”โ€‹เปเบฅเบฐโ€‹เบ„เบงเบฒเบกโ€‹เบžเป‰เบญเบกโ€‹

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

เบŠเบตเบงเบดเบ”เบเบฒเบ™เป€เบ›เบฑเบ™เบขเบนเปˆ เบชเบฐเปเบ”เบ‡เปƒเบซเป‰เป€เบซเบฑเบ™เบงเปˆเบฒเบ–เบฑเบ‡เบเปเบฒเบฅเบฑเบ‡เปเบฅเปˆเบ™เบซเบผเบทเบšเปเปˆ. เบ–เป‰เบฒเบกเบฑเบ™เบฅเบปเป‰เบกเป€เบซเบฅเบง, kubelet เบˆเบฐเบ‚เป‰เบฒเบ•เบนเป‰เบ„เบญเบ™เป€เบ—เบ™เป€เบ™เบตเปเบฅเบฐเบ™เบฐเป‚เบเบšเบฒเบเบเบฒเบ™เบ›เบดเบ”เป€เบ›เบตเบ”เปƒเบซเบกเปˆเบชเปเบฒเบฅเบฑเบšเบกเบฑเบ™. เบ–เป‰เบฒเบ•เบนเป‰เบ„เบญเบ™เป€เบ—เบ™เป€เบ™เบตเบšเปเปˆเบกเบตเบญเบธเบ›เบฐเบเบญเบ™เบเบฒเบ™เบชเบทเบšเบชเบงเบ™ Liveness, เบซเบผเบฑเบ‡เบˆเบฒเบเบ™เบฑเป‰เบ™เบชเบฐเบ–เบฒเบ™เบฐเป€เบฅเบตเปˆเบกเบ•เบปเป‰เบ™เบˆเบฐเบ›เบฐเบชเบปเบšเบœเบปเบ™เบชเปเบฒเป€เบฅเบฑเบ” - เบ™เบตเป‰เปเบกเปˆเบ™เบชเบดเปˆเบ‡เบ—เบตเปˆเบกเบฑเบ™เป€เบงเบปเป‰เบฒเปƒเบ™ เป€เบญเบเบฐเบชเบฒเบ™ Kubernetes.

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

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

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

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

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

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

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

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

SELECT small_item FROM table LIMIT 1

เบ™เบตเป‰เปเบกเปˆเบ™เบ•เบปเบงเบขเปˆเบฒเบ‡เบ‚เบญเบ‡เบงเบดเบ—เบตเบ—เบตเปˆเบžเบงเบเป€เบฎเบปเบฒเบ•เบฑเป‰เบ‡เบ„เปˆเบฒเบชเบญเบ‡เบ„เปˆเบฒเบ™เบตเป‰เปƒเบ™ Kubernetes:

livenessProbe: 
 httpGet:   
   path: /api/liveness    
   port: http 
readinessProbe:  
 httpGet:    
   path: /api/readiness    
   port: http  periodSeconds: 2

เบ—เปˆเบฒเบ™เบชเบฒเบกเบฒเบ”เป€เบžเบตเปˆเบกเบšเบฒเบ‡เบ—เบฒเบ‡เป€เบฅเบทเบญเบเปƒเบ™เบเบฒเบ™เบ•เบฑเป‰เบ‡เบ„เปˆเบฒเป€เบžเบตเปˆเบกเป€เบ•เบตเบก:

  • initialDelaySeconds โ€” เป€เบงเบฅเบฒเป€เบ—เบปเปˆเบฒเปƒเบ”เบงเบดเบ™เบฒเบ—เบตเบˆเบฐเบœเปˆเบฒเบ™เบฅเบฐเบซเบงเปˆเบฒเบ‡เบเบฒเบ™เป€เบ›เบตเบ”เบ•เบปเบงเบ‚เบญเบ‡เบšเบฑเบ™เบˆเบธเปเบฅเบฐเบเบฒเบ™เป€เบฅเบตเปˆเบกเบ•เบปเป‰เบ™เบ‚เบญเบ‡เบ•เบปเบงเบขเปˆเบฒเบ‡.
  • periodSeconds โ€” เป„เบฅเบเบฐเบฅเปเบ–เป‰เบฒเบฅเบฐเบซเบงเปˆเบฒเบ‡เบเบฒเบ™เปเบฅเปˆเบ™เบ•เบปเบงเบขเปˆเบฒเบ‡.
  • timeoutSeconds โ€” เบˆเปเบฒโ€‹เบ™เบงเบ™โ€‹เบงเบดโ€‹เบ™เบฒโ€‹เบ—เบตโ€‹เบซเบผเบฑเบ‡โ€‹เบˆเบฒเบโ€‹เบ™เบฑเป‰เบ™โ€‹เบซเบ™เปˆเบงเบโ€‹เบšเปโ€‹เบฅเบดโ€‹เบเบฒเบ™โ€‹เป„เบ”เป‰โ€‹เบฎเบฑเบšโ€‹เบเบฒเบ™โ€‹เบžเบดโ€‹เบˆเบฒโ€‹เบฅเบฐโ€‹เบ™เบฒโ€‹เบชเบธเบโ€‹เป€เบชเบตเบ™โ€‹. เปเบปเบ”เป€เบงเบฅเบฒเบ›เบปเบเบเบฐเบ•เบด.
  • failureThreshold โ€” เบˆเปเบฒโ€‹เบ™เบงเบ™โ€‹เบ‚เบญเบ‡โ€‹เบ„เบงเบฒเบกโ€‹เบฅเบปเป‰เบกโ€‹เป€เบซเบผเบงโ€‹เบ‚เบญเบ‡โ€‹เบเบฒเบ™โ€‹เบ—เบปเบ”โ€‹เบชเบญเบšโ€‹เบเปˆเบญเบ™โ€‹เบ—เบตเปˆโ€‹เบˆเบฐโ€‹เบกเบตโ€‹เบชเบฑเบ™โ€‹เบเบฒเบ™โ€‹เป€เบฅเบตเปˆเบกโ€‹เบ•เบปเป‰เบ™โ€‹เปƒเบซเบกเปˆโ€‹เบˆเบฐโ€‹เบ–เบทเบโ€‹เบชเบปเปˆเบ‡โ€‹เป„เบ›โ€‹เบซเบฒโ€‹เบเบฑเบโ€‹.
  • successThreshold โ€” เบˆเปเบฒโ€‹เบ™เบงเบ™โ€‹เบ‚เบญเบ‡ probes เบชเบปเบšโ€‹เบœเบปเบ™โ€‹เบชเปเบฒโ€‹เป€เบฅเบฑเบ”โ€‹เบเปˆเบญเบ™โ€‹เบ—เบตเปˆโ€‹เบเบฑเบโ€‹เบˆเบฐโ€‹เป€เบ‚เบปเป‰เบฒโ€‹เป„เบ›โ€‹เปƒเบ™โ€‹เบชเบฐโ€‹เบžเบฒเบšโ€‹เบเบฝเบกโ€‹เบžเป‰เบญเบก (เบซเบผเบฑเบ‡โ€‹เบˆเบฒเบโ€‹เบ„เบงเบฒเบกโ€‹เบฅเบปเป‰เบกโ€‹เป€เบซเบผเบงโ€‹, เป€เบกเบทเปˆเบญโ€‹เบเบฑเบโ€‹เป€เบฅเบตเปˆเบกโ€‹เบ•เบปเป‰เบ™โ€‹เบซเบผเบทโ€‹เบŸเบทเป‰เบ™โ€‹เบ•เบปเบงโ€‹)โ€‹.

เบ‚เบฑเป‰เบ™โ€‹เบ•เบญเบ™โ€‹เบ—เบตโ€‹เบชเบฒเบกโ€‹: เบเบฒเบ™โ€‹เบ•เบฑเป‰เบ‡โ€‹เบ„เปˆเบฒโ€‹เบ™เบฐโ€‹เป‚เบโ€‹เบšเบฒเบโ€‹เป€เบ„เบทเบญโ€‹เบ‚เปˆเบฒเบโ€‹เป€เบฅเบตเปˆเบกโ€‹เบ•เบปเป‰เบ™โ€‹เบชเปเบฒโ€‹เบฅเบฑเบš pod เป„เบ”เป‰โ€‹

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

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

เบ•เบปเบงเบขเปˆเบฒเบ‡, เบ‚เป‰เบฒเบ‡เบฅเบธเปˆเบกเบ™เบตเป‰เปเบกเปˆเบ™เบ™เบฐเป‚เบเบšเบฒเบเบ—เบตเปˆเบ‡เปˆเบฒเบเบ”เบฒเบเบ—เบตเปˆเบ›เบฐเบ•เบดเป€เบชเบ”เบเบฒเบ™เบˆเบฐเบฅเบฒเบˆเบญเบ™เบ‚เบฒเป€เบ‚เบปเป‰เบฒเบ—เบฑเบ‡เบซเบกเบปเบ”เบชเปเบฒเบฅเบฑเบš namespace เบชเบฐเป€เบžเบฒเบฐ:

---
apiVersion: networking.k8s.io/v1
kind: NetworkPolicy
metadata:  
 name: default-deny-ingress
spec:  
 podSelector: {}  
 policyTypes:  
   - Ingress

เบเบฒเบ™เบชเบฐเปเบ”เบ‡เบžเบฒเบšเบ‚เบญเบ‡เบเบฒเบ™เบ•เบฑเป‰เบ‡เบ„เปˆเบฒเบ™เบตเป‰:

เบซเป‰เบฒเบžเบฒเบ”เป€เบกเบทเปˆเบญเบ™เบณเปƒเบŠเป‰เปเบญเบฑเบšเบžเบฅเบดเป€เบ„เบŠเบฑเบ™เบ—เบณเบญเบดเบ”เปƒเบ™ Kubernetes
(https://miro.medium.com/max/875/1*-eiVw43azgzYzyN1th7cZg.gif)
เบฅเบฒเบเบฅเบฐเบญเบฝเบ”เป€เบžเบตเปˆเบกเป€เบ•เบตเบก เบ—เบตเปˆเบ™เบตเป‰.

เบ‚เบฑเป‰เบ™เบ•เบญเบ™เบ—เบตเบชเบตเปˆ: เบžเบถเบ”เบ•เบดเบเปเบฒเบ—เบตเปˆเบเปเบฒเบซเบ™เบปเบ”เป€เบญเบ‡เป‚เบ”เบเปƒเบŠเป‰ hooks เปเบฅเบฐ init containers

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

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

เบซเบผเบฑเบ‡เบˆเบฒเบเบเบฒเบ™เบ„เบปเป‰เบ™เบ„เบงเป‰เบฒเบญเบญเบ™เป„เบฅเบ™เปŒเบขเปˆเบฒเบ‡เบเบงเป‰เบฒเบ‡เบ‚เบงเบฒเบ‡, เบกเบฑเบ™เบ›เบฒเบเบปเบ”เบงเปˆเบฒ Kubernetes เบšเปเปˆเป„เบ”เป‰เบฅเปเบ–เป‰เบฒเบเบฒเบ™เป€เบŠเบทเปˆเบญเบกเบ•เปเปˆ Nginx เบ—เบตเปˆเบˆเบฐเบซเบกเบปเบ”เป„เบ›เบเปˆเบญเบ™เบ—เบตเปˆเบˆเบฐเบขเบธเบ”เบเบฒเบ™เบเบฑเบ. เบเบฒเบ™เบ™เปเบฒเปƒเบŠเป‰ hook เบเปˆเบญเบ™เบเบฒเบ™เบขเบธเบ”, เบžเบงเบเป€เบฎเบปเบฒเป„เบ”เป‰เบ›เบฐเบ•เบดเบšเบฑเบ”เบซเบ™เป‰เบฒเบ—เบตเปˆเบ”เบฑเปˆเบ‡เบ•เปเปˆเป„เบ›เบ™เบตเป‰เปเบฅเบฐเป„เบ”เป‰เบฎเบฑเบšเบเบฒเบ™เบเปเบฒเบˆเบฑเบ”เบ‚เบญเบ‡ downtime เบขเปˆเบฒเบ‡เบชเบปเบกเบšเบนเบ™:

lifecycle: 
 preStop:
   exec:
     command: ["/usr/local/bin/nginx-killer.sh"]

เปเบ•เปˆเบงเปˆเบฒ nginx-killer.sh:

#!/bin/bash
sleep 3
PID=$(cat /run/nginx.pid)
nginx -s quit
while [ -d /proc/$PID ]; do
   echo "Waiting while shutting down nginx..."
   sleep 10
done

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

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

เบ•เบฒเบกเบ›เบปเบเบเบฐเบ•เบด, เบญเป‰เบฒเบ‡เบญเบตเบ‡เบˆเบฒเบเป€เบญเบเบฐเบชเบฒเบ™: init containers เปเบฅเปˆเบ™เบฅเบฐเบซเบฑเบ”เปเบšเบšเบเบณเบ™เบปเบ”เป€เบญเบ‡ เบซเบผเบท utilities เบขเปˆเบฒเบ‡เบ›เบญเบ”เป„เบžเป€เบŠเบดเปˆเบ‡เบญเบฒเบ”เบˆเบฐเป€เบฎเบฑเบ”เปƒเบซเป‰เบ„เบงเบฒเบกเบ›เบญเบ”เป„เบžเบ‚เบญเบ‡เบฎเบนเบš container เบ‚เบญเบ‡เปเบญเบฑเบšเบžเบฅเบดเป€เบ„เบŠเบฑเบ™เบซเบผเบธเบ”เบฅเบปเบ‡. เป‚เบ”เบเบเบฒเบ™เบฎเบฑเบเบชเบฒเป€เบ„เบทเปˆเบญเบ‡เบกเบทเบ—เบตเปˆเบšเปเปˆเบˆเปเบฒเป€เบ›เบฑเบ™เปเบเบเบ•เปˆเบฒเบ‡เบซเบฒเบ, เบ—เปˆเบฒเบ™เบˆเปเบฒเบเบฑเบ”เบซเบ™เป‰เบฒเบเบฒเบ™เป‚เบˆเบกเบ•เบตเบ‚เบญเบ‡เบฎเบนเบšเบžเบฒเบšเบšเบฑเบ™เบˆเบธเบ„เปเบฒเบฎเป‰เบญเบ‡เบชเบฐเบซเบกเบฑเบ.

เบ‚เบฑเป‰เบ™เบ•เบญเบ™เบ—เบตเบซเป‰เบฒ: เบเบฒเบ™เบ•เบฑเป‰เบ‡เบ„เปˆเบฒ Kernel

เบชเบธเบ”เบ—เป‰เบฒเบ, เปƒเบซเป‰เป€เบงเบปเป‰เบฒเบเปˆเบฝเบงเบเบฑเบšเป€เบ•เบฑเบเบ™เบดเบเบ—เบตเปˆเบเป‰เบฒเบงเบซเบ™เป‰เบฒเบเบงเปˆเบฒ.

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

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

initContainers:
  - name: sysctl
     image: alpine:3.10
     securityContext:
         privileged: true
      command: ['sh', '-c', "sysctl -w net.core.somaxconn=32768"]

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

เปƒเบ™เบเบฒเบ™เบชเบฐเบซเบฅเบธเบš

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

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

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

เบ–เบฒเบกเบ•เบปเบงเป€เบญเบ‡เบ—เบธเบเบ„เบณเบ–เบฒเบกเป€เบซเบผเบปเปˆเบฒเบ™เบตเป‰:

  1. เปเบญเบฑเบšเบžเบฅเบดเป€เบ„เบŠเบฑเบ™เปƒเบŠเป‰เบŠเบฑเบšเบžเบฐเบเบฒเบเบญเบ™เบซเบผเบฒเบเบ›เบฒเบ™เปƒเบ” เปเบฅเบฐเบ›เบฐเบฅเบดเบกเบฒเบ™เบ™เบตเป‰เบˆเบฐเบ›เปˆเบฝเบ™เปเบ›เบ‡เปเบ™เบงเปƒเบ”?
  2. เบ„เบงเบฒเบกเบ•เป‰เบญเบ‡เบเบฒเบ™เบ‚เบฐเบซเบ™เบฒเบ”เบ—เบตเปˆเปเบ—เป‰เบˆเบดเบ‡เปเบกเปˆเบ™เบซเบเบฑเบ‡? เปเบญเบฑเบšเบฏเบˆเบฐเบˆเบฑเบ”เบเบฒเบ™เบเบฑเบšเบเบฒเบ™เบˆเบฐเบฅเบฒเบˆเบญเบ™เป‚เบ”เบเบชเบฐเป€เบฅเปˆเบเป€เบ—เบปเปˆเบฒเปƒเบ”? เบˆเบฐเป€เบ›เบฑเบ™เปเบ™เบงเปƒเบ”เบเปˆเบฝเบงเบเบฑเบšเบเบฒเบ™เบˆเบฐเบฅเบฒเบˆเบญเบ™เบชเบนเบ‡เบชเบธเบ”?
  3. เบเบฒเบ™เบšเปเบฅเบดเบเบฒเบ™เบˆเบฐเบ•เป‰เบญเบ‡เบ›เบฑเบšเบ‚เบฐเปœเบฒเบ”เปเบ™เบงเบ™เบญเบ™เบซเบผเบฒเบเบ›เบฒเบ™เปƒเบ”? เบเบฑเบเปƒเบซเบกเปˆเบˆเปเบฒเป€เบ›เบฑเบ™เบ•เป‰เบญเบ‡เบ–เบทเบเบ™เปเบฒเบกเบฒเบ—เบฒเบ‡เบญเบดเบ™เป€เบ•เบตเป€เบ™เบฑเบ”เป„เบงเป€เบ—เบปเปˆเบฒเปƒเบ”เป€เบžเบทเปˆเบญเบฎเบฑเบšเบเบฒเบ™เบˆเบฐเบฅเบฒเบˆเบญเบ™?
  4. เบเบฑเบเบ›เบดเบ”เบขเปˆเบฒเบ‡เบ–เบทเบเบ•เป‰เบญเบ‡เปเบ™เบงเปƒเบ”? เบ™เบตเป‰เป€เบ›เบฑเบ™เบชเบดเปˆเบ‡เบˆเปเบฒเป€เบ›เบฑเบ™เบ—เบฑเบ‡เบซเบกเบปเบ”เบšเป? เบกเบฑเบ™เป€เบ›เบฑเบ™เป„เบ›เป„เบ”เป‰เบ—เบตเปˆเบˆเบฐเบšเบฑเบ™เบฅเบธเบเบฒเบ™เบ›เบฐเบ•เบดเบšเบฑเบ”เป‚เบ”เบเบšเปเปˆเบกเบตเบเบฒเบ™ downtime?
  5. เบ—เปˆเบฒเบ™เบชเบฒเบกเบฒเบ”เบซเบผเบธเบ”เบœเปˆเบญเบ™เบ„เบงเบฒเบกเบชเปˆเบฝเบ‡เบ”เป‰เบฒเบ™เบ„เบงเบฒเบกเบ›เบญเบ”เป„เบžเปเบฅเบฐเบˆเปเบฒเบเบฑเบ”เบ„เบงเบฒเบกเป€เบชเบเบซเบฒเบเบˆเบฒเบเบเบฑเบเบ—เบตเปˆเบ–เบทเบเบ—เปเบฒเบฅเบฒเบเปเบ™เบงเปƒเบ”? เบšเปเบฅเบดเบเบฒเบ™เปƒเบ”เบกเบตเบเบฒเบ™เบญเบฐเบ™เบธเบเบฒเบ” เบซเบผเบทเบเบฒเบ™เป€เบ‚เบปเป‰เบฒเป€เบ–เบดเบ‡เบ—เบตเปˆเป€เบ‚เบปเบฒเป€เบˆเบปเป‰เบฒเบšเปเปˆเบ•เป‰เบญเบ‡เบเบฒเบ™เบšเป?

Kubernetes เบชเบฐเปœเบญเบ‡เปเบžเบฅเบ”เบŸเบญเบกเบ—เบตเปˆเบšเปเปˆเปœเป‰เบฒเป€เบŠเบทเปˆเบญเบ—เบตเปˆเบญเบฐเบ™เบธเบเบฒเบ”เปƒเบซเป‰เบ—เปˆเบฒเบ™เบชเบฒเบกเบฒเบ”เบ™เบณเปƒเบŠเป‰เบเบฒเบ™เบ›เบฐเบ•เบดเบšเบฑเบ”เบ—เบตเปˆเบ”เบตเบ—เบตเปˆเบชเบธเบ”เป€เบžเบทเปˆเบญเบ™เบณเปƒเบŠเป‰เบšเปเบฅเบดเบเบฒเบ™เบ™เบฑเบšเบžเบฑเบ™เปƒเบ™เบเบธเปˆเบก. เบขเปˆเบฒเบ‡เปƒเบ”เบเปเบ•เบฒเบก, เบ—เบธเบเป†เบ„เปเบฒเบฎเป‰เบญเบ‡เบชเบฐเบซเบกเบฑเบเปเบกเปˆเบ™เปเบ•เบเบ•เปˆเบฒเบ‡เบเบฑเบ™. เบšเบฒเบ‡เบ„เบฑเป‰เบ‡เบเบฒเบ™เบˆเบฑเบ”เบ•เบฑเป‰เบ‡เบ›เบฐเบ•เบดเบšเบฑเบ”เบ•เป‰เบญเบ‡เบเบฒเบ™เบงเบฝเบเบซเบผเบฒเบเปœเป‰เบญเบเปœเบถเปˆเบ‡.

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

เบกเบตเบซเบเบฑเบ‡เบญเบตเบเปเบ”เปˆเบ—เบตเปˆเบˆเบฐเบญเปˆเบฒเบ™:

  1. เบเบฒเบ™เบ›เบฐเบ•เบดเบšเบฑเบ”เบ—เบตเปˆเบ”เบตเบ—เบตเปˆเบชเบธเบ”เปเบฅเบฐเบเบฒเบ™เบ›เบฐเบ•เบดเบšเบฑเบ”เบ—เบตเปˆเบ”เบตเบ—เบตเปˆเบชเบธเบ”เบชเปเบฒเบฅเบฑเบšเบเบฒเบ™เปเบฅเปˆเบ™เบ•เบนเป‰เบ„เบญเบ™เป€เบ—เบ™เป€เบ™เบตเปเบฅเบฐ Kubernetes เปƒเบ™เบชเบฐเบžเบฒเบšเปเบงเบ”เบฅเป‰เบญเบกเบเบฒเบ™เบœเบฐเบฅเบดเบ”.
  2. 90+ เป€เบ„เบทเปˆเบญเบ‡เบกเบทเบ—เบตเปˆเป€เบ›เบฑเบ™เบ›เบฐเป‚เบซเบเบ”เบชเปเบฒเบฅเบฑเบš Kubernetes: เบเบฒเบ™เบ™เบณเปƒเบŠเป‰, เบเบฒเบ™เบˆเบฑเบ”เบเบฒเบ™, เบเบฒเบ™เบ•เบดเบ”เบ•เบฒเบก, เบ„เบงเบฒเบกเบ›เบญเบ”เป„เบž เปเบฅเบฐเบญเบทเปˆเบ™เป†เบญเบตเบ.
  3. เบŠเปˆเบญเบ‡เบ‚เบญเบ‡เบžเบงเบเป€เบฎเบปเบฒเบ›เบฐเบกเบฒเบ™ Kubernetes เปƒเบ™ Telegram.

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

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