เชเช เชจเชฟเชฏเชฎ เชคเชฐเซเชเซ, เชเชชเซเชฒเชฟเชเซเชถเชจเชจเซ เชคเซเชจเซ เชธเชพเชเซ เช เชจเซ เชธเซเชฅเชฟเชฐ เชเชพเชฎเชเซเชฐเซ เชฎเชพเชเซ เชนเชเชฎเซเชถเชพ เชธเชเชธเชพเชงเชจเซเชจเซ เชธเชฎเชฐเซเชชเชฟเชค เชชเซเชฒ เชชเซเชฐเชฆเชพเชจ เชเชฐเชตเชพเชจเซ เชเชฐเซเชฐ เชเซ. เชชเชฐเชเชคเซ เชเซ เชเช เช เชชเชพเชตเชฐ เชชเชฐ เชเชฃเซ เชเชชเซเชฒเชฟเชเซเชถเชจเซ เชเชพเชฒเซ เชฐเชนเซ เชนเซเชฏ เชคเซ เชถเซเช? เชคเซเชฎเชพเชเชจเชพ เชฆเชฐเซเชเชจเซ เชจเซเชฏเซเชจเชคเชฎ เชเชฐเซเชฐเซ เชธเชเชธเชพเชงเชจเซ เชเซเชตเซ เชฐเซเชคเซ เชชเซเชฐเชฆเชพเชจ เชเชฐเชตเชพ? เชคเชฎเซ เชธเชเชธเชพเชงเชจ เชตเชชเชฐเชพเชถเชจเซ เชเซเชตเซ เชฐเซเชคเซ เชฎเชฐเซเชฏเชพเชฆเชฟเชค เชเชฐเซ เชถเชเซ เชเซ? เชจเซเชกเซเชธ เชตเชเซเชเซเชจเชพ เชญเชพเชฐเชจเซ เชฏเซเชเซเชฏ เชฐเซเชคเซ เชเซเชตเซ เชฐเซเชคเซ เชตเชฟเชคเชฐเชฟเชค เชเชฐเชตเซเช? เชเซ เชเชชเซเชฒเชฟเชเซเชถเชจ เชฒเซเชก เชตเชงเซ เชคเซ เชนเซเชฐเซเชเซเชจเซเชเชฒ เชธเซเชเซเชฒเชฟเชเช เชฎเชฟเชเซเชจเชฟเชเชฎ เชเชพเชฎ เชเชฐเซ เชเซ เชคเซเชจเซ เชเชพเชคเชฐเซ เชเซเชตเซ เชฐเซเชคเซ เชเชฐเชตเซ?
เชคเชฎเชพเชฐเซ เชธเชฟเชธเซเชเชฎเชฎเชพเช เชเชฏเชพ เชฎเซเชเซเชฏ เชชเซเชฐเชเชพเชฐเชจเชพเช เชธเชเชธเชพเชงเชจเซ เช เชธเซเชคเชฟเชคเซเชตเชฎเชพเช เชเซ เชคเซเชจเซ เชธเชพเชฅเซ เชชเซเชฐเชพเชฐเชเชญ เชเชฐเชตเชพเชจเซ เชเชฐเซเชฐ เชเซ - เช, เช เชฒเชฌเชคเซเชค, เชชเซเชฐเซเชธเซเชธเชฐ เชธเชฎเชฏ เช เชจเซ เชฐเซเชฎ เชเซ. k8s เชฎเชพเช เช เชธเชเชธเชพเชงเชจ เชชเซเชฐเชเชพเชฐเซ เชจเซเชเซเชจเชพ เชเชเชฎเซเชฎเชพเช เชฎเชพเชชเชตเชพเชฎเชพเช เชเชตเซ เชเซ:
- เชธเซเชชเซเชฏเซ - เชเซเชฐเซเชฎเชพเช
- เชฐเซเชฎ - เชฌเชพเชเชเซเชธเชฎเชพเช
เชคเชฆเซเชชเชฐเชพเชเชค, เชฆเชฐเซเช เชธเชเชธเชพเชงเชจ เชฎเชพเชเซ เชฌเซ เชชเซเชฐเชเชพเชฐเชจเซ เชเชตเชถเซเชฏเชเชคเชพเช เชธเซเช เชเชฐเชตเซ เชถเชเซเชฏ เชเซ - เชตเชฟเชจเชเชคเซเช ะธ เชฎเชฐเซเชฏเชพเชฆเชพ. เชตเชฟเชจเชเชคเซเช - เชเชจเซเชเซเชจเชฐ (เช เชจเซ เชเชเชเชฆเชฐเซ เชชเซเชก) เชเชฒเชพเชตเชตเชพ เชฎเชพเชเซ เชจเซเชกเชจเชพ เชฎเชซเชค เชธเชเชธเชพเชงเชจเซ เชฎเชพเชเซเชจเซ เชจเซเชฏเซเชจเชคเชฎ เชเชตเชถเซเชฏเชเชคเชพเชเชจเซเช เชตเชฐเซเชฃเชจ เชเชฐเซ เชเซ, เชเซเชฏเชพเชฐเซ เชฎเชฐเซเชฏเชพเชฆเชพ เชเชจเซเชเซเชจเชฐ เชฎเชพเชเซ เชเชชเชฒเชฌเซเชง เชธเชเชธเชพเชงเชจเซ เชชเชฐ เชธเชเชค เชฎเชฐเซเชฏเชพเชฆเชพ เชธเซเช เชเชฐเซ เชเซ.
เชคเซ เชธเชฎเชเชตเซเช เช เชเชคเซเชฏเชจเซเช เชเซ เชเซ เชฎเซเชจเชฟเชซเซเชธเซเชเชฎเชพเช เชฌเชเชจเซ เชชเซเชฐเชเชพเชฐเซเชจเซ เชธเซเชชเชทเซเชเชชเชฃเซ เชตเซเชฏเชพเชเซเชฏเชพเชฏเชฟเชค เชเชฐเชตเชพเชจเซ เชเชฐเซเชฐ เชจเชฅเซ, เชชเชฐเชเชคเซ เชตเชฐเซเชคเชจ เชจเซเชเซ เชฎเซเชเชฌ เชนเชถเซ:
- เชเซ เชธเชเชธเชพเชงเชจเชจเซ เชฎเชพเชคเซเชฐ เชฎเชฐเซเชฏเชพเชฆเชพเช เชธเซเชชเชทเซเชเชชเชฃเซ เชจเชฟเชฐเซเชฆเชฟเชทเซเช เชเชฐเชตเชพเชฎเชพเช เชเชตเซ เชนเซเชฏ, เชคเซ เชชเชเซ เช เชธเชเชธเชพเชงเชจ เชฎเชพเชเซเชจเซ เชตเชฟเชจเชเชคเซเช เชเชชเชฎเซเชณเซ เชฎเชฐเซเชฏเชพเชฆเชพเชจเซ เชฌเชฐเชพเชฌเชฐ เชฎเซเชฒเซเชฏ เชฒเซ เชเซ (เชคเชฎเซ เชตเชฐเซเชฃเชจ เชเชฐเชคเซ เชธเชเชธเซเชฅเชพเชเชจเซ เชเซเชฒ เชเชฐเซเชจเซ เชเชจเซ เชเชเชพเชธเซ เชถเชเซ เชเซ). เชคเซ. เชนเชเซเชเชคเชฎเชพเช, เชเชจเซเชเซเชจเชฐ เชคเซเชจเซ เชเชฒเชพเชตเชตเชพ เชฎเชพเชเซ เชเชฐเซเชฐเซ เชธเชเชธเชพเชงเชจเซเชจเซ เชธเชฎเชพเชจ เชฐเชเชฎ เชธเซเชงเซ เชฎเชฐเซเชฏเชพเชฆเชฟเชค เชนเชถเซ.
- เชเซ เชธเชเชธเชพเชงเชจ เชฎเชพเชเซ เชฎเชพเชคเซเชฐ เชตเชฟเชจเชเชคเซเช เชธเซเชชเชทเซเชเชชเชฃเซ เชเชฒเซเชฒเซเชเชฟเชค เชนเซเชฏ, เชคเซ เชชเชเซ เช เชธเชเชธเชพเชงเชจ เชชเชฐ เชเซเช เชเชชเชฒเชพ เชชเซเชฐเชคเชฟเชฌเชเชงเซ เชธเซเช เชเชฐเชตเชพเชฎเชพเช เชเชตเชคเชพ เชจเชฅเซ - เชเชเชฒเซ เชเซ. เชเชจเซเชเซเชจเชฐ เชซเชเซเชค เชจเซเชกเชจเชพ เชธเชเชธเชพเชงเชจเซ เชฆเซเชตเชพเชฐเชพ เชฎเชฐเซเชฏเชพเชฆเชฟเชค เชเซ.
เชธเชเชธเชพเชงเชจ เชธเชเชเชพเชฒเชจเชจเซ เชฎเชพเชคเซเชฐ เชเซเชเซเชเชธ เชเชจเซเชเซเชจเชฐเชจเชพ เชธเซเชคเชฐเซ เช เชจเชนเซเช, เชชเชฃ เชจเซเชเซเชจเซ เชธเชเชธเซเชฅเชพเชเชจเซ เชเชชเชฏเซเช เชเชฐเซเชจเซ เชจเซเชฎเชธเซเชชเซเชธ เชธเซเชคเชฐเซ เชชเชฃ เชเซเช เชตเชตเชพเชจเซเช เชถเชเซเชฏ เชเซ:
- เชฒเชฟเชฎเชฟเชเชฐเซเชจเซเช โ ns เชฎเชพเช เชเชจเซเชเซเชจเชฐ/เชชเซเชก เชธเซเชคเชฐ เชชเชฐ เชชเซเชฐเชคเชฟเชฌเชเชง เชจเซเชคเชฟเชจเซเช เชตเชฐเซเชฃเชจ เชเชฐเซ เชเซ เช เชจเซ เชเชจเซเชเซเชจเชฐ/เชชเซเชก เชชเชฐเชจเซ เชกเชฟเชซเซเชฒเซเช เชฎเชฐเซเชฏเชพเชฆเชพเชเชจเซเช เชตเชฐเซเชฃเชจ เชเชฐเชตเชพ เชคเซเชฎเช เชฆเซเชเซเชคเซ เชฐเซเชคเซ เชเชฐเชฌเซเชฏเซเชเซเชค เชเชจเซเชเซเชจเชฐ/เชชเซเชกเซเชธ (เช เชฅเชตเชพ เชคเซเชจเชพเชฅเซ เชตเชฟเชชเชฐเซเชค) เชจเซ เชฐเชเชจเชพ เช เชเชเชพเชตเชตเชพ เชฎเชพเชเซ, เชคเซเชฎเชจเซ เชธเชเชเซเชฏเชพ เชฎเชฐเซเชฏเชพเชฆเชฟเชค เชเชฐเชตเชพ เชฎเชพเชเซ เชเชฐเซเชฐเซ เชเซ. เช เชจเซ เชฎเชฐเซเชฏเชพเชฆเชพเช เช เชจเซ เชตเชฟเชจเชเชคเซเชเชฎเชพเช เชฎเซเชฒเซเชฏเซเชฎเชพเช เชธเชเชญเชตเชฟเชค เชคเชซเชพเชตเชค เชจเชเซเชเซ เชเชฐเซ
- เชฐเชฟเชธเซเชฐเซเชธเชเซเชตเซเชเชพ - เชเชจเชเชธเชฎเชพเชเชจเชพ เชคเชฎเชพเชฎ เชเชจเซเชเซเชจเชฐ เชฎเชพเชเซ เชธเชพเชฎเชพเชจเซเชฏ เชฐเซเชคเซ เชชเซเชฐเชคเชฟเชฌเชเชง เชจเซเชคเชฟเชจเซเช เชตเชฐเซเชฃเชจ เชเชฐเซ เช เชจเซ เชคเซเชจเซ เชเชชเชฏเซเช, เชเช เชจเชฟเชฏเชฎ เชคเชฐเซเชเซ, เชชเชฐเซเชฏเชพเชตเชฐเชฃเซ เชตเชเซเชเซ เชธเชเชธเชพเชงเชจเซเชจเซ เชธเซเชฎเชฟเชค เชเชฐเชตเชพ เชฎเชพเชเซ เชฅเชพเชฏ เชเซ (เชเซเชฏเชพเชฐเซ เชชเชฐเซเชฏเชพเชตเชฐเชฃเซเชจเซ เชจเซเชก เชธเซเชคเชฐเซ เชธเชเชค เชฐเซเชคเซ เชธเซเชฎเชพเชเชเชจ เชจ เชนเซเชฏ เชคเซเชฏเชพเชฐเซ เชเชชเชฏเซเชเซ)
เชจเซเชเซเชจเชพ เชฎเซเชจเชฟเชซเซเชธเซเชเชจเชพ เชเชฆเชพเชนเชฐเชฃเซ เชเซ เชเซ เชธเชเชธเชพเชงเชจ เชฎเชฐเซเชฏเชพเชฆเชพ เชธเซเช เชเชฐเซ เชเซ:
-
เชเซเชเซเชเชธ เชเชจเซเชเซเชจเชฐ เชธเซเชคเชฐ เชชเชฐ:
containers: - name: app-nginx image: nginx resources: requests: memory: 1Gi limits: cpu: 200m
เชคเซ. เช เชเชฟเชธเซเชธเชพเชฎเชพเช, nginx เชธเชพเชฅเซ เชเชจเซเชเซเชจเชฐ เชเชฒเชพเชตเชตเชพ เชฎเชพเชเซ, เชคเชฎเชพเชฐเซ เชจเซเชก เชชเชฐ เชเชเชพเชฎเชพเช เชเชเซ 1G เชซเซเชฐเซ RAM เช เชจเซ 0.2 CPUเชจเซ เชเชฐเซเชฐ เชชเชกเชถเซ, เชเซเชฏเชพเชฐเซ เชตเชงเซเชฎเชพเช เชตเชงเซ เชเชจเซเชเซเชจเชฐ 0.2 CPU เช เชจเซ เชจเซเชก เชชเชฐ เชเชชเชฒเชฌเซเชง เชคเชฎเชพเชฎ RAM เชจเซ เชเชชเชฏเซเช เชเชฐเซ เชถเชเซ เชเซ.
-
เชชเซเชฐเซเชฃเชพเชเช เชธเซเชคเชฐเซ ns:
apiVersion: v1 kind: ResourceQuota metadata: name: nxs-test spec: hard: requests.cpu: 300m requests.memory: 1Gi limits.cpu: 700m limits.memory: 2Gi
เชคเซ. เชกเชฟเชซเซเชฒเซเช เชเชจเชเชธเชฎเชพเช เชคเชฎเชพเชฎ เชตเชฟเชจเชเชคเซ เชเชจเซเชเซเชจเชฐเชจเซ เชธเชฐเชตเชพเชณเซ CPU เชฎเชพเชเซ 300m เช เชจเซ OP เชฎเชพเชเซ 1G เชเชฐเชคเชพเช เชตเชงเซ เชจ เชนเซเช เชถเชเซ เช เชจเซ เชคเชฎเชพเชฎ เชฎเชฐเซเชฏเชพเชฆเชพเชจเซ เชธเชฐเชตเชพเชณเซ CPU เชฎเชพเชเซ 700m เช เชจเซ OP เชฎเชพเชเซ 2G เชเซ.
-
เชเชจเชเชธเชฎเชพเช เชเชจเซเชเซเชจเชฐ เชฎเชพเชเซ เชกเชฟเชซเซเชฒเซเช เชฎเชฐเซเชฏเชพเชฆเชพ:
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 เชเชเช เชจเซเชกเซเชธ เชตเชเซเชเซ เชถเซเชเชเซเชจเชพ เชตเชฟเชคเชฐเชฃ เชฎเชพเชเซ เชเชตเชพเชฌเชฆเชพเชฐ เชเซ, เชเซเชฎ เชเซ เชธเซเชจเชฟเชถเซเชเชฟเชค, เชเซ เชเซเชเซเชเชธ เช เชฒเซเชเซเชฐเชฟเชงเชฎ เชฎเซเชเชฌ เชเชพเชฎ เชเชฐเซ เชเซ. เชฒเซเชจเซเช เชเชฐเชตเชพ เชฎเชพเชเซ เชถเซเชฐเซเชทเซเช เชจเซเชก เชชเชธเชเชฆ เชเชฐเชคเซ เชตเชเชคเซ เช เช เชฒเซเชเซเชฐเชฟเชงเชฎ เชฌเซ เชคเชฌเชเซเชเชพเชฎเชพเชเชฅเซ เชชเชธเชพเชฐ เชฅเชพเชฏ เชเซ:
- เชซเชฟเชฒเซเชเชฐเชฟเชเช
- เชฐเซเชจเซเชเชฟเชเช
เชคเซ. เชตเชฐเซเชฃเชตเซเชฒ เชจเซเชคเชฟ เช เชจเซเชธเชพเชฐ, เชเชพเชเช เซ เชถเชฐเซเชเชคเชฎเชพเช เชชเชธเชเชฆ เชเชฐเชตเชพเชฎเชพเช เชเชตเซ เชเซ เชเซเชจเชพ เชชเชฐ เชธเซเชเชจเชพ เชเชงเชพเชฐเซ เชชเซเชก เชฒเซเชจเซเช เชเชฐเชตเชพเชจเซเช เชถเชเซเชฏ เชเซ เชเชเชพเชนเซ เชเชฐเซ เชเซ (เชจเซเชกเชฎเชพเช เชชเซเชก เชเชฒเชพเชตเชตเชพ เชฎเชพเชเซ เชชเซเชฐเชคเชพ เชธเชเชธเชพเชงเชจเซ เชเซ เชเซ เชเซเชฎ เชคเซ เชคเชชเชพเชธเชตเชพ เชธเชนเชฟเชค - PodFitsResources), เช เชจเซ เชชเชเซ เช เชฆเชฐเซเช เชจเซเชก เชฎเชพเชเซ เชชเซเชฐเชพเชฅเชฎเชฟเชเชคเชพเช เชชเซเชเชจเซเช เชเชชเชตเชพเชฎเชพเช เชเชตเซ เชเซ (เชเซเชฎเชพเช เชจเซเชกเชฎเชพเช เชเซเชเชฒเชพ เชตเชงเซ เชฎเชซเชค เชธเชเชธเชพเชงเชจเซ เชนเซเชฏ เชเซ, เชคเซเชเชฒเชพ เชตเชงเซ เชชเซเชเชจเซเช เชคเซเชจเซ เช เชธเชพเชเชจ เชเชฐเชตเชพเชฎเชพเช เชเชตเซ เชเซ - LeastResourceAllocation/LeastRequestedPriority/BalancedResourceAllocation) เช เชจเซ เชชเซเชก เชธเซเชฅเซ เชตเชงเซ เชชเซเชเชจเซเช เชธเชพเชฅเซ เชจเซเชก เชชเชฐ เชฒเซเชจเซเช เชเชฐเชตเชพเชฎเชพเช เชเชตเซ เชเซ (เชเซ เชเช เชธเชพเชฅเซ เช เชจเซเช เชจเซเชกเซเชธ เช เชธเซเชฅเชฟเชคเชฟเชจเซ เชธเชเชคเซเชทเซ เชเซ, เชคเซ เชชเชเซ เชเช เชฐเซเชจเซเชกเชฎ เชชเชธเชเชฆ เชฅเชฏเซเชฒ เชเซ).
เชคเซ เช เชธเชฎเชฏเซ, เชคเชฎเชพเชฐเซ เช เชธเชฎเชเชตเชพเชจเซ เชเชฐเซเชฐ เชเซ เชเซ เชถเซเชกเซเชฏเซเชฒเชฐ, เชจเซเชกเชจเชพ เชเชชเชฒเชฌเซเชง เชธเชเชธเชพเชงเชจเซเชจเซเช เชฎเซเชฒเซเชฏเชพเชเชเชจ เชเชฐเชคเซ เชตเชเชคเซ, เชตเชเซเชฐเซเชฎเชพเช เชธเชเชเซเชฐเชนเชฟเชค เชกเซเชเชพ เชฆเซเชตเชพเชฐเชพ เชฎเชพเชฐเซเชเชฆเชฐเซเชถเชจ เชเชชเชตเชพเชฎเชพเช เชเชตเซ เชเซ - เชเชเชฒเซ เชเซ. เช เชจเซเชก เชชเชฐ เชเชพเชฒเชคเชพ เชฆเชฐเซเช เชชเซเชกเชจเชพ เชตเชฟเชจเชเชคเซ เชเชฐเซเชฒ/เชฎเชฐเซเชฏเชพเชฆเชพ เชธเซเชคเซเชฐเซเชคเชจเซ เชฐเชเชฎ เชฎเชพเชเซ, เชชเชฐเชเชคเซ เชตเชพเชธเซเชคเชตเชฟเช เชธเชเชธเชพเชงเชจ เชตเชชเชฐเชพเชถ เชฎเชพเชเซ เชจเชนเซเช. เช เชฎเชพเชนเชฟเชคเซ เชเชฎเชพเชจเซเชก เชเชเชเชชเซเชเชฎเชพเชเชฅเซ เชฎเซเชณเชตเซ เชถเชเชพเชฏ เชเซ 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). เชชเชเซ เชคเซ เชธเซเชฅเซ เชฏเซเชเซเชฏ เชจเซเชก เชจเชเซเชเซ เชเชฐเชตเชพ เชฎเชพเชเซ เช เชฆเชฐเซเช เชจเซเชก เชฎเชพเชเซ เชเซเชเชฒเชพเช เชชเชฐเชฟเชฎเชพเชฃเซ (เชธเชเชคเซเชฒเชฟเชค เชธเชเชธเชพเชงเชจ เชซเชพเชณเชตเชฃเซ, LeastResourceAllocation เชธเชนเชฟเชค)เชจเชพ เชเชงเชพเชฐเซ เชธเซเชเซเชฐเซเชธเชจเซ เชเชฃเชคเชฐเซ เชเชฐเซ เชเซ. เชเชเชฐเซ, เชชเซเชก เชจเซเชก เชชเชฐ เชธเซเชฅเซ เชตเชงเซ เชชเซเชเชจเซเช เชธเชพเชฅเซ เชธเซเชจเชฟเชถเซเชเชฟเชค เชฅเชฏเซเชฒ เชเซ (เช เชนเซเช เชฌเซ เชจเซเชกเชฎเชพเช เชเช เชธเชพเชฅเซ เชชเซเชเชจเซเชเชจเซ เชธเชฎเชพเชจ เชธเชเชเซเชฏเชพ 100037 เชเซ, เชคเซเชฅเซ เชฐเซเชจเซเชกเชฎ เชเช เชชเชธเชเชฆ เชเชฐเชตเชพเชฎเชพเช เชเชตเซ เชเซ - nxs-k8s-s10).
เชจเชฟเชทเซเชเชฐเซเชท: เชเซ เชจเซเชก เชชเซเชกเซเชธ เชเชฒเชพเชตเซ เชเซ เชเซเชจเชพ เชฎเชพเชเซ เชเซเช เชชเซเชฐเชคเชฟเชฌเชเชงเซ เชธเซเช เชจเชฅเซ, เชคเซ k8s เชฎเชพเชเซ (เชธเชเชธเชพเชงเชจ เชตเชชเชฐเชพเชถเชจเชพ เชฆเซเชทเซเชเชฟเชเซเชฃเชฅเซ) เช เชธเชฎเชพเชจ เชนเชถเซ เชเชพเชฃเซ เชเซ เช เชจเซเชก เชชเชฐ เชเชตเชพ เชเซเช เชชเซเชกเซเชธ เช เชจ เชนเซเชฏ. เชคเซเชฅเซ, เชเซ เชคเชฎเชพเชฐเซ เชชเชพเชธเซ, เชถเชฐเชคเซ เชฐเซเชคเซ, เชเช เชเชพเชเชงเชฐเชพ เชชเซเชฐเชเซเชฐเชฟเชฏเชพ (เชเชฆเชพเชนเชฐเชฃ เชคเชฐเซเชเซ, wowza) เชธเชพเชฅเซ เชชเซเชก เชนเซเชฏ เช เชจเซ เชคเซเชจเชพ เชฎเชพเชเซ เชเซเช เชจเชฟเชฏเชเชคเซเชฐเชฃเซ เชจ เชนเซเชฏ, เชคเซ เชชเชฐเชฟเชธเซเชฅเชฟเชคเชฟ เชเชญเซ เชฅเช เชถเชเซ เชเซ เชเซเชฏเชพเชฐเซ เช เชชเซเชก เชเชฐเซเชเชฐ เชจเซเชกเชจเชพ เชคเชฎเชพเชฎ เชธเชเชธเชพเชงเชจเซ เชเชพเชฏ เชเซ, เชชเชฐเชเชคเซ k8s เชฎเชพเชเซ เช เชจเซเชก เช เชจเชฒเซเชก เชฅเชฏเซเชฒ เชเชฃเชตเชพเชฎเชพเช เชเชตเซ เชเซ เช เชจเซ เชคเซเชจเซ เชจเซเชก เชคเชฐเซเชเซ (เชเซเชเซเชเชธเชชเชฃเซ เชเชชเชฒเชฌเซเชง เชธเชเชธเชพเชงเชจเซเชจเซเช เชฎเซเชฒเซเชฏเชพเชเชเชจ เชเชฐเชคเชพ เชชเซเชเชจเซเชเชฎเชพเช) เชเซเชฐเชฎเชพเชเชเชฟเชค เชเชฐเชคเซ เชตเชเชคเซ เชธเชฎเชพเชจ เชธเชเชเซเชฏเชพเชฎเชพเช เชชเซเชเชจเซเช เชเชชเชตเชพเชฎเชพเช เชเชตเชถเซ, เชเซเชฎเชพเช เชเชพเชฐเซเชฏเชเชพเชฐเซ เชชเซเชกเซเชธ เชจเชฅเซ, เชเซ เชเชเชฐเซ เชจเซเชกเซเชธ เชตเชเซเชเซเชจเชพ เชญเชพเชฐเชจเซเช เช เชธเชฎเชพเชจ เชตเชฟเชคเชฐเชฃ เชคเชฐเชซ เชฆเซเชฐเซ เชถเชเซ เชเซ.
เชชเซเชกเชจเซ เชนเชเชพเชฒเชชเชเซเชเซ
เชเซเชฎ เชคเชฎเซ เชเชพเชฃเซ เชเซ, เชฆเชฐเซเช เชชเซเชกเชจเซ 3 QoS เชตเชฐเซเชเซเชฎเชพเชเชฅเซ เชเช เชธเซเชเชชเชตเชพเชฎเชพเช เชเชตเซ เชเซ:
- เชเชพเชคเชฐเซเชชเซเชฐเซเชตเช - เชเซเชฏเชพเชฐเซ เชชเซเชกเชฎเชพเช เชฆเชฐเซเช เชเชจเซเชเซเชจเชฐ เชฎเชพเชเซ เชฎเซเชฎเชฐเซ เช เชจเซ เชธเซเชชเซเชฏเซ เชฎเชพเชเซ เชตเชฟเชจเชเชคเซ เช เชจเซ เชฎเชฐเซเชฏเชพเชฆเชพ เชจเชฟเชฐเซเชฆเชฟเชทเซเช เชเชฐเชตเชพเชฎเชพเช เชเชตเซ เชคเซเชฏเชพเชฐเซ เชธเซเชเชชเชตเชพเชฎเชพเช เชเชตเซ เชเซ, เช เชจเซ เช เชฎเซเชฒเซเชฏเซ เชฎเซเชณ เชเชพเชคเชพ เชนเซเชตเชพ เชเซเชเช
- เชตเชฟเชธเซเชซเซเช เชเชฐเซ เชถเชเชพเชฏ เชคเซเชตเซเช - เชชเซเชกเชฎเชพเช เชเชเชพเชฎเชพเช เชเชเชพ เชเช เชเชจเซเชเซเชจเชฐเชฎเชพเช เชตเชฟเชจเชเชคเซ เช เชจเซ เชฎเชฐเซเชฏเชพเชฆเชพ เชนเซเชฏ เชเซ, เชตเชฟเชจเชเชคเซ < เชฎเชฐเซเชฏเชพเชฆเชพ เชธเชพเชฅเซ
- เชเชคเซเชคเชฎ เชชเซเชฐเชฏเชคเซเชจ - เชเซเชฏเชพเชฐเซ เชชเซเชกเชฎเชพเช เชเช เชชเชฃ เชเชจเซเชเซเชจเชฐ เชธเชเชธเชพเชงเชจ เชฎเชฐเซเชฏเชพเชฆเชฟเชค เชจ เชนเซเชฏ
เชคเซ เช เชธเชฎเชฏเซ, เชเซเชฏเชพเชฐเซ เชจเซเชก เชธเชเชธเชพเชงเชจเซเชจเซ เช เชญเชพเชต (เชกเชฟเชธเซเช, เชฎเซเชฎเชฐเซ) เช เชจเซเชญเชตเซ เชเซ, เชคเซเชฏเชพเชฐเซ เชเซเชฌเซเชฒเซเช เชชเซเชก เช เชจเซ เชคเซเชจเชพ QoS เชตเชฐเซเชเชจเซ เชชเซเชฐเชพเชฅเชฎเชฟเชเชคเชพเชจเซ เชงเซเชฏเชพเชจเชฎเชพเช เชฒเซเชคเชพ เชเซเชเซเชเชธ เช เชฒเซเชเซเชฐเชฟเชงเชฎ เช เชจเซเชธเชพเชฐ เชชเซเชกเซเชธเชจเซ เชเซเชฐเชฎ เชเชชเชตเชพ เช เชจเซ เชฌเชนเชพเชฐ เชเชพเชขเชตเชพเชจเซเช เชถเชฐเซ เชเชฐเซ เชเซ. เชเชฆเชพเชนเชฐเชฃ เชคเชฐเซเชเซ, เชเซ เชเชชเชฃเซ RAM เชตเชฟเชถเซ เชตเชพเชค เชเชฐเซ เชฐเชนเซเชฏเชพ เชเซเช, เชคเซ เชชเชเซ QoS เชตเชฐเซเชเชจเชพ เชเชงเชพเชฐเซ, เชจเซเชเซเชจเชพ เชธเชฟเชฆเซเชงเชพเชเชค เช เชจเซเชธเชพเชฐ เชชเซเชเชจเซเช เชเชชเชตเชพเชฎเชพเช เชเชตเซ เชเซ:
- เชเชพเชคเชฐเซ เชเชชเซ:-998
- เชเชคเซเชคเชฎ เชชเซเชฐเชฏเชคเซเชจ: 1000
- เชเชฒเชเชพเชคเซเช: เชฎเชฟเชจเชฟเช(เชฎเชนเชคเซเชคเชฎ(2, 1000 - (1000 * เชฎเซเชฎเชฐเซ เชฐเชฟเชเซเชตเซเชธเซเชเชฌเชพเชเชเซเชธ) / เชฎเชถเซเชจเชฎเซเชฎเซเชฐเซ เชเซเชชเซเชธเชฟเชเซเชฌเชพเชเชเซเชธ), 999)
เชคเซ. เชธเชฎเชพเชจ เช เชเซเชฐเชคเชพ เชธเชพเชฅเซ, เชเซเชฌเซเชฒเซเช เชชเซเชฐเชฅเชฎ เชจเซเชกเชฎเชพเชเชฅเซ เชถเซเชฐเซเชทเซเช เชชเซเชฐเชฏเชพเชธ QoS เชตเชฐเซเช เชธเชพเชฅเซ เชชเซเชกเซเชธเชจเซ เชฌเชนเชพเชฐ เชเชพเชขเชถเซ.
เชจเชฟเชทเซเชเชฐเซเชท: เชเซ เชคเชฎเซ เชคเซเชจเชพ เชชเชฐ เชธเชเชธเชพเชงเชจเซเชจเซ เช เชเชคเชจเซ เชธเซเชฅเชฟเชคเชฟเชฎเชพเช เชเชเซเชเชฟเชค เชชเซเชกเชจเซ เชจเซเชกเชฎเชพเชเชฅเซ เชฌเชนเชพเชฐ เชเชพเชขเชตเชพเชจเซ เชธเชเชญเชพเชตเชจเชพเชจเซ เชเชเชพเชกเชตเชพ เชฎเชพเชเชเชคเชพ เชนเซ, เชคเซ เช เชเซเชฐเชคเชพเชจเซ เชธเชพเชฅเซ, เชคเชฎเชพเชฐเซ เชคเซเชจเชพ เชฎเชพเชเซเชจเซ เชตเชฟเชจเชเชคเซ/เชฎเชฐเซเชฏเชพเชฆเชพ เชธเซเช เชเชฐเชตเชพเชจเซ เชชเชฃ เชเชพเชณเชเซ เชฒเซเชตเชพเชจเซ เชเชฐเซเชฐ เชเซ.
เชเชชเซเชฒเชฟเชเซเชถเชจ เชชเซเชกเซเชธ (HPA) เชจเชพ เชเชกเชพ เชเชเซเชธเซเชเซเชฒเชฟเชเช เชฎเชพเชเซเชจเซ เชชเชฆเซเชงเชคเชฟ
เชเซเชฏเชพเชฐเซ เชเชพเชฐเซเชฏ เชธเชเชธเชพเชงเชจเซเชจเชพ เชเชชเชฏเซเช (เชธเชฟเชธเซเชเชฎ - CPU/RAM เช เชฅเชตเชพ เชตเชชเชฐเชพเชถเชเชฐเซเชคเชพ - rps) เชจเชพ เชเชงเชพเชฐเซ เชชเซเชกเซเชธเชจเซ เชธเชเชเซเชฏเชพเชจเซ เชเชชเชฎเซเชณเซ เชตเชงเชพเชฐเชตเชพ เช เชจเซ เชเชเชพเชกเชตเชพเชจเซเช เชนเซเชฏ เชเซ, เชเซเชฎ เชเซ k8s เชเชจเซเชเชฟเชเซ เชเชเชชเซเช (เชนเซเชฐเชฟเชเซเชจเซเชเชฒ เชชเซเชก เชเชเซเชธเซเชเซเชฒเชฐ). เชเซเชจเซเช เช เชฒเซเชเซเชฐเชฟเชงเชฎ เชจเซเชเซ เชฎเซเชเชฌ เชเซ.
- เช เชตเชฒเซเชเชจ เชเชฐเซเชฒ เชธเชเชธเชพเชงเชจเชจเชพ เชตเชฐเซเชคเชฎเชพเชจ เชฐเซเชกเชฟเชเชเซเชธ เชจเชเซเชเซ เชเชฐเชตเชพเชฎเชพเช เชเชตเซ เชเซ (เชตเชฐเซเชคเชฎเชพเชจเชฎเซเชเซเชฐเชฟเช เชฎเซเชฒเซเชฏ)
- เชธเชเชธเชพเชงเชจ เชฎเชพเชเซ เชเชเซเชเชฟเชค เชฎเซเชฒเซเชฏเซ เชจเชเซเชเซ เชเชฐเชตเชพเชฎเชพเช เชเชตเซ เชเซ (desiredMetricValue), เชเซ เชธเชฟเชธเซเชเชฎ เชธเซเชฐเซเชคเซ เชฎเชพเชเซ เชตเชฟเชจเชเชคเซเชจเซ เชเชชเชฏเซเช เชเชฐเซเชจเซ เชธเซเช เชเชฐเชตเชพเชฎเชพเช เชเชตเซ เชเซ
- เชชเซเชฐเชคเชฟเชเซเชคเชฟเชเชจเซ เชตเชฐเซเชคเชฎเชพเชจ เชธเชเชเซเชฏเชพ เชจเชฟเชฐเซเชงเชพเชฐเชฟเชค เชเซ (เชตเชฐเซเชคเชฎเชพเชจ เชชเซเชฐเชคเชฟเชเซเชคเชฟเช)
- เชจเซเชเซเชจเซเช เชธเซเชคเซเชฐ เชชเซเชฐเชคเชฟเชเซเชคเชฟเชเชจเซ เชเชเซเชเชฟเชค เชธเชเชเซเชฏเชพเชจเซ เชเชฃเชคเชฐเซ เชเชฐเซ เชเซ (เชเชเซเชเชฟเชค เชชเซเชฐเชคเชฟเชเซเชคเชฟเช)
เชเชเซเชเชฟเชค เชชเซเชฐเชคเชฟเชเซเชคเชฟเช = [ เชตเชฐเซเชคเชฎเชพเชจ เชชเซเชฐเชคเชฟเชเซเชคเชฟเช * (เชตเชฐเซเชคเชฎเชพเชจเชฎเซเชเซเชฐเชฟเชเชตเซเชฒเซเชฏเซ / เชเชเซเชเชฟเชคเชฎเซเชเซเชฐเชฟเชเชตเซเชฒเซเชฏเซ)]
เช เชเชฟเชธเซเชธเชพเชฎเชพเช, เชเซเชฏเชพเชฐเซ เชเซเชฃเชพเชเช (currentMetricValue / desiredMetricValue) 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-เชจเชฟเชเชพเชธเชเชฐเซเชคเชพ เชเชจเซเชเซเชจเชฐ เชนเซเชฏ เชเซ, เชเซเชฎเชพเชเชฅเซ เชชเซเชฐเชคเซเชฏเซเช เชฎเชพเชเซ เชเช เชเชฒเซเชฒเซเชเชฟเชค เชตเชฟเชจเชเชคเซเช CPU เชฎเชพเชเซ.
-
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 เชจเซ เชฐเซเชจเซเช.
เชนเชตเซ, เชเชพเชฒเซ เชเชเชชเซเช เชเชชเชฐเซเชถเชจเชจเซ เชชเชฆเซเชงเชคเชฟ เชเซเชเช เชเซ เชเชชเชฃเซ เชเซเช เชเช เชนเชฐเซเชฅ เชชเชฐ เชญเชพเชฐ เชฒเชพเชเซ เชเชฐเซเช:
# kubectl top pod NAME CPU(cores) MEMORY(bytes) app-test-78559f8f44-pgs58 101m 243Mi app-test-78559f8f44-cj4jz 4m 240Mi
เชเซเชฒ เชฎเชณเซเชจเซ เช เชฎเชพเชฐเซ เชชเชพเชธเซ เชจเซเชเซเชจเชพ เชเซ:
- เชเชเซเชเชฟเชค เชฎเซเชฒเซเชฏ (เชเชเซเชเชฟเชค เชฎเซเชเซเชฐเชฟเชเชตเซเชฒเซเชฏเซ) - เชเชเชชเซเช เชธเซเชเชฟเชเชเซเชธ เช เชจเซเชธเชพเชฐ, เช เชฎเชพเชฐเซ เชชเชพเชธเซ 30% เชเซ
- เชตเชฐเซเชคเชฎเชพเชจ เชฎเซเชฒเซเชฏ (currentMetricValue) - เชเชฃเชคเชฐเซ เชฎเชพเชเซ, เชจเชฟเชฏเชเชคเซเชฐเช-เชฎเซเชจเซเชเชฐ % เชฎเชพเช เชธเชเชธเชพเชงเชจ เชตเชชเชฐเชพเชถเชจเชพ เชธเชฐเซเชฐเชพเชถ เชฎเซเชฒเซเชฏเชจเซ เชเชฃเชคเชฐเซ เชเชฐเซ เชเซ, เชเชเชฒเซ เชเซ. เชถเชฐเชคเซ เชฐเซเชคเซ เชจเซเชเซเชจเชพ เชเชฐเซ เชเซ:
- เชฎเซเชเซเชฐเชฟเช เชธเชฐเซเชตเชฐเชฎเชพเชเชฅเซ เชชเซเชก เชฎเซเชเซเชฐเชฟเชเซเชธเชจเชพ เชธเชเชชเซเชฐเซเชฃ เชฎเซเชฒเซเชฏเซ เชชเซเชฐเชพเชชเซเชค เชเชฐเซ เชเซ, เชเชเชฒเซ เชเซ. 101 เชฎเซ เช เชจเซ 4 เชฎเซ
- เชธเชฐเซเชฐเชพเชถ เชจเชฟเชฐเชชเซเชเซเชท เชฎเซเชฒเซเชฏเชจเซ เชเชฃเชคเชฐเซ เชเชฐเซ เชเซ, เชเชเชฒเซ เชเซ. (101m + 4m) / 2 = 53m
- เชเชเซเชเชฟเชค เชธเชเชธเชพเชงเชจ เชตเชชเชฐเชพเชถ เชฎเชพเชเซ เชธเชเชชเซเชฐเซเชฃ เชฎเซเชฒเซเชฏ เชฎเซเชณเชตเซ เชเซ (เช เชฎเชพเชเซ, เชคเชฎเชพเชฎ เชเชจเซเชเซเชจเชฐเชจเซ เชตเชฟเชจเชเชคเซเชเชจเซ เชธเชพเชฐเชพเชเชถ เชเชชเชตเชพเชฎเชพเช เชเชตเซ เชเซ) 60m + 30m = 90m
- เชตเชฟเชจเชเชคเซ เชชเซเชกเชจเซ เชคเซเชฒเชจเชพเชฎเชพเช CPU เชตเชชเชฐเชพเชถเชจเซ เชธเชฐเซเชฐเชพเชถ เชเชเชพเชตเชพเชฐเซเชจเซ เชเชฃเชคเชฐเซ เชเชฐเซ เชเซ, เชเชเชฒเซ เชเซ. 53 เชฎเซ / 90 เชฎเซ * 100% = 59%
เชนเชตเซ เชเชชเชฃเซ เชชเชพเชธเซ เชชเซเชฐเชคเชฟเชเซเชคเชฟเชเชจเซ เชธเชเชเซเชฏเชพ เชฌเชฆเชฒเชตเชพเชจเซ เชเชฐเซเชฐ เชเซ เชเซ เชเซเชฎ เชคเซ เชจเชฟเชฐเซเชงเชพเชฐเชฟเชค เชเชฐเชตเชพ เชฎเชพเชเซ เชเชฐเซเชฐเซ เชฌเชงเซเช เชเซ; เช เชเชฐเชตเชพ เชฎเชพเชเซ, เช เชฎเซ เชเซเชฃเชพเชเชเชจเซ เชเชฃเชคเชฐเซ เชเชฐเซเช เชเซเช:
ratio = 59% / 30% = 1.96
เชคเซ. เชชเซเชฐเชคเชฟเชเซเชคเชฟเชเชจเซ เชธเชเชเซเชฏเชพเชฎเชพเช ~2 เชเชฃเซ เชตเชงเชพเชฐเซ เชเชฐเชตเซ เชเซเชเช เช เชจเซ เชคเซเชจเซ เชฐเชเชฎ [2 * 1.96] = 4 เชนเซเชตเซ เชเซเชเช.
เชเชชเชธเชเชนเชพเชฐ: เชเซเชฎ เชคเชฎเซ เชเซเช เชถเชเซ เชเซ, เช เชฎเชฟเชเซเชจเชฟเชเชฎ เชเชพเชฎ เชเชฐเชตเชพ เชฎเชพเชเซ, เชเช เชเชตเชถเซเชฏเช เชธเซเชฅเชฟเชคเชฟ เช เช เชตเชฒเซเชเชจ เชเชฐเซเชฒ เชชเซเชกเชฎเชพเช เชคเชฎเชพเชฎ เชเชจเซเชเซเชจเชฐ เชฎเชพเชเซเชจเซ เชตเชฟเชจเชเชคเซเชเชจเซ เชนเชพเชเชฐเซ เชเซ.
เชจเซเชกเซเชธเชจเชพ เชเชกเชพ เชเชเซเชธเซเชเซเชฒเชฟเชเช เชฎเชพเชเซเชจเซ เชชเชฆเซเชงเชคเชฟ (เชเซเชฒเชธเซเชเชฐ เชเชเซเชธเซเชเซเชฒเชฐ)
เชฒเซเชก เชตเชงเชคเซ เชตเชเชคเซ เชธเชฟเชธเซเชเชฎ เชชเชฐเชจเซ เชจเชเชพเชฐเชพเชคเซเชฎเช เช เชธเชฐเชจเซ เชฌเซเช เชธเชฐ เชเชฐเชตเชพ เชฎเชพเชเซ, เชฐเซเชชเชฐเซเชเชพเชเชเชฟเชค เชเชเชชเซเช เชนเซเชตเซเช เชชเซเชฐเชคเซเช เชจเชฅเซ. เชเชฆเชพเชนเชฐเชฃ เชคเชฐเซเชเซ, hpa เชเชเชเซเชฐเซเชฒเชฐ เชฎเซเชจเซเชเชฐเชจเซ เชธเซเชเชฟเชเชเซเชธ เช เชจเซเชธเชพเชฐ, เชคเซ เชจเชเซเชเซ เชเชฐเซ เชเซ เชเซ เชชเซเชฐเชคเชฟเชเซเชคเชฟเชเชจเซ เชธเชเชเซเชฏเชพเชฎเชพเช 2 เชเชฃเซ เชตเชงเชพเชฐเซ เชเชฐเชตเชพเชจเซ เชเชฐเซเชฐ เชเซ, เชชเชฐเชเชคเซ เชจเซเชกเซเชธ เชชเชพเชธเซ เชเชตเชพ เชธเชเชเซเชฏเชพเชฌเชเชง เชชเซเชกเซเชธ เชเชฒเชพเชตเชตเชพ เชฎเชพเชเซ เชฎเชซเชค เชธเชเชธเชพเชงเชจเซ เชจเชฅเซ (เชเชเชฒเซ โโโโเชเซ เชจเซเชก เชชเซเชฐเชฆเชพเชจ เชเชฐเซ เชถเชเชคเซเช เชจเชฅเซ. เชฐเชฟเชเซเชตเซเชธเซเช เชชเซเชกเชฎเชพเช เชธเชเชธเชพเชงเชจเซเชจเซ เชตเชฟเชจเชเชคเซ เชเชฐเซ) เช เชจเซ เช เชชเซเชกเซเชธ เชฌเชพเชเซ เชธเซเชฅเชฟเชคเชฟเชฎเชพเช เชธเซเชตเชฟเช เชเชฐเซ เชเซ.
เช เชเชฟเชธเซเชธเชพเชฎเชพเช, เชเซ เชชเซเชฐเชฆเชพเชคเชพ เชชเชพเชธเซ เช เชจเซเชฐเซเชช IaaS/PaaS เชนเซเชฏ (เชเชฆเชพเชนเชฐเชฃ เชคเชฐเซเชเซ, GKE/GCE, AKS, EKS, เชตเชเซเชฐเซ), เชเซเชฎ เชเซ เชธเชพเชงเชจ เชจเซเชก เชเชเซเชธเซเชเซเชฒเชฐ. เชคเซ เชคเชฎเชจเซ เชเซเชฒเชธเซเชเชฐเชฎเชพเช เชจเซเชกเซเชธเชจเซ เชฎเชนเชคเซเชคเชฎ เช เชจเซ เชจเซเชฏเซเชจเชคเชฎ เชธเชเชเซเชฏเชพ เชธเซเช เชเชฐเชตเชพเชจเซ เช เชจเซ เชเซเชฏเชพเชฐเซ เชเซเชฒเชธเซเชเชฐ เช เชจเซ เชชเซเชกเซเชธเชฎเชพเช เชธเชเชธเชพเชงเชจเซเชจเซ เช เชเชค เชนเซเชฏ เชคเซเชฏเชพเชฐเซ เชจเซเชกเซเชธเชจเซ เชตเชฐเซเชคเชฎเชพเชจ เชธเชเชเซเชฏเชพ (เชจเซเชกเชจเซ เชเชฐเซเชกเชฐ/เชฆเซเชฐ เชเชฐเชตเชพ เชฎเชพเชเซ เชเซเชฒเชพเชเชก เชชเซเชฐเชฆเชพเชคเชพ API เชจเซ เชเซเชฒ เชเชฐเซเชจเซ) เชเชชเชฎเซเชณเซ เชเซเช เชตเชตเชพเชจเซ เชฎเชเชเซเชฐเซ เชเชชเซ เชเซ. เชธเซเชจเชฟเชถเซเชเชฟเชค เชเชฐเซ เชถเชเชพเชคเซเช เชจเชฅเซ (เชฌเชพเชเซ เชธเซเชฅเชฟเชคเชฟเชฎเชพเช เชเซ).
เชเชชเชธเชเชนเชพเชฐ: เชจเซเชกเซเชธเชจเซ เชเชเซเชธเซเชเซเชฒ เชเชฐเชตเชพเชฎเชพเช เชธเชเซเชทเชฎ เชฅเชตเชพ เชฎเชพเชเซ, เชชเซเชก เชเชจเซเชเซเชจเชฐเชฎเชพเช เชตเชฟเชจเชเชคเซเช เชธเซเช เชเชฐเชตเซ เชเชฐเซเชฐเซ เชเซ เชเซเชฅเซ k8s เชจเซเชกเซเชธ เชชเชฐเชจเชพ เชญเชพเชฐเชจเซเช เชฏเซเชเซเชฏ เชฎเซเชฒเซเชฏเชพเชเชเชจ เชเชฐเซ เชถเชเซ เช เชจเซ เชคเซ เชฎเซเชเชฌ เชเชเชณเชจเชพ เชชเซเชกเชจเซ เชฒเซเชเช เชเชฐเชตเชพ เชฎเชพเชเซ เชเซเชฒเชธเซเชเชฐเชฎเชพเช เชเซเช เชธเชเชธเชพเชงเชจเซ เชจเชฅเซ.
เชจเชฟเชทเซเชเชฐเซเชท
เช เชจเซเชเชงเชตเซเช เชเซเชเช เชเซ เชเชชเซเชฒเชฟเชเซเชถเชจเชจเซ เชธเชซเชณเชคเชพเชชเซเชฐเซเชตเช เชเชฒเชพเชตเชตเชพ เชฎเชพเชเซ เชเชจเซเชเซเชจเชฐ เชธเชเชธเชพเชงเชจ เชฎเชฐเซเชฏเชพเชฆเชพ เชธเซเช เชเชฐเชตเซ เชเชฐเซเชฐเซ เชจเชฅเซ, เชชเชฐเชเชคเซ เชจเซเชเซเชจเชพ เชเชพเชฐเชฃเซเชธเชฐ เชเชฎ เชเชฐเชตเซเช เชตเชงเซ เชธเชพเชฐเซเช เชเซ:
- k8s เชจเซเชกเซเชธ เชตเชเซเชเซ เชฒเซเชก เชฌเซเชฒเซเชจเซเชธเชฟเชเชเชจเชพ เชธเชเชฆเชฐเซเชญเชฎเชพเช เชถเซเชกเซเชฏเซเชฒเชฐเชจเซ เชตเชงเซ เชธเชเซเช เชเชพเชฎเชเซเชฐเซ เชฎเชพเชเซ
- "เชชเซเชก เชเชตเชฟเชเซเชถเชจ" เชเชตเซเชจเซเช เชฅเชตเชพเชจเซ เชธเชเชญเชพเชตเชจเชพเชจเซ เชเชเชพเชกเชตเชพ เชฎเชพเชเซ
- เชเชชเซเชฒเซเชเซเชถเชจ เชชเซเชกเซเชธ (HPA) เชจเชพ เชเชกเชพ เชเชเซเชธเซเชเซเชฒเชฟเชเช เชเชพเชฎ เชเชฐเชตเชพ เชฎเชพเชเซ
- เชเซเชฒเชพเชเชก เชชเซเชฐเชฆเชพเชคเชพเช เชฎเชพเชเซ เชจเซเชกเซเชธเชจเชพ เชเชกเชพ เชเชเซเชธเซเชเซเชฒเชฟเชเช (เชเซเชฒเชธเซเชเชฐ เชเชเซเชธเซเชเซเชฒเชฟเชเช) เชฎเชพเชเซ
เช เชฎเชพเชฐเชพ เชฌเซเชฒเซเช เชชเชฐ เช เชจเซเชฏ เชฒเซเชเซ เชชเชฃ เชตเชพเชเชเซ:
เชเซเชเชเชจ เชชเชพเชเชชเชฒเชพเชเชจ - เชเซเชฌเชฐเชจเซเชเชธ-เชจเซเชเชฟเชต เชชเชพเชเชชเชฒเชพเชเชจ Nginx เชฎเชพเชเซ เชกเชพเชฏเชจเซเชฎเชฟเช เชฎเซเชกเซเชฏเซเชฒ เชฌเชจเชพเชตเชตเซเช เช เชงเชฟเชเซเชคเชคเชพ เชธเชพเชฅเซ เชเซเชฒเชฟเชเชนเชพเชเชธเชฎเชพเชเชฅเซ เช เชงเชฟเชเซเชคเชคเชพ เชตเชฟเชจเชพ เชเซเชฒเชฟเชเชนเชพเชเชธเชฎเชพเช เชธเซเชฅเชพเชจเชพเชเชคเชฐเชฃ เชถเซเช เชคเชฐเชซ เชฆเซเชฐเซ เชเชฏเซเช? เชเซเชฒเชพเชเชเชฎเชพเช เชธเชเชฆเชฐเซเชญ เชชเซเชเซเชเชจเซ เชธเชฎเชเชตเซเช เชกเซเชเชฐ เชเชฌเซเชเชจเซ เชธเชเชเซเชเชตเชพเชจเซ เชคเซเชฐเชฃ เชธเชฐเชณ เชฏเซเชเซเชคเชฟเช เชฎเซเชเซ เชธเชเชเซเชฏเชพเชฎเชพเช เชตเชฟเชเชพเชคเซเชฏ เชตเซเชฌ เชชเซเชฐเซเชเซเชเซเชเซเชธเชจเซ เชฌเซเชเช เชช
เชธเซเชฐเซเชธ: www.habr.com