เด•เตเดฌเต†เตผเดจเต†เดฑเตเดฑเดธเต: เดธเดฟเดธเตเดฑเตเดฑเด‚ เดฑเดฟเดธเต‹เดดเตโ€Œเดธเต เดฎเดพเดจเต‡เดœเตโ€Œเดฎเต†เดจเตเดฑเต เด•เต‹เตบเดซเดฟเด—เตผ เดšเต†เดฏเตเดฏเต‡เดฃเตเดŸเดคเต เดŽเดจเตเดคเตเด•เตŠเดฃเตเดŸเต?

เดšเดŸเตเดŸเด‚ เดชเต‹เดฒเต†, เด’เดฐเต เด†เดชเตเดฒเดฟเด•เตเด•เต‡เดทเดจเตเดฑเต† เดถเดฐเดฟเดฏเดพเดฏเดคเตเด‚ เดธเตเดธเตเดฅเดฟเดฐเดตเตเดฎเดพเดฏ เดชเตเดฐเดตเตผเดคเตเดคเดจเดคเตเดคเดฟเดจเดพเดฏเดฟ เด’เดฐเต เดธเดฎเตผเดชเตเดชเดฟเดค เดตเดฟเดญเดตเด™เตเด™เตพ เดจเตฝเด•เต‡เดฃเตเดŸเดคเต เดŽเดฒเตเดฒเดพเดฏเตเดชเตเดชเต‹เดดเตเด‚ เด†เดตเดถเตเดฏเดฎเดพเดฃเต. เดŽเดจเตเดจเดพเตฝ เด’เดฐเต‡ เดถเด•เตเดคเดฟเดฏเดฟเตฝ เดจเดฟเดฐเดตเดงเดฟ เด†เดชเตเดฒเดฟเด•เตเด•เต‡เดทเดจเตเด•เตพ เดชเตเดฐเดตเตผเดคเตเดคเดฟเด•เตเด•เตเดจเตเดจเต†เด™เตเด•เดฟเดฒเต‹? เด…เดตเดฏเดฟเตฝ เด“เดฐเต‹เดจเตเดจเดฟเดจเตเด‚ เด†เดตเดถเตเดฏเดฎเดพเดฏ เดเดฑเตเดฑเดตเตเด‚ เด•เตเดฑเดžเตเดž เดตเดฟเดญเดตเด™เตเด™เตพ เดŽเด™เตเด™เดจเต† เดจเตฝเด•เดพเด‚? เดจเดฟเด™เตเด™เตพเด•เตเด•เต เดŽเด™เตเด™เดจเต† เดตเดฟเดญเดต เด‰เดชเดญเต‹เด—เด‚ เดชเดฐเดฟเดฎเดฟเดคเดชเตเดชเต†เดŸเตเดคเตเดคเดพเด‚? เดจเต‹เดกเตเด•เตพเด•เตเด•เดฟเดŸเดฏเดฟเตฝ เดฒเต‹เดกเต เดŽเด™เตเด™เดจเต† เดถเดฐเดฟเดฏเดพเดฏเดฟ เดตเดฟเดคเดฐเดฃเด‚ เดšเต†เดฏเตเดฏเดพเด‚? เด†เดชเตเดฒเดฟเด•เตเด•เต‡เดทเตป เดฒเต‹เดกเต เดตเตผเดงเดฟเดšเตเดšเดพเตฝ เดคเดฟเดฐเดถเตเดšเต€เดจ เดธเตเด•เต†เดฏเดฟเดฒเดฟเด‚เด—เต เดธเด‚เดตเดฟเดงเดพเดจเด‚ เดชเตเดฐเดตเตผเดคเตเดคเดฟเด•เตเด•เตเดจเตเดจเตเดตเต†เดจเตเดจเต เดŽเด™เตเด™เดจเต† เด‰เดฑเดชเตเดชเดพเด•เตเด•เดพเด‚?

เด•เตเดฌเต†เตผเดจเต†เดฑเตเดฑเดธเต: เดธเดฟเดธเตเดฑเตเดฑเด‚ เดฑเดฟเดธเต‹เดดเตโ€Œเดธเต เดฎเดพเดจเต‡เดœเตโ€Œเดฎเต†เดจเตเดฑเต เด•เต‹เตบเดซเดฟเด—เตผ เดšเต†เดฏเตเดฏเต‡เดฃเตเดŸเดคเต เดŽเดจเตเดคเตเด•เตŠเดฃเตเดŸเต?

เดธเดฟเดธเตเดฑเตเดฑเดคเตเดคเดฟเตฝ เดเดคเตŠเด•เตเด•เต† เดชเตเดฐเดงเดพเดจ เด‰เดฑเดตเดฟเดŸเด™เตเด™เตพ เดจเดฟเดฒเดตเดฟเดฒเตเดฃเตเดŸเต†เดจเตเดจเต เดจเดฟเด™เตเด™เตพ เด†เดฐเด‚เดญเดฟเด•เตเด•เต‡เดฃเตเดŸเดคเตเดฃเตเดŸเต - เด‡เดคเต เดคเต€เตผเดšเตเดšเดฏเดพเดฏเตเด‚ เดชเตเดฐเต‹เดธเดธเตเดธเตผ เดธเดฎเดฏเดตเตเด‚ เดฑเดพเดฎเตเด‚ เด†เดฃเต. k8s-เตฝ เดˆ เดฑเดฟเดธเต‹เดดเตเดธเต เดคเดฐเด™เตเด™เตพ เด‡เดจเดฟเดชเตเดชเดฑเดฏเตเดจเตเดจ เดฏเต‚เดฃเดฟเดฑเตเดฑเตเด•เดณเดฟเตฝ เด…เดณเด•เตเด•เตเดจเตเดจเต:

  • เดธเดฟเดชเดฟเดฏเต - เด•เต‹เดฑเตเด•เดณเดฟเตฝ
  • เดฑเดพเด‚ - เดฌเตˆเดฑเตเดฑเตเด•เดณเดฟเตฝ

เดฎเดพเดคเตเดฐเดฎเดฒเตเดฒ, เด“เดฐเต‹ เดฑเดฟเดธเต‹เดดเตเดธเดฟเดจเตเด‚ เดฐเดฃเตเดŸเต เดคเดฐเด‚ เด†เดตเดถเตเดฏเด•เดคเด•เตพ เดธเดœเตเดœเดฎเดพเด•เตเด•เดพเตป เด•เดดเดฟเดฏเตเด‚ - เด…เดญเตเดฏเตผเดคเตเดฅเดจเด•เตพ ะธ เดชเดฐเดฟเดงเดฟ. เด…เดญเตเดฏเตผเดคเตเดฅเดจเด•เตพ - เด’เดฐเต เด•เดฃเตเดŸเต†เดฏเตโ€Œเดจเตผ เดชเตเดฐเดตเตผเดคเตเดคเดฟเดชเตเดชเดฟเด•เตเด•เตเดจเตเดจเดคเดฟเดจเตเดณเตเดณ เด’เดฐเต เดจเต‹เดกเดฟเดจเตเดฑเต† เดธเต—เดœเดจเตเดฏ เด‰เดฑเดตเดฟเดŸเด™เตเด™เตพเด•เตเด•เดพเดฏเตเดณเตเดณ เดเดฑเตเดฑเดตเตเด‚ เด•เตเดฑเดžเตเดž เด†เดตเดถเตเดฏเด•เดคเด•เตพ เดตเดฟเดตเดฐเดฟเด•เตเด•เตเดจเตเดจเต (เดฎเตŠเดคเตเดคเด‚ เดชเต‹เดกเต), เด…เดคเต‡เดธเดฎเดฏเด‚ เดชเดฐเดฟเดงเดฟเด•เตพ เด•เดฃเตเดŸเต†เดฏเตโ€Œเดจเดฑเดฟเดจเต เดฒเดญเตเดฏเดฎเดพเดฏ เด‰เดฑเดตเดฟเดŸเด™เตเด™เดณเดฟเตฝ เด•เดŸเตเดคเตเดค เดชเดฐเดฟเดงเดฟ เดจเดฟเดถเตเดšเดฏเดฟเด•เตเด•เตเดจเตเดจเต.

เดฎเดพเดจเดฟเดซเต†เดธเตเดฑเตเดฑเดฟเดจเต เดฐเดฃเตเดŸเต เดคเดฐเด™เตเด™เดณเต†เดฏเตเด‚ เดตเตเดฏเด•เตเดคเดฎเดพเดฏเดฟ เดจเดฟเตผเดตเดšเดฟเด•เตเด•เต‡เดฃเตเดŸ เด†เดตเดถเตเดฏเดฎเดฟเดฒเตเดฒเต†เดจเตเดจเต เดฎเดจเดธเตเดธเดฟเดฒเดพเด•เตเด•เต‡เดฃเตเดŸเดคเต เดชเตเดฐเดงเดพเดจเดฎเดพเดฃเต, เดŽเดจเตเดจเดพเตฝ เดชเต†เดฐเตเดฎเดพเดฑเตเดฑเด‚ เด‡เดจเดฟเดชเตเดชเดฑเดฏเตเดจเตเดจเดคเดพเดฏเดฟเดฐเดฟเด•เตเด•เตเด‚:

  • เด’เดฐเต เดฑเดฟเดธเต‹เดดเตเดธเดฟเดจเตเดฑเต† เดชเดฐเดฟเดงเดฟเด•เตพ เดฎเดพเดคเตเดฐเดฎเต‡ เดตเตเดฏเด•เตเดคเดฎเดพเดฏเดฟ เดตเตเดฏเด•เตเดคเดฎเดพเด•เตเด•เดฟเดฏเดฟเดŸเตเดŸเตเดณเตเดณเต‚ เดŽเด™เตเด•เดฟเตฝ, เดˆ เดฑเดฟเดธเต‹เดดเตเดธเดฟเดจเดพเดฏเตเดณเตเดณ เด…เดญเตเดฏเตผเดคเตเดฅเดจเด•เตพ เดธเตเดตเดฏเดฎเต‡เดต เดชเดฐเดฟเดงเดฟเด•เตพเด•เตเด•เต เดคเตเดฒเตเดฏเดฎเดพเดฏ เด’เดฐเต เดฎเต‚เดฒเตเดฏเด‚ เดŽเดŸเตเด•เตเด•เตเด‚ (เดจเดฟเด™เตเด™เตพเด•เตเด•เต เดตเดฟเดตเดฐเดฟเด•เตเด•เตเดจเตเดจ เดŽเดจเตเดฑเดฟเดฑเตเดฑเดฟเด•เดณเต† เดตเดฟเดณเดฟเดšเตเดšเต เด‡เดคเต เดชเดฐเดฟเดถเต‹เดงเดฟเด•เตเด•เดพเดตเตเดจเตเดจเดคเดพเดฃเต). เด†. เดตเดพเดธเตเดคเดตเดคเตเดคเดฟเตฝ, เด•เดฃเตเดŸเต†เดฏเตเดจเตผ เดชเตเดฐเดตเตผเดคเตเดคเดฟเดชเตเดชเดฟเด•เตเด•เดพเตป เด†เดตเดถเตเดฏเดฎเดพเดฏ เด…เดคเต‡ เด…เดณเดตเดฟเดฒเตเดณเตเดณ เดตเดฟเดญเดตเด™เตเด™เดณเดฟเดฒเต‡เด•เตเด•เต เดชเดฐเดฟเดฎเดฟเดคเดชเตเดชเต†เดŸเตเดคเตเดคเตเด‚.
  • เด’เดฐเต เด‰เดฑเดตเดฟเดŸเดคเตเดคเดฟเดจเดพเดฏเดฟ เด…เดญเตเดฏเตผเดคเตเดฅเดจเด•เตพ เดฎเดพเดคเตเดฐเด‚ เดตเตเดฏเด•เตเดคเดฎเดพเดฏเดฟ เดตเตเดฏเด•เตเดคเดฎเดพเด•เตเด•เดฟเดฏเดฟเดŸเตเดŸเตเดฃเตเดŸเต†เด™เตเด•เดฟเตฝ, เดˆ เด‰เดฑเดตเดฟเดŸเดคเตเดคเดฟเตฝ เด‰เดฏเตผเดจเตเดจ เดจเดฟเดฏเดจเตเดคเตเดฐเดฃเด™เตเด™เดณเตŠเดจเตเดจเตเด‚ เดธเดœเตเดœเต€เด•เดฐเดฟเดšเตเดšเดฟเดŸเตเดŸเดฟเดฒเตเดฒ - เด…เดคเดพเดฏเดคเต. เด•เดฃเตเดŸเต†เดฏเตเดจเตผ เดจเต‹เดกเดฟเดจเตเดฑเต† เด‰เดฑเดตเดฟเดŸเด™เตเด™เดณเดพเตฝ เดฎเดพเดคเตเดฐเด‚ เดชเดฐเดฟเดฎเดฟเดคเดชเตเดชเต†เดŸเตเดคเตเดคเดฟเดฏเดฟเดฐเดฟเด•เตเด•เตเดจเตเดจเต.

เด’เดฐเต เดจเดฟเตผเดฆเตเดฆเดฟเดทเตเดŸ เด•เดฃเตเดŸเต†เดฏเตโ€Œเดจเดฑเดฟเดจเตเดฑเต† เดคเดฒเดคเตเดคเดฟเตฝ เดฎเดพเดคเตเดฐเดฎเดฒเตเดฒ, เด‡เดจเดฟเดชเตเดชเดฑเดฏเตเดจเตเดจ เดŽเดจเตเดฑเดฟเดฑเตเดฑเดฟเด•เตพ เด‰เดชเดฏเต‹เด—เดฟเดšเตเดšเต เดจเต†เดฏเดฟเด‚เดธเตโ€Œเดชเต‡เดธเต เดคเดฒเดคเตเดคเดฟเดฒเตเด‚ เดฑเดฟเดธเต‹เดดเตโ€Œเดธเต เดฎเดพเดจเต‡เดœเตโ€Œเดฎเต†เดจเตเดฑเต เด•เต‹เตบเดซเดฟเด—เตผ เดšเต†เดฏเตเดฏเดพเดจเตเด‚ เด•เดดเดฟเดฏเตเด‚:

  • เดฒเดฟเดฎเดฟเดฑเตเดฑเตเดฑเต‡เดžเตเดšเต โ€” ns-เตฝ เด•เดฃเตเดŸเต†เดฏเตโ€Œเดจเตผ/เดชเต‹เดกเต เดฒเต†เดตเดฒเดฟเดฒเตเดณเตเดณ เดจเดฟเดฏเดจเตเดคเตเดฐเดฃ เดจเดฏเด‚ เดตเดฟเดตเดฐเดฟเด•เตเด•เตเดจเตเดจเต, เด•เต‚เดŸเดพเดคเต† เด•เดฃเตเดŸเต†เดฏเตโ€Œเดจเตผ/เดชเต‹เดกเดฟเดฒเต† เดกเดฟเดซเต‹เตพเดŸเตเดŸเต เดชเดฐเดฟเดงเดฟเด•เตพ เดตเดฟเดตเดฐเดฟเด•เตเด•เตเดจเตเดจเดคเดฟเดจเตเด‚ เด…เดคเตเดชเต‹เดฒเต† เดคเดจเตเดจเต† เด•เตŠเดดเตเดชเตเดชเตเดณเตเดณ เดชเดพเดคเตเดฐเด™เตเด™เตพ/เดชเต‹เดกเตเด•เตพ (เด…เดฒเตเดฒเต†เด™เตเด•เดฟเตฝ เดคเดฟเดฐเดฟเดšเตเดšเตเด‚) เดธเตƒเดทเตเดŸเดฟเด•เตเด•เตเดจเตเดจเดคเต เดคเดŸเดฏเตเดจเตเดจเดคเดฟเดจเตเด‚ เด…เดตเดฏเตเดŸเต† เดŽเดฃเตเดฃเด‚ เดชเดฐเดฟเดฎเดฟเดคเดชเตเดชเต†เดŸเตเดคเตเดคเตเด•. เดชเดฐเดฟเดงเดฟเด•เดณเดฟเดฒเตเด‚ เด…เดญเตเดฏเตผเดคเตเดฅเดจเด•เดณเดฟเดฒเตเด‚ เดฎเต‚เดฒเตเดฏเด™เตเด™เดณเดฟเตฝ เดธเดพเดงเตเดฏเดฎเดพเดฏ เดตเตเดฏเดคเตเดฏเดพเดธเด‚ เดจเดฟเตผเดฃเตเดฃเดฏเดฟเด•เตเด•เตเด•
  • เดฑเดฟเดธเต‹เดดเตเดธเต เด•เตเดตเดพเดŸเตเดŸเด•เตพ - ns-เดฒเต† เดŽเดฒเตเดฒเดพ เด•เดฃเตเดŸเต†เดฏเตโ€Œเดจเดฑเตเด•เตพเด•เตเด•เตเด‚ เดชเตŠเดคเตเดตเดพเดฏ เดจเดฟเดฏเดจเตเดคเตเดฐเดฃ เดจเดฏเด‚ เดตเดฟเดตเดฐเดฟเด•เตเด•เตเด•, เดชเดฐเดฟเดธเตเดฅเดฟเดคเดฟเด•เตพเด•เตเด•เดฟเดŸเดฏเดฟเตฝ เดตเดฟเดญเดตเด™เตเด™เตพ เดกเดฟเดฒเดฟเดฎเดฟเดฑเตเดฑเต เดšเต†เดฏเตเดฏเดพเตป เด‡เดคเต เด‰เดชเดฏเต‹เด—เดฟเด•เตเด•เตเดจเตเดจเต (เดจเต‹เดกเต เดคเดฒเดคเตเดคเดฟเตฝ เดชเดฐเดฟเดธเตเดฅเดฟเดคเดฟเด•เตพ เด•เตผเดถเดจเดฎเดพเดฏเดฟ เดตเต‡เตผเดคเดฟเดฐเดฟเด•เตเด•เดพเดคเตเดคเดชเตเดชเต‹เตพ เด‰เดชเดฏเต‹เด—เดชเตเดฐเดฆเดฎเดพเดฃเต)

เด‰เดฑเดตเดฟเดŸ เดชเดฐเดฟเดงเดฟเด•เตพ เดธเดœเตเดœเดฎเดพเด•เตเด•เตเดจเตเดจ เดฎเดพเดจเดฟเดซเต†เดธเตเดฑเตเดฑเตเด•เดณเตเดŸเต† เด‰เดฆเดพเดนเดฐเดฃเด™เตเด™เตพ เด‡เดจเดฟเดชเตเดชเดฑเดฏเตเดจเตเดจเดตเดฏเดพเดฃเต:

  • เดจเดฟเตผเดฆเตเดฆเดฟเดทเตเดŸ เด•เดฃเตเดŸเต†เดฏเตเดจเตผ เดคเดฒเดคเตเดคเดฟเตฝ:

    containers:
    - name: app-nginx
      image: nginx
      resources:
        requests:
          memory: 1Gi
        limits:
          cpu: 200m

    เด†. เดˆ เดธเดพเดนเดšเดฐเตเดฏเดคเตเดคเดฟเตฝ, nginx เด‰เดชเดฏเต‹เด—เดฟเดšเตเดšเต เด’เดฐเต เด•เดฃเตเดŸเต†เดฏเตโ€Œเดจเตผ เดชเตเดฐเดตเตผเดคเตเดคเดฟเดชเตเดชเดฟเด•เตเด•เตเดจเตเดจเดคเดฟเดจเต, เดจเดฟเด™เตเด™เตพเด•เตเด•เต เดจเต‹เดกเดฟเตฝ เด•เตเดฑเดžเตเดžเดคเต 1G เดธเต—เดœเดจเตเดฏ เดฑเดพเดฎเตเด‚ 0.2 CPU เดฏเตเด‚ เด†เดตเดถเตเดฏเดฎเดพเดฃเต, เด…เดคเต‡เดธเดฎเดฏเด‚ เด•เดฃเตเดŸเต†เดฏเตโ€Œเดจเดฑเดฟเดจเต 0.2 CPU เด‰เด‚ เดจเต‹เดกเดฟเตฝ เดฒเดญเตเดฏเดฎเดพเดฏ เดŽเดฒเตเดฒเดพ เดฑเดพเดฎเตเด‚ เด‰เดชเดฏเต‹เด—เดฟเด•เตเด•เดพเดจเดพเด•เตเด‚.

  • เดชเต‚เตผเดฃเตเดฃเดธเด‚เด–เตเดฏ เดคเดฒเดคเตเดคเดฟเตฝ ns:

    apiVersion: v1
    kind: ResourceQuota
    metadata:
      name: nxs-test
    spec:
      hard:
        requests.cpu: 300m
        requests.memory: 1Gi
        limits.cpu: 700m
        limits.memory: 2Gi

    เด†. เดกเดฟเดซเต‹เตพเดŸเตเดŸเต ns-เดฒเต† เดŽเดฒเตเดฒเดพ เด…เดญเตเดฏเตผเดคเตเดฅเดจ เด•เดฃเตเดŸเต†เดฏเตโ€Œเดจเดฑเตเด•เดณเตเดŸเต†เดฏเตเด‚ เด†เด•เต†เดคเตเดคเตเด• CPU-เดฏเตโ€Œเด•เตเด•เต 300m, OP-เดฏเตโ€Œเด•เตเด•เต 1G เดŽเดจเตเดจเดฟเดตเดฏเดฟเตฝ เด•เดตเดฟเดฏเดฐเตเดคเต, เด•เต‚เดŸเดพเดคเต† เดŽเดฒเตเดฒเดพ เดชเดฐเดฟเดงเดฟเดฏเตเดŸเต†เดฏเตเด‚ เด†เด•เต†เดคเตเดคเตเด• CPU-เดฏเตโ€Œเด•เตเด•เต 700m เด‰เด‚ OP-เดฏเตโ€Œเด•เตเด•เต 2G เด‰เด‚ เด†เดฃเต.

  • ns-เดฒเต† เด•เดฃเตเดŸเต†เดฏเตโ€Œเดจเดฑเตเด•เตพเด•เตเด•เตเดณเตเดณ เดกเดฟเดซเต‹เตพเดŸเตเดŸเต เดชเดฐเดฟเดงเดฟเด•เตพ:

    apiVersion: v1
    kind: LimitRange
    metadata:
      name: nxs-limit-per-container
    spec:
     limits:
       - type: Container
         defaultRequest:
           cpu: 100m
           memory: 1Gi
         default:
           cpu: 1
           memory: 2Gi
         min:
           cpu: 50m
           memory: 500Mi
         max:
           cpu: 2
           memory: 4Gi

    เด†. เดŽเดฒเตเดฒเดพ เด•เดฃเตเดŸเต†เดฏเตโ€Œเดจเดฑเตเด•เตพเด•เตเด•เตเดฎเตเดณเตเดณ เดกเดฟเดซเต‹เตพเดŸเตเดŸเต เดจเต†เดฏเดฟเด‚เดธเตโ€Œเดชเต†เดฏเตโ€Œเดธเดฟเตฝ, CPU-เดฏเตโ€Œเด•เตเด•เต 100m, OP-เดฏเตโ€Œเด•เตเด•เต 1G เดŽเดจเตเดจเดฟเด™เตเด™เดจเต† เด…เดญเตเดฏเตผเดคเตเดฅเดจ เดธเดœเตเดœเต€เด•เดฐเดฟเด•เตเด•เตเด‚, เดชเดฐเดฟเดงเดฟ - 1 CPU, 2G. เด…เดคเต‡ เดธเดฎเดฏเด‚, CPU (50m < x < 2), RAM (500M < x < 4G) เดŽเดจเตเดจเดฟเดตเดฏเตโ€Œเด•เตเด•เดพเดฏเตเดณเตเดณ เด…เดญเตเดฏเตผเดคเตเดฅเดจ/เดชเดฐเดฟเดงเดฟเดฏเดฟเดฒเต† เดธเดพเดงเตเดฏเดฎเดพเดฏ เดฎเต‚เดฒเตเดฏเด™เตเด™เดณเดฟเดฒเตเด‚ เด’เดฐเต เดชเดฐเดฟเดงเดฟ เดธเดœเตเดœเต€เด•เดฐเดฟเดšเตเดšเดฟเดฐเดฟเด•เตเด•เตเดจเตเดจเต.

  • เดชเต‹เดกเต-เดฒเต†เดตเตฝ เดจเดฟเดฏเดจเตเดคเตเดฐเดฃเด™เตเด™เตพ ns:

    apiVersion: v1
    kind: LimitRange
    metadata:
     name: nxs-limit-pod
    spec:
     limits:
     - type: Pod
       max:
         cpu: 4
         memory: 1Gi

    เด†. เดกเดฟเดซเต‹เตพเดŸเตเดŸเดฟเดฒเตเดณเตเดณ เด“เดฐเต‹ เดชเต‹เดกเดฟเดจเตเด‚ 4 vCPU, 1G เดŽเดจเตเดจเดฟเดตเดฏเตเดŸเต† เดชเดฐเดฟเดงเดฟ เด‰เดฃเตเดŸเดพเดฏเดฟเดฐเดฟเด•เตเด•เตเด‚.

เดˆ เดจเดฟเดฏเดจเตเดคเตเดฐเดฃเด™เตเด™เตพ เด•เตเดฐเดฎเต€เด•เดฐเดฟเด•เตเด•เตเดจเตเดจเดคเดฟเดฒเต‚เดŸเต† เดจเดฎเตเด•เตเด•เต เดŽเดจเตเดคเต เดจเต‡เดŸเตเดŸเด™เตเด™เตพ เดจเตฝเด•เดพเดจเดพเด•เตเดฎเต†เดจเตเดจเต เด‡เดชเตเดชเต‹เตพ เดžเดพเตป เดจเดฟเด™เตเด™เดณเต‹เดŸเต เดชเดฑเดฏเดพเตป เด†เด—เตเดฐเดนเดฟเด•เตเด•เตเดจเตเดจเต.

เดจเต‹เดกเตเด•เตพเด•เตเด•เดฟเดŸเดฏเดฟเตฝ เดฌเดพเดฒเตปเดธเดฟเด™เต เดฎเต†เด•เตเด•เดพเดจเดฟเดธเด‚ เดฒเต‹เดกเต เดšเต†เดฏเตเดฏเตเด•

เดจเดฟเด™เตเด™เตพเด•เตเด•เดฑเดฟเดฏเดพเดตเตเดจเตเดจเดคเตเดชเต‹เดฒเต†, เดจเต‹เดกเตเด•เตพเด•เตเด•เดฟเดŸเดฏเดฟเตฝ เดชเต‹เดกเตเด•เดณเตเดŸเต† เดตเดฟเดคเดฐเดฃเดคเตเดคเดฟเดจเต k8s เด˜เดŸเด•เด‚ เด‰เดคเตเดคเดฐเดตเดพเดฆเดฟเดฏเดพเดฃเต เดทเต†เดกเตเดฏเต‚เดณเตผ, เด‡เดคเต เด’เดฐเต เดชเตเดฐเดคเตเดฏเต‡เด• เด…เตฝเด—เต‹เดฐเดฟเดคเด‚ เด…เดจเตเดธเดฐเดฟเดšเตเดšเต เดชเตเดฐเดตเตผเดคเตเดคเดฟเด•เตเด•เตเดจเตเดจเต. เดธเดฎเดพเดฐเด‚เดญเดฟเด•เตเด•เตเดจเตเดจเดคเดฟเดจเตเดณเตเดณ เด’เดชเตเดฑเตเดฑเดฟเดฎเตฝ เดจเต‹เดกเต เดคเดฟเดฐเดžเตเดžเต†เดŸเตเด•เตเด•เตเดฎเตเดชเต‹เตพ เดˆ เด…เตฝเด—เต‹เดฐเดฟเดคเด‚ เดฐเดฃเตเดŸเต เด˜เดŸเตเดŸเด™เตเด™เดณเดฟเดฒเต‚เดŸเต† เด•เดŸเดจเตเดจเตเดชเต‹เด•เตเดจเตเดจเต:

  1. เดซเดฟเตฝเดŸเตเดŸเดฑเดฟเด‚เด—เต
  2. เดฑเต‡เดžเตเดšเดฟเด‚เด—เต

เด†. เดตเดฟเดตเดฐเดฟเดšเตเดš เดจเดฏเดฎเดจเตเดธเดฐเดฟเดšเตเดšเต, เด’เดฐเต เดธเต†เดฑเตเดฑเดฟเดจเต† เด…เดŸเดฟเดธเตเดฅเดพเดจเดฎเดพเด•เตเด•เดฟ เด’เดฐเต เดชเต‹เดกเต เดธเดฎเดพเดฐเด‚เดญเดฟเด•เตเด•เดพเตป เด•เดดเดฟเดฏเตเดจเตเดจ เดจเต‹เดกเตเด•เตพ เดคเตเดŸเด•เตเด•เดคเตเดคเดฟเตฝ เดคเดฟเดฐเดžเตเดžเต†เดŸเตเด•เตเด•เตเดจเตเดจเต เดชเตเดฐเดตเดšเดฟเด•เตเด•เตเดจเตเดจเต (เดชเต‹เดกเต - PodFitsResources เดชเตเดฐเดตเตผเดคเตเดคเดฟเดชเตเดชเดฟเด•เตเด•เดพเตป เดจเต‹เดกเดฟเดจเต เดฎเดคเดฟเดฏเดพเดฏ เด‰เดฑเดตเดฟเดŸเด™เตเด™เตพ เด‰เดฃเตเดŸเต‹ เดŽเดจเตเดจเต เดชเดฐเดฟเดถเต‹เดงเดฟเด•เตเด•เตเดจเตเดจเดคเต เด‰เตพเดชเตเดชเต†เดŸเต†), เดคเตเดŸเตผเดจเตเดจเต เดˆ เด“เดฐเต‹ เดจเต‹เดกเตเด•เตพเด•เตเด•เตเด‚ เด…เดจเตเดธเดฐเดฟเดšเตเดšเต เดฎเตเตปเด—เดฃเดจเด•เตพ เดชเต‹เดฏเดฟเดจเตเดฑเตเด•เตพ เดจเตฝเด•เดชเตเดชเต†เดŸเตเดจเตเดจเต (เด’เดฐเต เดจเต‹เดกเดฟเดจเต เด•เต‚เดŸเตเดคเตฝ เดธเตŒเดœเดจเตเดฏเดฎเดพเดฏ เด‰เดฑเดตเดฟเดŸเด™เตเด™เตพ เด‰เตพเดชเตเดชเต†เดŸเต†, เด•เต‚เดŸเตเดคเตฝ เดชเต‹เดฏเดฟเดจเตเดฑเตเด•เตพ เดจเตฝเด•เดชเตเดชเต†เดŸเตเด‚ - LeastResourceAllocation/LeastRequestedPriority/BalancedResourceAllocation) เด•เต‚เดŸเดพเดคเต† เดเดฑเตเดฑเดตเตเด‚ เด•เต‚เดŸเตเดคเตฝ เดชเต‹เดฏเดฟเดจเตเดฑเตเด•เดณเตเดณเตเดณ เดจเต‹เดกเดฟเตฝ เดชเต‹เดกเต เดธเดฎเดพเดฐเด‚เดญเดฟเด•เตเด•เตเดจเตเดจเต (เดจเดฟเดฐเดตเดงเดฟ เดจเต‹เดกเตเด•เตพ เด’เดฐเต‡เดธเดฎเดฏเด‚ เดˆ เด…เดตเดธเตเดฅเดฏเต† เดคเตƒเดชเตเดคเดฟเดชเตเดชเต†เดŸเตเดคเตเดคเตเดจเตเดจเตเดตเต†เด™เตเด•เดฟเตฝ, เดคเตเดŸเตผเดจเตเดจเต เด•เตเดฐเดฎเดฐเดนเดฟเดคเดฎเดพเดฏ เด’เดจเตเดจเต เดคเดฟเดฐเดžเตเดžเต†เดŸเตเดคเตเดคเต) .

เด…เดคเต‡ เดธเดฎเดฏเด‚, เดทเต†เดกเตเดฏเต‚เดณเตผ, เด’เดฐเต เดจเต‹เดกเดฟเดจเตเดฑเต† เดฒเดญเตเดฏเดฎเดพเดฏ เด‰เดฑเดตเดฟเดŸเด™เตเด™เตพ เดตเดฟเดฒเดฏเดฟเดฐเตเดคเตเดคเตเดฎเตเดชเต‹เตพ, etcd-เดฏเดฟเตฝ เดธเด‚เดญเดฐเดฟเดšเตเดšเดฟเดฐเดฟเด•เตเด•เตเดจเตเดจ เดกเดพเดฑเตเดฑเดฏเดพเตฝ เดจเดฏเดฟเด•เตเด•เดชเตเดชเต†เดŸเตเดฎเต†เดจเตเดจเต เดจเดฟเด™เตเด™เตพ เดฎเดจเดธเตเดธเดฟเดฒเดพเด•เตเด•เต‡เดฃเตเดŸเดคเตเดฃเตเดŸเต - เด…เดคเดพเดฏเดคเต. เดˆ เดจเต‹เดกเดฟเตฝ เดชเตเดฐเดตเตผเดคเตเดคเดฟเด•เตเด•เตเดจเตเดจ เด“เดฐเต‹ เดชเต‹เดกเดฟเดจเตเดฑเต†เดฏเตเด‚ เด…เดญเตเดฏเตผเดคเตเดฅเดฟเดšเตเดš/เดชเดฐเดฟเดฎเดฟเดค เดตเดฟเดญเดตเดคเตเดคเดฟเดจเตเดฑเต† เด…เดณเดตเดฟเดจเต, เดŽเดจเตเดจเดพเตฝ เดฏเดฅเดพเตผเดคเตเดฅ เดตเดฟเดญเดต เด‰เดชเดญเต‹เด—เดคเตเดคเดฟเดจเต เดตเต‡เดฃเตเดŸเดฟเดฏเดฒเตเดฒ. เดˆ เดตเดฟเดตเดฐเด‚ เด•เดฎเดพเตปเดกเต เด”เดŸเตเดŸเตเดชเตเดŸเตเดŸเดฟเตฝ เดจเดฟเดจเตเดจเต เดฒเดญเดฟเด•เตเด•เตเด‚ kubectl describe node $NODEเด‰เดฆเดพเดนเดฐเดฃเดคเตเดคเดฟเดจเต:

# kubectl describe nodes nxs-k8s-s1
..
Non-terminated Pods:         (9 in total)
  Namespace                  Name                                         CPU Requests  CPU Limits  Memory Requests  Memory Limits  AGE
  ---------                  ----                                         ------------  ----------  ---------------  -------------  ---
  ingress-nginx              nginx-ingress-controller-754b85bf44-qkt2t    0 (0%)        0 (0%)      0 (0%)           0 (0%)         233d
  kube-system                kube-flannel-26bl4                           150m (0%)     300m (1%)   64M (0%)         500M (1%)      233d
  kube-system                kube-proxy-exporter-cb629                    0 (0%)        0 (0%)      0 (0%)           0 (0%)         233d
  kube-system                kube-proxy-x9fsc                             0 (0%)        0 (0%)      0 (0%)           0 (0%)         233d
  kube-system                nginx-proxy-k8s-worker-s1                    25m (0%)      300m (1%)   32M (0%)         512M (1%)      233d
  nxs-monitoring             alertmanager-main-1                          100m (0%)     100m (0%)   425Mi (1%)       25Mi (0%)      233d
  nxs-logging                filebeat-lmsmp                               100m (0%)     0 (0%)      100Mi (0%)       200Mi (0%)     233d
  nxs-monitoring             node-exporter-v4gdq                          112m (0%)     122m (0%)   200Mi (0%)       220Mi (0%)     233d
Allocated resources:
  (Total limits may be over 100 percent, i.e., overcommitted.)
  Resource           Requests           Limits
  --------           --------           ------
  cpu                487m (3%)          822m (5%)
  memory             15856217600 (2%)  749976320 (3%)
  ephemeral-storage  0 (0%)             0 (0%)

เด’เดฐเต เดจเดฟเตผเดฆเตเดฆเดฟเดทเตโ€ŒเดŸ เดจเต‹เดกเดฟเตฝ เดชเตเดฐเดตเตผเดคเตเดคเดฟเด•เตเด•เตเดจเตเดจ เดŽเดฒเตเดฒเดพ เดชเต‹เดกเตเด•เดณเตเด‚ เด“เดฐเต‹ เดชเต‹เดกเตเด‚ เด…เดญเตเดฏเตผเดคเตเดฅเดฟเด•เตเด•เตเดจเตเดจ เด‰เดฑเดตเดฟเดŸเด™เตเด™เดณเตเด‚ เด‡เดตเดฟเดŸเต† เด•เดพเดฃเดพเด‚. cronjob-cron-events-1573793820-xt6q9 เดชเต‹เดกเต เดธเดฎเดพเดฐเด‚เดญเดฟเด•เตเด•เตเดฎเตเดชเต‹เตพ เดทเต†เดกเตเดฏเต‚เดณเตผ เดฒเต‹เด—เตเด•เตพ เดŽเด™เตเด™เดจเต†เดฏเดพเดฏเดฟเดฐเดฟเด•เตเด•เตเดฎเต†เดจเตเดจเต เด‡เดคเดพ (เดธเตเดฑเตเดฑเดพเตผเดŸเตเดŸเดชเตเดชเต เด•เดฎเดพเตปเดกเต เด†เตผเด—เตเดฏเตเดฎเต†เดจเตเดฑเตเด•เดณเดฟเตฝ 10-เดพเดฎเดคเตเดคเต† เดฒเต‹เด—เดฟเด‚เด—เต เดฒเต†เดตเตฝ เดธเดœเตเดœเต€เด•เดฐเดฟเด•เตเด•เตเดฎเตเดชเต‹เตพ เดˆ เดตเดฟเดตเดฐเด™เตเด™เตพ เดทเต†เดกเตเดฏเต‚เดณเตผ เดฒเต‹เด—เดฟเตฝ เดฆเตƒเดถเตเดฏเดฎเดพเด•เตเด‚ -v=10):

เดฒเต‹เด—เต

I1115 07:57:21.637791       1 scheduling_queue.go:908] About to try and schedule pod nxs-stage/cronjob-cron-events-1573793820-xt6q9                                                                                                                                           
I1115 07:57:21.637804       1 scheduler.go:453] Attempting to schedule pod: nxs-stage/cronjob-cron-events-1573793820-xt6q9                                                                                                                                                    
I1115 07:57:21.638285       1 predicates.go:829] Schedule Pod nxs-stage/cronjob-cron-events-1573793820-xt6q9 on Node nxs-k8s-s5 is allowed, Node is running only 16 out of 110 Pods.                                                                               
I1115 07:57:21.638300       1 predicates.go:829] Schedule Pod nxs-stage/cronjob-cron-events-1573793820-xt6q9 on Node nxs-k8s-s6 is allowed, Node is running only 20 out of 110 Pods.                                                                               
I1115 07:57:21.638322       1 predicates.go:829] Schedule Pod nxs-stage/cronjob-cron-events-1573793820-xt6q9 on Node nxs-k8s-s3 is allowed, Node is running only 20 out of 110 Pods.                                                                               
I1115 07:57:21.638322       1 predicates.go:829] Schedule Pod nxs-stage/cronjob-cron-events-1573793820-xt6q9 on Node nxs-k8s-s4 is allowed, Node is running only 17 out of 110 Pods.                                                                               
I1115 07:57:21.638334       1 predicates.go:829] Schedule Pod nxs-stage/cronjob-cron-events-1573793820-xt6q9 on Node nxs-k8s-s10 is allowed, Node is running only 16 out of 110 Pods.                                                                              
I1115 07:57:21.638365       1 predicates.go:829] Schedule Pod nxs-stage/cronjob-cron-events-1573793820-xt6q9 on Node nxs-k8s-s12 is allowed, Node is running only 9 out of 110 Pods.                                                                               
I1115 07:57:21.638334       1 predicates.go:829] Schedule Pod nxs-stage/cronjob-cron-events-1573793820-xt6q9 on Node nxs-k8s-s11 is allowed, Node is running only 11 out of 110 Pods.                                                                              
I1115 07:57:21.638385       1 predicates.go:829] Schedule Pod nxs-stage/cronjob-cron-events-1573793820-xt6q9 on Node nxs-k8s-s1 is allowed, Node is running only 19 out of 110 Pods.                                                                               
I1115 07:57:21.638402       1 predicates.go:829] Schedule Pod nxs-stage/cronjob-cron-events-1573793820-xt6q9 on Node nxs-k8s-s2 is allowed, Node is running only 21 out of 110 Pods.                                                                               
I1115 07:57:21.638383       1 predicates.go:829] Schedule Pod nxs-stage/cronjob-cron-events-1573793820-xt6q9 on Node nxs-k8s-s9 is allowed, Node is running only 16 out of 110 Pods.                                                                               
I1115 07:57:21.638335       1 predicates.go:829] Schedule Pod nxs-stage/cronjob-cron-events-1573793820-xt6q9 on Node nxs-k8s-s8 is allowed, Node is running only 18 out of 110 Pods.                                                                               
I1115 07:57:21.638408       1 predicates.go:829] Schedule Pod nxs-stage/cronjob-cron-events-1573793820-xt6q9 on Node nxs-k8s-s13 is allowed, Node is running only 8 out of 110 Pods.                                                                               
I1115 07:57:21.638478       1 predicates.go:1369] Schedule Pod nxs-stage/cronjob-cron-events-1573793820-xt6q9 on Node nxs-k8s-s10 is allowed, existing pods anti-affinity terms satisfied.                                                                         
I1115 07:57:21.638505       1 predicates.go:1369] Schedule Pod nxs-stage/cronjob-cron-events-1573793820-xt6q9 on Node nxs-k8s-s8 is allowed, existing pods anti-affinity terms satisfied.                                                                          
I1115 07:57:21.638577       1 predicates.go:1369] Schedule Pod nxs-stage/cronjob-cron-events-1573793820-xt6q9 on Node nxs-k8s-s9 is allowed, existing pods anti-affinity terms satisfied.                                                                          
I1115 07:57:21.638583       1 predicates.go:829] Schedule Pod nxs-stage/cronjob-cron-events-1573793820-xt6q9 on Node nxs-k8s-s7 is allowed, Node is running only 25 out of 110 Pods.                                                                               
I1115 07:57:21.638932       1 resource_allocation.go:78] cronjob-cron-events-1573793820-xt6q9 -> nxs-k8s-s10: BalancedResourceAllocation, capacity 39900 millicores 66620178432 memory bytes, total request 2343 millicores 9640186880 memory bytes, score 9        
I1115 07:57:21.638946       1 resource_allocation.go:78] cronjob-cron-events-1573793820-xt6q9 -> nxs-k8s-s10: LeastResourceAllocation, capacity 39900 millicores 66620178432 memory bytes, total request 2343 millicores 9640186880 memory bytes, score 8           
I1115 07:57:21.638961       1 resource_allocation.go:78] cronjob-cron-events-1573793820-xt6q9 -> nxs-k8s-s9: BalancedResourceAllocation, capacity 39900 millicores 66620170240 memory bytes, total request 4107 millicores 11307422720 memory bytes, score 9        
I1115 07:57:21.638971       1 resource_allocation.go:78] cronjob-cron-events-1573793820-xt6q9 -> nxs-k8s-s8: BalancedResourceAllocation, capacity 39900 millicores 66620178432 memory bytes, total request 5847 millicores 24333637120 memory bytes, score 7        
I1115 07:57:21.638975       1 resource_allocation.go:78] cronjob-cron-events-1573793820-xt6q9 -> nxs-k8s-s9: LeastResourceAllocation, capacity 39900 millicores 66620170240 memory bytes, total request 4107 millicores 11307422720 memory bytes, score 8           
I1115 07:57:21.638990       1 resource_allocation.go:78] cronjob-cron-events-1573793820-xt6q9 -> nxs-k8s-s8: LeastResourceAllocation, capacity 39900 millicores 66620178432 memory bytes, total request 5847 millicores 24333637120 memory bytes, score 7           
I1115 07:57:21.639022       1 generic_scheduler.go:726] cronjob-cron-events-1573793820-xt6q9_nxs-stage -> nxs-k8s-s10: TaintTolerationPriority, Score: (10)                                                                                                        
I1115 07:57:21.639030       1 generic_scheduler.go:726] cronjob-cron-events-1573793820-xt6q9_nxs-stage -> nxs-k8s-s8: TaintTolerationPriority, Score: (10)                                                                                                         
I1115 07:57:21.639034       1 generic_scheduler.go:726] cronjob-cron-events-1573793820-xt6q9_nxs-stage -> nxs-k8s-s9: TaintTolerationPriority, Score: (10)                                                                                                         
I1115 07:57:21.639041       1 generic_scheduler.go:726] cronjob-cron-events-1573793820-xt6q9_nxs-stage -> nxs-k8s-s10: NodeAffinityPriority, Score: (0)                                                                                                            
I1115 07:57:21.639053       1 generic_scheduler.go:726] cronjob-cron-events-1573793820-xt6q9_nxs-stage -> nxs-k8s-s8: NodeAffinityPriority, Score: (0)                                                                                                             
I1115 07:57:21.639059       1 generic_scheduler.go:726] cronjob-cron-events-1573793820-xt6q9_nxs-stage -> nxs-k8s-s9: NodeAffinityPriority, Score: (0)                                                                                                             
I1115 07:57:21.639061       1 interpod_affinity.go:237] cronjob-cron-events-1573793820-xt6q9 -> nxs-k8s-s10: InterPodAffinityPriority, Score: (0)                                                                                                                   
I1115 07:57:21.639063       1 selector_spreading.go:146] cronjob-cron-events-1573793820-xt6q9 -> nxs-k8s-s10: SelectorSpreadPriority, Score: (10)                                                                                                                   
I1115 07:57:21.639073       1 interpod_affinity.go:237] cronjob-cron-events-1573793820-xt6q9 -> nxs-k8s-s8: InterPodAffinityPriority, Score: (0)                                                                                                                    
I1115 07:57:21.639077       1 selector_spreading.go:146] cronjob-cron-events-1573793820-xt6q9 -> nxs-k8s-s8: SelectorSpreadPriority, Score: (10)                                                                                                                    
I1115 07:57:21.639085       1 interpod_affinity.go:237] cronjob-cron-events-1573793820-xt6q9 -> nxs-k8s-s9: InterPodAffinityPriority, Score: (0)                                                                                                                    
I1115 07:57:21.639088       1 selector_spreading.go:146] cronjob-cron-events-1573793820-xt6q9 -> nxs-k8s-s9: SelectorSpreadPriority, Score: (10)                                                                                                                    
I1115 07:57:21.639103       1 generic_scheduler.go:726] cronjob-cron-events-1573793820-xt6q9_nxs-stage -> nxs-k8s-s10: SelectorSpreadPriority, Score: (10)                                                                                                         
I1115 07:57:21.639109       1 generic_scheduler.go:726] cronjob-cron-events-1573793820-xt6q9_nxs-stage -> nxs-k8s-s8: SelectorSpreadPriority, Score: (10)                                                                                                          
I1115 07:57:21.639114       1 generic_scheduler.go:726] cronjob-cron-events-1573793820-xt6q9_nxs-stage -> nxs-k8s-s9: SelectorSpreadPriority, Score: (10)                                                                                                          
I1115 07:57:21.639127       1 generic_scheduler.go:781] Host nxs-k8s-s10 => Score 100037                                                                                                                                                                            
I1115 07:57:21.639150       1 generic_scheduler.go:781] Host nxs-k8s-s8 => Score 100034                                                                                                                                                                             
I1115 07:57:21.639154       1 generic_scheduler.go:781] Host nxs-k8s-s9 => Score 100037                                                                                                                                                                             
I1115 07:57:21.639267       1 scheduler_binder.go:269] AssumePodVolumes for pod "nxs-stage/cronjob-cron-events-1573793820-xt6q9", node "nxs-k8s-s10"                                                                                                               
I1115 07:57:21.639286       1 scheduler_binder.go:279] AssumePodVolumes for pod "nxs-stage/cronjob-cron-events-1573793820-xt6q9", node "nxs-k8s-s10": all PVCs bound and nothing to do                                                                             
I1115 07:57:21.639333       1 factory.go:733] Attempting to bind cronjob-cron-events-1573793820-xt6q9 to nxs-k8s-s10

เดคเตเดŸเด•เตเด•เดคเตเดคเดฟเตฝ เดทเต†เดกเตเดฏเต‚เดณเตผ เดซเดฟเตฝเดŸเตเดŸเตผ เดšเต†เดฏเตเดฏเตเด•เดฏเตเด‚ เด…เดคเต เดธเดฎเดพเดฐเด‚เดญเดฟเด•เตเด•เดพเดตเตเดจเตเดจ 3 เดจเต‹เดกเตเด•เดณเตเดŸเต† เด’เดฐเต เดฒเดฟเดธเตเดฑเตเดฑเต เดธเตƒเดทเตเดŸเดฟเด•เตเด•เตเด•เดฏเตเด‚ เดšเต†เดฏเตเดฏเตเดจเตเดจเดคเต เด‡เดตเดฟเดŸเต† เด•เดพเดฃเดพเด‚ (nxs-k8s-s8, nxs-k8s-s9, nxs-k8s-s10). เดคเตเดŸเตผเดจเตเดจเต, เดเดฑเตเดฑเดตเตเด‚ เด…เดจเตเดฏเต‹เดœเตเดฏเดฎเดพเดฏ เดจเต‹เดกเต เดจเดฟเตผเดฃเตเดฃเดฏเดฟเด•เตเด•เตเดจเตเดจเดคเดฟเดจเดพเดฏเดฟ เดˆ เด“เดฐเต‹ เดจเต‹เดกเตเด•เตพเด•เตเด•เตเดฎเดพเดฏเดฟ เดจเดฟเดฐเดตเดงเดฟ เดชเดพเดฐเดพเดฎเต€เดฑเตเดฑเดฑเตเด•เตพ (เดฌเดพเดฒเตปเดธเตเดกเต เดฑเดฟเดธเต‹เดดเตเดธเต เด…เดฒเต‹เด•เตเด•เต‡เดทเตป, เดฒเต€เดธเตเดฑเตเดฑเต เดฑเดฟเดธเต‹เดดเตเดธเต เด…เดฒเต‹เด•เตเด•เต‡เดทเตป เด‰เตพเดชเตเดชเต†เดŸเต†) เด…เดŸเดฟเดธเตเดฅเดพเดจเดฎเดพเด•เตเด•เดฟ เดธเตเด•เต‹เดฑเตเด•เตพ เด•เดฃเด•เตเด•เดพเด•เตเด•เตเดจเตเดจเต. เด†เดคเตเดฏเดจเตเดคเดฟเด•เดฎเดพเดฏเดฟ, เดเดฑเตเดฑเดตเตเด‚ เด•เต‚เดŸเตเดคเตฝ เดชเต‹เดฏเดฟเดจเตเดฑเตเด•เดณเตเดณเตเดณ เดจเต‹เดกเดฟเดฒเดพเดฃเต เดชเต‹เดกเต เดทเต†เดกเตเดฏเต‚เตพ เดšเต†เดฏเตโ€Œเดคเดฟเดฐเดฟเด•เตเด•เตเดจเตเดจเดคเต (เด‡เดตเดฟเดŸเต† เด’เดฐเต‡เดธเดฎเดฏเด‚ เดฐเดฃเตเดŸเต เดจเต‹เดกเตเด•เตพเด•เตเด•เต เด’เดฐเต‡ เดชเต‹เดฏเดฟเดจเตเดฑเต 100037 เด‰เดฃเตเดŸเต, เด…เดคเดฟเดจเดพเตฝ เด•เตเดฐเดฎเดฐเดนเดฟเดคเดฎเดพเดฏ เด’เดจเตเดจเต เดคเดฟเดฐเดžเตเดžเต†เดŸเตเดคเตเดคเต - nxs-k8s-s10).

เดคเต€เดฐเตเดฎเดพเดจเด‚: เดจเดฟเดฏเดจเตเดคเตเดฐเดฃเด™เตเด™เดณเตŠเดจเตเดจเตเด‚ เดธเดœเตเดœเต€เด•เดฐเดฟเด•เตเด•เดพเดคเตเดค เดชเต‹เดกเตเด•เตพ เด’เดฐเต เดจเต‹เดกเต เดชเตเดฐเดตเตผเดคเตเดคเดฟเดชเตเดชเดฟเด•เตเด•เตเด•เดฏเดพเดฃเต†เด™เตเด•เดฟเตฝ, k8s-เดจเต (เดตเดฟเดญเดต เด‰เดชเดญเต‹เด—เดคเตเดคเดฟเดจเตเดฑเต† เดตเต€เด•เตเดทเดฃเด•เต‹เดฃเดฟเตฝ เดจเดฟเดจเตเดจเต) เด‡เดคเต เดˆ เดจเต‹เดกเดฟเตฝ เด…เดคเตเดคเดฐเด‚ เดชเต‹เดกเตเด•เตพ เด‡เดฒเตเดฒเต†เดจเตเดจเดคเดฟเดจเต เดคเตเดฒเตเดฏเดฎเดพเดฏเดฟเดฐเดฟเด•เตเด•เตเด‚. เด…เดคเดฟเดจเดพเตฝ, เดจเดฟเด™เตเด™เตพเด•เตเด•เต เดธเต‹เดชเดพเดงเดฟเด•เดฎเดพเดฏเดฟ, เด†เดนเตเดฒเดพเดฆเด•เดฐเดฎเดพเดฏ เดชเตเดฐเด•เตเดฐเดฟเดฏเดฏเตเดณเตเดณ เด’เดฐเต เดชเต‹เดกเต เด‰เดฃเตเดŸเต†เด™เตเด•เดฟเตฝ (เด‰เดฆเดพเดนเดฐเดฃเดคเตเดคเดฟเดจเต, wowza) เด…เดคเดฟเดจเต เดจเดฟเดฏเดจเตเดคเตเดฐเดฃเด™เตเด™เดณเตŠเดจเตเดจเตเด‚ เดธเดœเตเดœเต€เด•เดฐเดฟเดšเตเดšเดฟเดŸเตเดŸเดฟเดฒเตเดฒเต†เด™เตเด•เดฟเตฝ, เดˆ เดชเต‹เดกเต เดฏเดฅเดพเตผเดคเตเดฅเดคเตเดคเดฟเตฝ เดจเต‹เดกเดฟเดจเตเดฑเต† เดŽเดฒเตเดฒเดพ เดตเดฟเดญเดตเด™เตเด™เดณเตเด‚ เดญเด•เตเดทเดฟเด•เตเด•เตเดฎเตเดชเต‹เตพ เด’เดฐเต เดธเดพเดนเดšเดฐเตเดฏเด‚ เด‰เดฃเตเดŸเดพเด•เดพเด‚, เดŽเดจเตเดจเดพเตฝ k8s เดจเต เดˆ เดจเต‹เดกเต เด…เตบเดฒเต‹เดกเต เดšเต†เดฏเตโ€Œเดคเดคเดพเดฏเดฟ เด•เดฃเด•เตเด•เดพเด•เตเด•เตเดจเตเดจเต, เดตเตผเด•เตเด•เดฟเด‚เด—เต เดชเต‹เดกเตเด•เตพ เด‡เดฒเตเดฒเดพเดคเตเดค เด’เดฐเต เดจเต‹เดกเดพเดฏเดฟ เดฑเดพเด™เตเด•เต เดšเต†เดฏเตเดฏเตเดฎเตเดชเต‹เตพ (เด•เตƒเดคเตเดฏเดฎเดพเดฏเดฟ เดฒเดญเตเดฏเดฎเดพเดฏ เด‰เดฑเดตเดฟเดŸเด™เตเด™เตพ เดตเดฟเดฒเดฏเดฟเดฐเตเดคเตเดคเตเดจเตเดจ เดชเต‹เดฏเดฟเดจเตเดฑเตเด•เดณเดฟเตฝ) เด‡เดคเดฟเดจเต เดคเตเดฒเตเดฏเดฎเดพเดฏ เดชเต‹เดฏเดฟเดจเตเดฑเตเด•เตพ เดจเตฝเด•เตเด‚, เด‡เดคเต เด†เดคเตเดฏเดจเตเดคเดฟเด•เดฎเดพเดฏเดฟ เดจเต‹เดกเตเด•เตพเด•เตเด•เดฟเดŸเดฏเดฟเตฝ เดฒเต‹เดกเต เด…เดธเดฎเดฎเดพเดฏ เดตเดฟเดคเดฐเดฃเดคเตเดคเดฟเดฒเต‡เด•เตเด•เต เดจเดฏเดฟเดšเตเดšเต‡เด•เตเด•เดพเด‚.

เดชเต‹เดกเดฟเดจเตเดฑเต† เด•เตเดŸเดฟเดฏเตŠเดดเดฟเดชเตเดชเดฟเด•เตเด•เตฝ

เดจเดฟเด™เตเด™เตพเด•เตเด•เดฑเดฟเดฏเดพเดตเตเดจเตเดจเดคเตเดชเต‹เดฒเต†, เด“เดฐเต‹ เดชเต‹เดกเดฟเดจเตเด‚ 3 QoS เด•เตเดฒเดพเดธเตเด•เดณเดฟเตฝ เด’เดจเตเดจเต เดจเตฝเด•เดฟเดฏเดฟเดŸเตเดŸเตเดฃเตเดŸเต:

  1. เด‰เดฑเดชเตเดชเตเดจเตฝเด•เดฟ - เดชเต‹เดกเดฟเดฒเต† เด“เดฐเต‹ เด•เดฃเตเดŸเต†เดฏเตโ€Œเดจเดฑเดฟเดจเตเด‚ เดฎเต†เดฎเตเดฎเดฑเดฟเด•เตเด•เตเด‚ เดธเดฟเดชเดฟเดฏเตเดตเดฟเดจเตเด‚ เด’เดฐเต เด…เดญเตเดฏเตผเดคเตเดฅเดจเดฏเตเด‚ เดชเดฐเดฟเดงเดฟเดฏเตเด‚ เดตเตเดฏเด•เตเดคเดฎเดพเด•เตเด•เตเดฎเตเดชเต‹เตพ เด…เดธเตˆเตป เดšเต†เดฏเตเดฏเตเดจเตเดจเต, เดˆ เดฎเต‚เดฒเตเดฏเด™เตเด™เตพ เดชเตŠเดฐเตเดคเตเดคเดชเตเดชเต†เดŸเดฃเด‚
  2. เดชเตŠเดŸเตเดŸเตเดจเตเดจ - เดชเต‹เดกเดฟเดฒเต† เด’เดฐเต เด•เดฃเตเดŸเต†เดฏเตโ€Œเดจเดฑเดฟเดจเต†เด™เตเด•เดฟเดฒเตเด‚ เด…เดญเตเดฏเตผเดคเตเดฅเดจเดฏเตเด‚ เดชเดฐเดฟเดงเดฟเดฏเตเด‚ เด‰เดฃเตเดŸเต, เด…เดญเตเดฏเตผเดคเตเดฅเดจ < เดชเดฐเดฟเดงเดฟ
  3. เดจเดฒเตเดฒ เดถเตเดฐเดฎเด‚ - เดชเต‹เดกเดฟเดฒเต† เด’เดฐเต เด•เดฃเตเดŸเต†เดฏเตโ€Œเดจเตผ เดชเต‹เดฒเตเด‚ เดชเดฐเดฟเดฎเดฟเดคเดฎเดฒเตเดฒเต†เด™เตเด•เดฟเตฝ

เด…เดคเต‡ เดธเดฎเดฏเด‚, เด’เดฐเต เดจเต‹เดกเดฟเดจเต เดตเดฟเดญเดตเด™เตเด™เดณเตเดŸเต† เด…เดญเดพเดตเด‚ (เดกเดฟเดธเตเด•เต, เดฎเต†เดฎเตเดฎเดฑเดฟ) เด…เดจเตเดญเดตเดชเตเดชเต†เดŸเตเดฎเตเดชเต‹เตพ, เดชเต‹เดกเดฟเดจเตเดฑเต† เดฎเตเตปเด—เดฃเดจเดฏเตเด‚ เด…เดคเดฟเดจเตเดฑเต† QoS เด•เตเดฒเดพเดธเตเด‚ เด•เดฃเด•เตเด•เดฟเดฒเต†เดŸเตเด•เตเด•เตเดจเตเดจ เด’เดฐเต เดชเตเดฐเดคเตเดฏเต‡เด• เด…เตฝเด—เต‹เดฐเดฟเดคเด‚ เด…เดจเตเดธเดฐเดฟเดšเตเดšเต kubelet เดชเต‹เดกเตเด•เตพ เดฑเดพเด™เตเด•เต เดšเต†เดฏเตเดฏเดพเดจเตเด‚ เดชเตเดฑเดคเตเดคเดพเด•เตเด•เดพเดจเตเด‚ เดคเตเดŸเด™เตเด™เตเดจเตเดจเต. เด‰เดฆเดพเดนเดฐเดฃเดคเตเดคเดฟเดจเต, เดจเดฎเตเดฎเตพ RAM เดจเต†เด•เตเด•เตเดฑเดฟเดšเตเดšเดพเดฃเต เดธเด‚เดธเดพเดฐเดฟเด•เตเด•เตเดจเตเดจเดคเต†เด™เตเด•เดฟเตฝ, QoS เด•เตเดฒเดพเดธเดฟเดจเต† เด…เดŸเดฟเดธเตเดฅเดพเดจเดฎเดพเด•เตเด•เดฟ, เด‡เดจเดฟเดชเตเดชเดฑเดฏเตเดจเตเดจ เดคเดคเตเดตเดฎเดจเตเดธเดฐเดฟเดšเตเดšเต เดชเต‹เดฏเดฟเดจเตเดฑเตเด•เตพ เดจเตฝเด•เตเดจเตเดจเต:

  • เด—เตเดฏเดพเดฐเดฃเตเดŸเดฟ:-998
  • เดจเดฒเตเดฒ เดถเตเดฐเดฎเด‚: 1000
  • เดชเตŠเดŸเตเดŸเดฟเดคเตเดคเต†เดฑเดฟเด•เตเด•เดพเดตเตเดจเตเดจ: เด•เตเดฑเดžเตเดžเดคเต(เดชเดฐเดฎเดพเดตเดงเดฟ(2, 1000 - (1000 * เดฎเต†เดฎเตเดฎเดฑเดฟ เดฑเดฟเด•เตเดตเดธเตเดฑเตเดฑเต เดฌเตˆเดฑเตเดฑเตเด•เตพ) / เดฎเต†เดทเต€เตป เดฎเต†เดฎเตเดฎเดฑเดฟ เด•เดชเตเดชเดพเดธเดฟเดฑเตเดฑเดฟ เดฌเตˆเดฑเตเดฑเตเด•เตพ), 999)

เด†. เด…เดคเต‡ เดฎเตเตปโ€Œเด—เดฃเดจเดฏเต‹เดŸเต†, เดจเต‹เดกเดฟเตฝ เดจเดฟเดจเตเดจเต เดเดฑเตเดฑเดตเตเด‚ เดฎเดฟเด•เดšเตเดš เดชเตเดฐเดฏเดคเตโ€Œเดจเดฎเตเดณเตเดณ QoS เด•เตเดฒเดพเดธเต เด‰เดชเดฏเต‹เด—เดฟเดšเตเดšเต kubelet เด†เดฆเตเดฏเด‚ เดชเต‹เดกเตเด•เตพ เดชเตเดฑเดคเตเดคเดพเด•เตเด•เตเด‚.

เดคเต€เดฐเตเดฎเดพเดจเด‚: เดจเต‹เดกเดฟเดฒเต† เดตเดฟเดญเดตเด™เตเด™เดณเตเดŸเต† เด…เดญเดพเดตเดคเตเดคเดฟเตฝ, เด†เดตเดถเตเดฏเดฎเตเดณเตเดณ เดชเต‹เดกเต เดจเต‹เดกเดฟเตฝ เดจเดฟเดจเตเดจเต เดชเตเดฑเดคเตเดคเดพเด•เตเด•เดชเตเดชเต†เดŸเดพเดจเตเดณเตเดณ เดธเดพเดงเตเดฏเดค เด•เตเดฑเดฏเตเด•เตเด•เดพเตป เดจเดฟเด™เตเด™เตพ เด†เด—เตเดฐเดนเดฟเด•เตเด•เตเดจเตเดจเตเดตเต†เด™เตเด•เดฟเตฝ, เดฎเตเตปเด—เดฃเดจเดฏเตโ€Œเด•เตเด•เตŠเดชเตเดชเด‚, เด…เดคเดฟเดจเตเดณเตเดณ เด…เดญเตเดฏเตผเดคเตเดฅเดจ/เดชเดฐเดฟเดงเดฟ เดธเดœเตเดœเต€เด•เดฐเดฟเด•เตเด•เตเดจเตเดจเดคเตเด‚ เดจเดฟเด™เตเด™เตพ เดถเตเดฐเดฆเตเดงเดฟเด•เตเด•เต‡เดฃเตเดŸเดคเตเดฃเตเดŸเต.

เด†เดชเตเดฒเดฟเด•เตเด•เต‡เดทเตป เดชเต‹เดกเตเด•เดณเตเดŸเต† (HPA) เดคเดฟเดฐเดถเตเดšเต€เดจ เด“เดŸเตเดŸเต‹เดธเตโ€Œเด•เต‡เดฒเดฟเด‚เด—เดฟเดจเตเดณเตเดณ เดธเด‚เดตเดฟเดงเดพเดจเด‚

เดฑเดฟเดธเต‹เดดเตโ€Œเดธเตเด•เดณเตเดŸเต† (เดธเดฟเดธเตเดฑเตเดฑเด‚ - เดธเดฟเดชเดฟเดฏเต/เดฑเดพเด‚ เด…เดฒเตเดฒเต†เด™เตเด•เดฟเตฝ เดฏเต‚เดธเตผ - เด†เตผโ€Œเดชเดฟโ€ŒเดŽเดธเต) เด‰เดชเดฏเต‹เด—เดคเตเดคเต† เด†เดถเตเดฐเดฏเดฟเดšเตเดšเต เดชเต‹เดกเตเด•เดณเตเดŸเต† เดŽเดฃเตเดฃเด‚ เดธเตเดตเดฏเดฎเต‡เดต เดตเตผเดฆเตเดงเดฟเดชเตเดชเดฟเด•เตเด•เตเด•เดฏเตเด‚ เด•เตเดฑเดฏเตเด•เตเด•เตเด•เดฏเตเด‚ เดšเต†เดฏเตเดฏเตเด• เดŽเดจเตเดจเดคเดพเดฃเต เดšเตเดฎเดคเดฒ, เด…เดคเตเดคเดฐเด‚ เด’เดฐเต k8s เดŽเดจเตเดฑเดฟเดฑเตเดฑเดฟ HPA (เดคเดฟเดฐเดถเตเดšเต€เดจ เดชเต‹เดกเต เด“เดŸเตเดŸเต‹เดธเตเด•เต†เดฏเดฟเดฒเตผ). เด‡เดคเดฟเดจเตเดฑเต† เด…เตฝเด—เต‹เดฐเดฟเดคเด‚ เด‡เดชเตเดฐเด•เดพเดฐเดฎเดพเดฃเต:

  1. เดจเดฟเดฐเต€เด•เตเดทเดฟเดšเตเดš เด‰เดฑเดตเดฟเดŸเดคเตเดคเดฟเดจเตเดฑเต† เดจเดฟเดฒเดตเดฟเดฒเต† เดฑเต€เดกเดฟเด‚เด—เตเด•เตพ เดจเดฟเตผเดฃเตเดฃเดฏเดฟเด•เตเด•เดชเตเดชเต†เดŸเตเดจเตเดจเต (เดจเดฟเดฒเดตเดฟเดฒเต† เดฎเต†เดŸเตเดฐเดฟเด•เต เดฎเต‚เดฒเตเดฏเด‚)
  2. เดฑเดฟเดธเต‹เดดเตเดธเดฟเดจเดพเดฏเดฟ เด†เดตเดถเตเดฏเดฎเตเดณเตเดณ เดฎเต‚เดฒเตเดฏเด™เตเด™เตพ เดจเดฟเตผเดฃเตเดฃเดฏเดฟเด•เตเด•เดชเตเดชเต†เดŸเตเดจเตเดจเต (เด†เดตเดถเตเดฏเดฎเตเดณเตเดณ เดฎเต†เดŸเตเดฐเดฟเด•เต เดฎเต‚เดฒเตเดฏเด‚), เด…เดต เดธเดฟเดธเตเดฑเตเดฑเด‚ เด‰เดฑเดตเดฟเดŸเด™เตเด™เตพเด•เตเด•เดพเดฏเดฟ เด…เดญเตเดฏเตผเดคเตเดฅเดจ เด‰เดชเดฏเต‹เด—เดฟเดšเตเดšเต เดธเดœเตเดœเต€เด•เดฐเดฟเดšเตเดšเดฟเดฐเดฟเด•เตเด•เตเดจเตเดจเต
  3. เดจเดฟเดฒเดตเดฟเดฒเตเดณเตเดณ เดชเด•เตผเดชเตเดชเตเด•เดณเตเดŸเต† เดŽเดฃเตเดฃเด‚ เดจเดฟเตผเดฃเตเดฃเดฏเดฟเด•เตเด•เดชเตเดชเต†เดŸเตเดจเตเดจเต (เดจเดฟเดฒเดตเดฟเดฒเต† เดชเด•เตผเดชเตเดชเตเด•เตพ)
  4. เด‡เดจเดฟเดชเตเดชเดฑเดฏเตเดจเตเดจ เดธเต‚เดคเตเดฐเดตเดพเด•เตเดฏเด‚ เด†เดตเดถเตเดฏเดฎเตเดณเตเดณ เดชเด•เตผเดชเตเดชเตเด•เดณเตเดŸเต† เดŽเดฃเตเดฃเด‚ เด•เดฃเด•เตเด•เดพเด•เตเด•เตเดจเตเดจเต (เด†เดตเดถเตเดฏเดฎเตเดณเตเดณ เดชเด•เตผเดชเตเดชเตเด•เตพ)
    เด†เด—เตเดฐเดนเดฟเดšเตเดš เดชเด•เตผเดชเตเดชเตเด•เตพ = [เดจเดฟเดฒเดตเดฟเดฒเต† เดชเด•เตผเดชเตเดชเตเด•เตพ * (เดจเดฟเดฒเดตเดฟเดฒเต† เดฎเต†เดŸเตเดฐเดฟเด•เต เดฎเต‚เดฒเตเดฏเด‚ / เด†เดตเดถเตเดฏเดฎเตเดณเตเดณ เดฎเต†เดŸเตเดฐเดฟเด•เต เดฎเต‚เดฒเตเดฏเด‚)]

เดˆ เดธเดพเดนเดšเดฐเตเดฏเดคเตเดคเดฟเตฝ, เด•เต‹เดซเดฟเดซเดฟเดทเตเดฏเดจเตเดฑเต (เดจเดฟเดฒเดตเดฟเดฒเต† เดฎเต†เดŸเตเดฐเดฟเด•เต เดฎเต‚เดฒเตเดฏเด‚ / เด†เดตเดถเตเดฏเดฎเตเดณเตเดณ เดฎเต†เดŸเตเดฐเดฟเด•เต เดฎเต‚เดฒเตเดฏเด‚) 1 เดจเต เด…เดŸเตเดคเตเดคเดพเดฏเดฟเดฐเดฟเด•เตเด•เตเดฎเตเดชเต‹เตพ เดธเตเด•เต†เดฏเดฟเดฒเดฟเด‚เด—เต เดธเด‚เดญเดตเดฟเด•เตเด•เดฟเดฒเตเดฒ (เดˆ เดธเดพเดนเดšเดฐเตเดฏเดคเตเดคเดฟเตฝ, เดจเดฎเตเด•เตเด•เต เด…เดจเตเดตเดฆเดจเต€เดฏเดฎเดพเดฏ เดชเดฟเดถเด•เต เดธเตเดตเดฏเด‚ เดธเดœเตเดœเดฎเดพเด•เตเด•เดพเตป เด•เดดเดฟเดฏเตเด‚; เดธเตเดฅเดฟเดฐเดธเตเดฅเดฟเดคเดฟเดฏเดพเดฏเดฟ เด‡เดคเต 0.1 เด†เดฃเต).

เด†เดชเตเดชเต-เดŸเต†เดธเตเดฑเตเดฑเต เด†เดชเตเดฒเดฟเด•เตเด•เต‡เดทเดจเตเดฑเต† (เดตเดฟเดจเตเดฏเดพเดธเด‚ เดŽเดจเตเดจเต เดตเดฟเดตเดฐเดฟเดšเตเดšเดฟเดฐเดฟเด•เตเด•เตเดจเตเดจเดคเต) เด‰เดฆเดพเดนเดฐเดฃเด‚ เด‰เดชเดฏเต‹เด—เดฟเดšเตเดšเต hpa เดŽเด™เตเด™เดจเต† เดชเตเดฐเดตเตผเดคเตเดคเดฟเด•เตเด•เตเดจเตเดจเตเดตเต†เดจเตเดจเต เดจเต‹เด•เตเด•เดพเด‚, เด…เดตเดฟเดŸเต† CPU เด‰เดชเดญเต‹เด—เด‚ เด…เดจเตเดธเดฐเดฟเดšเตเดšเต เดชเด•เตผเดชเตเดชเตเด•เดณเตเดŸเต† เดŽเดฃเตเดฃเด‚ เดฎเดพเดฑเตเดฑเต‡เดฃเตเดŸเดคเต เด†เดตเดถเตเดฏเดฎเดพเดฃเต:

  • เด†เดชเตเดฒเดฟเด•เตเด•เต‡เดทเตป เดฎเดพเดจเดฟเดซเต†เดธเตเดฑเตเดฑเต

    kind: Deployment
    apiVersion: apps/v1beta2
    metadata:
    name: app-test
    spec:
    selector:
    matchLabels:
    app: app-test
    replicas: 2
    template:
    metadata:
    labels:
    app: app-test
    spec:
    containers:
    - name: nginx
    image: registry.nixys.ru/generic-images/nginx
    imagePullPolicy: Always
    resources:
    requests:
    cpu: 60m
    ports:
    - name: http
    containerPort: 80
    - name: nginx-exporter
    image: nginx/nginx-prometheus-exporter
    resources:
    requests:
    cpu: 30m
    ports:
    - name: nginx-exporter
    containerPort: 9113
    args:
    - -nginx.scrape-uri
    - http://127.0.0.1:80/nginx-status

    เด†. เด†เดชเตเดฒเดฟเด•เตเด•เต‡เดทเตป เดชเต‹เดกเต เดคเตเดŸเด•เตเด•เดคเตเดคเดฟเตฝ เดฐเดฃเตเดŸเต เดธเดจเตเดฆเตผเดญเด™เตเด™เดณเดฟเตฝ เดธเดฎเดพเดฐเด‚เดญเดฟเดšเตเดšเดคเดพเดฏเดฟ เดžเด™เตเด™เตพ เด•เดพเดฃเตเดจเตเดจเต, เด…เดตเดฏเดฟเตฝ เด“เดฐเต‹เดจเตเดจเดฟเดฒเตเด‚ เดฐเดฃเตเดŸเต nginx, nginx-เดŽเด•เตโ€Œเดธเตโ€Œเดชเต‹เตผเดŸเตเดŸเตผ เด•เดฃเตเดŸเต†เดฏเตโ€Œเดจเดฑเตเด•เตพ เด…เดŸเด™เตเด™เดฟเดฏเดฟเดฐเดฟเด•เตเด•เตเดจเตเดจเต, เด…เดตเดฏเดฟเตฝ เด“เดฐเต‹เดจเตเดจเดฟเดจเตเด‚ เด’เดฐเต เดจเดฟเตผเดฆเตเดฆเดฟเดทเตเดŸ เด…เดญเตเดฏเตผเดคเตเดฅเดจเด•เตพ เดธเดฟเดชเดฟเดฏเตเดตเดฟเดจเดพเดฏเดฟ.

  • HPA เดฎเดพเดจเดฟเดซเต†เดธเตเดฑเตเดฑเต‹

    apiVersion: autoscaling/v2beta2
    kind: HorizontalPodAutoscaler
    metadata:
    name: app-test-hpa
    spec:
    maxReplicas: 10
    minReplicas: 2
    scaleTargetRef:
    apiVersion: extensions/v1beta1
    kind: Deployment
    name: app-test
    metrics:
    - type: Resource
    resource:
    name: cpu
    target:
    type: Utilization
    averageUtilization: 30

    เด†. เดกเดฟเดชเตเดฒเต‹เดฏเตโ€Œเดฎเต†เดจเตเดฑเต เด†เดชเตเดชเต-เดŸเต†เดธเตเดฑเตเดฑเต เดจเดฟเดฐเต€เด•เตเดทเดฟเด•เตเด•เตเด•เดฏเตเด‚ เดธเดฟเดชเดฟเดฏเต เด‡เตปเดกเดฟเด•เตเด•เต‡เดฑเตเดฑเดฑเดฟเดจเต† เด…เดŸเดฟเดธเตเดฅเดพเดจเดฎเดพเด•เตเด•เดฟ เด†เดชเตเดฒเดฟเด•เตเด•เต‡เดทเดจเตเดฎเดพเดฏเดฟ เดชเต‹เดกเตเด•เดณเตเดŸเต† เดŽเดฃเตเดฃเด‚ เด•เตเดฐเดฎเต€เด•เดฐเดฟเด•เตเด•เตเด•เดฏเตเด‚ เดšเต†เดฏเตเดฏเตเดจเตเดจ เด’เดฐเต เดŽเดšเตเดšเตเดชเดฟเดŽ เดžเด™เตเด™เตพ เดธเตƒเดทเตเดŸเดฟเดšเตเดšเต (เดชเต‹เดกเต เด†เดตเดถเตเดฏเดชเตเดชเต†เดŸเตเดจเตเดจ เดธเดฟเดชเดฟเดฏเตเดตเดฟเดจเตเดฑเต† 30% เด‰เดชเดฏเต‹เด—เดฟเด•เตเด•เตเดฎเต†เดจเตเดจเต เดžเด™เตเด™เตพ เดชเตเดฐเดคเต€เด•เตเดทเดฟเด•เตเด•เตเดจเตเดจเต), เดชเด•เตผเดชเตเดชเตเด•เดณเตเดŸเต† เดŽเดฃเตเดฃเดคเตเดคเดฟเตฝ 2-10 เดชเดฐเดฟเดงเดฟ.

    เด‡เดชเตเดชเต‹เตพ, เดšเต‚เดณเด•เดณเดฟเดฒเตŠเดจเตเดจเดฟเตฝ เด’เดฐเต เดฒเต‹เดกเต เดชเตเดฐเดฏเต‹เด—เดฟเดšเตเดšเดพเตฝ hpa เดชเตเดฐเดตเตผเดคเตเดคเดจเดคเตเดคเดฟเดจเตเดฑเต† เดธเด‚เดตเดฟเดงเดพเดจเด‚ เดจเต‹เด•เตเด•เดพเด‚:

     # kubectl top pod
    NAME                                                   CPU(cores)   MEMORY(bytes)
    app-test-78559f8f44-pgs58            101m         243Mi
    app-test-78559f8f44-cj4jz            4m           240Mi

เดฎเตŠเดคเตเดคเดคเตเดคเดฟเตฝ เดžเด™เตเด™เตพเด•เตเด•เต เด‡เดจเดฟเดชเตเดชเดฑเดฏเตเดจเตเดจเดตเดฏเตเดฃเตเดŸเต:

  • เด†เดตเดถเตเดฏเดฎเตเดณเตเดณ เดฎเต‚เดฒเตเดฏเด‚ (เด†เดตเดถเตเดฏเดฎเตเดณเตเดณ เดฎเต†เดŸเตเดฐเดฟเด•เต เดฎเต‚เดฒเตเดฏเด‚) - hpa เด•เตเดฐเดฎเต€เด•เดฐเดฃเด™เตเด™เตพ เด…เดจเตเดธเดฐเดฟเดšเตเดšเต, เดžเด™เตเด™เตพเด•เตเด•เต 30% เด‰เดฃเตเดŸเต
  • เดจเดฟเดฒเดตเดฟเดฒเต† เดฎเต‚เดฒเตเดฏเด‚ (currentMetricValue) - เด•เดฃเด•เตเด•เตเด•เต‚เดŸเตเดŸเดฒเดฟเดจเดพเดฏเดฟ, เด•เตบเดŸเตเดฐเต‹เดณเตผ-เดฎเดพเดจเต‡เดœเตผ %-เตฝ เดตเดฟเดญเดต เด‰เดชเดญเต‹เด—เดคเตเดคเดฟเดจเตเดฑเต† เดถเดฐเดพเดถเดฐเดฟ เดฎเต‚เดฒเตเดฏเด‚ เด•เดฃเด•เตเด•เดพเด•เตเด•เตเดจเตเดจเต, เด…เดคเดพเดฏเดคเต. เดธเต‹เดชเดพเดงเดฟเด•เดฎเดพเดฏเดฟ เด‡เดจเดฟเดชเตเดชเดฑเดฏเตเดจเตเดจเดต เดšเต†เดฏเตเดฏเตเดจเตเดจเต:
    1. เดฎเต†เดŸเตเดฐเดฟเด•เต เดธเต†เตผเดตเดฑเดฟเตฝ เดจเดฟเดจเตเดจเต เดชเต‹เดกเต เดฎเต†เดŸเตเดฐเดฟเด•เตเดธเดฟเดจเตเดฑเต† เด•เต‡เดตเดฒ เดฎเต‚เดฒเตเดฏเด™เตเด™เตพ เดธเตเดตเต€เด•เดฐเดฟเด•เตเด•เตเดจเตเดจเต, เด…เดคเดพเดฏเดคเต. 101 เดฎเต€เดฑเตเดฑเดฑเตเด‚ 4 เดฎเต€เดฑเตเดฑเดฑเตเด‚
    2. เดถเดฐเดพเดถเดฐเดฟ เด•เต‡เดตเดฒ เดฎเต‚เดฒเตเดฏเด‚ เด•เดฃเด•เตเด•เดพเด•เตเด•เตเดจเตเดจเต, เด…เดคเดพเดฏเดคเต. (101m + 4m) / 2 = 53m
    3. เด†เดตเดถเตเดฏเดฎเตเดณเตเดณ เดตเดฟเดญเดต เด‰เดชเดญเต‹เด—เดคเตเดคเดฟเดจเต เด•เต‡เดตเดฒ เดฎเต‚เดฒเตเดฏเด‚ เดฒเดญเดฟเด•เตเด•เตเดจเตเดจเต (เด‡เดคเดฟเดจเดพเดฏเดฟ, เดŽเดฒเตเดฒเดพ เด•เดฃเตเดŸเต†เดฏเตโ€Œเดจเดฑเตเด•เดณเตเดŸเต†เดฏเตเด‚ เด…เดญเตเดฏเตผเดคเตเดฅเดจเด•เตพ เดธเด‚เด—เตเดฐเดนเดฟเดšเตเดšเดฟเดฐเดฟเด•เตเด•เตเดจเตเดจเต) 60m + 30m = 90m
    4. เด…เดญเตเดฏเตผเดคเตเดฅเดจ เดชเต‹เดกเตเดฎเดพเดฏเดฟ เดฌเดจเตเดงเดชเตเดชเต†เดŸเตเดŸ CPU เด‰เดชเดญเต‹เด—เดคเตเดคเดฟเดจเตเดฑเต† เดถเดฐเดพเดถเดฐเดฟ เดถเดคเดฎเดพเดจเด‚ เด•เดฃเด•เตเด•เดพเด•เตเด•เตเดจเตเดจเต, เด…เดคเดพเดฏเดคเต. 53 เดฎเดฟ / 90 เดฎเดฟ * 100% = 59%

เดชเด•เตผเดชเตเดชเตเด•เดณเตเดŸเต† เดŽเดฃเตเดฃเด‚ เดฎเดพเดฑเตเดฑเต‡เดฃเตเดŸเดคเตเดฃเตเดŸเต‹ เดŽเดจเตเดจเต เดจเดฟเตผเดฃเตเดฃเดฏเดฟเด•เตเด•เต‡เดฃเตเดŸเดคเต†เดฒเตเดฒเดพเด‚ เด‡เดชเตเดชเต‹เตพ เดžเด™เตเด™เดณเตเดŸเต† เดชเด•เตเด•เดฒเตเดฃเตเดŸเต; เด‡เดคเต เดšเต†เดฏเตเดฏเตเดจเตเดจเดคเดฟเดจเต, เดžเด™เตเด™เตพ เด—เตเดฃเด•เด‚ เด•เดฃเด•เตเด•เดพเด•เตเด•เตเดจเตเดจเต:

ratio = 59% / 30% = 1.96

เด†. เดชเด•เตผเดชเตเดชเตเด•เดณเตเดŸเต† เดŽเดฃเตเดฃเด‚ ~2 เดฎเดŸเด™เตเด™เต เดตเตผเดฆเตเดงเดฟเดชเตเดชเดฟเด•เตเด•เตเด•เดฏเตเด‚ เดคเตเด• [2 * 1.96] = 4 เด†เดฏเดฟ เดตเตผเดฆเตเดงเดฟเดชเตเดชเดฟเด•เตเด•เตเด•เดฏเตเด‚ เดตเต‡เดฃเด‚.

เดคเต€เดฐเตเดฎเดพเดจเด‚: เดจเดฟเด™เตเด™เตพเด•เตเด•เต เด•เดพเดฃเดพเดจเดพเด•เตเดจเตเดจเดคเตเดชเต‹เดฒเต†, เดˆ เดธเด‚เดตเดฟเดงเดพเดจเด‚ เดชเตเดฐเดตเตผเดคเตเดคเดฟเด•เตเด•เตเดจเตเดจเดคเดฟเดจเต, เดจเดฟเดฐเต€เด•เตเดทเดฟเดšเตเดš เดชเต‹เดกเดฟเดฒเต† เดŽเดฒเตเดฒเดพ เด•เดฃเตเดŸเต†เดฏเตเดจเดฑเตเด•เตพเด•เตเด•เตเดฎเตเดณเตเดณ เด…เดญเตเดฏเตผเดคเตเดฅเดจเด•เดณเตเดŸเต† เดธเดพเดจเตเดจเดฟเดงเตเดฏเดฎเดพเดฃเต เด†เดตเดถเตเดฏเดฎเดพเดฏ เดตเตเดฏเดตเดธเตเดฅ.

เดจเต‹เดกเตเด•เดณเตเดŸเต† เดคเดฟเดฐเดถเตเดšเต€เดจ เด“เดŸเตเดŸเต‹เดธเตโ€Œเด•เต‡เดฒเดฟเด‚เด—เดฟเดจเตเดณเตเดณ เดธเด‚เดตเดฟเดงเดพเดจเด‚ (เด•เตเดฒเดธเตเดฑเตเดฑเตผ เด“เดŸเตเดŸเต‹เดธเตโ€Œเด•เต‡เดฒเตผ)

เดฒเต‹เดกเต เดธเตผเดœเตเด•เดณเตเดŸเต† เดธเดฎเดฏเดคเตเดคเต เดธเดฟเดธเตเดฑเตเดฑเดคเตเดคเดฟเดฒเต† เดจเต†เด—เดฑเตเดฑเต€เดตเต เด†เด˜เดพเดคเด‚ เดจเดฟเตผเดตเต€เดฐเตเดฏเดฎเดพเด•เตเด•เตเดจเตเดจเดคเดฟเดจเต, เด’เดฐเต เด•เต‹เตบเดซเดฟเด—เตผ เดšเต†เดฏเตเดค เดŽเดšเตเดšเตเดชเดฟเดŽ เดฎเดคเดฟเดฏเดพเด•เดฟเดฒเตเดฒ. เด‰เดฆเดพเดนเดฐเดฃเดคเตเดคเดฟเดจเต, hpa เด•เตบเดŸเตเดฐเต‹เดณเตผ เดฎเดพเดจเต‡เดœเดฑเดฟเดฒเต† เด•เตเดฐเดฎเต€เด•เดฐเดฃเด™เตเด™เตพ เด…เดจเตเดธเดฐเดฟเดšเตเดšเต, เดชเด•เตผเดชเตเดชเตเด•เดณเตเดŸเต† เดŽเดฃเตเดฃเด‚ 2 เดฎเดŸเด™เตเด™เต เดตเตผเดฆเตเดงเดฟเดชเตเดชเดฟเด•เตเด•เดฃเดฎเต†เดจเตเดจเต เด…เดคเต เดคเต€เดฐเตเดฎเดพเดจเดฟเด•เตเด•เตเดจเตเดจเต, เดŽเดจเตเดจเดพเตฝ เด…เดคเตเดคเดฐเด‚ เดงเดพเดฐเดพเดณเด‚ เดชเต‹เดกเตเด•เตพ เดชเตเดฐเดตเตผเดคเตเดคเดฟเดชเตเดชเดฟเด•เตเด•เตเดจเตเดจเดคเดฟเดจเต เดจเต‹เดกเตเด•เตพเด•เตเด•เต เดธเตเดตเดคเดจเตเดคเตเดฐ เด‰เดฑเดตเดฟเดŸเด™เตเด™เดณเดฟเดฒเตเดฒ (เด…เดคเดพเดฏเดคเต เดจเต‹เดกเดฟเดจเต เดจเตฝเด•เดพเตป เด•เดดเดฟเดฏเดฟเดฒเตเดฒ เด…เดญเตเดฏเตผเดคเตเดฅเดจ เดชเต‹เดกเดฟเดฒเต‡เด•เตเด•เต เดตเดฟเดญเดตเด™เตเด™เตพ เด…เดญเตเดฏเตผเดคเตเดฅเดฟเดšเตเดšเต) เด•เต‚เดŸเดพเดคเต† เดˆ เดชเต‹เดกเตเด•เตพ เดคเต€เตผเดšเตเดšเดชเตเดชเต†เดŸเตเดคเตเดคเดพเดคเตเดค เด…เดตเดธเตเดฅเดฏเดฟเดฒเต‡เด•เตเด•เต เดฎเดพเดฑเตเดจเตเดจเต.

เดˆ เดธเดพเดนเดšเดฐเตเดฏเดคเตเดคเดฟเตฝ, เดฆเดพเดคเดพเดตเดฟเดจเต เด…เดจเตเดฌเดจเตเดงเดฎเดพเดฏ IaaS/PaaS เด‰เดฃเตเดŸเต†เด™เตเด•เดฟเตฝ (เด‰เดฆเดพเดนเดฐเดฃเดคเตเดคเดฟเดจเต, GKE/GCE, AKS, EKS เดฎเตเดคเดฒเดพเดฏเดต), เด‡เดคเตเดชเต‹เดฒเตเดณเตเดณ เด’เดฐเต เดŸเต‚เตพ เดจเต‹เดกเต เด“เดŸเตเดŸเต‹เดธเตเด•เต†เดฏเดฟเดฒเตผ. เด•เตเดฒเดธเตเดฑเตเดฑเดฑเดฟเดฒเตเด‚ เดชเต‹เดกเตเด•เดณเดฟเดฒเตเด‚ เดฑเดฟเดธเต‹เดดเตโ€Œเดธเตเด•เดณเตเดŸเต† เด…เดญเดพเดตเดฎเตเดฃเตเดŸเต†เด™เตเด•เดฟเตฝ, เด•เตเดฒเดธเตเดฑเตเดฑเดฑเดฟเดฒเต† เดเดฑเตเดฑเดตเตเด‚ เด•เตเดฑเดžเตเดž เดจเต‹เดกเตเด•เดณเตเดŸเต† เดŽเดฃเตเดฃเด‚ เดธเดœเตเดœเต€เด•เดฐเดฟเด•เตเด•เดพเดจเตเด‚ เดจเดฟเดฒเดตเดฟเดฒเต† เดจเต‹เดกเตเด•เดณเตเดŸเต† เดŽเดฃเตเดฃเด‚ เดธเตเดตเดฏเดฎเต‡เดต เด•เตเดฐเดฎเต€เด•เดฐเดฟเด•เตเด•เดพเดจเตเด‚ เด‡เดคเต เดจเดฟเด™เตเด™เดณเต† เด…เดจเตเดตเดฆเดฟเด•เตเด•เตเดจเตเดจเต (เด’เดฐเต เดจเต‹เดกเต เด“เตผเดกเตผ/เดจเต€เด•เตเด•เด‚ เดšเต†เดฏเตเดฏเดพเตป เด•เตเดฒเต—เดกเต เดชเตเดฐเตŠเดตเตˆเดกเตผ API-เดฏเต† เดตเดฟเดณเดฟเดšเตเดšเต). เดทเต†เดกเตเดฏเต‚เตพ เดšเต†เดฏเตเดฏเดพเตป เด•เดดเดฟเดฏเดฟเดฒเตเดฒ (เดคเต€เตผเดšเตเดšเดชเตเดชเต†เดŸเตเดคเตเดคเดพเดคเตเดค เด…เดตเดธเตเดฅเดฏเดฟเดฒเดพเดฃเต).

เดคเต€เดฐเตเดฎเดพเดจเด‚: เดจเต‹เดกเตเด•เตพ เดธเตเดตเดฏเดฎเต‡เดต เดธเตโ€Œเด•เต†เดฏเดฟเตฝ เดšเต†เดฏเตเดฏเดพเตป, เดชเต‹เดกเต เด•เดฃเตเดŸเต†เดฏเตโ€Œเดจเดฑเตเด•เดณเดฟเตฝ เด…เดญเตเดฏเตผเดคเตเดฅเดจเด•เตพ เดธเดœเตเดœเต€เด•เดฐเดฟเด•เตเด•เต‡เดฃเตเดŸเดคเต เด†เดตเดถเตเดฏเดฎเดพเดฃเต, เด…เดคเตเดตเดดเดฟ k8-เด•เตพเด•เตเด•เต เดจเต‹เดกเตเด•เดณเดฟเดฒเต† เดฒเต‹เดกเต เดถเดฐเดฟเดฏเดพเดฏเดฟ เดตเดฟเดฒเดฏเดฟเดฐเตเดคเตเดคเดพเดจเตเด‚ เด…เดคเดฟเดจเดจเตเดธเดฐเดฟเดšเตเดšเต เด…เดŸเตเดคเตเดค เดชเต‹เดกเต เดธเดฎเดพเดฐเด‚เดญเดฟเด•เตเด•เตเดจเตเดจเดคเดฟเดจเต เด•เตเดฒเดธเตเดฑเตเดฑเดฑเดฟเตฝ เด‰เดฑเดตเดฟเดŸเด™เตเด™เดณเตŠเดจเตเดจเตเดฎเดฟเดฒเตเดฒเต†เดจเตเดจเต เดฑเดฟเดชเตเดชเต‹เตผเดŸเตเดŸเตเดšเต†เดฏเตเดฏเดพเดจเตเด‚ เด•เดดเดฟเดฏเตเด‚.

เดคเต€เดฐเตเดฎเดพเดจเด‚

เด†เดชเตเดฒเดฟเด•เตเด•เต‡เดทเตป เดตเดฟเดœเดฏเด•เดฐเดฎเดพเดฏเดฟ เดชเตเดฐเดตเตผเดคเตเดคเดฟเด•เตเด•เตเดจเตเดจเดคเดฟเดจเต เด•เดฃเตเดŸเต†เดฏเตเดจเตผ เดฑเดฟเดธเต‹เดดเตเดธเต เดชเดฐเดฟเดงเดฟเด•เตพ เดธเดœเตเดœเต€เด•เดฐเดฟเด•เตเด•เต‡เดฃเตเดŸ เด†เดตเดถเตเดฏเดฎเดฟเดฒเตเดฒ เดŽเดจเตเดจเดคเต เดถเตเดฐเดฆเตเดงเดฟเด•เตเด•เต‡เดฃเตเดŸเดคเดพเดฃเต, เดŽเดจเตเดจเดพเตฝ เด‡เดจเดฟเดชเตเดชเดฑเดฏเตเดจเตเดจ เด•เดพเดฐเดฃเด™เตเด™เดณเดพเตฝ เด…เด™เตเด™เดจเต† เดšเต†เดฏเตเดฏเตเดจเตเดจเดคเดพเดฃเต เดจเดฒเตเดฒเดคเต:

  1. k8s เดจเต‹เดกเตเด•เตพเด•เตเด•เดฟเดŸเดฏเดฟเดฒเตเดณเตเดณ เดฒเต‹เดกเต เดฌเดพเดฒเตปเดธเดฟเด™เตเด™เดฟเดจเตเดฑเต† เด•เดพเดฐเตเดฏเดคเตเดคเดฟเตฝ เดทเต†เดกเตเดฏเต‚เดณเดฑเดฟเดจเตเดฑเต† เด•เต‚เดŸเตเดคเตฝ เด•เตƒเดคเตเดฏเดฎเดพเดฏ เดชเตเดฐเดตเตผเดคเตเดคเดจเดคเตเดคเดฟเดจเต
  2. "เดชเต‹เดกเต เดŽเดตเดฟเด•เตเดทเตป" เด‡เดตเดจเตเดฑเต เดธเด‚เดญเดตเดฟเด•เตเด•เดพเดจเตเดณเตเดณ เดธเดพเดงเตเดฏเดค เด•เตเดฑเดฏเตเด•เตเด•เตเดจเตเดจเดคเดฟเดจเต
  3. เด†เดชเตเดฒเดฟเด•เตเด•เต‡เดทเตป เดชเต‹เดกเตเด•เดณเตเดŸเต† (HPA) เดคเดฟเดฐเดถเตเดšเต€เดจเดฎเดพเดฏ เด“เดŸเตเดŸเต‹เดธเตเด•เต†เดฏเดฟเดฒเดฟเด‚เด—เต เดชเตเดฐเดตเตผเดคเตเดคเดฟเด•เตเด•เตเดจเตเดจเดคเดฟเดจเต
  4. เด•เตเดฒเต—เดกเต เดฆเดพเดคเดพเด•เตเด•เตพเด•เตเด•เตเดณเตเดณ เดจเต‹เดกเตเด•เดณเตเดŸเต† เดคเดฟเดฐเดถเตเดšเต€เดจ เด“เดŸเตเดŸเต‹เดธเตโ€Œเด•เต‡เดฒเดฟเด‚เด—เดฟเดจเดพเดฏเดฟ (เด•เตเดฒเดธเตเดฑเตเดฑเตผ เด“เดŸเตเดŸเต‹เดธเตโ€Œเด•เต‡เดฒเดฟเด‚เด—เต).

เดžเด™เตเด™เดณเตเดŸเต† เดฌเตเดฒเต‹เด—เดฟเดฒเต† เดฎเดฑเตเดฑเต เดฒเต‡เด–เดจเด™เตเด™เดณเตเด‚ เดตเดพเดฏเดฟเด•เตเด•เตเด•:

เด…เดตเดฒเด‚เดฌเด‚: www.habr.com

เด’เดฐเต เด…เดญเดฟเดชเตเดฐเดพเดฏเด‚ เดšเต‡เตผเด•เตเด•เตเด•