เชจเชต เช•เซเชฌเชฐเชจเซ‡เชŸเซเชธ เชชเซเชฐเชฆเชฐเซเชถเชจ เชŸเชฟเชชเซเชธ

เชจเชต เช•เซเชฌเชฐเชจเซ‡เชŸเซเชธ เชชเซเชฐเชฆเชฐเซเชถเชจ เชŸเชฟเชชเซเชธ

เช•เซ‡เชฎ เช›เซ‹ เชฌเชงเชพ! เชฎเชพเชฐเซเช‚ เชจเชพเชฎ เช“เชฒเซ‡เช— เชธเชฟเชกเซ‹เชฐเซ‡เชจเซเช•เซ‹เชต เช›เซ‡, เชนเซเช‚ เชˆเชจเซเชซเซเชฐเชพเชธเซเชŸเซเชฐเช•เซเชšเชฐ เชŸเซ€เชฎ เชฒเซ€เชกเชฐ เชคเชฐเซ€เช•เซ‡ เชกเซ‹เชฎเช•เซเชฒเชฟเช•เชฎเชพเช‚ เช•เชพเชฎ เช•เชฐเซเช‚ เช›เซเช‚. เช…เชฎเซ‡ เชคเซเชฐเชฃ เชตเชฐเซเชทเชฅเซ€ เชตเชงเซ เชธเชฎเชฏเชฅเซ€ เชตเซ‡เชšเชพเชฃ เชฎเชพเชŸเซ‡ เช•เซเชฏเซเชฌเชจเซ‹ เช‰เชชเชฏเซ‹เช— เช•เชฐเซ€ เชฐเชนเซเชฏเชพ เช›เซ€เช, เช…เชจเซ‡ เช† เชธเชฎเชฏ เชฆเชฐเชฎเชฟเชฏเชพเชจ เช…เชฎเซ‡ เชคเซ‡เชจเซ€ เชธเชพเชฅเซ‡ เช˜เชฃเซ€ เชœเซเชฆเซ€ เชœเซเชฆเซ€ เชฐเชธเชชเซเชฐเชฆ เช•เซเชทเชฃเซ‹เชจเซ‹ เช…เชจเซเชญเชต เช•เชฐเซเชฏเซ‹ เช›เซ‡. เช†เชœเซ‡ เชนเซเช‚ เชคเชฎเชจเซ‡ เชœเชฃเชพเชตเซ€เชถ เช•เซ‡ เช•เซ‡เชตเซ€ เชฐเซ€เชคเซ‡, เชฏเซ‹เช—เซเชฏ เช…เชญเชฟเช—เชฎ เชธเชพเชฅเซ‡, เชคเชฎเซ‡ เชคเชฎเชพเชฐเชพ เช•เซเชฒเชธเซเชŸเชฐ เชฎเชพเชŸเซ‡ เชตเซ‡เชจเซ€เชฒเชพ เช•เซเชฌเชฐเชจเซ‡เชŸเซเชธเชฎเชพเช‚เชฅเซ€ เชตเชงเซ เชชเชฐเชซเซ‹เชฐเซเชฎเชจเซเชธเชจเซ‡ เชธเซเช•เซเชตเชฟเช เช•เชฐเซ€ เชถเช•เซ‹ เช›เซ‹. เชคเซˆเชฏเชพเชฐ เชธเซเชฅเชฟเชฐ เชœเชพเช“!

เชคเชฎเซ‡ เชฌเชงเชพ เชธเชพเชฐเซ€ เชฐเซ€เชคเซ‡ เชœเชพเชฃเซ‹ เช›เซ‹ เช•เซ‡ เช•เซเชฌเชฐเชจเซ‡เชŸเซเชธ เช•เชจเซเชŸเซ‡เชจเชฐ เช“เชฐเซเช•เซ‡เชธเซเชŸเซเชฐเซ‡เชถเชจ เชฎเชพเชŸเซ‡ เชธเซเช•เซ‡เชฒเซ‡เชฌเชฒ เช“เชชเชจ เชธเซ‹เชฐเซเชธ เชธเชฟเชธเซเชŸเชฎ เช›เซ‡; เชธเชพเชฐเซเช‚, เช…เชฅเชตเชพ 5 เชฆเซเชตเชฟเชธเช‚เช—เซ€ เช•เซ‡ เชœเซ‡ เชธเชฐเซเชตเชฐ เชชเชฐเซเชฏเชพเชตเชฐเชฃเชฎเชพเช‚ เชคเชฎเชพเชฐเซ€ เชฎเชพเช‡เช•เซเชฐเซ‹เชธเชฐเซเชตเชฟเชธเชฟเชธเชจเชพ เชœเซ€เชตเชจ เชšเช•เซเชฐเชจเซเช‚ เชธเช‚เชšเชพเชฒเชจ เช•เชฐเซ€เชจเซ‡ เชœเชพเชฆเซ เช•เชฐเซ‡ เช›เซ‡. เชตเชงเซเชฎเชพเช‚, เช† เชเช•เชฆเชฎ เชฒเชตเชšเซ€เช• เชธเชพเชงเชจ เช›เซ‡ เชœเซ‡เชจเซ‡ เชตเชฟเชตเชฟเชง เช•เชพเชฐเซเชฏเซ‹ เชฎเชพเชŸเซ‡ เชฎเชนเชคเซเชคเชฎ เช•เชธเซเชŸเชฎเชพเช‡เชเซ‡เชถเชจ เชฎเชพเชŸเซ‡ เชฒเซ‡เช—เซ‹ เช•เชจเซเชธเซเชŸเซเชฐเช•เซเชŸเชฐเชจเซ€ เชœเซ‡เชฎ เชเชธเซ‡เชฎเซเชฌเชฒ เช•เชฐเซ€ เชถเช•เชพเชฏ เช›เซ‡.

เช…เชจเซ‡ เชฌเชงเซเช‚ เชธเชพเชฐเซเช‚ เชฒเชพเช—เซ‡ เช›เซ‡: เชธเชฐเซเชตเชฐเชจเซ‡ เช•เซเชฒเชธเซเชŸเชฐเชฎเชพเช‚ เชซเซ‡เช‚เช•เซ€ เชฆเซ‹, เชœเซ‡เชฎ เช•เซ‡ เชฒเชพเช•เชกเชพเชจเซ‡ เชซเชพเชฏเชฐเชฌเซ‹เช•เซเชธเชฎเชพเช‚, เช…เชจเซ‡ เชฆเซเชƒเช–เชจเซ‡ เชœเชพเชฃเชคเชพ เชจเชฅเซ€. เชชเชฐเช‚เชคเซ เชœเซ‹ เชคเชฎเซ‡ เชชเชฐเซเชฏเชพเชตเชฐเชฃ เชฎเชพเชŸเซ‡ เช›เซ‹, เชคเซ‹ เชชเช›เซ€ เชคเชฎเซ‡ เชตเชฟเชšเชพเชฐเชถเซ‹: "เชนเซเช‚ เชธเซเชŸเซ‹เชตเชฎเชพเช‚ เช†เช— เช•เซ‡เชตเซ€ เชฐเซ€เชคเซ‡ เชฐเชพเช–เซ€ เชถเช•เซเช‚ เช…เชจเซ‡ เชœเช‚เช—เชฒเชจเซ‹ เช…เชซเชธเซ‹เชธ เช•เซ‡เชตเซ€ เชฐเซ€เชคเซ‡ เช•เชฐเซ€ เชถเช•เซเช‚?". เชฌเซ€เชœเชพ เชถเชฌเซเชฆเซ‹เชฎเชพเช‚ เช•เชนเซ€เช เชคเซ‹, เช‡เชจเซเชซเซเชฐเชพเชธเซเชŸเซเชฐเช•เซเชšเชฐ เชธเซเชงเชพเชฐเชตเชพ เช…เชจเซ‡ เช–เชฐเซเชš เช˜เชŸเชพเชกเชตเชพเชจเชพ เชฐเชธเซเชคเชพเช“ เช•เซ‡เชตเซ€ เชฐเซ€เชคเซ‡ เชถเซ‹เชงเชตเซ€.

1. เชŸเซ€เชฎ เช…เชจเซ‡ เชเชชเซเชฒเชฟเช•เซ‡เชถเชจ เชธเช‚เชธเชพเชงเชจเซ‹เชจเซ‹ เชŸเซเชฐเซ…เช• เชฐเชพเช–เซ‹

เชจเชต เช•เซเชฌเชฐเชจเซ‡เชŸเซเชธ เชชเซเชฐเชฆเชฐเซเชถเชจ เชŸเชฟเชชเซเชธ

เชธเซŒเชฅเซ€ เชฎเชพเชฎเซ‚เชฒเซ€ เชชเชฐเช‚เชคเซ เช…เชธเชฐเช•เชพเชฐเช• เชชเชฆเซเชงเชคเชฟเช“เชฎเชพเช‚เชจเซ€ เชเช• เชตเชฟเชจเช‚เชคเซ€/เชฎเชฐเซเชฏเชพเชฆเชพเชจเซ‹ เชชเชฐเชฟเชšเชฏ เช›เซ‡. เชจเซ‡เชฎเชธเซเชชเซ‡เชธ เช…เชจเซ‡ เชกเซ‡เชตเชฒเชชเชฎเซ‡เชจเซเชŸ เชŸเซ€เชฎเซ‹ เชฆเซเชตเชพเชฐเชพ เชจเซ‡เชฎเชธเซเชชเซ‡เชธ เชฆเซเชตเชพเชฐเชพ เชเชชเซเชฒเชฟเช•เซ‡เชถเชจเชจเซ‡ เช…เชฒเช— เช•เชฐเซ‹. เชชเซเชฐเซ‹เชธเซ‡เชธเชฐ เชธเชฎเชฏ, เชฎเซ‡เชฎเชฐเซ€, เช•เซเชทเชฃเชฟเช• เชธเซเชŸเซ‹เชฐเซ‡เชœเชจเชพ เชตเชชเชฐเชพเชถ เชฎเชพเชŸเซ‡ เชฎเซ‚เชฒเซเชฏเซ‹ เชœเชฎเชพเชตเชคเชพ เชชเชนเซ‡เชฒเชพ เชเชชเซเชฒเชฟเช•เซ‡เชถเชจ เชธเซ‡เชŸ เช•เชฐเซ‹.

resources:
   requests:
     memory: 2Gi
     cpu: 250m
   limits:
     memory: 4Gi
     cpu: 500m

เช…เชจเซเชญเชต เชฆเซเชตเชพเชฐเชพ, เช…เชฎเซ‡ เชจเชฟเชทเซเช•เชฐเซเชท เชชเชฐ เช†เชตเซเชฏเชพ: เชฎเชฐเซเชฏเชพเชฆเชพเชฎเชพเช‚เชฅเซ€ เชตเชฟเชจเช‚เชคเซ€เช“เชจเซ‡ เชฌเซ‡ เช—เชฃเชพเชฅเซ€ เชตเชงเซ เชตเชงเชพเชฐเชตเซ€ เชคเซ‡ เชฏเซ‹เช—เซเชฏ เชจเชฅเซ€. เช•เซเชฒเชธเซเชŸเชฐเชจเชพ เช•เชฆเชจเซ€ เช—เชฃเชคเชฐเซ€ เชตเชฟเชจเช‚เชคเซ€เช“เชจเชพ เช†เชงเชพเชฐเซ‡ เช•เชฐเชตเชพเชฎเชพเช‚ เช†เชตเซ‡ เช›เซ‡, เช…เชจเซ‡ เชœเซ‹ เชคเชฎเซ‡ เชเชชเซเชฒเชฟเช•เซ‡เชถเชจเชจเซ‡ เชธเช‚เชธเชพเชงเชจเซ‹เชฎเชพเช‚ เชคเชซเชพเชตเชค เชชเชฐ เชธเซ‡เชŸ เช•เชฐเซ‹ เช›เซ‹, เช‰เชฆเชพเชนเชฐเชฃ เชคเชฐเซ€เช•เซ‡, 5-10 เชตเช–เชค, เชคเซ‹ เชชเช›เซ€ เช•เชฒเซเชชเชจเชพ เช•เชฐเซ‹ เช•เซ‡ เชœเซเชฏเชพเชฐเซ‡ เชคเชฎเชพเชฐเชพ เชจเซ‹เชก เชถเซ€เช‚เช—เซ‹เชฅเซ€ เชญเชฐเซ‡ เช›เซ‡ เช…เชจเซ‡ เช…เชšเชพเชจเช• เชฒเซ‹เชก เชชเซเชฐเชพเชชเซเชค เช•เชฐเซ‡ เช›เซ‡ เชคเซเชฏเชพเชฐเซ‡ เชคเซ‡เชจเซเช‚ เชถเซเช‚ เชฅเชถเซ‡. เช•เช‚เชˆ เชธเชพเชฐเซเช‚ เชจเชฅเซ€. เช“เช›เชพเชฎเชพเช‚ เช“เช›เชพ, เชฅเซเชฐเซ‹เชŸเชฒเชฟเช‚เช— เช…เชจเซ‡ เชตเชงเซเชฎเชพเช‚ เชตเชงเซ, เช•เชพเชฐเซเชฏเช•เชฐเชจเซ‡ เชตเชฟเชฆเชพเชฏ เช†เชชเซ‹ เช…เชจเซ‡ เชถเซ€เช‚เช—เซ‹ เช–เชธเซ‡เชกเชตเชพเชจเซเช‚ เชถเชฐเซ‚ เช•เชฐเซเชฏเชพ เชชเช›เซ€ เชฌเชพเช•เซ€เชจเชพ เช—เชพเช‚เช เซ‹ เชชเชฐ เชšเช•เซเชฐเซ€เชฏ เชญเชพเชฐ เชฎเซ‡เชณเชตเซ‹.

เชตเชงเซเชฎเชพเช‚, เชฎเชฆเชฆ เชธเชพเชฅเซ‡ limitranges เชคเชฎเซ‡ เชถเชฐเซ‚เช†เชคเชฎเชพเช‚ เช•เชจเซเชŸเซ‡เชจเชฐ เชฎเชพเชŸเซ‡ เชธเช‚เชธเชพเชงเชจ เชฎเซ‚เชฒเซเชฏเซ‹ เชธเซ‡เชŸ เช•เชฐเซ€ เชถเช•เซ‹ เช›เซ‹ - เชจเซเชฏเซ‚เชจเชคเชฎ, เชฎเชนเชคเซเชคเชฎ เช…เชจเซ‡ เชกเชฟเชซเซ‹เชฒเซเชŸ:

โžœ  ~ kubectl describe limitranges --namespace ops
Name:       limit-range
Namespace:  ops
Type        Resource           Min   Max   Default Request  Default Limit  Max Limit/Request Ratio
----        --------           ---   ---   ---------------  -------------  -----------------------
Container   cpu                50m   10    100m             100m           2
Container   ephemeral-storage  12Mi  8Gi   128Mi            4Gi            -
Container   memory             64Mi  40Gi  128Mi            128Mi          2

เชจเซ‡เชฎเชธเซเชชเซ‡เชธ เชธเช‚เชธเชพเชงเชจเซ‹เชจเซ‡ เชฎเชฐเซเชฏเชพเชฆเชฟเชค เช•เชฐเชตเชพเชจเซเช‚ เชฏเชพเชฆ เชฐเชพเช–เซ‹ เชœเซ‡เชฅเซ€ เช•เชฐเซ€เชจเซ‡ เชเช• เช†เชฆเซ‡เชถ เช•เซเชฒเชธเซเชŸเชฐเชจเชพ เชคเชฎเชพเชฎ เชธเช‚เชธเชพเชงเชจเซ‹ เชฒเชˆ เชจ เชถเช•เซ‡:

โžœ  ~ kubectl describe resourcequotas --namespace ops
Name:                   resource-quota
Namespace:              ops
Resource                Used          Hard
--------                ----          ----
limits.cpu              77250m        80
limits.memory           124814367488  150Gi
pods                    31            45
requests.cpu            53850m        80
requests.memory         75613234944   150Gi
services                26            50
services.loadbalancers  0             0
services.nodeports      0             0

เชœเซ‡เชฎ เชคเชฎเซ‡ เชตเชฐเซเชฃเชจเชฎเชพเช‚เชฅเซ€ เชœเซ‹เชˆ เชถเช•เซ‹ เช›เซ‹ resourcequotas, เชœเซ‹ ops เช†เชฆเซ‡เชถ เช…เชจเซเชฏ 10 เชธเซ€เชชเซ€เชฏเซเชจเซ‹ เชตเชชเชฐเชพเชถ เช•เชฐเชถเซ‡ เชคเซ‡เชตเชพ เชชเซ‹เชกเซเชธเชจเซ‡ เชœเชฎเชพเชตเชตเชพ เชฎเชพเช‚เช—เซ‡ เช›เซ‡, เชคเซ‹ เชถเซ‡เชกเซเชฏเซ‚เชฒเชฐ เชคเซ‡เชจเซ‡ เช•เชฐเชตเชพเชจเซ€ เชฎเช‚เชœเซ‚เชฐเซ€ เช†เชชเชถเซ‡ เชจเชนเซ€เช‚ เช…เชจเซ‡ เชญเซ‚เชฒ เชฐเชœเซ‚ เช•เชฐเชถเซ‡:

Error creating: pods "nginx-proxy-9967d8d78-nh4fs" is forbidden: exceeded quota: resource-quota, requested: limits.cpu=5,requests.cpu=5, used: limits.cpu=77250m,requests.cpu=53850m, limited: limits.cpu=10,requests.cpu=10

เชธเชฎเชพเชจ เชธเชฎเชธเซเชฏเชพเชจเซ‡ เช‰เช•เซ‡เชฒเชตเชพ เชฎเชพเชŸเซ‡, เชคเชฎเซ‡ เชเช• เชธเชพเชงเชจ เชฒเช–เซ€ เชถเช•เซ‹ เช›เซ‹, เช‰เชฆเชพเชนเชฐเชฃ เชคเชฐเซ€เช•เซ‡, เชœเซ‡เชฎ เช†, เชœเซ‡ เช†เชฆเซ‡เชถ เชธเช‚เชธเชพเชงเชจเซ‹เชจเซ€ เชธเซเชฅเชฟเชคเชฟเชจเซ‡ เชธเช‚เช—เซเชฐเชนเชฟเชค เช…เชจเซ‡ เชชเซเชฐเชคเชฟเชฌเชฆเซเชง เช•เชฐเซ€ เชถเช•เซ‡ เช›เซ‡.

2. เชถเซเชฐเซ‡เชทเซเช  เชซเชพเช‡เชฒ เชธเซเชŸเซ‹เชฐเซ‡เชœ เชชเชธเช‚เชฆ เช•เชฐเซ‹

เชจเชต เช•เซเชฌเชฐเชจเซ‡เชŸเซเชธ เชชเซเชฐเชฆเชฐเซเชถเชจ เชŸเชฟเชชเซเชธ

เช…เชนเซ€เช‚ เชนเซเช‚ เชธเชคเชค เชตเซ‹เชฒเซเชฏเซเชฎเซ‹ เช…เชจเซ‡ เช•เซเชฌเชฐเชจเซ‡เชŸเซเชธ เชตเชฐเซเช•เชฐ เชจเซ‹เชกเซเชธเชจเซ€ เชกเชฟเชธเซเช• เชธเชฌเชธเชฟเชธเซเชŸเชฎเชจเชพ เชตเชฟเชทเชฏ เชชเชฐ เชธเซเชชเชฐเซเชถ เช•เชฐเชตเชพ เชฎเชพเช‚เช—เซ เช›เซเช‚. เชนเซเช‚ เช†เชถเชพ เชฐเชพเช–เซเช‚ เช›เซเช‚ เช•เซ‡ เช•เซ‹เชˆ เชชเชฃ เช‰เชคเซเชชเชพเชฆเชจเชฎเชพเช‚ HDD เชชเชฐ "เช•เซเชฏเซเชฌ" เชจเซ‹ เช‰เชชเชฏเซ‹เช— เช•เชฐเชคเซเช‚ เชจเชฅเซ€, เชชเชฐเช‚เชคเซ เช•เซ‡เชŸเชฒเซ€เช•เชตเชพเชฐ เชจเชฟเชฏเชฎเชฟเชค SSD เชชเชฃ เชชเชนเซ‡เชฒเชพเชฅเซ€ เชœ เชชเซ‚เชฐเชคเซเช‚ เชจเชฅเซ€. เช…เชฎเซ‡ เชเชตเซ€ เชธเชฎเชธเซเชฏเชพเชจเซ‹ เชธเชพเชฎเชจเซ‹ เช•เชฐเชตเซ‹ เชชเชกเซเชฏเซ‹ เช•เซ‡ เชฒเซ‹เช—เซเชธ I/O เช‘เชชเชฐเซ‡เชถเชจเซเชธ เชฆเซเชตเชพเชฐเชพ เชกเชฟเชธเซเช•เชจเซ‡ เชฎเชพเชฐเซ€ เชจเชพเช–เซ‡ เช›เซ‡, เช…เชจเซ‡ เช…เชนเซ€เช‚ เช˜เชฃเชพ เชฌเชงเชพ เช‰เช•เซ‡เชฒเซ‹ เชจเชฅเซ€:

  • เช‰เชšเซเชš-เชชเซเชฐเชฆเชฐเซเชถเชจ SSDs เชจเซ‹ เช‰เชชเชฏเซ‹เช— เช•เชฐเซ‹ เช…เชฅเชตเชพ NVMe เชชเชฐ เชธเซเชตเชฟเชš เช•เชฐเซ‹ (เชœเซ‹ เชคเชฎเซ‡ เชคเชฎเชพเชฐเซเช‚ เชชเซ‹เชคเชพเชจเซเช‚ เชนเชพเชฐเซเชกเชตเซ‡เชฐ เชฎเซ‡เชจเซ‡เชœ เช•เชฐเซ‹ เช›เซ‹).

  • เชฒเซ‹เช—เซ€เช‚เช—เชจเซเช‚ เชธเซเชคเชฐ เช˜เชŸเชพเชกเชตเซเช‚.

  • เชชเซ‹เชกเซเชธเชจเซเช‚ "เชธเซเชฎเชพเชฐเซเชŸ" เชธเช‚เชคเซเชฒเชจ เช•เชฐเซ‹ เชœเซ‡ เชกเชฟเชธเซเช• เชชเชฐ เชฌเชณเชพเชคเซเช•เชพเชฐ เช•เชฐเซ‡ เช›เซ‡ (podAntiAffinity).

เช‰เชชเชฐเชจเซ‹ เชธเซเช•เซเชฐเซ€เชจเชถเซ‹เชŸ เชฌเชคเชพเชตเซ‡ เช›เซ‡ เช•เซ‡ เชกเชฟเชธเซเช• เชธเชพเชฅเซ‡ nginx-ingress-controller เชนเซ‡เช เชณ เชถเซเช‚ เชฅเชพเชฏ เช›เซ‡ เชœเซเชฏเชพเชฐเซ‡ access_logs เชฒเซ‹เช—เชฟเช‚เช— เชธเช•เซเชทเชฎ เชนเซ‹เชฏ (~12k logs/sec). เช†เชตเซ€ เชธเซเชฅเชฟเชคเชฟ, เช…เชฒเชฌเชคเซเชค, เช† เชจเซ‹เชก เชชเชฐเชจเซ€ เชคเชฎเชพเชฎ เชเชชเซเชฒเชฟเช•เซ‡เชถเชจเซ‹เชจเชพ เช…เชงเซ‹เช—เชคเชฟ เชคเชฐเชซ เชฆเซ‹เชฐเซ€ เชถเช•เซ‡ เช›เซ‡.

เชชเซ€เชตเซ€ เชฎเชพเชŸเซ‡, เช…เชฐเซ‡, เชฎเซ‡เช‚ เชฌเชงเซเช‚ เชœ เช…เชœเชฎเชพเชตเซเชฏเซเช‚ เชจเชฅเซ€. เชœเซ‹เชตเชพเชˆ เชธเชคเชค เชตเซ‹เชฒเซเชฏเซเชฎเซ‹. เชคเชฎเชจเซ‡ เช…เชจเซเช•เซ‚เชณ เชนเซ‹เชฏ เชคเซ‡เชตเชพ เชถเซเชฐเซ‡เชทเซเช  เชตเชฟเช•เชฒเซเชชเชจเซ‹ เช‰เชชเชฏเซ‹เช— เช•เชฐเซ‹. เชคเซ‡ เช†เชชเชฃเชพ เชฆเซ‡เชถเชฎเชพเช‚ เชเชคเชฟเชนเชพเชธเชฟเช• เชฐเซ€เชคเซ‡ เชฌเชจเซเชฏเซเช‚ เช›เซ‡ เช•เซ‡ เชธเซ‡เชตเชพเช“เชจเชพ เชจเชพเชจเชพ เชญเชพเช—เชจเซ‡ RWX เชตเซ‹เชฒเซเชฏเซเชฎเชจเซ€ เชœเชฐเซ‚เชฐ เช›เซ‡, เช…เชจเซ‡ เชฒเชพเช‚เชฌเชพ เชธเชฎเชฏ เชชเชนเซ‡เชฒเชพ เชคเซ‡เช“เช เช† เช•เชพเชฐเซเชฏ เชฎเชพเชŸเซ‡ NFS เชธเซเชŸเซ‹เชฐเซ‡เชœเชจเซ‹ เช‰เชชเชฏเซ‹เช— เช•เชฐเชตเชพเชจเซเช‚ เชถเชฐเซ‚ เช•เชฐเซเชฏเซเช‚. เชธเชธเซเชคเซเช‚ เช…เชจเซ‡... เชชเซ‚เชฐเชคเซเช‚. เช…เชฒเชฌเชคเซเชค, เช…เชฎเซ‡ เชคเซ‡เชจเซ€ เชธเชพเชฅเซ‡ เช›เซ€ เช–เชพเชงเซ€ - เชธเซเชตเชธเซเชฅ เชฌเชจเซ‹, เชชเชฐเช‚เชคเซ เช…เชฎเซ‡ เชคเซ‡เชจเซ‡ เช•เซ‡เชตเซ€ เชฐเซ€เชคเซ‡ เชŸเซเชฏเซเชจ เช•เชฐเชตเซเช‚ เชคเซ‡ เชถเซ€เช–เซเชฏเชพ, เช…เชจเซ‡ เชคเซ‡เชจเซเช‚ เชฎเชพเชฅเซเช‚ เชนเชตเซ‡ เชฆเซเช–เซ‡ เชจเชนเซ€เช‚. เช…เชจเซ‡ เชœเซ‹ เชถเช•เซเชฏ เชนเซ‹เชฏ เชคเซ‹, S3 เช‘เชฌเซเชœเซ‡เช•เซเชŸ เชธเซเชŸเซ‹เชฐเซ‡เชœ เชชเชฐ เชธเซเชตเชฟเชš เช•เชฐเซ‹.

3. เช‘เชชเซเชŸเชฟเชฎเชพเช‡เช เช›เชฌเซ€เช“ เชฌเชจเชพเชตเซ‹

เชจเชต เช•เซเชฌเชฐเชจเซ‡เชŸเซเชธ เชชเซเชฐเชฆเชฐเซเชถเชจ เชŸเชฟเชชเซเชธ

เช•เชจเซเชŸเซ‡เชจเชฐ-เช‘เชชเซเชŸเชฟเชฎเชพเช‡เช เช•เชฐเซ‡เชฒเซ€ เช›เชฌเซ€เช“เชจเซ‹ เช‰เชชเชฏเซ‹เช— เช•เชฐเชตเซ‹ เชถเซเชฐเซ‡เชทเซเช  เช›เซ‡ เชœเซ‡เชฅเซ€ เช•เชฐเซ€เชจเซ‡ เช•เซเชฌเชฐเชจเซ‡เชŸเซเชธ เชคเซ‡เชฎเชจเซ‡ เชตเชงเซ เชเชกเชชเชฅเซ€ เช†เชจเชฏเชจ เช•เชฐเซ€ เชถเช•เซ‡ เช…เชจเซ‡ เชตเชงเซ เช…เชธเชฐเช•เชพเชฐเช• เชฐเซ€เชคเซ‡ เชšเชฒเชพเชตเซ€ เชถเช•เซ‡. 

เช‘เชชเซเชŸเชฟเชฎเชพเช‡เชเซ‡เชถเชจเชจเซ‹ เช…เชฐเซเชฅ เช เช›เซ‡ เช•เซ‡ เช›เชฌเซ€เช“:

  • เชซเช•เซเชค เชเช• เชœ เชเชชเซเชฒเชฟเช•เซ‡เชถเชจ เชงเชฐเชพเชตเซ‡ เช›เซ‡ เช…เชฅเชตเชพ เชซเช•เซเชค เชเช• เชœ เช•เชพเชฐเซเชฏ เช•เชฐเซ‡ เช›เซ‡;

  • เชจเชพเชจเชพ เช•เชฆ, เช•เชพเชฐเชฃ เช•เซ‡ เชฎเซ‹เชŸเซ€ เช›เชฌเซ€เช“ เชจเซ‡เชŸเชตเชฐเซเช• เชชเชฐ เชตเชงเซ เช–เชฐเชพเชฌ เชฐเซ€เชคเซ‡ เชชเซเชฐเชธเชพเชฐเชฟเชค เชฅเชพเชฏ เช›เซ‡;

  • เช†เชฐเซ‹เช—เซเชฏ เช…เชจเซ‡ เชคเชคเซเชชเชฐเชคเชพเชจเชพ เช…เช‚เชคเชฟเชฎ เชฌเชฟเช‚เชฆเซเช“ เช›เซ‡ เชœเซ‡เชจเซ‹ เช‰เชชเชฏเซ‹เช— เชกเชพเช‰เชจเชŸเชพเช‡เชฎเชจเซ€ เชธเซเชฅเชฟเชคเชฟเชฎเชพเช‚ เชชเช—เชฒเชพเช‚ เชฒเซ‡เชตเชพ เชฎเชพเชŸเซ‡ เช•เซเชฌเชฐเชจเซ‡เชŸเซเชธ เช•เชฐเซ€ เชถเช•เซ‡ เช›เซ‡;

  • เช•เชจเซเชŸเซ‡เชจเชฐ-เชซเซเชฐเซ‡เช‚เชกเชฒเซ€ เช“เชชเชฐเซ‡เชŸเชฟเช‚เช— เชธเชฟเชธเซเชŸเชฎเซเชธเชจเซ‹ เช‰เชชเชฏเซ‹เช— เช•เชฐเซ‹ (เชœเซ‡เชฎ เช•เซ‡ เช†เชฒเซเชชเชพเช‡เชจ เช…เชฅเชตเชพ เช•เซ‹เชฐเช“เชเชธ) เชœเซ‡ เชฐเซ‚เชชเชฐเซ‡เช–เชพเช‚เช•เชจ เชญเซ‚เชฒเซ‹ เชฎเชพเชŸเซ‡ เชตเชงเซ เชชเซเชฐเชคเชฟเชฐเซ‹เชงเช• เช›เซ‡;

  • เชฎเชฒเซเชŸเซ€-เชธเซเชŸเซ‡เชœ เชฌเชฟเชฒเซเชกเซเชธเชจเซ‹ เช‰เชชเชฏเซ‹เช— เช•เชฐเซ‹ เชœเซ‡เชฅเซ€ เชคเชฎเซ‡ เชฎเชพเชคเซเชฐ เชธเช‚เช•เชฒเชฟเชค เชเชชเซเชฒเชฟเช•เซ‡เชถเชจเซ‹ เชœ เชœเชฎเชพเชตเซ€ เชถเช•เซ‹ เช…เชจเซ‡ เชธเชพเชฅเซ‡เชจเชพ เชธเซเชคเซเชฐเซ‹เชคเซ‹เชจเซ‡ เชจเชนเซ€เช‚.

เชคเซเชฏเชพเช‚ เช˜เชฃเชพ เชธเชพเชงเชจเซ‹ เช…เชจเซ‡ เชธเซ‡เชตเชพเช“ เช›เซ‡ เชœเซ‡ เชคเชฎเชจเซ‡ เชซเซเชฒเชพเชฏ เชชเชฐ เช›เชฌเซ€เช“ เชคเชชเชพเชธเชตเชพ เช…เชจเซ‡ เช‘เชชเซเชŸเชฟเชฎเชพเช‡เช เช•เชฐเชตเชพเชจเซ€ เชฎเช‚เชœเซ‚เชฐเซ€ เช†เชชเซ‡ เช›เซ‡. เชคเซ‡เชฎเชจเซ‡ เชนเช‚เชฎเซ‡เชถเชพ เช…เชฆเซเชฏเชคเชจ เช…เชจเซ‡ เชธเซเชฐเช•เซเชทเชฟเชค เชฐเชพเช–เชตเซเช‚ เชฎเชนเชคเซเชตเชชเซ‚เชฐเซเชฃ เช›เซ‡. เชชเชฐเชฟเชฃเชพเชฎเซ‡, เชคเชฎเซ‡ เชฎเซ‡เชณเชตเซ‹ เช›เซ‹:

  1. เชธเชฎเช—เซเชฐ เช•เซเชฒเชธเซเชŸเชฐ เชชเชฐ เชจเซ‡เชŸเชตเชฐเซเช• เชฒเซ‹เชก เช˜เชŸเชพเชกเซเชฏเซ‹.

  2. เช•เชจเซเชŸเซ‡เชจเชฐ เชธเซเชŸเชพเชฐเซเชŸเช…เชชเชจเซ‹ เชธเชฎเชฏ เช˜เชŸเซเชฏเซ‹.

  3. เชคเชฎเชพเชฐเซ€ เช†เช–เซ€ เชกเซ‹เช•เชฐ เชฐเชœเชฟเชธเซเชŸเซเชฐเซ€เชจเซเช‚ เชจเชพเชจเซเช‚ เช•เชฆ.

4. DNS เช•เซ‡เชถเชจเซ‹ เช‰เชชเชฏเซ‹เช— เช•เชฐเซ‹

เชจเชต เช•เซเชฌเชฐเชจเซ‡เชŸเซเชธ เชชเซเชฐเชฆเชฐเซเชถเชจ เชŸเชฟเชชเซเชธ

เชœเซ‹ เช†เชชเชฃเซ‡ เช‰เชšเซเชš เชฒเซ‹เชก เชตเชฟเชถเซ‡ เชตเชพเชค เช•เชฐเซ€เช, เชคเซ‹ เช•เซเชฒเชธเซเชŸเชฐเชจเซ€ DNS เชธเชฟเชธเซเชŸเชฎเชจเซ‡ เชŸเซเชฏเซเชจ เช•เชฐเซเชฏเชพ เชตเชฟเชจเชพ, เชœเซ€เชตเชจ เช–เซ‚เชฌ เชœ เช–เชฐเชพเชฌ เช›เซ‡. เชเช• เชธเชฎเชฏเซ‡, Kubernetes เชตเชฟเช•เชพเชธเช•เชฐเซเชคเชพเช“ เชคเซ‡เชฎเชจเชพ kube-dns เชธเซ‹เชฒเซเชฏเซเชถเชจเชจเซ‡ เชŸเซ‡เช•เซ‹ เช†เชชเชคเชพ เชนเชคเชพ. เชคเซ‡ เช†เชชเชฃเชพ เชฆเซ‡เชถเชฎเชพเช‚ เชชเชฃ เชฒเชพเช—เซ เช•เชฐเชตเชพเชฎเชพเช‚ เช†เชตเซเชฏเซเช‚ เชนเชคเซเช‚, เชชเชฐเช‚เชคเซ เช† เชธเซ‰เชซเซเชŸเชตเซ‡เชฐ เช–เชพเชธ เช•เชฐเซ€เชจเซ‡ เชŸเซเชฏเซเชจ เช•เชฐเซเชฏเซเช‚ เชจเชฅเซ€ เช…เชจเซ‡ เชœเชฐเซ‚เชฐเซ€ เชชเซเชฐเชฆเชฐเซเชถเชจ เช†เชชเซเชฏเซเช‚ เชจเชฅเซ€, เชคเซ‡เชฎ เช›เชคเชพเช‚, เชเชตเซเช‚ เชฒเชพเช—เซ‡ เช›เซ‡ เช•เซ‡ เช•เชพเชฐเซเชฏ เชธเชฐเชณ เช›เซ‡. เชชเช›เซ€ เช•เซ‹เชฐเซเชกเชจเซเชธ เชฆเซ‡เช–เชพเชฏเชพ, เชœเซ‡เชจเชพ เชชเชฐ เช…เชฎเซ‡ เชธเซเชตเชฟเชš เช•เชฐเซเชฏเซเช‚ เช…เชจเซ‡ เชฆเซเชƒเช– เชœเชพเชฃเชคเชพ เชจเชนเซ‹เชคเชพ, เชชเชพเช›เชณเชฅเซ€ เชคเซ‡ K8s เชฎเชพเช‚ เชกเชฟเชซเซ‹เชฒเซเชŸ DNS เชธเซ‡เชตเชพ เชฌเชจเซ€. เช…เชฎเซเช• เชธเชฎเชฏเซ‡, เช…เชฎเซ‡ DNS เชธเชฟเชธเซเชŸเชฎเชฎเชพเช‚ 40 เชนเชœเชพเชฐ เช†เชฐเชชเซ€เชเชธ เชธเซเชงเซ€ เชตเชงเซเชฏเชพ, เช…เชจเซ‡ เช† เช‰เช•เซ‡เชฒ เชชเชฃ เชชเซ‚เชฐเชคเซ‹ เชจ เชนเชคเซ‹. เชชเชฐเช‚เชคเซ, เชเช• เชจเชธเซ€เชฌเชฆเชพเชฐ เชคเช• เชฆเซเชตเชพเชฐเชพ, Nodelocaldns เชฌเชนเชพเชฐ เช†เชตเซเชฏเชพ, เช‰เชฐเซเชซ เชจเซ‹เชก เชธเซเชฅเชพเชจเชฟเช• เช•เซ‡เชถ, เช‰เชฐเซเชซ เชจเซ‹เชกเชฒเซ‹เช•เชฒ DNScache.

เชถเชพ เชฎเชพเชŸเซ‡ เช†เชชเชฃเซ‡ เชคเซ‡เชจเซ‹ เช‰เชชเชฏเซ‹เช— เช•เชฐเซ€เช เช›เซ€เช? เชฒเชฟเชจเช•เซเชธ เช•เชฐเซเชจเชฒเชฎเชพเช‚ เชเช• เชฌเช— เช›เซ‡ เช•เซ‡, เชœเซเชฏเชพเชฐเซ‡ เชฏเซเชกเซ€เชชเซ€ เชชเชฐ เช•เซ‹เชจเซเชŸเซเชฐเชพเช• NAT เชฆเซเชตเชพเชฐเชพ เชฌเชนเซเชตเชฟเชง เชเช•เซเชธเซ‡เชธ เชฅเชพเชฏ เช›เซ‡, เชคเซเชฏเชพเชฐเซ‡ เช•เซ‹เชจเซเชŸเซเชฐเชพเช• เช•เซ‹เชทเซเชŸเช•เซ‹ เชชเชฐ เชฒเช–เชตเชพ เชฎเชพเชŸเซ‡ เชฐเซ‡เชธเชจเซ€ เชธเซเชฅเชฟเชคเชฟ เชคเชฐเชซ เชฆเซ‹เชฐเซ€ เชœเชพเชฏ เช›เซ‡, เช…เชจเซ‡ NAT เชฎเชพเชฐเชซเชคเซ‡ เชŸเซเชฐเชพเชซเชฟเช•เชจเซ‹ เชญเชพเช— เช–เซ‹เชตเชพเชˆ เชœเชพเชฏ เช›เซ‡ (เชธเซ‡เชตเชพ เชฆเซเชตเชพเชฐเชพ เชฆเชฐเซ‡เช• เชŸเซเชฐเชฟเชช NAT เช›เซ‡). Nodelocaldns NAT เชฅเซ€ เช›เซเชŸเช•เชพเชฐเซ‹ เชฎเซ‡เชณเชตเซ€เชจเซ‡ เช…เชจเซ‡ TCP เช•เชจเซ‡เช•เซเชŸเชฟเชตเชฟเชŸเซ€เชจเซ‡ เช…เชชเชธเซเชŸเซเชฐเซ€เชฎ DNS เชชเชฐ เช…เชชเช—เซเชฐเซ‡เชก เช•เชฐเซ€เชจเซ‡, เชคเซ‡เชฎเชœ เช…เชชเชธเซเชŸเซเชฐเซ€เชฎ DNS เช•เซเชตเซ‡เชฐเซ€เชเชจเซ‡ เชธเซเชฅเชพเชจเชฟเช• เชฐเซ€เชคเซ‡ (เชŸเซ‚เช‚เช•เชพ 5 เชธเซ‡เช•เชจเซเชกเชจเซ€ เชจเช•เชพเชฐเชพเชคเซเชฎเช• เช•เซ‡เชถ เชธเชนเชฟเชค) เช•เซ‡เชถ เช•เชฐเซ€เชจเซ‡ เช† เชธเชฎเชธเซเชฏเชพเชจเซเช‚ เชจเชฟเชฐเชพเช•เชฐเชฃ เชฒเชพเชตเซ‡ เช›เซ‡.

5. เชถเซ€เช‚เช—เซ‹เชจเซ‡ เช†เชกเชพ เช…เชจเซ‡ เชŠเชญเซ€ เชฐเซ€เชคเซ‡ เช†เชชเชฎเซ‡เชณเซ‡ เชธเซเช•เซ‡เชฒ เช•เชฐเซ‹

เชจเชต เช•เซเชฌเชฐเชจเซ‡เชŸเซเชธ เชชเซเชฐเชฆเชฐเซเชถเชจ เชŸเชฟเชชเซเชธ

เชถเซเช‚ เชคเชฎเซ‡ เช†เชคเซเชฎเชตเชฟเชถเซเชตเชพเชธ เชธเชพเชฅเซ‡ เช•เชนเซ€ เชถเช•เซ‹ เช›เซ‹ เช•เซ‡ เชคเชฎเชพเชฐเซ€ เชฌเชงเซ€ เชฎเชพเชˆเช•เซเชฐเซ‹ เชธเชฐเซเชตเชฟเชธ เชฒเซ‹เชกเชฎเชพเช‚ เชฌเซ‡ เชฅเซ€ เชคเซเชฐเชฃ เช—เชฃเชพ เชตเชงเชพเชฐเชพ เชฎเชพเชŸเซ‡ เชคเซˆเชฏเชพเชฐ เช›เซ‡? เชคเชฎเชพเชฐเซ€ เชเชชเซเชฒเชฟเช•เซ‡เชถเชจ เชฎเชพเชŸเซ‡ เชธเช‚เชธเชพเชงเชจเซ‹เชจเซ€ เชฏเซ‹เช—เซเชฏ เชฐเซ€เชคเซ‡ เชซเชพเชณเชตเชฃเซ€ เช•เซ‡เชตเซ€ เชฐเซ€เชคเซ‡ เช•เชฐเชตเซ€? เชตเชฐเซเช•เชฒเซ‹เชก เช•เชฐเชคเชพเช‚ เชตเชงเซ เชชเชกเชคเชพเช‚ เชฅเซ‹เชกเชพเช‚ เชชเซ‹เชกเซเชธเชจเซ‡ เชšเชพเชฒเซ เชฐเชพเช–เชตเชพเชฅเซ€ เชจเชฟเชฐเชฐเซเชฅเช• เชฌเชจเซ€ เชถเช•เซ‡ เช›เซ‡, เช…เชจเซ‡ เชคเซ‡เชฎเชจเซ‡ เชชเชพเช›เชพ เชชเชพเช›เชณ เชฐเชพเช–เชตเชพเชฅเซ€ เชธเซ‡เชตเชพเชฎเชพเช‚ เชŸเซเชฐเชพเชซเชฟเช•เชฎเชพเช‚ เช…เชšเชพเชจเช• เชตเชงเชพเชฐเซ‹ เชฅเชตเชพเชฅเซ€ เชกเชพเช‰เชจเชŸเชพเช‡เชฎ เชœเซ‹เช–เชฎ เชฐเชนเซ‡ เช›เซ‡. เชธเซเชตเชฐเซเชฃ เช…เชฐเซเชฅ เช—เซเชฃเชพเช•เชพเชฐ เชœเซ‹เชกเชฃเซ€ เชœเซ‡เชตเซ€ เชธเซ‡เชตเชพเช“ เชชเซเชฐเชพเชชเซเชค เช•เชฐเชตเชพเชฎเชพเช‚ เชฎเชฆเชฆ เช•เชฐเซ‡ เช›เซ‡ เชนเซ‹เชฐเชฟเชเซ‹เชจเซเชŸเชฒ เชชเซ‹เชก เช“เชŸเซ‹เชธเซเช•เซ‡เชฒเชฐ ะธ เชตเชฐเซเชŸเชฟเช•เชฒ เชชเซ‹เชก เช“เชŸเซ‹เชธเซเช•เซ‡เชฒเชฐ.

VPA เชคเชฎเชจเซ‡ เชตเชพเชธเซเชคเชตเชฟเช• เชตเชชเชฐเชพเชถเชจเชพ เช†เชงเชพเชฐเซ‡ เชชเซ‹เชกเชฎเชพเช‚ เชคเชฎเชพเชฐเชพ เช•เชจเซเชŸเซ‡เชจเชฐเชจเซ€ เชตเชฟเชจเช‚เชคเซ€เช“/เชฎเชฐเซเชฏเชพเชฆเชพเช“เชจเซ‡ เช†เชชเชฎเซ‡เชณเซ‡ เชตเชงเชพเชฐเชตเชพเชจเซ€ เชฎเช‚เชœเซ‚เชฐเซ€ เช†เชชเซ‡ เช›เซ‡. เชคเซ‡ เช•เซ‡เชตเซ€ เชฐเซ€เชคเซ‡ เช‰เชชเชฏเซ‹เช—เซ€ เชฅเชˆ เชถเช•เซ‡? เชœเซ‹ เชคเชฎเชพเชฐเซ€ เชชเชพเชธเซ‡ เชชเซ‹เชกเซเชธ เช›เซ‡ เช•เซ‡ เชœเซ‡ เช•เซ‹เชˆ เช•เชพเชฐเชฃเซ‹เชธเชฐ เช†เชกเซ€ เชฐเซ€เชคเซ‡ เชฎเชพเชชเซ€ เชถเช•เชพเชคเซ€ เชจเชฅเซ€ (เชœเซ‡ เชธเช‚เชชเซ‚เชฐเซเชฃ เชฐเซ€เชคเซ‡ เชตเชฟเชถเซเชตเชธเชจเซ€เชฏ เชจเชฅเซ€), เชคเซ‹ เชคเชฎเซ‡ เชคเซ‡เชจเชพ เชธเช‚เชธเชพเชงเชจเซ‹ เชฌเชฆเชฒเชตเชพ เชฎเชพเชŸเซ‡ VPA เชชเชฐ เชตเชฟเชถเซเชตเชพเชธ เช•เชฐเชตเชพเชจเซ‹ เชชเซเชฐเชฏเชพเชธ เช•เชฐเซ€ เชถเช•เซ‹ เช›เซ‹. เชคเซ‡เชจเซ€ เชตเชฟเชถเซ‡เชทเชคเชพ เชฎเซ‡เชŸเซเชฐเชฟเช•-เชธเชฐเซเชตเชฐเชจเชพ เชเชคเชฟเชนเชพเชธเชฟเช• เช…เชจเซ‡ เชตเชฐเซเชคเชฎเชพเชจ เชกเซ‡เชŸเชพ เชชเชฐ เช†เชงเชพเชฐเชฟเชค เชญเชฒเชพเชฎเชฃ เชธเชฟเชธเซเชŸเชฎ เช›เซ‡, เชคเซ‡เชฅเซ€ เชœเซ‹ เชคเชฎเซ‡ เชตเชฟเชจเช‚เชคเซ€เช“/เชฎเชฐเซเชฏเชพเชฆเชพเช“เชจเซ‡ เช†เชชเชฎเซ‡เชณเซ‡ เชฌเชฆเชฒเชตเชพ เชฎเชพเช‚เช—เชคเชพ เชจ เชนเซ‹เชต, เชคเซ‹ เชคเชฎเซ‡ เชคเชฎเชพเชฐเชพ เช•เชจเซเชŸเซ‡เชจเชฐ เชฎเชพเชŸเซ‡ เชญเชฒเชพเชฎเชฃ เช•เชฐเซ‡เชฒ เชธเช‚เชธเชพเชงเชจเซ‹เชจเซเช‚ เชจเชฟเชฐเซ€เช•เซเชทเชฃ เช•เชฐเซ€ เชถเช•เซ‹ เช›เซ‹ เช…เชจเซ‡ CPU เช…เชจเซ‡ เชฎเซ‡เชฎเชฐเซ€เชจเซ‡ เชฌเชšเชพเชตเชตเชพ เชฎเชพเชŸเซ‡ เชธเซ‡เชŸเชฟเช‚เช—เซเชธเชจเซ‡ เช‘เชชเซเชŸเชฟเชฎเชพเช‡เช เช•เชฐเซ€ เชถเช•เซ‹ เช›เซ‹. เช•เซเชฒเชธเซเชŸเชฐเชฎเชพเช‚

เชจเชต เช•เซเชฌเชฐเชจเซ‡เชŸเซเชธ เชชเซเชฐเชฆเชฐเซเชถเชจ เชŸเชฟเชชเซเชธhttps://levelup.gitconnected.com/kubernetes-autoscaling-101-cluster-autoscaler-horizontal-pod-autoscaler-and-vertical-pod-2a441d9ad231 เชชเชฐเชฅเซ€ เชฒเซ‡เชตเชพเชฎเชพเช‚ เช†เชตเซ‡เชฒเซ€ เช›เชฌเซ€

Kubernetes เชฎเชพเช‚ เชถเซ‡เชกเซเชฏเซ‚เชฒเชฐ เชนเช‚เชฎเซ‡เชถเชพ เชตเชฟเชจเช‚เชคเซ€เช“ เชชเชฐ เช†เชงเชพเชฐเชฟเชค เช›เซ‡. เชคเชฎเซ‡ เชคเซเชฏเชพเช‚ เช—เชฎเซ‡ เชคเซ‡ เชฎเซ‚เชฒเซเชฏ เชฎเซ‚เช•เซ‹ เช›เซ‹, เชถเซ‡เชกเซเชฏเซ‚เชฒเชฐ เชคเซ‡เชจเชพ เช†เชงเชพเชฐเซ‡ เชฏเซ‹เช—เซเชฏ เชจเซ‹เชก เชถเซ‹เชงเชถเซ‡. เชชเซ‹เชกเชจเซ‡ เช•เซเชฏเชพเชฐเซ‡ เชฅเซเชฐเซ‹เชŸเชฒ เช•เชฐเชตเซเช‚ เช…เชฅเชตเชพ เชฎเชพเชฐเชตเซเช‚ เชคเซ‡ เชœเชพเชฃเชตเชพ เชฎเชพเชŸเซ‡ เช•เซเชฌเชฒเซ‡เชŸ เชฆเซเชตเชพเชฐเชพ เชฎเชฐเซเชฏเชพเชฆเชพ เชฎเซ‚เชฒเซเชฏเชจเซ€ เชœเชฐเซ‚เชฐ เช›เซ‡. เช…เชจเซ‡ เช•เชพเชฐเชฃ เช•เซ‡ เชเช•เชฎเชพเชคเซเชฐ เชฎเชนเชคเซเชตเชชเซ‚เชฐเซเชฃ เชชเชฐเชฟเชฎเชพเชฃ เชตเชฟเชจเช‚เชคเซ€เช“เชจเซเช‚ เชฎเซ‚เชฒเซเชฏ เช›เซ‡, VPA เชคเซ‡เชจเซ€ เชธเชพเชฅเซ‡ เช•เชพเชฎ เช•เชฐเชถเซ‡. เชœเซเชฏเชพเชฐเซ‡ เชชเชฃ เชคเชฎเซ‡ เชคเชฎเชพเชฐเซ€ เชเชชเซเชฒเชฟเช•เซ‡เชถเชจเชจเซ‡ เชŠเชญเซ€ เชฐเซ€เชคเซ‡ เชฎเชพเชชเซ‹ เช›เซ‹, เชคเซเชฏเชพเชฐเซ‡ เชคเชฎเซ‡ เชตเซเชฏเชพเช–เซเชฏเชพเชฏเชฟเชค เช•เชฐเซ‹ เช›เซ‹ เช•เซ‡ เชตเชฟเชจเช‚เชคเซ€เช“ เช•เชˆ เชนเซ‹เชตเซ€ เชœเซ‹เชˆเช. เช…เชจเซ‡ เชชเช›เซ€ เชฎเชฐเซเชฏเชพเชฆเชพเชจเซเช‚ เชถเซเช‚ เชฅเชถเซ‡? เช† เชชเชฐเชฟเชฎเชพเชฃ เชชเชฃ เชชเซเชฐเชฎเชพเชฃเชธเชฐ เชฎเชพเชชเชตเชพเชฎเชพเช‚ เช†เชตเชถเซ‡.

เช‰เชฆเชพเชนเชฐเชฃ เชคเชฐเซ€เช•เซ‡, เช…เชนเซ€เช‚ เชฒเชพเช•เซเชทเชฃเชฟเช• เชชเซ‹เชก เชธเซ‡เชŸเชฟเช‚เช—เซเชธ เช›เซ‡:

resources:
   requests:
     memory: 250Mi
     cpu: 200m
   limits:
     memory: 500Mi
     cpu: 350m

เชญเชฒเชพเชฎเชฃ เชเชจเซเชœเชฟเชจ เชจเช•เซเช•เซ€ เช•เชฐเซ‡ เช›เซ‡ เช•เซ‡ เชคเชฎเชพเชฐเซ€ เชเชชเซเชฒเชฟเช•เซ‡เชถเชจเชจเซ‡ เชฏเซ‹เช—เซเชฏ เชฐเซ€เชคเซ‡ เชšเชฒเชพเชตเชตเชพ เชฎเชพเชŸเซ‡ 300m CPU เช…เชจเซ‡ 500Miเชจเซ€ เชœเชฐเซ‚เชฐ เช›เซ‡. เชคเชฎเชจเซ‡ เช† เชธเซ‡เชŸเชฟเช‚เช—เซเชธ เชฎเชณเชถเซ‡:

resources:
   requests:
     memory: 500Mi
     cpu: 300m
   limits:
     memory: 1000Mi
     cpu: 525m

เช‰เชชเชฐ เชœเชฃเชพเชตเซเชฏเชพ เชฎเซเชœเชฌ, เชฎเซ‡เชจเชฟเชซเซ‡เชธเซเชŸเชฎเชพเช‚ เชตเชฟเชจเช‚เชคเซ€เช“/เชฎเชฐเซเชฏเชพเชฆเชพเชจเชพ เช—เซเชฃเซ‹เชคเซเชคเชฐเชจเชพ เช†เชงเชพเชฐเซ‡ เช† เชชเซเชฐเชฎเชพเชฃเชธเชฐ เชธเซเช•เซ‡เชฒเชฟเช‚เช— เช›เซ‡:

  • CPU: 200m โ†’ 300m: เช—เซเชฃเซ‹เชคเซเชคเชฐ 1:1.75;

  • เชฎเซ‡เชฎเชฐเซ€: 250Mi โ†’ 500Mi: 1:2 เชฐเซ‡เชถเชฟเชฏเซ‹.

เชฌเชพเชฌเชคเซ‡ เชเชšเชชเซ€เช, เชคเซ‹ เช“เชชเชฐเซ‡เชถเชจเชจเซ€ เชชเชฆเซเชงเชคเชฟ เชตเชงเซ เชชเชพเชฐเชฆเชฐเซเชถเช• เช›เซ‡. เชชเซเชฐเซ‹เชธเซ‡เชธเชฐ เช…เชจเซ‡ เชฎเซ‡เชฎเชฐเซ€ เชœเซ‡เชตเชพ เชฎเซ‡เชŸเซเชฐเชฟเช•เซเชธ เชฎเชพเชŸเซ‡ เชฅเซเชฐเซ‡เชถเซ‹เชฒเซเชก เชธเซ‡เชŸ เช•เชฐเชตเชพเชฎเชพเช‚ เช†เชตเซ‡ เช›เซ‡, เช…เชจเซ‡ เชœเซ‹ เชคเชฎเชพเชฎ เชชเซเชฐเชคเชฟเช•เซƒเชคเชฟเช“เชจเซ€ เชธเชฐเซ‡เชฐเชพเชถ เชฅเซเชฐเซ‡เชถเซ‹เชฒเซเชก เช•เชฐเชคเชพเช‚ เชตเชงเซ€ เชœเชพเชฏ, เชคเซ‹ เชœเซเชฏเชพเช‚ เชธเซเชงเซ€ เชฎเซ‚เชฒเซเชฏ เชฅเซเชฐเซ‡เชถเซ‹เชฒเซเชกเชฅเซ€ เชจเซ€เชšเซ‡ เชจ เช†เชตเซ‡ เชคเซเชฏเชพเช‚ เชธเซเชงเซ€ เชเชชเซเชฒเชฟเช•เซ‡เชถเชจ +1 เชชเซ‹เชก เชฆเซเชตเชพเชฐเชพ เชธเซเช•เซ‡เชฒ เช•เชฐเซ‡ เช›เซ‡, เช…เชฅเชตเชพ เชชเซเชฐเชคเชฟเช•เซƒเชคเชฟเชจเซ€ เชฎเชนเชคเซเชคเชฎ เชธเช‚เช–เซเชฏเชพ เชธเซเชงเซ€ เชชเชนเซ‹เช‚เชšเซ‡ เชคเซเชฏเชพเช‚ เชธเซเชงเซ€.

เชจเชต เช•เซเชฌเชฐเชจเซ‡เชŸเซเชธ เชชเซเชฐเชฆเชฐเซเชถเชจ เชŸเชฟเชชเซเชธhttps://levelup.gitconnected.com/kubernetes-autoscaling-101-cluster-autoscaler-horizontal-pod-autoscaler-and-vertical-pod-2a441d9ad231 เชชเชฐเชฅเซ€ เชฒเซ‡เชตเชพเชฎเชพเช‚ เช†เชตเซ‡เชฒเซ€ เช›เชฌเซ€

CPU เช…เชจเซ‡ เชฎเซ‡เชฎเชฐเซ€ เชœเซ‡เชตเชพ เชธเชพเชฎเชพเชจเซเชฏ เชฎเซ‡เชŸเซเชฐเชฟเช•เซเชธ เช‰เชชเชฐเชพเช‚เชค, เชคเชฎเซ‡ เชคเชฎเชพเชฐเชพ เช•เชธเซเชŸเชฎ เชชเซเชฐเซ‹เชฎเชฟเชฅเชฟเชฏเชธ เชฎเซ‡เชŸเซเชฐเชฟเช•เซเชธ เชชเชฐ เชฅเซเชฐเซ‡เชถเซ‹เชฒเซเชก เชธเซ‡เชŸ เช•เชฐเซ€ เชถเช•เซ‹ เช›เซ‹ เช…เชจเซ‡ เชคเซ‡เชฎเชจเซ€ เชธเชพเชฅเซ‡ เช•เชพเชฎ เช•เชฐเซ€ เชถเช•เซ‹ เช›เซ‹, เชœเซ‹ เชคเชฎเชจเซ‡ เชฒเชพเช—เซ‡ เช•เซ‡ เชคเชฎเชพเชฐเซ€ เชเชชเซเชฒเชฟเช•เซ‡เชถเชจ เช•เซเชฏเชพเชฐเซ‡ เชธเซเช•เซ‡เชฒ เช•เชฐเชตเซ€ เชคเซ‡ เชจเช•เซเช•เซ€ เช•เชฐเชตเชพเชจเซ€ เช† เชธเซŒเชฅเซ€ เชธเชšเซ‹เชŸ เชฐเซ€เชค เช›เซ‡. เชเช•เชตเชพเชฐ เชเชชเซเชฒเชฟเช•เซ‡เชถเชจ เชจเชฟเชฐเซเชฆเชฟเชทเซเชŸ เชฎเซ‡เชŸเซเชฐเชฟเช• เชฅเซเชฐเซ‡เชถเซ‹เชฒเซเชกเชจเซ€ เชจเซ€เชšเซ‡ เชธเซเชฅเชฟเชฐ เชฅเชˆ เชœเชพเชฏ, เชชเช›เซ€ HPA เชชเซ‹เชกเซเชธเชจเซ‡ เชชเซเชฐเชคเชฟเช•เซƒเชคเชฟเช“เชจเซ€ เชจเซเชฏเซ‚เชจเชคเชฎ เชธเช‚เช–เซเชฏเชพ เชธเซเชงเซ€ เช…เชฅเชตเชพ เชฒเซ‹เชก เชฅเซเชฐเซ‡เชถเซ‹เชฒเซเชกเชจเซ‡ เชชเซ‚เชฐเซเชฃ เชจ เชฅเชพเชฏ เชคเซเชฏเชพเช‚ เชธเซเชงเซ€ เชธเซเช•เซ‡เชฒ เช•เชฐเชตเชพเชจเซเช‚ เชถเชฐเซ‚ เช•เชฐเชถเซ‡.

6. เชจเซ‹เชก เชเชซเชฟเชจเชฟเชŸเซ€ เช…เชจเซ‡ เชชเซ‹เชก เชเชซเชฟเชจเชฟเชŸเซ€ เชตเชฟเชถเซ‡ เชญเซ‚เชฒเชถเซ‹ เชจเชนเซ€เช‚

เชจเชต เช•เซเชฌเชฐเชจเซ‡เชŸเซเชธ เชชเซเชฐเชฆเชฐเซเชถเชจ เชŸเชฟเชชเซเชธ

เชฌเชงเชพ เชจเซ‹เชกเซเชธ เชเช• เชœ เชนเชพเชฐเซเชกเชตเซ‡เชฐ เชชเชฐ เชšเชพเชฒเชคเชพ เชจเชฅเซ€, เช…เชจเซ‡ เชฌเชงเชพ เชชเซ‹เชกเซเชธเชจเซ‡ เช—เชฃเชคเชฐเซ€-เชธเช˜เชจ เชเชชเซเชฒเชฟเช•เซ‡เชถเชจ เชšเชฒเชพเชตเชตเชพเชจเซ€ เชœเชฐเซ‚เชฐ เชจเชฅเซ€. เช•เซเชฌเชฐเชจเซ‡เชŸเซเชธ เชคเชฎเชจเซ‡ เชจเซ‹เชกเซเชธ เช…เชจเซ‡ เชชเซ‹เชกเซเชธเชจเซ‹ เช‰เชชเชฏเซ‹เช— เช•เชฐเซ€เชจเซ‡ เชตเชฟเชถเชฟเชทเซเชŸเชคเชพเชจเซ‹ เช‰เชฒเซเชฒเซ‡เช– เช•เชฐเชตเชพเชจเซ€ เชฎเช‚เชœเซ‚เชฐเซ€ เช†เชชเซ‡ เช›เซ‡ เชจเซ‹เชก เชเชซเชฟเชจเชฟเชŸเซ€ ะธ เชชเซ‹เชก เชเชซเชฟเชจเชฟเชŸเซ€.

เชœเซ‹ เชคเชฎเชพเชฐเซ€ เชชเชพเชธเซ‡ เช—เชฃเชคเชฐเซ€-เชธเช˜เชจ เช•เชพเชฎเช—เซ€เชฐเซ€ เชฎเชพเชŸเซ‡ เชฏเซ‹เช—เซเชฏ เช—เชพเช‚เช เซ‹ เชนเซ‹เชฏ, เชคเซ‹ เชฎเชนเชคเซเชคเชฎ เช•เชพเชฐเซเชฏเช•เซเชทเชฎเชคเชพ เชฎเชพเชŸเซ‡, เชฏเซ‹เช—เซเชฏ เชจเซ‹เชกเซเชธ เชธเชพเชฅเซ‡ เชเชชเซเชฒเชฟเช•เซ‡เชถเชจเชจเซ‡ เชฌเชพเช‚เชงเชตเซเช‚ เชตเชงเซ เชธเชพเชฐเซเช‚ เช›เซ‡. เช† เช•เชฐเชตเชพ เชฎเชพเชŸเซ‡, เช‰เชชเชฏเซ‹เช— เช•เชฐเซ‹ nodeSelector เชจเซ‹เชก เชฒเซ‡เชฌเชฒ เชธเชพเชฅเซ‡.

เชงเชพเชฐเซ‹ เช•เซ‡ เชคเชฎเชพเชฐเซ€ เชชเชพเชธเซ‡ เชฌเซ‡ เช—เชพเช‚เช เซ‹ เช›เซ‡: เชเช• เชธเชพเชฅเซ‡ CPUType=HIGHFREQ เช…เชจเซ‡ เชฎเซ‹เชŸเซ€ เชธเช‚เช–เซเชฏเชพเชฎเชพเช‚ เชเชกเชชเซ€ เช•เซ‹เชฐเซ‹, เช…เชจเซเชฏ เชธเชพเชฅเซ‡ MemoryType=HIGHMEMORY เชตเชงเซ เชฎเซ‡เชฎเชฐเซ€ เช…เชจเซ‡ เชเชกเชชเซ€ เช•เชพเชฎเช—เซ€เชฐเซ€. เชจเซ‹เชกเชจเซ‡ เชชเซ‹เชก เชกเชฟเชชเซเชฒเซ‹เชฏเชฎเซ‡เชจเซเชŸ เชธเซ‹เช‚เชชเชตเชพเชจเซ‹ เชธเซŒเชฅเซ€ เชธเชนเซ‡เชฒเซ‹ เชฐเชธเซเชคเซ‹ เช›เซ‡ HIGHFREQเชตเชฟเชญเชพเช—เชฎเชพเช‚ เช‰เชฎเซ‡เชฐเซ€เชจเซ‡ spec เช†เชจเชพ เชœเซ‡เชตเซ‹ เชชเชธเช‚เชฆเช—เซ€เช•เชพเชฐ:

โ€ฆ
nodeSelector:
	CPUType: HIGHFREQ

เช† เช•เชฐเชตเชพ เชฎเชพเชŸเซ‡ เชตเชงเซ เช–เชฐเซเชšเชพเชณ เช…เชจเซ‡ เชตเชฟเชถเชฟเชทเซเชŸ เชฐเซ€เชคเชจเซ‹ เช‰เชชเชฏเซ‹เช— เช•เชฐเชตเซ‹ เช›เซ‡ nodeAffinity เช•เซเชทเซ‡เชคเซเชฐเชฎเชพเช‚ affinity เช“ spec. เชคเซเชฏเชพเช‚ เชฌเซ‡ เชตเชฟเช•เชฒเซเชชเซ‹ เช›เซ‡:

  • requiredDuringSchedulingIgnoredDuringExecution: เชนเชพเชฐเซเชก เชธเซ‡เชŸเชฟเช‚เช— (เชถเซ‡เชกเซเชฏเซเชฒเชฐ เชซเช•เซเชค เชšเซ‹เช•เซเช•เชธ เชจเซ‹เชกเซเชธ เชชเชฐ เชœ เชชเซ‹เชกเซเชธ เชœเชฎเชพเชตเชถเซ‡ (เช…เชจเซ‡ เชฌเซ€เชœเซ‡ เช•เซเชฏเชพเช‚เชฏ เชจเชนเซ€เช‚));

  • preferredDuringSchedulingIgnoredDuringExecution: เชธเซ‹เชซเซเชŸ เชธเซ‡เชŸเชฟเช‚เช— (เชถเซ‡เชกเซเชฏเซเชฒเชฐ เชšเซ‹เช•เซเช•เชธ เชจเซ‹เชกเซเชธ เชชเชฐ เชœเชฎเชพเชตเชŸ เช•เชฐเชตเชพเชจเซ‹ เชชเซเชฐเชฏเชพเชธ เช•เชฐเชถเซ‡, เช…เชจเซ‡ เชœเซ‹ เชคเซ‡ เชจเชฟเชทเซเชซเชณ เชœเชพเชฏ, เชคเซ‹ เชคเซ‡ เช†เช—เชพเชฎเซ€ เช‰เชชเชฒเชฌเซเชง เชจเซ‹เชก เชชเชฐ เชœเชฎเชพเชตเชŸ เช•เชฐเชตเชพเชจเซ‹ เชชเซเชฐเชฏเชพเชธ เช•เชฐเชถเซ‡).

เชคเชฎเซ‡ เชจเซ‹เชก เชฒเซ‡เชฌเชฒเซเชธเชจเซเช‚ เชธเช‚เชšเชพเชฒเชจ เช•เชฐเชตเชพ เชฎเชพเชŸเซ‡ เชšเซ‹เช•เซเช•เชธ เชธเชฟเชจเซเชŸเซ‡เช•เซเชธเชจเซ‹ เช‰เชฒเซเชฒเซ‡เช– เช•เชฐเซ€ เชถเช•เซ‹ เช›เซ‹, เช‰เชฆเชพเชนเชฐเชฃ เชคเชฐเซ€เช•เซ‡, In, NotIn, Exists, DoesNotExist, Gt เช…เชฅเชตเชพ Lt. เชœเซ‹ เช•เซ‡, เชฏเชพเชฆ เชฐเชพเช–เซ‹ เช•เซ‡ เชฒเซ‡เชฌเชฒเซ‹เชจเซ€ เชฒเชพเช‚เชฌเซ€ เชธเซ‚เชšเชฟเชฎเชพเช‚ เชœเชŸเชฟเชฒ เชชเชฆเซเชงเชคเชฟเช“ เชœเชŸเชฟเชฒ เชชเชฐเชฟเชธเซเชฅเชฟเชคเชฟเช“เชฎเชพเช‚ เชจเชฟเชฐเซเชฃเชฏ เชฒเซ‡เชตเชพเชจเซ€ เชชเซเชฐเช•เซเชฐเชฟเชฏเชพเชจเซ‡ เชงเซ€เชฎเซเช‚ เช•เชฐเชถเซ‡. เชฌเซ€เชœเชพ เชถเชฌเซเชฆเซ‹เชฎเชพเช‚ เช•เชนเซ€เช เชคเซ‹, เชตเชงเซ เชœเชŸเชฟเชฒ เชจ เช•เชฐเซ‹.

เช‰เชชเชฐ เชœเชฃเชพเชตเซเชฏเชพ เชฎเซเชœเชฌ, เช•เซเชฌเชฐเชจเซ‡เชŸเซเชธ เชคเชฎเชจเซ‡ เชตเชฐเซเชคเชฎเชพเชจ เชถเซ€เช‚เช—เซ‹เชจเซเช‚ เชฌเช‚เชงเชจ เชธเซ‡เชŸ เช•เชฐเชตเชพเชจเซ€ เชฎเช‚เชœเซ‚เชฐเซ€ เช†เชชเซ‡ เช›เซ‡. เชเชŸเชฒเซ‡ เช•เซ‡, เชคเชฎเซ‡ เชšเซ‹เช•เซเช•เชธ เชชเซ‹เชกเซเชธเชจเซ‡ เชธเชฎเชพเชจ เช‰เชชเชฒเชฌเซเชงเชคเชพ เชเซ‹เชจ (เชตเชพเชฆเชณเซ‹ เชฎเชพเชŸเซ‡ เชธเช‚เชฌเช‚เชงเชฟเชค) เช…เชฅเชตเชพ เชจเซ‹เชกเซเชธเชฎเชพเช‚ เช…เชจเซเชฏ เชถเซ€เช‚เช—เซ‹ เชธเชพเชฅเซ‡ เชฎเชณเซ€เชจเซ‡ เช•เชพเชฎ เช•เชฐเซ€ เชถเช•เซ‹ เช›เซ‹.

ะ’ podAffinity เช•เซเชทเซ‡เชคเซเชฐเซ‹ affinity เช“ spec เชจเชพ เช•เชฟเชธเซเชธเชพเชฎเชพเช‚ เชธเชฎเชพเชจ เช•เซเชทเซ‡เชคเซเชฐเซ‹ เช‰เชชเชฒเชฌเซเชง เช›เซ‡ nodeAffinity: requiredDuringSchedulingIgnoredDuringExecution ะธ preferredDuringSchedulingIgnoredDuringExecution. เชซเชฐเช• เชฎเชพเชคเซเชฐ เชเชŸเชฒเซ‹ เชœ เช›เซ‡ matchExpressions เชชเซ‹เชกเซเชธเชจเซ‡ เชจเซ‹เชก เชธเชพเชฅเซ‡ เชœเซ‹เชกเชถเซ‡ เชœเซ‡ เชคเซ‡ เชฒเซ‡เชฌเชฒ เชธเชพเชฅเซ‡ เชชเชนเซ‡เชฒเซ‡เชฅเซ€ เชœ เชชเซ‹เชก เชšเชฒเชพเชตเซ€ เชฐเชนเซเชฏเซเช‚ เช›เซ‡.

เชตเชงเซ เช•เซเชฌเชฐเชจเซ‡เชŸเซเชธ เชเช• เช•เซเชทเซ‡เชคเซเชฐ เชชเซเชฐเชฆเชพเชจ เช•เชฐเซ‡ เช›เซ‡ podAntiAffinity, เชœเซ‡, เชคเซ‡เชจเชพเชฅเซ€ เชตเชฟเชชเชฐเชฟเชค, เชšเซ‹เช•เซเช•เชธ เชชเซ‹เชกเซเชธ เชธเชพเชฅเซ‡ เชจเซ‹เชก เชธเชพเชฅเซ‡ เชชเซ‹เชกเชจเซ‡ เชฌเชพเช‚เชงเชคเซเช‚ เชจเชฅเซ€.

เช…เชญเชฟเชตเซเชฏเช•เซเชคเชฟเช“ เชตเชฟเชถเซ‡ nodeAffinity เชธเชฎเชพเชจ เชธเชฒเชพเชน เช†เชชเซ€ เชถเช•เชพเชฏ เช›เซ‡: เชจเชฟเชฏเชฎเซ‹เชจเซ‡ เชธเชฐเชณ เช…เชจเซ‡ เชคเชพเชฐเซเช•เชฟเช• เชฐเชพเช–เชตเชพเชจเซ‹ เชชเซเชฐเชฏเชพเชธ เช•เชฐเซ‹, เชจเชฟเชฏเชฎเซ‹เชจเชพ เชœเชŸเชฟเชฒ เชธเชฎเซ‚เชน เชธเชพเชฅเซ‡ เชชเซ‹เชก เชธเซเชชเชทเซเชŸเซ€เช•เชฐเชฃเชจเซ‡ เช“เชตเชฐเชฒเซ‹เชก เช•เชฐเชตเชพเชจเซ‹ เชชเซเชฐเชฏเชพเชธ เช•เชฐเชถเซ‹ เชจเชนเซ€เช‚. เช•เซเชฒเชธเซเชŸเชฐเชจเซ€ เชถเชฐเชคเซ‹ เชธเชพเชฅเซ‡ เชฎเซ‡เชณ เช–เชพเชคเซ‹ เชจ เชนเซ‹เชฏ เชเชตเซ‹ เชจเชฟเชฏเชฎ เชฌเชจเชพเชตเชตเซ‹ เช–เซ‚เชฌ เชœ เชธเชฐเชณ เช›เซ‡, เชถเซ‡เชกเซเชฏเซ‚เชฒเชฐ เชชเชฐ เชตเชงเชพเชฐเชพเชจเซ‹ เชญเชพเชฐ เชฎเซ‚เช•เซ‡ เช›เซ‡ เช…เชจเซ‡ เชเช•เช‚เชฆเชฐ เชชเซเชฐเชฆเชฐเซเชถเชจเชจเซ‡ เชฌเช—เชพเชกเซ‡ เช›เซ‡.

7. เช•เชฒเช‚เช• เช…เชจเซ‡ เชธเชนเชจเชถเซ€เชฒเชคเชพ

เชถเซ‡เชกเซเชฏเซ‚เชฒเชฐเชจเซเช‚ เชธเช‚เชšเชพเชฒเชจ เช•เชฐเชตเชพเชจเซ€ เชฌเซ€เชœเซ€ เชฐเซ€เชค เช›เซ‡. เชœเซ‹ เชคเชฎเชพเชฐเซ€ เชชเชพเชธเซ‡ เชธเซ‡เช‚เช•เชกเซ‹ เชจเซ‹เชกเซเชธ เช…เชจเซ‡ เชนเชœเชพเชฐเซ‹ เชฎเชพเช‡เช•เซเชฐเซ‹เชธเชฐเซเชตเชฟเชธเชฟเชธ เชธเชพเชฅเซ‡เชจเซเช‚ เชฎเซ‹เชŸเซเช‚ เช•เซเชฒเชธเซเชŸเชฐ เชนเซ‹เชฏ, เชคเซ‹ เชšเซ‹เช•เซเช•เชธ เชจเซ‹เชกเซเชธ เชฆเซเชตเชพเชฐเชพ เชนเซ‹เชธเซเชŸ เชฅเชคเชพ เช…เชฎเซเช• เชชเซ‹เชกเซเชธเชจเซ‡ เช…เชŸเช•เชพเชตเชตเชพเชจเซเช‚ เช–เซ‚เชฌ เชœ เชฎเซเชถเซเช•เซ‡เชฒ เช›เซ‡.

เช•เชฒเช‚เช•เชจเซ€ เชชเชฆเซเชงเชคเชฟ - เชชเซเชฐเชคเชฟเชฌเช‚เชงเชฟเชค เชจเชฟเชฏเชฎเซ‹ - เช†เชฎเชพเช‚ เชฎเชฆเชฆ เช•เชฐเซ‡ เช›เซ‡. เช‰เชฆเชพเชนเชฐเชฃ เชคเชฐเซ€เช•เซ‡, เชคเชฎเซ‡ เชšเซ‹เช•เซเช•เชธ เชจเซ‹เชกเซเชธเชจเซ‡ เช…เชฎเซเช• เชชเชฐเชฟเชธเซเชฅเชฟเชคเชฟเช“เชฎเชพเช‚ เชชเซ‹เชกเซเชธ เชšเชฒเชพเชตเชตเชพเชฅเซ€ เชฐเซ‹เช•เซ€ เชถเช•เซ‹ เช›เซ‹. เชšเซ‹เช•เซเช•เชธ เชจเซ‹เชก เชชเชฐ เช•เชฒเช‚เช• เชฒเชพเช—เซ เช•เชฐเชตเชพ เชฎเชพเชŸเซ‡, เชตเชฟเช•เชฒเซเชชเชจเซ‹ เช‰เชชเชฏเซ‹เช— เช•เชฐเซ‹ taint kubectl เชฎเชพเช‚. เช•เซ€ เช…เชจเซ‡ เชฎเซ‚เชฒเซเชฏเชจเซ‹ เช‰เชฒเซเชฒเซ‡เช– เช•เชฐเซ‹ เช…เชจเซ‡ เชชเช›เซ€ เช•เชฒเช‚เช• เช•เชฐเซ‹ NoSchedule เช…เชฅเชตเชพ NoExecute:

$ kubectl taint nodes node10 node-role.kubernetes.io/ingress=true:NoSchedule

เชคเซ‡ เชจเซ‹เช‚เชงเชตเซเช‚ เชชเชฃ เชฏเซ‹เช—เซเชฏ เช›เซ‡ เช•เซ‡ เช•เชฒเช‚เช• เชชเชฆเซเชงเชคเชฟ เชคเซเชฐเชฃ เชฎเซเช–เซเชฏ เช…เชธเชฐเซ‹เชจเซ‡ เชธเชฎเชฐเซเชฅเชจ เช†เชชเซ‡ เช›เซ‡: NoSchedule, NoExecute ะธ PreferNoSchedule.

  • NoSchedule เชเชŸเชฒเซ‡ เช•เซ‡ เชœเซเชฏเชพเช‚ เชธเซเชงเซ€ เชชเซ‹เชก เชธเซเชชเชทเซเชŸเซ€เช•เชฐเชฃเชฎเชพเช‚ เช…เชจเซเชฐเซ‚เชช เชเชจเซเชŸเซเชฐเซ€ เชจ เชนเซ‹เชฏ เชคเซเชฏเชพเช‚ เชธเซเชงเซ€ tolerations, เชคเซ‡ เชจเซ‹เชก เชชเชฐ เชœเชฎเชพเชตเซ€ เชถเช•เชพเชคเซเช‚ เชจเชฅเซ€ (เช† เช‰เชฆเชพเชนเชฐเชฃเชฎเชพเช‚ node10).

  • PreferNoSchedule - เชธเชฐเชณ เชธเช‚เชธเซเช•เชฐเชฃ NoSchedule. เช† เช•เชฟเชธเซเชธเชพเชฎเชพเช‚, เชถเซ‡เชกเซเชฏเซ‚เชฒเชฐ เชเชตเชพ เชชเซ‹เชกเซเชธเชจเซ€ เชซเชพเชณเชตเชฃเซ€ เชจ เช•เชฐเชตเชพเชจเซ‹ เชชเซเชฐเชฏเชพเชธ เช•เชฐเชถเซ‡ เช•เซ‡ เชœเซ‡เชฎเชพเช‚ เชฎเซ‡เชšเชฟเช‚เช— เชเชจเซเชŸเซเชฐเซ€ เชจเชฅเซ€. tolerations เชจเซ‹เชก เชฆเซ€เช , เชชเชฐเช‚เชคเซ เช† เชธเช–เชค เชฎเชฐเซเชฏเชพเชฆเชพ เชจเชฅเซ€. เชœเซ‹ เช•เซเชฒเชธเซเชŸเชฐเชฎเชพเช‚ เช•เซ‹เชˆ เชธเช‚เชธเชพเชงเชจเซ‹ เชจ เชนเซ‹เชฏ, เชคเซ‹ เชชเช›เซ€ เชถเซ€เช‚เช—เซ‹ เช† เชจเซ‹เชก เชชเชฐ เชœเชฎเชพเชตเชŸ เช•เชฐเชตเชพเชจเซเช‚ เชถเชฐเซ‚ เช•เชฐเชถเซ‡.

  • NoExecute - เช† เช…เชธเชฐ เชชเซ‹เชกเซเชธเชจเซ‡ เชคเชพเชคเซเช•เชพเชฒเชฟเช• เช–เชพเชฒเซ€ เช•เชฐเชตเชพ เชฎเชพเชŸเซ‡ เชŸเซเชฐเชฟเช—เชฐ เช•เชฐเซ‡ เช›เซ‡ เชœเซ‡เชฎเชพเช‚ เชฎเซ‡เชšเชฟเช‚เช— เชเชจเซเชŸเซเชฐเซ€ เชจเชฅเซ€ tolerations.

เชตเชฟเชšเชฟเชคเซเชฐ เชฐเซ€เชคเซ‡, เช† เชตเชฐเซเชคเชฃเซ‚เช•เชจเซ‡ เชธเชนเชจ เช•เชฐเชตเชพเชจเซ€ เชชเชฆเซเชงเชคเชฟเชจเซ‹ เช‰เชชเชฏเซ‹เช— เช•เชฐเซ€เชจเซ‡ เชชเซ‚เชฐเซเชตเชตเชคเซ เช•เชฐเซ€ เชถเช•เชพเชฏ เช›เซ‡. เชœเซเชฏเชพเชฐเซ‡ "เชชเซเชฐเชคเชฟเชฌเช‚เชงเชฟเชค" เชจเซ‹เชก เชนเซ‹เชฏ เชคเซเชฏเชพเชฐเซ‡ เช† เช…เชจเซเช•เซ‚เชณ เช›เซ‡ เช…เชจเซ‡ เชคเชฎเชพเชฐเซ‡ เชคเซ‡เชจเชพ เชชเชฐ เชซเช•เซเชค เชฎเชพเชณเช–เชพเช•เซ€เชฏ เชธเซ‡เชตเชพเช“ เชฎเซ‚เช•เชตเชพเชจเซ€ เชœเชฐเซ‚เชฐ เช›เซ‡. เชคเซ‡ เช•เซ‡เชตเซ€ เชฐเซ€เชคเซ‡ เช•เชฐเชตเซเช‚? เชซเช•เซเชค เชคเซ‡ เชœ เชถเซ€เช‚เช—เซ‹เชจเซ‡ เชฎเช‚เชœเซ‚เชฐเซ€ เช†เชชเซ‹ เชœเซ‡เชจเชพ เชฎเชพเชŸเซ‡ เชฏเซ‹เช—เซเชฏ เชธเชนเชจเชถเซ€เชฒเชคเชพ เชนเซ‹เชฏ.

เชชเซ‹เชก เชธเซเชชเซ‡เช• เช•เซ‡เชตเซ‹ เชฆเซ‡เช–เชพเชถเซ‡ เชคเซ‡ เช…เชนเซ€เช‚ เช›เซ‡:

spec:
   tolerations:
     - key: "node-role.kubernetes.io/ingress"
        operator: "Equal"
        value: "true"
        effect: "NoSchedule"

เช†เชจเซ‹ เช…เชฐเซเชฅ เช เชจเชฅเซ€ เช•เซ‡ เช†เช—เชพเชฎเซ€ เชชเซเชจเชƒเช‰เชชเชฏเซ‹เช— เชฆเชฐเชฎเชฟเชฏเชพเชจ, เชชเซ‹เชก เช† เชจเซ‹เชกเชจเซ‡ เชฌเชฐเชพเชฌเชฐ เชนเชฟเชŸ เช•เชฐเชถเซ‡, เช† เชจเซ‹เชก เชเชซเชฟเชจเชฟเชŸเซ€ เชฎเชฟเช•เซ‡เชจเชฟเชเชฎ เชจเชฅเซ€ เช…เชจเซ‡ nodeSelector. เชชเชฐเช‚เชคเซ เช˜เชฃเซ€ เชธเซเชตเชฟเชงเชพเช“เชจเซ‡ เชธเช‚เชฏเซ‹เชœเชฟเชค เช•เชฐเซ€เชจเซ‡, เชคเชฎเซ‡ เช–เซ‚เชฌ เชœ เชฒเชตเชšเซ€เช• เชถเซ‡เชกเซเชฏเซ‚เชฒเชฐ เชธเซ‡เชŸเช…เชช เชชเซเชฐเชพเชชเซเชค เช•เชฐเซ€ เชถเช•เซ‹ เช›เซ‹.

8. เชชเซ‹เชก เชกเชฟเชชเซเชฒเซ‹เชฏเชฎเซ‡เชจเซเชŸ เชชเซเชฐเชพเชงเชพเชจเซเชฏเชคเชพ เชธเซ‡เชŸ เช•เชฐเซ‹

เชคเชฎเซ‡ เชชเซ‹เชก-เชŸเซ-เชจเซ‹เชก เชฌเชพเชˆเชจเซเชกเซ€เช‚เช—เซเชธ เช—เซ‹เช เชตเซเชฏเชพ เชนเซ‹เชตเชพเชจเซ‹ เช…เชฐเซเชฅ เช เชจเชฅเซ€ เช•เซ‡ เชคเชฎเชพเชฎ เชชเซ‹เชกเซเชธเชจเซ‡ เชธเชฎเชพเชจ เช…เช—เซเชฐเชคเชพ เชธเชพเชฅเซ‡ เชตเซเชฏเชตเชนเชพเชฐ เช•เชฐเชตเซ‹ เชœเซ‹เชˆเช. เช‰เชฆเชพเชนเชฐเชฃ เชคเชฐเซ€เช•เซ‡, เชคเชฎเซ‡ เชฌเซ€เชœเชพเช“ เชชเชนเซ‡เชฒเชพเช‚ เช•เซ‡เชŸเชฒเชพเช• เชชเซ‹เชกเซเชธ เชœเชฎเชพเชตเชตเชพ เชฎเชพเช—เซ€ เชถเช•เซ‹ เช›เซ‹.

เช•เซเชฌเชฐเชจเซ‡เชŸเซเชธ เชชเซ‹เชก เชชเซเชฐเชพเชฏเซ‹เชฐเชฟเชŸเซ€ เช…เชจเซ‡ เชชเซเชฐเซ€เชฎเซเชชเชถเชจ เชธเซ‡เชŸ เช•เชฐเชตเชพเชจเซ€ เช…เชฒเช— เช…เชฒเช— เชฐเซ€เชคเซ‹ เช“เชซเชฐ เช•เชฐเซ‡ เช›เซ‡. เชธเซ‡เชŸเชฟเช‚เช—เชฎเชพเช‚ เช˜เชฃเชพ เชญเชพเช—เซ‹เชจเซ‹ เชธเชฎเชพเชตเซ‡เชถ เชฅเชพเชฏ เช›เซ‡: เช‘เชฌเซเชœเซ‡เช•เซเชŸ PriorityClass เช…เชจเซ‡ เช•เซเชทเซ‡เชคเซเชฐ เชตเชฐเซเชฃเชจเซ‹ priorityClassName เชชเซ‹เชก เชธเซเชชเชทเซเชŸเซ€เช•เชฐเชฃเชฎเชพเช‚. เชเช• เช‰เชฆเชพเชนเชฐเชฃ เชงเซเชฏเชพเชจเชฎเชพเช‚ เชฒเซ‹:

apiVersion: scheduling.k8s.io/v1
kind: PriorityClass
metadata:
  name: high-priority
value: 99999
globalDefault: false
description: "This priority class should be used for very important pods only"

เช…เชฎเซ‡ เชฌเชจเชพเชตเซ€เช เช›เซ€เช PriorityClass, เชคเซ‡เชจเซ‡ เชจเชพเชฎ, เชตเชฐเซเชฃเชจ เช…เชจเซ‡ เชฎเซ‚เชฒเซเชฏ เช†เชชเซ‹. เช‰เชšเซเชš value, เช‰เชšเซเชš เช…เช—เซเชฐเชคเชพ. เชฎเซ‚เชฒเซเชฏ เช•เซ‹เชˆเชชเชฃ 32-เชฌเซ€เชŸ เชชเซ‚เชฐเซเชฃเชพเช‚เช• 1 เช•เชฐเชคเชพเช‚ เช“เช›เซเช‚ เช…เชฅเชตเชพ เชคเซ‡เชจเซ€ เชฌเชฐเชพเชฌเชฐ เชนเซ‹เชˆ เชถเช•เซ‡ เช›เซ‡. เช‰เชšเซเชš เชฎเซ‚เชฒเซเชฏเซ‹ เชฎเชฟเชถเชจ-เช•เซเชฐเชฟเชŸเซ€เช•เชฒ เชธเชฟเชธเซเชŸเชฎ เชชเซ‹เชกเซเชธ เชฎเชพเชŸเซ‡ เช†เชฐเช•เซเชทเชฟเชค เช›เซ‡, เชœเซ‡ เชธเชพเชฎเชพเชจเซเชฏ เชฐเซ€เชคเซ‡ เชชเซ‚เชฐเซเชตเซ‡เชฎเซเชชเซเชŸ เช•เชฐเซ€ เชถเช•เชพเชคเชพ เชจเชฅเซ€. เช–เชพเชฒเซ€ เช•เชฐเชพเชตเชตเชพเชจเซ€ เชชเซเชฐเช•เซเชฐเชฟเชฏเชพ เชคเซเชฏเชพเชฐเซ‡ เชœ เชฅเชถเซ‡ เชœเซเชฏเชพเชฐเซ‡ เช‰เชšเซเชš-เชชเซเชฐเชพเชฏเซ‹เชฐเชฟเชŸเซ€ เชชเซ‹เชกเชฎเชพเช‚ เช•เซเชฏเชพเช‚เชฏ เชซเชฐเชตเชพเชจเซเช‚ เชจ เชนเซ‹เชฏ, เชคเซ‹ เชšเซ‹เช•เซเช•เชธ เชจเซ‹เชกเชฎเชพเช‚เชฅเซ€ เช•เซ‡เชŸเชฒเชพเช• เชชเซ‹เชกเซเชธ เช–เชพเชฒเซ€ เช•เชฐเชตเชพเชฎเชพเช‚ เช†เชตเชถเซ‡. เชœเซ‹ เช† เชฎเชฟเช•เซ‡เชจเชฟเชเชฎ เชคเชฎเชพเชฐเชพ เชฎเชพเชŸเซ‡ เช–เซ‚เชฌ เช•เช เซ‹เชฐ เช›เซ‡, เชคเซ‹ เชชเช›เซ€ เชคเชฎเซ‡ เชตเชฟเช•เชฒเซเชช เช‰เชฎเซ‡เชฐเซ€ เชถเช•เซ‹ เช›เซ‹ preemptionPolicy: Never, เช…เชจเซ‡ เชชเช›เซ€ เช•เซ‹เชˆ เชชเซ‚เชฐเซเชตเช—เซเชฐเชน เชฐเชนเซ‡เชถเซ‡ เชจเชนเซ€เช‚, เชชเซ‹เชก เช•เชคเชพเชฐเชฎเชพเช‚ เชชเซเชฐเชฅเชฎ เชนเชถเซ‡ เช…เชจเซ‡ เชคเซ‡เชจเชพ เชฎเชพเชŸเซ‡ เชฎเชซเชค เชธเช‚เชธเชพเชงเชจเซ‹ เชถเซ‹เชงเชตเชพ เชฎเชพเชŸเซ‡ เชถเซ‡เชกเซเชฏเซ‚เชฒเชฐเชจเซ€ เชฐเชพเชน เชœเซเช“.

เช†เช—เชณ, เช…เชฎเซ‡ เชเช• เชชเซ‹เชก เชฌเชจเชพเชตเซ€เช เช›เซ€เช, เชœเซ‡เชฎเชพเช‚ เช†เชชเชฃเซ‡ เชจเชพเชฎเชจเซ‹ เช‰เชฒเซเชฒเซ‡เช– เช•เชฐเซ€เช เช›เซ€เช priorityClassName:

apiVersion: v1
kind: Pod
metadata:
  name: static-web
  labels:
    role: myrole
 spec:
  containers:
    - name: web
      image: nginx
      ports:
        - name: web
          containerPort: 80
          protocol: TCP
  priorityClassName: high-priority
          

เชคเชฎเซ‡ เช—เชฎเซ‡ เชคเซ‡เชŸเชฒเชพ เช…เช—เซเชฐเชคเชพ เชตเชฐเซเช—เซ‹ เชฌเชจเชพเชตเซ€ เชถเช•เซ‹ เช›เซ‹, เชœเซ‹ เช•เซ‡ เช†เชจเชพเชฅเซ€ เชฆเซ‚เชฐ เชจ เชฐเชนเซ‡เชตเชพเชจเซ€ เชญเชฒเชพเชฎเชฃ เช•เชฐเชตเชพเชฎเชพเช‚ เช†เชตเซ‡ เช›เซ‡ (เช•เชนเซ‹, เชคเชฎเชพเชฐเซ€ เชœเชพเชคเชจเซ‡ เช“เช›เซ€, เชฎเชงเซเชฏเชฎ เช…เชจเซ‡ เช‰เชšเซเชš เชชเซเชฐเชพเชฅเชฎเชฟเช•เชคเชพ เชธเซเชงเซ€ เชฎเชฐเซเชฏเชพเชฆเชฟเชค เช•เชฐเซ‹).

เช†เชฎ, เชœเซ‹ เชœเชฐเซ‚เชฐเซ€ เชนเซ‹เชฏ เชคเซ‹, เชคเชฎเซ‡ เชจเชฟเชฐเซเชฃเชพเชฏเช• เชธเซ‡เชตเชพเช“, เชœเซ‡เชฎ เช•เซ‡ nginx-ingress-controller, coredns, เชตเช—เซ‡เชฐเซ‡เชจเซ‡ เชœเชฎเชพเชตเชตเชพเชจเซ€ เช•เชพเชฐเซเชฏเช•เซเชทเชฎเชคเชพ เชตเชงเชพเชฐเซ€ เชถเช•เซ‹ เช›เซ‹.

9. เชคเชฎเชพเชฐเชพ ETCD เช•เซเชฒเชธเซเชŸเชฐเชจเซ‡ เช‘เชชเซเชŸเชฟเชฎเชพเช‡เช เช•เชฐเซ‹

เชจเชต เช•เซเชฌเชฐเชจเซ‡เชŸเซเชธ เชชเซเชฐเชฆเชฐเซเชถเชจ เชŸเชฟเชชเซเชธ

ETCD เชจเซ‡ เชธเชฎเช—เซเชฐ เช•เซเชฒเชธเซเชŸเชฐเชจเซเช‚ เชฎเช—เชœ เช•เชนเซ€ เชถเช•เชพเชฏ. เช† เชกเซ‡เชŸเชพเชฌเซ‡เชเชจเซ€ เช•เชพเชฎเช—เซ€เชฐเซ€เชจเซ‡ เช‰เชšเซเชš เชธเซเชคเชฐเซ‡ เชœเชพเชณเชตเชตเซ€ เช–เซ‚เชฌ เชœ เชฎเชนเชคเซเชตเชชเซ‚เชฐเซเชฃ เช›เซ‡, เช•เชพเชฐเชฃ เช•เซ‡ "เช•เซเชฏเซเชฌ" เชฎเชพเช‚ เช•เชพเชฎเช—เซ€เชฐเซ€เชจเซ€ เชเชกเชช เชคเซ‡เชจเชพ เชชเชฐ เชจเชฟเชฐเซเชญเชฐ เช›เซ‡. เชเช•เชฆเชฎ เชชเซเชฐเชฎเชพเชฃเชญเซ‚เชค, เช…เชจเซ‡ เชคเซ‡ เชœ เชธเชฎเชฏเซ‡, เช•เซเชฌเซ‡-เชเชชเชฟเชธเชฐเซเชตเชฐเชฎเชพเช‚ เชจเซเชฏเซ‚เชจเชคเชฎ เชตเชฟเชฒเช‚เชฌ เชฅเชพเชฏ เชคเซ‡ เชฎเชพเชŸเซ‡ เชฎเชพเชธเซเชŸเชฐ เชจเซ‹เชกเซเชธ เชชเชฐ ETCD เช•เซเชฒเชธเซเชŸเชฐ เชฐเชพเช–เชตเชพเชจเซ‹ เชธเชพเชฐเซ‹ เช‰เช•เซ‡เชฒ เช›เซ‡. เชœเซ‹ เช† เชถเช•เซเชฏ เชจ เชนเซ‹เชฏ, เชคเซ‹ เชธเชนเชญเชพเช—เซ€เช“ เชตเชšเซเชšเซ‡ เชธเชพเชฐเซ€ เชฌเซ‡เชจเซเชกเชตเชฟเชกเซเชฅ เชธเชพเชฅเซ‡, ETCD เชถเช•เซเชฏ เชคเซ‡เชŸเชฒเซ€ เชจเชœเซ€เช• เชฎเซ‚เช•เซ‹. เช‡เชŸเซ€เชธเซ€เชกเซ€เชฎเชพเช‚เชฅเซ€ เช•เซ‡เชŸเชฒเชพ เช—เชพเช‚เช เซ‹ เช•เซเชฒเชธเซเชŸเชฐเชจเซ‡ เชจเซเช•เชธเชพเชจ เชชเชนเซ‹เช‚เชšเชพเชกเซเชฏเชพ เชตเชฟเชจเชพ เชฌเชนเชพเชฐ เชชเชกเซ€ เชถเช•เซ‡ เช›เซ‡ เชคเซ‡เชจเชพ เชชเชฐ เชชเชฃ เชงเซเชฏเชพเชจ เช†เชชเซ‹.

เชจเชต เช•เซเชฌเชฐเชจเซ‡เชŸเซเชธ เชชเซเชฐเชฆเชฐเซเชถเชจ เชŸเชฟเชชเซเชธ

เชงเซเชฏเชพเชจเชฎเชพเช‚ เชฐเชพเช–เซ‹ เช•เซ‡ เช•เซเชฒเชธเซเชŸเชฐเชฎเชพเช‚ เชธเชนเชญเชพเช—เซ€เช“เชจเซ€ เชธเช‚เช–เซเชฏเชพเชฎเชพเช‚ เช…เชคเชฟเชถเชฏ เชตเชงเชพเชฐเซ‹ เชชเซเชฐเชฆเชฐเซเชถเชจเชจเชพ เช–เชฐเซเชšเซ‡ เชฆเซ‹เชท เชธเชนเชฟเชทเซเชฃเซเชคเชพเชฎเชพเช‚ เชตเชงเชพเชฐเซ‹ เช•เชฐเซ€ เชถเช•เซ‡ เช›เซ‡, เชฌเชงเซเช‚ เชฎเชงเซเชฏเชธเซเชฅ เชนเซ‹เชตเซเช‚ เชœเซ‹เชˆเช.

เชœเซ‹ เช†เชชเชฃเซ‡ เชธเซ‡เชตเชพ เชธเซ‡เชŸ เช•เชฐเชตเชพ เชตเชฟเชถเซ‡ เชตเชพเชค เช•เชฐเซ€เช, เชคเซ‹ เชคเซเชฏเชพเช‚ เชฅเซ‹เชกเซ€ เชญเชฒเชพเชฎเชฃเซ‹ เช›เซ‡:

  1. เช•เซเชฒเชธเซเชŸเชฐเชจเชพ เช•เชฆเชจเชพ เช†เชงเชพเชฐเซ‡ เชธเชพเชฐเชพ เชนเชพเชฐเซเชกเชตเซ‡เชฐ เชฐเชพเช–เซ‹ (เชคเชฎเซ‡ เชตเชพเช‚เชšเซ€ เชถเช•เซ‹ เช›เซ‹ เช…เชนเซ€เช‚).

  2. เชœเซ‹ เชคเชฎเซ‡ DC เชจเซ€ เชœเซ‹เชกเซ€ เช…เชฅเชตเชพ เชคเชฎเชพเชฐเชพ เชจเซ‡เชŸเชตเชฐเซเช• เช…เชจเซ‡ เชกเชฟเชธเซเช• เชตเชšเซเชšเซ‡ เช•เซเชฒเชธเซเชŸเชฐ เชซเซ‡เชฒเชพเชตเซเชฏเซเช‚ เชนเซ‹เชฏ เชคเซ‹ เชฅเซ‹เชกเชพ เชชเชฐเชฟเชฎเชพเชฃเซ‹เชจเซ‡ เชŸเซเชตเซ€เช• เช•เชฐเซ‹ (เชคเชฎเซ‡ เชตเชพเช‚เชšเซ€ เชถเช•เซ‹ เช›เซ‹) เช…เชนเซ€เช‚).

เชจเชฟเชทเซเช•เชฐเซเชท

เช† เชฒเซ‡เช– เชคเซ‡ เชฎเซเชฆเซเชฆเชพเช“เชจเซเช‚ เชตเชฐเซเชฃเชจ เช•เชฐเซ‡ เช›เซ‡ เชœเซ‡เชจเซเช‚ เช…เชฎเชพเชฐเซ€ เชŸเซ€เชฎ เชชเชพเชฒเชจ เช•เชฐเชตเชพเชจเซ‹ เชชเซเชฐเชฏเชพเชธ เช•เชฐเซ‡ เช›เซ‡. เช† เช•เซเชฐเชฟเชฏเชพเช“เชจเซเช‚ เชชเช—เชฒเซเช‚-เชฆเชฐ-เชชเช—เชฒเชพเช‚ เชตเชฐเซเชฃเชจ เชจเชฅเซ€, เชชเชฐเช‚เชคเซ เช•เซเชฒเชธเซเชŸเชฐเชจเชพ เช“เชตเชฐเชนเซ‡เชกเชจเซ‡ เช‘เชชเซเชŸเชฟเชฎเชพเช‡เช เช•เชฐเชตเชพ เชฎเชพเชŸเซ‡ เช‰เชชเชฏเซ‹เช—เซ€ เชฅเชˆ เชถเช•เซ‡ เชคเซ‡เชตเชพ เชตเชฟเช•เชฒเซเชชเซ‹ เช›เซ‡. เชคเซ‡ เชธเซเชชเชทเซเชŸ เช›เซ‡ เช•เซ‡ เชฆเชฐเซ‡เช• เช•เซเชฒเชธเซเชŸเชฐ เชคเซ‡เชจเซ€ เชชเซ‹เชคเชพเชจเซ€ เชฐเซ€เชคเซ‡ เช…เชจเชจเซเชฏ เช›เซ‡, เช…เชจเซ‡ เชŸเซเชฏเซเชจเชฟเช‚เช— เชธเซ‹เชฒเซเชฏเซเชถเชจเซเชธ เชฎเซ‹เชŸเชพ เชชเซเชฐเชฎเชพเชฃเชฎเชพเช‚ เชฌเชฆเชฒเชพเชˆ เชถเช•เซ‡ เช›เซ‡, เชคเซ‡เชฅเซ€ เชคเชฎเชพเชฐเชพ เชคเชฐเชซเชฅเซ€ เชชเซเชฐเชคเชฟเชธเชพเชฆ เชฎเซ‡เชณเชตเชตเซ‹ เชฐเชธเชชเซเชฐเชฆ เชฐเชนเซ‡เชถเซ‡: เชคเชฎเซ‡ เชคเชฎเชพเชฐเชพ เช•เซเชฌเชฐเชจเซ‡เชŸเซเชธ เช•เซเชฒเชธเซเชŸเชฐเชจเซ‡ เช•เซ‡เชตเซ€ เชฐเซ€เชคเซ‡ เชฎเซ‹เชจเชฟเชŸเชฐ เช•เชฐเซ‹ เช›เซ‹, เชคเชฎเซ‡ เชคเซ‡เชจเซเช‚ เชชเซเชฐเชฆเชฐเซเชถเชจ เช•เซ‡เชตเซ€ เชฐเซ€เชคเซ‡ เชธเซเชงเชพเชฐเชถเซ‹. เชŸเชฟเชชเซเชชเชฃเซ€เช“เชฎเชพเช‚ เชคเชฎเชพเชฐเซ‹ เช…เชจเซเชญเชต เชถเซ‡เชฐ เช•เชฐเซ‹, เชคเซ‡ เชœเชพเชฃเชตเซเช‚ เชฐเชธเชชเซเชฐเชฆ เชฐเชนเซ‡เชถเซ‡.

เชธเซ‹เชฐเซเชธ: www.habr.com