เดตเต†เตผเดซเดฟเดฒเต‡เด•เตเด•เตเดณเตเดณ 3-เดตเต‡ เดฒเดฏเดจเด‚: "เดธเตเดฑเตเดฑเดฟเดฑเต‹เดฏเดฟเดกเตเด•เดณเดฟเตฝ" เดนเต†เตฝเดฎเดฟเดจเตŠเดชเตเดชเด‚ เด•เตเดฌเตผเดจเต†เดฑเตเดฑเดธเดฟเดฒเต‡เด•เตเด•เต เดตเดฟเดจเตเดฏเดพเดธเด‚

เดžเด™เตเด™เตพ (เดžเด™เตเด™เตพ เดฎเดพเดคเตเดฐเดฎเดฒเตเดฒ) เดตเดณเดฐเต†เด•เตเด•เดพเดฒเดฎเดพเดฏเดฟ เด•เดพเดคเตเดคเดฟเดฐเดฟเด•เตเด•เตเดจเตเดจเดคเต เดธเด‚เดญเดตเดฟเดšเตเดšเต: เดตเต†เตผเดซเต, เดžเด™เตเด™เดณเตเดŸเต† เด“เดชเตเดชเตบ เดธเต‹เดดเตโ€Œเดธเต เดฏเต‚เดŸเตเดŸเดฟเดฒเดฟเดฑเตเดฑเดฟ เด†เดชเตเดฒเดฟเด•เตเด•เต‡เดทเดจเตเด•เตพ เดจเดฟเตผเดฎเตเดฎเดฟเด•เตเด•เตเดจเตเดจเดคเดฟเดจเตเด‚ เด…เดต เด•เตเดฌเตผเดจเต†เดฑเตเดฑเตเด•เดณเดฟเดฒเต‡เด•เตเด•เต เดŽเดคเตเดคเดฟเด•เตเด•เตเดจเตเดจเดคเดฟเดจเตเด‚, เด‡เดชเตเดชเต‹เตพ 3-เดตเต‡ เดฒเดฏเดจ เดชเดพเดšเตเดšเตเด•เตพ เด‰เดชเดฏเต‹เด—เดฟเดšเตเดšเต เดฎเดพเดฑเตเดฑเด™เตเด™เตพ เดชเตเดฐเดฏเต‹เด—เดฟเด•เตเด•เตเดจเตเดจเดคเดฟเดจเต† เดชเดฟเดจเตเดคเตเดฃเดฏเตเด•เตเด•เตเดจเตเดจเต! เด‡เดคเดฟเดจเตเดชเตเดฑเดฎเต†, เดˆ เด‰เดฑเดตเดฟเดŸเด™เตเด™เตพ เดชเตเดจเตผเดจเดฟเตผเดฎเตเดฎเดฟเด•เตเด•เดพเดคเต† เดคเดจเตเดจเต† เดจเดฟเดฒเดตเดฟเดฒเตเดณเตเดณ K8s เด‰เดฑเดตเดฟเดŸเด™เตเด™เตพ เดนเต†เตฝเด‚ เดฑเดฟเดฒเต€เดธเตเด•เดณเดฟเดฒเต‡เด•เตเด•เต เดธเตเดตเต€เด•เดฐเดฟเด•เตเด•เดพเตป เดธเดพเดงเดฟเด•เตเด•เตเด‚.

เดตเต†เตผเดซเดฟเดฒเต‡เด•เตเด•เตเดณเตเดณ 3-เดตเต‡ เดฒเดฏเดจเด‚: "เดธเตเดฑเตเดฑเดฟเดฑเต‹เดฏเดฟเดกเตเด•เดณเดฟเตฝ" เดนเต†เตฝเดฎเดฟเดจเตŠเดชเตเดชเด‚ เด•เตเดฌเตผเดจเต†เดฑเตเดฑเดธเดฟเดฒเต‡เด•เตเด•เต เดตเดฟเดจเตเดฏเดพเดธเด‚

เด‡เดคเต เดตเดณเดฐเต† เดšเต†เดฑเตเดคเดพเดฃเต†เด™เตเด•เดฟเตฝ, เดžเด™เตเด™เตพ เด‡เดŸเตเดจเตเดจเต WERF_THREE_WAY_MERGE=enabled โ€” เดจเดฎเตเด•เตเด•เต เดตเดฟเดจเตเดฏเดพเดธเด‚ เดฒเดญเดฟเด•เตเด•เตเดจเตเดจเต kubectl apply", เดจเดฟเดฒเดตเดฟเดฒเตเดณเตเดณ เดนเต†เตฝเด‚ 2 เด‡เตปเดธเตเดฑเตเดฑเดพเดณเต‡เดทเดจเตเด•เดณเตเดฎเดพเดฏเดฟ เดชเตŠเดฐเตเดคเตเดคเดชเตเดชเต†เดŸเตเดจเตเดจเต เด•เต‚เดŸเดพเดคเต† เด•เตเดฑเดšเตเดšเตเด•เต‚เดŸเดฟ.

เดŽเดจเตเดจเดพเตฝ เดจเดฎเตเด•เตเด•เต เดธเดฟเดฆเตเดงเดพเดจเตเดคเดคเตเดคเดฟเตฝ เดจเดฟเดจเตเดจเต เด†เดฐเด‚เดญเดฟเด•เตเด•เดพเด‚: เด•เตƒเดคเตเดฏเดฎเดพเดฏเดฟ เดŽเดจเตเดคเดพเดฃเต 3-เดตเต‡-เดฒเดฏเดจ เดชเดพเดšเตเดšเตเด•เตพ, เด…เดต เดธเตƒเดทเตเดŸเดฟเด•เตเด•เตเดจเตเดจเดคเดฟเดจเตเดณเตเดณ เดธเดฎเต€เดชเดจเด‚ เด†เดณเตเด•เตพ เดŽเด™เตเด™เดจเต†เดฏเดพเดฃเต เด•เตŠเดฃเตเดŸเตเดตเดจเตเดจเดคเต, เด•เตเดฌเตผเดจเต†เดฑเตเดฑเดธเต เด…เดŸเดฟเดธเตเดฅเดพเดจเดฎเดพเด•เตเด•เดฟเดฏเตเดณเตเดณ เด‡เตปเดซเตเดฐเดพเดธเตเดŸเตเดฐเด•เตเดšเดฑเดฟเดฒเตเดณเตเดณ CI/CD เดชเตเดฐเด•เตเดฐเดฟเดฏเด•เดณเดฟเตฝ เด…เดต เดชเตเดฐเดงเดพเดจเดฎเดพเดฏเดฟเดฐเดฟเด•เตเด•เตเดจเตเดจเดคเต เดŽเดจเตเดคเตเด•เตŠเดฃเตเดŸเต? เด…เดคเดฟเดจเตเดถเต‡เดทเด‚, เดตเต†เตผเดซเดฟเตฝ 3-เดตเต‡-เดฎเต†เตผเดœเต เดŽเดจเตเดคเดพเดฃเต†เดจเตเดจเตเด‚ เดกเดฟเดซเต‹เตพเดŸเตเดŸเดพเดฏเดฟ เดเดคเตŠเด•เตเด•เต† เดฎเต‹เดกเตเด•เดณเดพเดฃเต เด‰เดชเดฏเต‹เด—เดฟเด•เตเด•เตเดจเตเดจเดคเต†เดจเตเดจเตเด‚ เด…เดคเต เดŽเด™เตเด™เดจเต† เด•เตˆเด•เดพเดฐเตเดฏเด‚ เดšเต†เดฏเตเดฏเดพเดฎเต†เดจเตเดจเตเด‚ เดจเต‹เด•เตเด•เดพเด‚.

เดŽเดจเตเดคเดพเดฃเต เด’เดฐเต 3-เดตเดดเดฟ เดฒเดฏเดจ เดชเดพเดšเตเดšเต?

เด…เดคเดฟเดจเดพเตฝ, YAML เดฎเดพเดจเดฟเดซเต†เดธเตเดฑเตเดฑเตเด•เดณเดฟเตฝ เดตเดฟเดตเดฐเดฟเดšเตเดšเดฟเดฐเดฟเด•เตเด•เตเดจเตเดจ เด‰เดฑเดตเดฟเดŸเด™เตเด™เตพ เด•เตเดฌเต†เตผเดจเต†เดฑเตเดฑเตเด•เดณเดพเด•เตเด•เดฟ เดฎเดพเดฑเตเดฑเตเดจเตเดจเดคเดฟเดจเตเดณเตเดณ เดšเตเดฎเดคเดฒเดฏเดฟเตฝ เดจเดฟเดจเตเดจเต เดจเดฎเตเด•เตเด•เต เด†เดฐเด‚เดญเดฟเด•เตเด•เดพเด‚.

เด‰เดฑเดตเดฟเดŸเด™เตเด™เดณเตเดฎเดพเดฏเดฟ เดชเตเดฐเดตเตผเดคเตเดคเดฟเด•เตเด•เดพเตป, Kubernetes API เด‡เดจเดฟเดชเตเดชเดฑเดฏเตเดจเตเดจ เด…เดŸเดฟเดธเตเดฅเดพเดจ เดชเตเดฐเดตเตผเดคเตเดคเดจเด™เตเด™เตพ เดตเดพเด—เตเดฆเดพเดจเด‚ เดšเต†เดฏเตเดฏเตเดจเตเดจเต: เดธเตƒเดทเตเดŸเดฟเด•เตเด•เตเด•, เดชเดพเดšเตเดšเต เดšเต†เดฏเตเดฏเตเด•, เดฎเดพเดฑเตเดฑเดฟเดธเตเดฅเดพเดชเดฟเด•เตเด•เตเด•, เด‡เดฒเตเดฒเดพเดคเดพเด•เตเด•เตเด•. เด…เดตเดฐเตเดŸเต† เดธเดนเดพเดฏเดคเตเดคเต‹เดŸเต† เด•เตเดฒเดธเตเดฑเตเดฑเดฑเดฟเดฒเต‡เด•เตเด•เต เดตเดฟเดญเดตเด™เตเด™เดณเตเดŸเต† เดธเต—เด•เดฐเตเดฏเดชเตเดฐเดฆเดฎเดพเดฏ เดคเตเดŸเตผเดšเตเดšเดฏเดพเดฏ เดฑเต‹เตพเด”เดŸเตเดŸเต เดจเดฟเตผเดฎเตเดฎเดฟเด•เตเด•เต‡เดฃเตเดŸเดคเต เด†เดตเดถเตเดฏเดฎเดพเดฃเต†เดจเตเดจเต เด…เดจเตเดฎเดพเดจเดฟเด•เตเด•เดชเตเดชเต†เดŸเตเดจเตเดจเต. เดŽเด™เตเด™เดจเต†?

kubectl เดจเดฟเตผเดฌเดจเตเดงเดฟเดค เด•เดฎเดพเตปเดกเตเด•เตพ

เด•เตเดฌเต†เตผเดจเต†เดฑเตเดฑเดธเดฟเดฒเต† เด’เดฌเตโ€Œเดœเด•เตโ€Œเดฑเตเดฑเตเด•เตพ เด•เตˆเด•เดพเดฐเตเดฏเด‚ เดšเต†เดฏเตเดฏเตเดจเตเดจเดคเดฟเดจเตเดณเตเดณ เด†เดฆเตเดฏ เดธเดฎเต€เดชเดจเด‚, เด† เด’เดฌเตโ€Œเดœเด•เตเดฑเตเดฑเตเด•เตพ เดธเตƒเดทเตโ€ŒเดŸเดฟเด•เตเด•เดพเดจเตเด‚ เดชเดฐเดฟเดทเตโ€Œเด•เตเด•เดฐเดฟเด•เตเด•เดพเดจเตเด‚ เด‡เดฒเตเดฒเดพเดคเดพเด•เตเด•เดพเดจเตเด‚ kubectl เดจเดฟเตผเดฌเดจเตเดงเดฟเดค เด•เดฎเดพเตปเดกเตเด•เตพ เด‰เดชเดฏเต‹เด—เดฟเด•เตเด•เตเด• เดŽเดจเตเดจเดคเดพเดฃเต. เดฒเดณเดฟเดคเดฎเดพเดฏเดฟ เดชเดฑเดžเตเดžเดพเตฝ:

  • เดŸเต€เด‚ kubectl run เดจเดฟเด™เตเด™เตพเด•เตเด•เต เดตเดฟเดจเตเดฏเดพเดธเดฎเต‹ เดœเต‹เดฒเดฟเดฏเต‹ เดชเตเดฐเดตเตผเดคเตเดคเดฟเดชเตเดชเดฟเด•เตเด•เดพเตป เด•เดดเดฟเดฏเตเด‚:
    kubectl run --generator=deployment/apps.v1 DEPLOYMENT_NAME --image=IMAGE
  • เดŸเต€เด‚ kubectl scale - เดชเด•เตผเดชเตเดชเตเด•เดณเตเดŸเต† เดŽเดฃเตเดฃเด‚ เดฎเดพเดฑเตเดฑเตเด•:
    kubectl scale --replicas=3 deployment/mysql
  • เด…เดคเตเดชเต‹เดฒเต†.

เดˆ เดธเดฎเต€เดชเดจเด‚ เด’เดฑเตเดฑเดจเต‹เดŸเตเดŸเดคเตเดคเดฟเตฝ เดธเต—เด•เดฐเตเดฏเดชเตเดฐเดฆเดฎเดพเดฃเต†เดจเตเดจเต เดคเต‹เดจเตเดจเดฟเดฏเต‡เด•เตเด•เดพเด‚. เดŽเดจเตเดจเดฟเดฐเตเดจเตเดจเดพเดฒเตเด‚ เดชเตเดฐเดถเตเดจเด™เตเด™เตพ เด‰เดฃเตเดŸเต:

  1. เด‡เดคเต เดฌเตเดฆเตเดงเดฟเดฎเตเดŸเตเดŸเดพเดฃเต เดฏเดพเดจเตเดคเตเดฐเดฟเด•เดฎเดพเด•เตเด•เตเด•.
  2. เดŽเด™เตเด™เดจเต† เด•เต‹เตบเดซเดฟเด—เดฑเต‡เดทเตป เดชเตเดฐเดคเดฟเดซเดฒเดฟเดชเตเดชเดฟเด•เตเด•เตเด• Git-เตฝ? เด•เตเดฒเดธเตเดฑเตเดฑเดฑเดฟเตฝ เดธเด‚เดญเดตเดฟเด•เตเด•เตเดจเตเดจ เดฎเดพเดฑเตเดฑเด™เตเด™เตพ เดŽเด™เตเด™เดจเต† เด…เดตเดฒเต‹เด•เดจเด‚ เดšเต†เดฏเตเดฏเดพเด‚?
  3. เดŽเด™เตเด™เดจเต† เดจเตฝเด•เดพเด‚ เดชเตเดจเดฐเตเตฝเดชเดพเดฆเดจเด•เตเดทเดฎเดค เดชเตเดจเดฐเดพเดฐเด‚เดญเดฟเด•เตเด•เตเดฎเตเดชเต‹เตพ เด•เต‹เตบเดซเดฟเด—เดฑเต‡เดทเดจเตเด•เตพ?
  4. เดชเด™เตเด•เต โ‚ฌ |

เด†เดชเตเดฒเดฟเด•เตเด•เต‡เดทเดจเตเด‚ เด‡เตปเดซเตเดฐเดพเดธเตเดŸเตเดฐเด•เตเดšเดฑเตเด‚ เด•เต‹เดกเดพเดฏเดฟ เดธเด‚เดญเดฐเดฟเด•เตเด•เตเดจเตเดจเดคเดฟเดจเต เดˆ เดธเดฎเต€เดชเดจเด‚ เด…เดจเตเดฏเต‹เดœเตเดฏเดฎเดฒเตเดฒเต†เดจเตเดจเต เดตเตเดฏเด•เตเดคเดฎเดพเดฃเต (IaC; เด…เดฒเตเดฒเต†เด™เตเด•เดฟเตฝ เดชเต‹เดฒเตเด‚. GitOps เด•เต‚เดŸเตเดคเตฝ เด†เดงเตเดจเดฟเด•เดฎเดพเดฏ เด’เดฐเต เด“เดชเตเดทเดจเดพเดฏเดฟ, เด•เตเดฌเตผเดจเต†เดฑเตเดฑเดธเต เด†เดตเดพเดธเดตเตเดฏเดตเดธเตเดฅเดฏเดฟเตฝ เดœเดจเดชเตเดฐเต€เดคเดฟ เดจเต‡เดŸเตเดจเตเดจเต). เด…เดคเดฟเดจเดพเตฝ, เดˆ เด•เดฎเดพเตปเดกเตเด•เตพเด•เตเด•เต kubectl-เตฝ เด•เต‚เดŸเตเดคเตฝ เดตเดฟเด•เดธเดจเด‚ เดฒเดญเดฟเดšเตเดšเดฟเดฒเตเดฒ.

เดชเตเดฐเดตเตผเดคเตเดคเดจเด™เตเด™เตพ เดธเตƒเดทเตเดŸเดฟเด•เตเด•เตเด•, เดจเต‡เดŸเตเด•, เดฎเดพเดฑเตเดฑเดฟเดธเตเดฅเดพเดชเดฟเด•เตเด•เตเด•, เด‡เดฒเตเดฒเดพเดคเดพเด•เตเด•เตเด•

เดชเตเดฐเดพเดฅเดฎเดฟเด• เด•เต‚เดŸเต† เดธเตƒเดทเตเดŸเดฟ เด‡เดคเต เดฒเดณเดฟเดคเดฎเดพเดฃเต: เดชเตเดฐเดตเตผเดคเตเดคเดจเดคเตเดคเดฟเดฒเต‡เด•เตเด•เต เดฎเดพเดจเดฟเดซเต†เดธเตเดฑเตเดฑเต เด…เดฏเดฏเตเด•เตเด•เตเด• create kube api, เด‰เดฑเดตเดฟเดŸเด‚ เดธเตƒเดทเตเดŸเดฟเดšเตเดšเต. เดฎเดพเดจเดฟเดซเต†เดธเตเดฑเตเดฑเดฟเดจเตเดฑเต† YAML เดชเตเดฐเดพเดคเดฟเดจเดฟเดงเตเดฏเด‚ Git-เตฝ เดธเด‚เดญเดฐเดฟเด•เตเด•เดพเดจเตเด‚ เด•เดฎเดพเตปเดกเต เด‰เดชเดฏเต‹เด—เดฟเดšเตเดšเต เดธเตƒเดทเตเดŸเดฟเด•เตเด•เดพเดจเตเด‚ เด•เดดเดฟเดฏเตเด‚ kubectl create -f manifest.yaml.

ะก เดจเต€เด•เตเด•เด‚เดšเต†เดฏเตเดฏเตเดจเตเดจเต เดฒเดณเดฟเดคเดตเตเด‚: เด…เดคเต‡ เดชเด•เดฐเด‚ เดตเดฏเตเด•เตเด•เตเด• manifest.yaml Git-เตฝ เดจเดฟเดจเตเดจเต เดŸเต€เดฎเดฟเดฒเต‡เด•เตเด•เต kubectl delete -f manifest.yaml.

เดชเตเดฐเดตเตผเดคเตเดคเดจเด‚ replace เดฑเดฟเดธเต‹เดดเตเดธเต เดชเตเดจเตผเดจเดฟเตผเดฎเตเดฎเดฟเด•เตเด•เดพเดคเต† เดคเดจเตเดจเต† เดชเตเดคเดฟเดฏเตŠเดฐเต†เดฃเตเดฃเด‚ เด‰เดชเดฏเต‹เด—เดฟเดšเตเดšเต เดฑเดฟเดธเต‹เดดเตเดธเต เด•เต‹เตบเดซเดฟเด—เดฑเต‡เดทเตป เดชเต‚เตผเดฃเตเดฃเดฎเดพเดฏเตเด‚ เดฎเดพเดฑเตเดฑเดฟเดธเตเดฅเดพเดชเดฟเด•เตเด•เดพเตป เดจเดฟเด™เตเด™เดณเต† เด…เดจเตเดตเดฆเดฟเด•เตเด•เตเดจเตเดจเต. เด‡เดคเดฟเดจเตผเดคเตเดฅเด‚ เด’เดฐเต เดฑเดฟเดธเต‹เดดเตโ€Œเดธเดฟเตฝ เดฎเดพเดฑเตเดฑเด‚ เดตเดฐเตเดคเตเดคเตเดจเตเดจเดคเดฟเดจเต เดฎเตเดฎเตเดชเต, เดชเตเดฐเดตเตผเดคเตเดคเดจเดคเตเดคเดฟเดจเตŠเดชเตเดชเด‚ เดจเดฟเดฒเดตเดฟเดฒเต† เดชเดคเดฟเดชเตเดชเต เด…เดจเตเดตเต‡เดทเดฟเด•เตเด•เตเดจเตเดจเดคเต เดฏเตเด•เตเดคเดฟเดธเดนเดฎเดพเดฃเต get, เด…เดคเต เดฎเดพเดฑเตเดฑเดฟ เด“เดชเตเดชเดฑเต‡เดทเตป เด‰เดชเดฏเต‹เด—เดฟเดšเตเดšเต เด…เดชเตเดกเต‡เดฑเตเดฑเต เดšเต†เดฏเตเดฏเตเด• replace. kube apiserver เดจเดฟเตผเดฎเตเดฎเดฟเดšเตเดšเดฟเดฐเดฟเด•เตเด•เตเดจเตเดจเดคเต เดถเตเดญเดพเดชเตเดคเดฟเดตเดฟเดถเตเดตเดพเดธเดฎเตเดณเตเดณ เดฒเต‹เด•เตเด•เดฟเด‚เด—เต เด•เต‚เดŸเดพเดคเต†, เดถเดธเตเดคเตเดฐเด•เตเดฐเดฟเดฏเดฏเตเด•เตเด•เต เดถเต‡เดทเดฎเดพเดฃเต†เด™เตเด•เดฟเตฝ get เดตเดธเตเดคเต เดฎเดพเดฑเดฟ, เดชเดฟเดจเตเดจเต† เดชเตเดฐเดตเตผเดคเตเดคเดจเด‚ replace เด…เดคเต เดชเตเดฐเดตเตผเดคเตเดคเดฟเด•เตเด•เดฟเดฒเตเดฒ.

Git-เตฝ เด•เต‹เตบเดซเดฟเด—เดฑเต‡เดทเตป เดธเด‚เดญเดฐเดฟเด•เตเด•เดพเดจเตเด‚ เดฎเดพเดฑเตเดฑเดฟเดธเตเดฅเดพเดชเดฟเด•เตเด•เตเด• เด‰เดชเดฏเต‹เด—เดฟเดšเตเดšเต เด…เดชเตเดกเต‡เดฑเตเดฑเต เดšเต†เดฏเตเดฏเดพเดจเตเด‚, เดจเดฟเด™เตเด™เตพ เดชเตเดฐเดตเตผเดคเตเดคเดจเด‚ เดจเดŸเดคเตเดคเต‡เดฃเตเดŸเดคเตเดฃเตเดŸเต get, Git-เตฝ เดจเดฟเดจเตเดจเตเดณเตเดณ เด•เต‹เตบเดซเดฟเด—เดฑเต‡เดทเตป เดžเด™เตเด™เตพเด•เตเด•เต เดฒเดญเดฟเดšเตเดšเดตเดฏเตเดฎเดพเดฏเดฟ เดฒเดฏเดฟเดชเตเดชเดฟเดšเตเดšเต เดŽเด•เตเดธเดฟเด•เตเดฏเต‚เดŸเตเดŸเต เดšเต†เดฏเตเดฏเตเด• replace. เดธเตเดฅเดฟเดฐเดธเตเดฅเดฟเดคเดฟเดฏเดพเดฏเดฟ, kubectl เดจเดฟเด™เตเด™เดณเต† เด•เดฎเดพเตปเดกเต เด‰เดชเดฏเต‹เด—เดฟเด•เตเด•เดพเตป เดฎเดพเดคเตเดฐเดฎเต‡ เด…เดจเตเดตเดฆเดฟเด•เตเด•เต‚ kubectl replace -f manifest.yamlเดŽเดตเดฟเดŸเต† manifest.yaml โ€” เด‡เดคเดฟเดจเด•เด‚ เดชเต‚เตผเดฃเตเดฃเดฎเดพเดฏเดฟ เดคเดฏเตเดฏเดพเดฑเดพเด•เตเด•เดฟเดฏ (เดžเด™เตเด™เดณเตเดŸเต† เด•เดพเดฐเตเดฏเดคเตเดคเดฟเตฝ, เดฒเดฏเดฟเดชเตเดชเดฟเดšเตเดš) เดฎเดพเดจเดฟเดซเต†เดธเตเดฑเตเดฑเต เด‡เตปเดธเตเดฑเตเดฑเดพเตพ เดšเต†เดฏเตเดฏเต‡เดฃเตเดŸเดคเตเดฃเตเดŸเต. เด‰เดชเดฏเต‹เด•เตเดคเดพเดตเดฟเดจเต เดฒเดฏเดจ เดฎเดพเดจเดฟเดซเต†เดธเตเดฑเตเดฑเตเด•เตพ เดจเดŸเดชเตเดชเดฟเดฒเดพเด•เตเด•เต‡เดฃเตเดŸเดคเตเดฃเตเดŸเต†เดจเตเดจเต เด‡เดคเต เดฎเดพเดฑเตเดจเตเดจเต, เด‡เดคเต เด’เดฐเต เดจเดฟเดธเตเดธเดพเดฐ เด•เดพเดฐเตเดฏเดฎเดฒเตเดฒ...

เดŽเดจเตเดจเดคเตเด‚ เดถเตเดฐเดฆเตเดงเดฟเด•เตเด•เต‡เดฃเตเดŸเดคเดพเดฃเต manifest.yaml เด•เต‚เดŸเดพเดคเต† Git-เตฝ เดธเด‚เดญเดฐเดฟเดšเตเดšเดฟเดฐเดฟเด•เตเด•เตเดจเตเดจเต, เด’เดฐเต เด’เดฌเตโ€Œเดœเด•เตเดฑเตเดฑเต เดธเตƒเดทเตโ€ŒเดŸเดฟเด•เตเด•เดฃเต‹ เด…เดชเตโ€Œเดกเต‡เดฑเตเดฑเต เดšเต†เดฏเตเดฏเต‡เดฃเตเดŸเดคเตเดฃเตเดŸเต‹ เดŽเดจเตเดจเต เดžเด™เตเด™เตพเด•เตเด•เต เดฎเตเตปเด•เต‚เดŸเตเดŸเดฟ เด…เดฑเดฟเดฏเดพเตป เด•เดดเดฟเดฏเดฟเดฒเตเดฒ - เด‡เดคเต เด‰เดชเดฏเต‹เด•เตเดคเตƒ เดธเต‹เดซเตโ€Œเดฑเตเดฑเตโ€Œเดตเต†เดฏเตผ เดšเต†เดฏเตเดฏเดฃเด‚.

เด†เด•เต†: เดจเดฎเตเด•เตเด•เต เด’เดฐเต เดคเตเดŸเตผเดšเตเดšเดฏเดพเดฏ เดฑเต‹เตพเด”เดŸเตเดŸเต เดจเดฟเตผเดฎเตเดฎเดฟเด•เตเด•เดพเตป เด•เดดเดฟเดฏเตเดฎเต‹? เด•เต‹เดกเต, เดธเต—เด•เดฐเตเดฏเดชเตเดฐเดฆเดฎเดพเดฏ CI/CD เดŽเดจเตเดจเดฟเดตเดฏเตโ€Œเด•เตเด•เตŠเดชเตเดชเด‚ เด‡เตปเดซเตเดฐเดพเดธเตเดŸเตเดฐเด•เตเดšเตผ เด•เต‹เตบเดซเดฟเด—เดฑเต‡เดทเตป Git-เตฝ เดธเด‚เดญเดฐเดฟเดšเตเดšเดฟเดŸเตเดŸเตเดฃเตเดŸเต†เดจเตเดจเต เด‰เดฑเดชเตเดชเดพเด•เตเด•เดฟเด•เตเด•เตŠเดฃเตเดŸเต เดธเตƒเดทเตโ€ŒเดŸเดฟเด•เตเด•เตเด•, เดฎเดพเดฑเตเดฑเดฟเดธเตเดฅเดพเดชเดฟเด•เตเด•เตเด•, เด‡เดฒเตเดฒเดพเดคเดพเด•เตเด•เตเด• เดŽเดจเตเดจเดฟเดต เดฎเดพเดคเตเดฐเด‚ เด‰เดชเดฏเต‹เด—เดฟเด•เตเด•เตเด•เดฏเดพเดฃเต‹?

เดคเดคเตเดตเดคเตเดคเดฟเตฝ, เดจเดฎเตเด•เตเด•เต เด•เดดเดฟเดฏเตเด‚ ... เด‡เดคเดฟเดจเดพเดฏเดฟ เดจเดฟเด™เตเด™เตพ เดฒเดฏเดจ เดชเตเดฐเดตเตผเดคเตเดคเดจเด‚ เดจเดŸเดชเตเดชเดฟเดฒเดพเด•เตเด•เต‡เดฃเตเดŸเดคเตเดฃเตเดŸเต เดฎเดพเดจเดฟเดซเต†เดธเตเดฑเตเดฑเต‹เด•เดณเตเด‚ เดšเดฟเดฒ เดคเดฐเดคเตเดคเดฟเดฒเตเดณเตเดณ เดฌเตˆเตปเดกเดฟเด‚เด—เตเด‚:

  • เด•เตเดฒเดธเตเดฑเตเดฑเดฑเดฟเดฒเต† เด’เดฐเต เดตเดธเตเดคเตเดตเดฟเดจเตเดฑเต† เดธเดพเดจเตเดจเดฟเดงเตเดฏเด‚ เดชเดฐเดฟเดถเต‹เดงเดฟเด•เตเด•เตเดจเตเดจเต,
  • เดชเตเดฐเดพเดฐเด‚เดญ เดตเดฟเดญเดต เดธเตƒเดทเตเดŸเดฟ เดจเดŸเดคเตเดคเตเดจเตเดจเต,
  • เด…เดคเต เด…เดชเตเดกเต‡เดฑเตเดฑเต เดšเต†เดฏเตเดฏเตเด•เดฏเต‹ เด‡เดฒเตเดฒเดพเดคเดพเด•เตเด•เตเด•เดฏเต‹ เดšเต†เดฏเตเดฏเตเดจเตเดจเต.

เด…เดชเตเดกเต‡เดฑเตเดฑเต เดšเต†เดฏเตเดฏเตเดฎเตเดชเต‹เตพ, เด…เดคเต เดถเตเดฐเดฆเตเดงเดฟเด•เตเด•เตเด• เด‰เดฑเดตเดฟเดŸเด‚ เดฎเดพเดฑเดฟเดฏเดฟเดฐเดฟเด•เตเด•เดพเด‚ เด…เดตเดธเดพเดจเด‚ เดฎเตเดคเตฝ get เดถเตเดญเดพเดชเตเดคเดฟเดตเดฟเดถเตเดตเดพเดธเดฎเตเดณเตเดณ เดฒเต‹เด•เตเด•เดฟเด‚เด—เดฟเดจเตเดฑเต† เด•เต‡เดธเต เดธเตเดตเดฏเดฎเต‡เดต เด•เตˆเด•เดพเดฐเตเดฏเด‚ เดšเต†เดฏเตเดฏเตเด• - เด†เดตเตผเดคเตเดคเดฟเดšเตเดšเตเดณเตเดณ เด…เดชเตโ€Œเดกเต‡เดฑเตเดฑเต เดถเตเดฐเดฎเด™เตเด™เตพ เดจเดŸเดคเตเดคเตเด•.

เดŽเดจเตเดจเดฟเดฐเตเดจเตเดจเดพเดฒเตเด‚, เด‰เดฑเดตเดฟเดŸเด™เตเด™เตพ เด…เดชเตโ€Œเดกเต‡เดฑเตเดฑเต เดšเต†เดฏเตเดฏเตเดจเตเดจเดคเดฟเดจเตเดณเตเดณ เดฎเดฑเตเดฑเตŠเดฐเต เดฎเดพเตผเด—เด‚ kube-apiserver เดตเดพเด—เตเดฆเดพเดจเด‚ เดšเต†เดฏเตเดฏเตเดฎเตเดชเต‹เตพ เดŽเดจเตเดคเตเด•เตŠเดฃเตเดŸเต เดตเต€เตฝ เดตเต€เดฃเตเดŸเตเด‚ เด•เดฃเตเดŸเตเดชเดฟเดŸเดฟเด•เตเด•เดฃเด‚: เดชเตเดฐเดตเตผเดคเตเดคเดจเด‚ patch, เดตเดฟเดตเดฐเดฟเดšเตเดš เดšเดฟเดฒ เดชเตเดฐเดถเตโ€Œเดจเด™เตเด™เดณเดฟเตฝ เดจเดฟเดจเตเดจเต เด‰เดชเดฏเต‹เด•เตเดคเดพเดตเดฟเดจเต เด†เดถเตเดตเดพเดธเด‚ เดจเตฝเด•เตเดจเตเดจเดคเต†เดจเตเดคเดพเดฃเต?

เดคเตเดฃเดฟเดคเตเดคเตเดฃเตเดŸเต

เด‡เดชเตเดชเต‹เตพ เดจเดฎเตเดฎเตพ เดชเดพเดšเตเดšเตเด•เดณเดฟเดฒเต‡เด•เตเด•เต เดชเต‹เด•เตเดจเตเดจเต.

เด•เตเดฌเต†เตผเดจเต†เดฑเตเดฑเดธเดฟเดฒเต† เดจเดฟเดฒเดตเดฟเดฒเตเดณเตเดณ เด’เดฌเตโ€Œเดœเด•เตโ€Œเดฑเตเดฑเตเด•เดณเดฟเตฝ เดฎเดพเดฑเตเดฑเด™เตเด™เตพ เดชเตเดฐเดฏเต‹เด—เดฟเด•เตเด•เตเดจเตเดจเดคเดฟเดจเตเดณเตเดณ เดชเตเดฐเดพเดฅเดฎเดฟเด• เดฎเดพเตผเด—เดฎเดพเดฃเต เดชเดพเดšเตเดšเตเด•เตพ. เด“เดชเตเดชเดฑเต‡เดทเตป patch เด‡เดคเต เด‡เดคเตเดชเต‹เดฒเต† เดชเตเดฐเดตเตผเดคเตเดคเดฟเด•เตเด•เตเดจเตเดจเต:

  • kube-apiserver เด‰เดชเดฏเต‹เด•เตเดคเดพเดตเดฟเดจเต JSON เดซเต‹เดฎเดฟเตฝ เด’เดฐเต เดชเดพเดšเตเดšเต เด…เดฏเดšเตเดšเต เด’เดฌเตโ€Œเดœเด•เตเดฑเตเดฑเต เดตเตเดฏเด•เตเดคเดฎเดพเด•เตเด•เต‡เดฃเตเดŸเดคเตเดฃเตเดŸเต,
  • เด•เต‚เดŸเดพเดคเต† apiserver เดคเดจเตเดจเต† เดตเดธเตเดคเตเดตเดฟเดจเตเดฑเต† เดจเดฟเดฒเดตเดฟเดฒเต† เด…เดตเดธเตเดฅ เด•เตˆเด•เดพเดฐเตเดฏเด‚ เดšเต†เดฏเตเดฏเตเด•เดฏเตเด‚ เด†เดตเดถเตเดฏเดฎเดพเดฏ เดฐเต‚เดชเดคเตเดคเดฟเดฒเต‡เด•เตเด•เต เด•เตŠเดฃเตเดŸเตเดตเดฐเตเด•เดฏเตเด‚ เดšเต†เดฏเตเดฏเตเด‚.

เดˆ เดธเดพเดนเดšเดฐเตเดฏเดคเตเดคเดฟเตฝ เดถเตเดญเดพเดชเตเดคเดฟเดตเดฟเดถเตเดตเดพเดธเดฎเตเดณเตเดณ เดฒเต‹เด•เตเด•เดฟเด‚เด—เต เด†เดตเดถเตเดฏเดฎเดฟเดฒเตเดฒ. เดˆ เดชเตเดฐเดตเตผเดคเตเดคเดจเด‚ เดฎเดพเดฑเตเดฑเดฟเดธเตเดฅเดพเดชเดฟเด•เตเด•เตเดจเตเดจเดคเดฟเดจเต‡เด•เตเด•เดพเตพ เด•เต‚เดŸเตเดคเตฝ เดกเดฟเด•เตเดฒเดฑเต‡เดฑเตเดฑเต€เดตเต เด†เดฃเต, เด†เดฆเตเดฏเด‚ เด‡เดคเต เดตเดฟเดชเดฐเต€เดคเดฎเดพเดฏเดฟ เดคเต‹เดจเตเดจเดพเดฎเต†เด™เตเด•เดฟเดฒเตเด‚.

เดˆ เดฐเต€เดคเดฟเดฏเดฟเตฝ:

  • เด’เดฐเต เด“เดชเตเดชเดฑเต‡เดทเตป เด‰เดชเดฏเต‹เด—เดฟเดšเตเดšเต create Git-เตฝ เดจเดฟเดจเตเดจเตเดณเตเดณ เดฎเดพเดจเดฟเดซเต†เดธเตเดฑเตเดฑเต เด…เดจเตเดธเดฐเดฟเดšเตเดšเต เดžเด™เตเด™เตพ เด’เดฐเต เดตเดธเตเดคเต เดธเตƒเดทเตเดŸเดฟเด•เตเด•เตเดจเตเดจเต,
  • เดธเดนเดพเดฏเดคเตเดคเต‹เดŸเต† delete - เด’เดฌเตเดœเด•เตเดฑเตเดฑเต เด‡เดจเดฟ เด†เดตเดถเตเดฏเดฎเดฟเดฒเตเดฒเต†เด™เตเด•เดฟเตฝ เด‡เดฒเตเดฒเดพเดคเดพเด•เตเด•เตเด•,
  • เดธเดนเดพเดฏเดคเตเดคเต‹เดŸเต† patch - เดžเด™เตเด™เตพ เด’เดฌเตเดœเด•เตเดฑเตเดฑเต เดฎเดพเดฑเตเดฑเตเดจเตเดจเต, เด…เดคเต Git-เตฝ เดตเดฟเดตเดฐเดฟเดšเตเดšเดฟเดฐเดฟเด•เตเด•เตเดจเตเดจ เดฐเต‚เดชเดคเตเดคเดฟเดฒเต‡เด•เตเด•เต เด•เตŠเดฃเตเดŸเตเดตเดฐเตเดจเตเดจเต.

เดŽเดจเตเดจเดฟเดฐเตเดจเตเดจเดพเดฒเตเด‚, เด‡เดคเต เดšเต†เดฏเตเดฏเตเดจเตเดจเดคเดฟเดจเต, เดจเดฟเด™เตเด™เตพ เดธเตƒเดทเตเดŸเดฟเด•เตเด•เต‡เดฃเตเดŸเดคเตเดฃเตเดŸเต เดถเดฐเดฟเดฏเดพเดฏ เดชเดพเดšเตเดšเต!

เดนเต†เตฝเด‚ 2-เตฝ เดชเดพเดšเตเดšเตเด•เตพ เดŽเด™เตเด™เดจเต† เดชเตเดฐเดตเตผเดคเตเดคเดฟเด•เตเด•เตเดจเตเดจเต: 2-เดตเต‡-เดฎเต†เตผเดœเต

เดจเดฟเด™เตเด™เตพ เด†เดฆเตเดฏเด‚ เด’เดฐเต เดฑเดฟเดฒเต€เดธเต เด‡เตปเดธเตเดฑเตเดฑเดพเตพ เดšเต†เดฏเตเดฏเตเดฎเตเดชเต‹เตพ, เดนเต†เตฝเด‚ เดชเตเดฐเดตเตผเดคเตเดคเดจเด‚ เดจเดŸเดคเตเดคเตเดจเตเดจเต create เดšเดพเตผเดŸเตเดŸเต เด‰เดฑเดตเดฟเดŸเด™เตเด™เตพเด•เตเด•เดพเดฏเดฟ.

เด“เดฐเต‹ เดฑเดฟเดธเต‹เดดเตเดธเดฟเดจเตเด‚ เด’เดฐเต เดนเต†เตฝเด‚ เดฑเดฟเดฒเต€เดธเต เด…เดชเตเดกเต‡เดฑเตเดฑเต เดšเต†เดฏเตเดฏเตเดฎเตเดชเต‹เตพ:

  • เดฎเตเดฎเตเดชเดคเตเดคเต† เดšเดพเตผเดŸเตเดŸเดฟเตฝ เดจเดฟเดจเตเดจเตเดณเตเดณ เดฑเดฟเดธเต‹เดดเตเดธเต เดชเดคเดฟเดชเตเดชเตเด‚ เดจเดฟเดฒเดตเดฟเดฒเต† เดšเดพเตผเดŸเตเดŸเต เดชเดคเดฟเดชเตเดชเตเด‚ เดคเดฎเตเดฎเดฟเดฒเตเดณเตเดณ เดชเดพเดšเตเดšเต เดชเดฐเดฟเด—เดฃเดฟเด•เตเด•เตเดจเตเดจเต,
  • เดˆ เดชเดพเดšเตเดšเต เดชเตเดฐเดฏเต‹เด—เดฟเด•เตเด•เตเดจเตเดจเต.

เดžเด™เตเด™เตพ เด‡เดคเดฟเดจเต† เดชเดพเดšเตเดšเต เดŽเดจเตเดจเต เดตเดฟเดณเดฟเด•เตเด•เตเด‚ 2-เดตเต‡ เดฒเดฏเดจ เดชเดพเดšเตเดšเต, เด•เดพเดฐเดฃเด‚ เด…เดคเดฟเดจเตเดฑเต† เดธเตƒเดทเตเดŸเดฟเดฏเดฟเตฝ 2 เดฎเดพเดจเดฟเดซเต†เดธเตเดฑเตเดฑเต‹เด•เตพ เด‰เตพเดชเตเดชเต†เดŸเตเดจเตเดจเต:

  • เดฎเตเดฎเตเดชเดคเตเดคเต† เดชเดคเดฟเดชเตเดชเดฟเตฝ เดจเดฟเดจเตเดจเตเดณเตเดณ เด‰เดฑเดตเดฟเดŸ เดฎเดพเดจเดฟเดซเต†เดธเตเดฑเตเดฑเต,
  • เดจเดฟเดฒเดตเดฟเดฒเต† เด‰เดฑเดตเดฟเดŸเดคเตเดคเดฟเตฝ เดจเดฟเดจเตเดจเตเดณเตเดณ เด‰เดฑเดตเดฟเดŸเด‚ เดฎเดพเดจเดฟเดซเต†เดธเตเดฑเตเดฑเต.

เดชเตเดฐเดตเตผเดคเตเดคเดจเด‚ เดจเต€เด•เตเด•เด‚ เดšเต†เดฏเตเดฏเตเดฎเตเดชเต‹เตพ delete kube apiserver-เตฝ, เดฎเตเดฎเตเดชเดคเตเดคเต† เดชเดคเดฟเดชเตเดชเดฟเตฝ เดชเตเดฐเด–เตเดฏเดพเดชเดฟเดšเตเดšเดฟเดŸเตเดŸเตเดณเตเดณเดคเตเด‚ เดŽเดจเตเดจเดพเตฝ เดจเดฟเดฒเดตเดฟเดฒเตเดณเตเดณเดคเดฟเตฝ เดชเตเดฐเด–เตเดฏเดพเดชเดฟเดšเตเดšเดฟเดŸเตเดŸเดฟเดฒเตเดฒเดพเดคเตเดคเดคเตเดฎเดพเดฏ เด‰เดฑเดตเดฟเดŸเด™เตเด™เตพเด•เตเด•เดพเดฏเดฟ เดตเดฟเดณเดฟเด•เตเด•เตเดจเตเดจเต.

2-เดตเต‡ เดฒเดฏเดจ เดชเดพเดšเตเดšเต เดธเดฎเต€เดชเดจเดคเตเดคเดฟเดจเต เด’เดฐเต เดชเตเดฐเดถเตเดจเดฎเตเดฃเตเดŸเต: เด‡เดคเต เดจเดฏเดฟเด•เตเด•เตเดจเตเดจเต เด•เตเดฒเดธเตเดฑเตเดฑเดฑเดฟเดฒเต† เด‰เดฑเดตเดฟเดŸเดคเตเดคเดฟเดจเตเดฑเต†เดฏเตเด‚ Git-เดฒเต† เดฎเดพเดจเดฟเดซเต†เดธเตเดฑเตเดฑเดฟเดจเตเดฑเต†เดฏเตเด‚ เดฏเดฅเดพเตผเดคเตเดฅ เด…เดตเดธเตเดฅเดฏเตเดฎเดพเดฏเดฟ เดธเดฎเดจเตเดตเดฏเดฎเดฟเดฒเตเดฒ.

เด’เดฐเต เด‰เดฆเดพเดนเดฐเดฃเด‚ เด‰เดชเดฏเต‹เด—เดฟเดšเตเดšเต เดชเตเดฐเดถเตเดจเดคเตเดคเดฟเดจเตเดฑเต† เดšเดฟเดคเตเดฐเต€เด•เดฐเดฃเด‚

  • Git-เตฝ, เด’เดฐเต เดšเดพเตผเดŸเตเดŸเต เด’เดฐเต เดฎเดพเดจเดฟเดซเต†เดธเตเดฑเตเดฑเต เดธเด‚เดญเดฐเดฟเด•เตเด•เตเดจเตเดจเต, เด…เดคเดฟเตฝ เดซเต€เตฝเดกเต image เดตเดฟเดจเตเดฏเดพเดธเด‚ เดชเตเดฐเดงเดพเดจเดฎเดพเดฃเต ubuntu:18.04.
  • เด‰เดชเดฏเต‹เด•เตเดคเดพเดตเต เดตเดดเดฟ kubectl edit เดˆ เดซเต€เตฝเดกเดฟเดจเตเดฑเต† เดฎเต‚เดฒเตเดฏเด‚ เดฎเดพเดฑเตเดฑเดฟ ubuntu:19.04.
  • เดนเต†เตฝเด‚ เดšเดพเตผเดŸเตเดŸเต เดตเต€เดฃเตเดŸเตเด‚ เดตเดฟเดจเตเดฏเดธเดฟเด•เตเด•เตเดฎเตเดชเต‹เตพ เด’เดฐเต เดชเดพเดšเตเดšเต เดธเตƒเดทเตเดŸเดฟเด•เตเด•เตเดจเตเดจเดฟเดฒเตเดฒ, เด•เดพเดฐเดฃเด‚ เดตเดฏเดฒเดพเดฃเต image เดฑเดฟเดฒเต€เดธเดฟเดจเตเดฑเต† เดฎเตเตป เดชเดคเดฟเดชเตเดชเดฟเดฒเตเด‚ เดจเดฟเดฒเดตเดฟเดฒเต† เดšเดพเตผเดŸเตเดŸเดฟเดฒเตเด‚ เดธเดฎเดพเดจเดฎเดพเดฃเต.
  • เดตเต€เดฃเตเดŸเตเด‚ เดตเดฟเดจเตเดฏเดพเดธเดคเตเดคเดฟเดจเต เดถเต‡เดทเด‚ image เด…เดตเดถเต‡เดทเดฟเด•เตเด•เตเดจเตเดจเต ubuntu:19.04, เดšเดพเตผเดŸเตเดŸเต เดชเดฑเดฏเตเดจเตเดจเตเดฃเตเดŸเต†เด™เตเด•เดฟเดฒเตเด‚ ubuntu:18.04.

เดžเด™เตเด™เตพเด•เตเด•เต เดกเต€เดธเดฟเตปเด•เตเดฐเตŠเดฃเตˆเดธเต‡เดทเตป เดฒเดญเดฟเดšเตเดšเต, เดชเตเดฐเด–เตเดฏเดพเดชเดจเด‚ เดจเดทเตเดŸเดชเตเดชเต†เดŸเตเดŸเต.

เดŽเดจเตเดคเดพเดฃเต เดธเดฎเดจเตเดตเดฏเดฟเดชเตเดชเดฟเดšเตเดš เดตเดฟเดญเดตเด‚?

เดชเตŠเดคเตเดตเดพเดฏเดฟ เดชเดฑเดžเตเดžเดพเตฝ เดชเต‚เตผเดคเตเดคเดฟเดฏเดพเดฏเดฟ เด’เดฐเต เดฑเดฃเตเดฃเดฟเด‚เด—เต เด•เตเดฒเดธเตเดฑเตเดฑเดฑเดฟเดฒเต† เดฑเดฟเดธเต‹เดดเตเดธเต เดฎเดพเดจเดฟเดซเต†เดธเตเดฑเตเดฑเตเด‚ Git-เตฝ เดจเดฟเดจเตเดจเตเดณเตเดณ เดฎเดพเดจเดฟเดซเต†เดธเตเดฑเตเดฑเตเด‚ เดคเดฎเตเดฎเดฟเตฝ เด’เดฐเต เดชเตŠเดฐเตเดคเตเดคเด‚ เดจเต‡เดŸเตเด• เด…เดธเดพเดงเตเดฏเดฎเดพเดฃเต. เด•เดพเดฐเดฃเด‚ เด’เดฐเต เดฏเดฅเดพเตผเดคเตเดฅ เดฎเดพเดจเดฟเดซเต†เดธเตเดฑเตเดฑเดฟเตฝ เดธเต‡เดตเดจ เดตเตเดฏเดพเด–เตเดฏเดพเดจเด™เตเด™เตพ/เดฒเต‡เดฌเดฒเตเด•เตพ, เด…เดงเดฟเด• เด•เดฃเตเดŸเต†เดฏเตโ€Œเดจเดฑเตเด•เตพ, เดฎเดฑเตเดฑเต เดกเดพเดฑเตเดฑ เดŽเดจเตเดจเดฟเดต เด‰เดฃเตเดŸเดพเดฏเดฟเดฐเดฟเด•เตเด•เดพเด‚, เด…เดคเต เดšเดฟเดฒ เด•เตบเดŸเตเดฐเต‹เดณเดฑเตเด•เตพ เดŠเตผเดœเตเดœเดธเตเดตเดฒเดฎเดพเดฏเดฟ เด‰เดฑเดตเดฟเดŸเดคเตเดคเดฟเตฝ เดจเดฟเดจเตเดจเต เดšเต‡เตผเด•เตเด•เตเด•เดฏเตเด‚ เดจเต€เด•เตเด•เด‚ เดšเต†เดฏเตเดฏเตเด•เดฏเตเด‚ เดšเต†เดฏเตเดฏเตเดจเตเดจเต. เดˆ เดกเดพเดฑเตเดฑ Git-เตฝ เดธเต‚เด•เตเดทเดฟเด•เตเด•เดพเตป เดžเด™เตเด™เตพเด•เตเด•เต เด•เดดเดฟเดฏเดฟเดฒเตเดฒ, เด†เด—เตเดฐเดนเดฟเด•เตเด•เตเดจเตเดจเดฟเดฒเตเดฒ. เดŽเดจเตเดจเดฟเดฐเตเดจเตเดจเดพเดฒเตเด‚, Git-เตฝ เดžเด™เตเด™เตพ เดตเตเดฏเด•เตเดคเดฎเดพเดฏเดฟ เดตเตเดฏเด•เตเดคเดฎเดพเด•เตเด•เดฟเดฏ เดซเต€เตฝเดกเตเด•เตพ เดฑเต‹เตพเด”เดŸเตเดŸเดฟเตฝ เด‰เดšเดฟเดคเดฎเดพเดฏ เดฎเต‚เดฒเตเดฏเด™เตเด™เตพ เดธเตเดตเต€เด•เดฐเดฟเด•เตเด•เดฃเดฎเต†เดจเตเดจเต เดžเด™เตเด™เตพ เด†เด—เตเดฐเดนเดฟเด•เตเด•เตเดจเตเดจเต.

เด‡เดคเต เดตเดณเดฐเต† เดชเตŠเดคเตเดตเดพเดฏเดฟ เดฎเดพเดฑเตเดจเตเดจเต เดธเดฎเดจเตเดตเดฏเดฟเดชเตเดชเดฟเดšเตเดš เดฑเดฟเดธเต‹เดดเตเดธเต เดฑเต‚เตพ: เด’เดฐเต เดฑเดฟเดธเต‹เดดเตเดธเต เดชเตเดฑเดคเตเดคเดฟเดฑเด•เตเด•เตเดฎเตเดชเต‹เตพ, Git-เตฝ เดจเดฟเดจเตเดจเตเดณเตเดณ เดฎเดพเดจเดฟเดซเต†เดธเตเดฑเตเดฑเดฟเตฝ เดตเตเดฏเด•เตเดคเดฎเดพเดฏเดฟ เดตเตเดฏเด•เตเดคเดฎเดพเด•เตเด•เดฟเดฏเดฟเดŸเตเดŸเตเดณเตเดณ (เด…เดฒเตเดฒเต†เด™เตเด•เดฟเตฝ เดฎเตเดฎเตเดชเดคเตเดคเต† เดชเดคเดฟเดชเตเดชเดฟเตฝ เดตเตเดฏเด•เตเดคเดฎเดพเด•เตเด•เดฟเดฏเดคเตเด‚ เด‡เดชเตเดชเต‹เตพ เด‡เดฒเตเดฒเดพเดคเดพเด•เตเด•เดฟเดฏเดตเดฏเตเด‚) เด† เดซเต€เตฝเดกเตเด•เตพ เดฎเดพเดคเตเดฐเดฎเต‡ เดจเดฟเด™เตเด™เตพเด•เตเด•เต เดฎเดพเดฑเตเดฑเดพเดจเต‹ เด‡เดฒเตเดฒเดพเดคเดพเด•เตเด•เดพเดจเต‹ เด•เดดเดฟเดฏเต‚.

3-เดตเต‡ เดฒเดฏเดจ เดชเดพเดšเตเดšเต

เดฎเตเด–เตเดฏ เด†เดถเดฏเด‚ 3-เดตเต‡ เดฒเดฏเดจ เดชเดพเดšเตเดšเต: เดชเตเดฐเดตเตผเดคเตเดคเดฟเด•เตเด•เตเดจเตเดจ เด•เตเดฒเดธเตเดฑเตเดฑเดฑเดฟเตฝ เดจเดฟเดจเตเดจเตเดณเตเดณ เดฎเดพเดจเดฟเดซเต†เดธเตเดฑเตเดฑเดฟเดจเตเดฑเต† เดจเดฟเดฒเดตเดฟเดฒเต† เดชเดคเดฟเดชเตเดชเต เด•เดฃเด•เตเด•เดฟเดฒเต†เดŸเตเดคเตเดคเต Git-เตฝ เดจเดฟเดจเตเดจเตเดณเตเดณ เดฎเดพเดจเดฟเดซเต†เดธเตเดฑเตเดฑเดฟเดจเตเดฑเต† เด…เดตเดธเดพเดจ เดชเตเดฐเดฏเต‹เด—เดฟเดšเตเดš เดชเดคเดฟเดชเตเดชเดฟเดจเตเด‚ Git-เตฝ เดจเดฟเดจเตเดจเตเดณเตเดณ เดฎเดพเดจเดฟเดซเต†เดธเตเดฑเตเดฑเดฟเดจเตเดฑเต† เดŸเดพเตผเด—เต†เดฑเตเดฑเต เดชเดคเดฟเดชเตเดชเดฟเดจเตเด‚ เด‡เดŸเดฏเดฟเตฝ เด’เดฐเต เดชเดพเดšเตเดšเต เดธเตƒเดทเตเดŸเดฟเด•เตเด•เตเด•. เดคเดคเตเดซเดฒเดฎเดพเดฏเตเดฃเตเดŸเดพเด•เตเดจเตเดจ เดชเดพเดšเตเดšเต เดธเดฎเดจเตเดตเดฏเดฟเดชเตเดชเดฟเดšเตเดš เดฑเดฟเดธเต‹เดดเตเดธเต เดจเดฟเดฏเดฎเดคเตเดคเดฟเดจเต เด…เดจเตเดธเตƒเดคเดฎเดพเดฏเดฟเดฐเดฟเด•เตเด•เดฃเด‚:

  • เดŸเดพเตผเด—เต†เดฑเตเดฑเต เดชเดคเดฟเดชเตเดชเดฟเดฒเต‡เด•เตเด•เต เดšเต‡เตผเดคเตเดค เดชเตเดคเดฟเดฏ เดซเต€เตฝเดกเตเด•เตพ เด’เดฐเต เดชเดพเดšเตเดšเต เด‰เดชเดฏเต‹เด—เดฟเดšเตเดšเต เดšเต‡เตผเด•เตเด•เตเดจเตเดจเต;
  • เด…เดตเดธเดพเดจเด‚ เดชเตเดฐเดฏเต‹เด—เดฟเดšเตเดš เดชเดคเดฟเดชเตเดชเดฟเตฝ เดฎเตเดฎเตเดชเต เดจเดฟเดฒเดตเดฟเดฒเตเดฃเตเดŸเดพเดฏเดฟเดฐเตเดจเตเดจเดคเตเด‚ เดŸเดพเตผเด—เต†เดฑเตเดฑเต เดชเดคเดฟเดชเตเดชเดฟเตฝ เดจเดฟเดฒเดตเดฟเดฒเดฟเดฒเตเดฒเดพเดคเตเดคเดคเตเดฎเดพเดฏ เดซเต€เตฝเดกเตเด•เตพ เด’เดฐเต เดชเดพเดšเตเดšเต เด‰เดชเดฏเต‹เด—เดฟเดšเตเดšเต เดชเตเดจเดƒเดธเดœเตเดœเดฎเดพเด•เตเด•เตเดจเตเดจเต;
  • เดฎเดพเดจเดฟเดซเต†เดธเตเดฑเตเดฑเดฟเดจเตเดฑเต† เดŸเดพเตผเด—เต†เดฑเตเดฑเต เดชเดคเดฟเดชเตเดชเดฟเตฝ เดจเดฟเดจเตเดจเต เดตเตเดฏเดคเตเดฏเดธเตเดคเดฎเดพเดฏ เด’เดฌเตโ€Œเดœเด•เตเดฑเตเดฑเดฟเดจเตเดฑเต† เดจเดฟเดฒเดตเดฟเดฒเต† เดชเดคเดฟเดชเตเดชเดฟเดฒเต† เดซเต€เตฝเดกเตเด•เตพ เดชเดพเดšเตเดšเต เด‰เดชเดฏเต‹เด—เดฟเดšเตเดšเต เด…เดชเตโ€Œเดกเต‡เดฑเตเดฑเต เดšเต†เดฏเตเดฏเตเดจเตเดจเต.

เดˆ เดคเดคเตเดตเดคเตเดคเดฟเดฒเดพเดฃเต เด‡เดคเต เดชเดพเดšเตเดšเตเด•เตพ เดธเตƒเดทเตเดŸเดฟเด•เตเด•เตเดจเตเดจเดคเต kubectl apply:

  • เดฎเดพเดจเดฟเดซเต†เดธเตเดฑเตเดฑเดฟเดจเตเดฑเต† เด…เดตเดธเดพเดจ เดชเตเดฐเดฏเต‹เด—เดฟเดšเตเดš เดชเดคเดฟเดชเตเดชเต เด’เดฌเตโ€Œเดœเด•เตเดฑเตเดฑเดฟเดจเตเดฑเต† เดตเตเดฏเดพเด–เตเดฏเดพเดจเดคเตเดคเดฟเตฝ เดธเด‚เดญเดฐเดฟเดšเตเดšเดฟเดฐเดฟเด•เตเด•เตเดจเตเดจเต,
  • เดŸเดพเตผเด—เต†เดฑเตเดฑเต - เดจเดฟเตผเดฆเตเดฆเดฟเดทเตเดŸ YAML เดซเดฏเดฒเดฟเตฝ เดจเดฟเดจเตเดจเต เดŽเดŸเตเดคเตเดคเดคเต,
  • เดจเดฟเดฒเดตเดฟเดฒเตเดณเตเดณเดคเต เด’เดฐเต เดฑเดฃเตเดฃเดฟเด‚เด—เต เด•เตเดฒเดธเตเดฑเตเดฑเดฑเดฟเตฝ เดจเดฟเดจเตเดจเตเดณเตเดณเดคเดพเดฃเต.

เด‡เดชเตเดชเต‹เตพ เดžเด™เตเด™เตพ เดธเดฟเดฆเตเดงเดพเดจเตเดคเด‚ เด•เตเดฐเดฎเต€เด•เดฐเดฟเดšเตเดšเต, เดžเด™เตเด™เตพ เดตเต†เตผเดซเดฟเตฝ เดŽเดจเตเดคเดพเดฃเต เดšเต†เดฏเตเดคเดคเต†เดจเตเดจเต เดจเดฟเด™เตเด™เดณเต‹เดŸเต เดชเดฑเดฏเดพเตป เดธเดฎเดฏเดฎเดพเดฏเดฟ.

เดตเต†เตผเดซเดฟเตฝ เดฎเดพเดฑเตเดฑเด™เตเด™เตพ เดชเตเดฐเดฏเต‹เด—เดฟเด•เตเด•เตเดจเตเดจเต

เดฎเตเดฎเตเดชเต, เดนเต†เตฝเด‚ 2 เดชเต‹เดฒเต† เดตเต†เตผเดซเต, 2-เดตเต‡-เดฎเต†เตผเดœเต เดชเดพเดšเตเดšเตเด•เตพ เด‰เดชเดฏเต‹เด—เดฟเดšเตเดšเดฟเดฐเตเดจเตเดจเต.

เดชเดพเดšเตเดšเต เดจเดจเตเดจเดพเด•เตเด•เตเด•

เด’เดฐเต เดชเตเดคเดฟเดฏ เดคเดฐเด‚ เดชเดพเดšเตเดšเตเด•เดณเดฟเดฒเต‡เด•เตเด•เต เดฎเดพเดฑเตเดจเตเดจเดคเดฟเดจเต - 3-เดตเต‡-เดฒเดฏเดจเด‚ - เดžเด™เตเด™เตพ เด†เดฆเตเดฏเดฎเดพเดฏเดฟ เด…เดตเดคเดฐเดฟเดชเตเดชเดฟเดšเตเดšเดคเต เดชเดพเดšเตเดšเตเด•เตพ เดจเดจเตเดจเดพเด•เตเด•เตเด•.

เดตเดฟเดจเตเดฏเดธเดฟเด•เตเด•เตเดฎเตเดชเต‹เตพ, เด’เดฐเต เดธเตเดฑเตเดฑเดพเตปเดกเต‡เตผเดกเต 2-เดตเต‡-เดฎเต†เตผเดœเต เดชเดพเดšเตเดšเต เด‰เดชเดฏเต‹เด—เดฟเด•เตเด•เตเดจเตเดจเต, เดŽเดจเตเดจเดพเตฝ werf เด…เดงเดฟเด•เดฎเดพเดฏเดฟ เด’เดฐเต เดชเดพเดšเตเดšเต เดธเตƒเดทเตเดŸเดฟเด•เตเด•เตเดจเตเดจเต, เด…เดคเต เด‰เดฑเดตเดฟเดŸเดคเตเดคเดฟเดจเตเดฑเต† เดฏเดฅเดพเตผเดคเตเดฅ เด…เดตเดธเตเดฅเดฏเต† Git-เตฝ เดŽเดดเตเดคเดฟเดฏเดฟเดฐเดฟเด•เตเด•เตเดจเตเดจเดคเตเดฎเดพเดฏเดฟ เดธเดฎเดจเตเดตเดฏเดฟเดชเตเดชเดฟเด•เตเด•เตเด‚ (เดฎเตเด•เดณเดฟเตฝ เดตเดฟเดตเดฐเดฟเดšเตเดš เด…เดคเต‡ เดธเดฎเดจเตเดตเดฏเดฟเดชเตเดชเดฟเดšเตเดš เดฑเดฟเดธเต‹เดดเตเดธเต เดฑเต‚เตพ เด‰เดชเดฏเต‹เด—เดฟเดšเตเดšเดพเดฃเต เด…เดคเตเดคเดฐเดฎเตŠเดฐเต เดชเดพเดšเตเดšเต เดธเตƒเดทเตเดŸเดฟเด•เตเด•เตเดจเตเดจเดคเต) .

เด’เดฐเต เดกเต€เดธเดฟเตปเด•เตเดฐเตŠเดฃเตˆเดธเต‡เดทเตป เดธเด‚เดญเดตเดฟเด•เตเด•เตเด•เดฏเดพเดฃเต†เด™เตเด•เดฟเตฝ, เดตเดฟเดจเตเดฏเดพเดธเดคเตเดคเดฟเดจเตเดฑเต† เด…เดตเดธเดพเดจเด‚ เด‰เดชเดฏเต‹เด•เตเดคเดพเดตเดฟเดจเต เด…เดจเตเดฌเดจเตเดง เดธเดจเตเดฆเต‡เดถเดตเตเด‚ เด’เดฐเต เดชเดพเดšเตเดšเตเด‚ เด…เดŸเด™เตเด™เดฟเดฏ เด’เดฐเต เดฎเตเดจเตเดจเดฑเดฟเดฏเดฟเดชเตเดชเต เดฒเดญเดฟเด•เตเด•เตเด‚, เด…เดคเต เดฑเดฟเดธเต‹เดดเตโ€Œเดธเต เด’เดฐเต เดธเดฎเดจเตเดตเดฏเดฟเดชเตเดชเดฟเดšเตเดš เดซเต‹เดฎเดฟเดฒเต‡เด•เตเด•เต เด•เตŠเดฃเตเดŸเตเดตเดฐเดพเตป เดชเตเดฐเดฏเต‹เด—เดฟเด•เตเด•เดฃเด‚. เดˆ เดชเดพเดšเตเดšเต เด’เดฐเต เดชเตเดฐเดคเตเดฏเต‡เด• เดตเตเดฏเดพเด–เตเดฏเดพเดจเดคเตเดคเดฟเดฒเตเด‚ เดฐเต‡เด–เดชเตเดชเต†เดŸเตเดคเตเดคเดฟเดฏเดฟเดŸเตเดŸเตเดฃเตเดŸเต werf.io/repair-patch. เด‡เดคเต เด‰เดชเดฏเต‹เด•เตเดคเดพเดตเดฟเดจเตเดฑเต† เด•เตˆเด•เดณเดพเดฃเต†เดจเตเดจเต เด…เดจเตเดฎเดพเดจเดฟเด•เตเด•เดชเตเดชเต†เดŸเตเดจเตเดจเต ัะฐะผ เดˆ เดชเดพเดšเตเดšเต เดชเตเดฐเดฏเต‹เด—เดฟเด•เตเด•เตเด‚: werf เด‡เดคเต เดชเตเดฐเดฏเต‹เด—เดฟเด•เตเด•เดฟเดฒเตเดฒ.

เดฑเดฟเดชเตเดชเดฏเตผ เดชเดพเดšเตเดšเตเด•เตพ เดธเตƒเดทเตเดŸเดฟเด•เตเด•เตเดจเตเดจเดคเต เด’เดฐเต เดคเดพเตฝเด•เตเด•เดพเดฒเดฟเด• เดจเดŸเดชเดŸเดฟเดฏเดพเดฃเต, เด‡เดคเต 3-เดตเต‡-เดฎเต†เตผเดœเต เดคเดคเตเดตเดคเตเดคเต† เด…เดŸเดฟเดธเตเดฅเดพเดจเดฎเดพเด•เตเด•เดฟ เดชเดพเดšเตเดšเตเด•เตพ เดธเตƒเดทเตเดŸเดฟเด•เตเด•เตเดจเตเดจเดคเต เดฏเดฅเดพเตผเดคเตเดฅเดคเตเดคเดฟเตฝ เดชเดฐเดฟเดถเต‹เดงเดฟเด•เตเด•เดพเตป เดจเดฟเด™เตเด™เดณเต† เด…เดจเตเดตเดฆเดฟเด•เตเด•เตเดจเตเดจเต, เดŽเดจเตเดจเดพเตฝ เดˆ เดชเดพเดšเตเดšเตเด•เตพ เดธเตเดตเดฏเดฎเต‡เดต เดชเตเดฐเดฏเต‹เด—เดฟเด•เตเด•เดฐเตเดคเต. เด‡เดชเตเดชเต‹เตพ, เดˆ เด“เดชเตเดชเดฑเต‡เดฑเตเดฑเดฟเด‚เด—เต เดฎเต‹เดกเต เดธเตเดฅเดฟเดฐเดธเตเดฅเดฟเดคเดฟเดฏเดพเดฏเดฟ เดชเตเดฐเดตเตผเดคเตเดคเดจเด•เตเดทเดฎเดฎเดพเด•เตเด•เดฟเดฏเดฟเดฐเดฟเด•เตเด•เตเดจเตเดจเต.

เดชเตเดคเดฟเดฏ เดฑเดฟเดฒเต€เดธเตเด•เตพเด•เตเด•เต เดฎเดพเดคเตเดฐเด‚ 3-เดตเต‡-เดฎเต†เตผเดœเต เดชเดพเดšเตเดšเต

1 เดกเดฟเดธเด‚เดฌเตผ 2019 เดฎเตเดคเตฝ, เดตเต†เตผเดซเดฟเดจเตเดฑเต† เดฌเต€เดฑเตเดฑ, เด†เตฝเดซ เดชเดคเดฟเดชเตเดชเตเด•เตพ เด†เดฐเด‚เดญเดฟเด•เตเด•เตเดจเตเดจเต เดธเตเดฅเดฟเดฐเดธเตเดฅเดฟเดคเดฟเดฏเดพเดฏเดฟ เดตเต†เตผเดซเดฟเดฒเต‚เดŸเต† เดชเตเดฑเดคเตเดคเดฟเดฑเด•เตเด•เดฟเดฏ เดชเตเดคเดฟเดฏ เดนเต†เตฝเด‚ เดฑเดฟเดฒเต€เดธเตเด•เดณเดฟเตฝ เดฎเดพเดคเตเดฐเด‚ เดฎเดพเดฑเตเดฑเด™เตเด™เตพ เดชเตเดฐเดฏเต‹เด—เดฟเด•เตเด•เตเดจเตเดจเดคเดฟเดจเต เดชเต‚เตผเดฃเตเดฃเดฎเดพเดฏ 3-เดตเต‡-เดฎเต†เตผเดœเต เดชเดพเดšเตเดšเตเด•เตพ เด‰เดชเดฏเต‹เด—เดฟเด•เตเด•เตเด•. เดจเดฟเดฒเดตเดฟเดฒเตเดณเตเดณ เดฑเดฟเดฒเต€เดธเตเด•เตพ 2-เดตเต‡-เดฎเต†เตผเดœเต + เดฑเดฟเดชเตเดชเดฏเตผ เดชเดพเดšเตเดšเตเด•เตพ เด‰เดชเดฏเต‹เด—เดฟเด•เตเด•เตเดจเตเดจเดคเต เดคเตเดŸเดฐเตเด‚.

เดธเดœเตเดœเต€เด•เดฐเดฟเด•เตเด•เตเดจเตเดจเดคเดฟเดฒเต‚เดŸเต† เดˆ เด“เดชเตเดชเดฑเต‡เดฑเตเดฑเดฟเด‚เด—เต เดฎเต‹เดกเต เดตเตเดฏเด•เตเดคเดฎเดพเดฏเดฟ เดชเตเดฐเดตเตผเดคเตเดคเดจเด•เตเดทเดฎเดฎเดพเด•เตเด•เดพเดจเดพเด•เตเด‚ WERF_THREE_WAY_MERGE_MODE=onlyNewReleases เด‡เดชเตเดชเต‹เตพ.

เด…เดญเดฟเดชเดพเดฏเดชเตเดชเต†เดŸเตเด•: เดˆ เดธเดตเดฟเดถเต‡เดทเดค เดตเต†เตผเดซเดฟเตฝ เดจเดฟเดฐเดตเดงเดฟ เดชเดคเดฟเดชเตเดชเตเด•เดณเดฟเตฝ เดชเตเดฐเดคเตเดฏเด•เตเดทเดชเตเดชเต†เดŸเตเดŸเต: เด†เตฝเดซ เดšเดพเดจเดฒเดฟเตฝ เด‡เดคเต เดชเดคเดฟเดชเตเดชเดฟเดจเตŠเดชเตเดชเด‚ เดคเดฏเตเดฏเดพเดฑเดพเดฏเดฟ v1.0.5-alpha.19, เด’เดชเตเดชเด‚ เดฌเต€เดฑเตเดฑ เดšเดพเดจเดฒเดฟเตฝ - เด•เต‚เดŸเต† v1.0.4-beta.20.

เดŽเดฒเตเดฒเดพ เดฑเดฟเดฒเต€เดธเตเด•เตพเด•เตเด•เตเดฎเดพเดฏเดฟ 3-เดตเต‡-เดฎเต†เตผเดœเต เดชเดพเดšเตเดšเต

เดกเดฟเดธเด‚เดฌเตผ 15, 2019 เดฎเตเดคเตฝ, เดŽเดฒเตเดฒเดพ เดฑเดฟเดฒเต€เดธเตเด•เดณเดฟเดฒเตเด‚ เดฎเดพเดฑเตเดฑเด™เตเด™เตพ เดตเดฐเตเดคเตเดคเตเดจเตเดจเดคเดฟเดจเต werf-เดจเตเดฑเต† เดฌเต€เดฑเตเดฑ, เด†เตฝเดซ เดชเดคเดฟเดชเตเดชเตเด•เตพ เดธเตเดฅเดฟเดฐเดธเตเดฅเดฟเดคเดฟเดฏเดพเดฏเดฟ เดชเต‚เตผเดฃเตเดฃเดฎเดพเดฏ 3-เดตเดดเดฟ เดฒเดฏเดจ เดชเดพเดšเตเดšเตเด•เตพ เด‰เดชเดฏเต‹เด—เดฟเด•เตเด•เดพเตป เดคเตเดŸเด™เตเด™เตเดจเตเดจเต.

เดธเดœเตเดœเต€เด•เดฐเดฟเด•เตเด•เตเดจเตเดจเดคเดฟเดฒเต‚เดŸเต† เดˆ เด“เดชเตเดชเดฑเต‡เดฑเตเดฑเดฟเด‚เด—เต เดฎเต‹เดกเต เดตเตเดฏเด•เตเดคเดฎเดพเดฏเดฟ เดชเตเดฐเดตเตผเดคเตเดคเดจเด•เตเดทเดฎเดฎเดพเด•เตเด•เดพเดจเดพเด•เตเด‚ WERF_THREE_WAY_MERGE_MODE=enabled เด‡เดชเตเดชเต‹เตพ.

เดฑเดฟเดธเต‹เดดเตเดธเต เด“เดŸเตเดŸเต‹เดธเตเด•เต‡เดฒเดฟเด‚เด—เต เด‰เดชเดฏเต‹เด—เดฟเดšเตเดšเต เดŽเดจเตเดคเตเดšเต†เดฏเตเดฏเดฃเด‚?

เด•เตเดฌเต†เตผเดจเต†เดฑเตเดฑเดธเดฟเตฝ 2 เดคเดฐเด‚ เด“เดŸเตเดŸเต‹เดธเตเด•เต†เดฏเดฟเดฒเดฟเด‚เด—เต เด‰เดฃเตเดŸเต: HPA (เดคเดฟเดฐเดถเตเดšเต€เดจเด‚), VPA (เดฒเด‚เดฌเด‚).

เดคเดฟเดฐเดถเตเดšเต€เดจ เดธเตเดตเดชเตเดฐเต‡เดฐเดฟเดคเดฎเดพเดฏเดฟ เดชเด•เตผเดชเตเดชเตเด•เดณเตเดŸเต† เดŽเดฃเตเดฃเด‚ เดคเดฟเดฐเดžเตเดžเต†เดŸเตเด•เตเด•เตเดจเตเดจเต, เดฒเด‚เดฌเดฎเดพเดฏ - เดตเดฟเดญเดตเด™เตเด™เดณเตเดŸเต† เดŽเดฃเตเดฃเด‚. เดชเด•เตผเดชเตเดชเตเด•เดณเตเดŸเต† เดŽเดฃเตเดฃเดตเตเด‚ เด‰เดฑเดตเดฟเดŸ เด†เดตเดถเตเดฏเด•เดคเด•เดณเตเด‚ เดฑเดฟเดธเต‹เดดเตโ€Œเดธเต เดฎเดพเดจเดฟเดซเต†เดธเตเดฑเตเดฑเดฟเตฝ เดตเตเดฏเด•เตเดคเดฎเดพเด•เตเด•เดฟเดฏเดฟเดŸเตเดŸเตเดฃเตเดŸเต (เดฑเดฟเดธเต‹เดดเตโ€Œเดธเต เดฎเดพเดจเดฟเดซเต†เดธเตเดฑเตเดฑเต เด•เดพเดฃเตเด•). spec.replicas เด…เดฅเดตเดพ spec.containers[].resources.limits.cpu, spec.containers[].resources.limits.memory ะธ ะดั€ัƒะณะธะต).

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

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

  • werf.io/set-replicas-only-on-creation=true
  • werf.io/set-resources-only-on-creation=true

เด…เดคเตเดคเดฐเดฎเตŠเดฐเต เดตเตเดฏเดพเด–เตเดฏเดพเดจเด‚ เดจเดฟเดฒเดตเดฟเดฒเตเดฃเตเดŸเต†เด™เตเด•เดฟเตฝ, เด“เดฐเต‹ เดตเดฟเดจเตเดฏเดพเดธเดคเตเดคเดฟเดฒเตเด‚ เด…เดจเตเดฌเดจเตเดง เดฎเต‚เดฒเตเดฏเด™เตเด™เตพ เดตเต†เตผเดซเต เดชเตเดจเดƒเดธเดœเตเดœเดฎเดพเด•เตเด•เดฟเดฒเตเดฒ, เดชเด•เตเดทเต‡ เด‰เดฑเดตเดฟเดŸเด‚ เดคเตเดŸเด•เตเด•เดคเตเดคเดฟเตฝ เดธเตƒเดทเตเดŸเดฟเด•เตเด•เตเดฎเตเดชเต‹เตพ เดฎเดพเดคเตเดฐเดฎเต‡ เด…เดต เดธเดœเตเดœเต€เด•เดฐเดฟเด•เตเด•เต‚.

เด•เต‚เดŸเตเดคเตฝ เดตเดฟเดตเดฐเด™เตเด™เตพเด•เตเด•เต, เดชเดฆเตเดงเดคเดฟ เดกเต‹เด•เตเดฏเตเดฎเต†เดจเตเดฑเต‡เดทเตป เด•เดพเดฃเตเด• HPA ะธ เดตเดฟ.เดชเดฟ.เดŽ.

3-เดตเต‡-เดฎเต†เตผเดœเต เดชเดพเดšเตเดšเต เด‰เดชเดฏเต‹เด—เดฟเด•เตเด•เตเดจเตเดจเดคเต เดจเดฟเดฐเต‹เดงเดฟเด•เตเด•เตเด•

เด’เดฐเต เดŽเตปเดตเดฏเต‹เตบเดฎเต†เดจเตเดฑเต เดตเต‡เดฐเดฟเดฏเดฌเดฟเตพ เด‰เดชเดฏเต‹เด—เดฟเดšเตเดšเต เดตเต†เตผเดซเดฟเตฝ เดชเตเดคเดฟเดฏ เดชเดพเดšเตเดšเตเด•เตพ เด‰เดชเดฏเต‹เด—เดฟเด•เตเด•เตเดจเตเดจเดคเต เด‰เดชเดฏเต‹เด•เตเดคเดพเดตเดฟเดจเต เดจเดฟเดฒเดตเดฟเตฝ เดจเดฟเดฐเต‹เดงเดฟเด•เตเด•เดพเด‚ WERF_THREE_WAY_MERGE_MODE=disabled. เดŽเดจเตเดจเดฟเดฐเตเดจเตเดจเดพเดฒเตเด‚, เด†เดฐเด‚เดญเดฟเด•เตเด•เตเดจเตเดจเต 1 เดฎเดพเตผเดšเตเดšเต 2020 เดฎเตเดคเตฝ เดˆ เดจเดฟเดฐเต‹เดงเดจเด‚ เดฌเดพเดงเด•เดฎเดพเด•เดฟเดฒเตเดฒ. เด•เต‚เดŸเดพเดคเต† 3-เดตเต‡-เดฎเต†เตผเดœเต เดชเดพเดšเตเดšเตเด•เตพ เดฎเดพเดคเตเดฐเดฎเต‡ เด‰เดชเดฏเต‹เด—เดฟเด•เตเด•เดพเดจเดพเด•เต‚.

เดตเต†เตผเดซเดฟเดฒเต† เดตเดฟเดญเดตเด™เตเด™เดณเตเดŸเต† เดฆเดคเตเดคเต†เดŸเตเด•เตเด•เตฝ

3-เดตเต‡-เดฎเต†เตผเดœเต เดชเดพเดšเตเดšเตเด•เตพ เด‰เดชเดฏเต‹เด—เดฟเดšเตเดšเต เดฎเดพเดฑเตเดฑเด™เตเด™เตพ เดชเตเดฐเดฏเต‹เด—เดฟเด•เตเด•เตเดจเตเดจ เดฐเต€เดคเดฟ เดฎเดพเดธเตเดฑเตเดฑเต‡เดดเตเดธเต เดšเต†เดฏเตเดฏเตเดจเตเดจเดคเต, เดนเต†เตฝเด‚ เดฑเดฟเดฒเต€เดธเดฟเดฒเต‡เด•เตเด•เต เด•เตเดฒเดธเตเดฑเตเดฑเดฑเดฟเตฝ เดจเดฟเดฒเดตเดฟเดฒเตเดณเตเดณ เดตเดฟเดญเดตเด™เตเด™เตพ เดธเตเดตเต€เด•เดฐเดฟเด•เตเด•เตเดจเตเดจเดคเต เดชเต‹เดฒเตเดณเตเดณ เด’เดฐเต เดธเดตเดฟเดถเต‡เดทเดค เด‰เดŸเดจเดŸเดฟ เดจเดŸเดชเตเดชเดฟเดฒเดพเด•เตเด•เดพเตป เดžเด™เตเด™เดณเต† เด…เดจเตเดตเดฆเดฟเดšเตเดšเต.

เดนเต†เตฝเด‚ 2-เดจเต เด’เดฐเต เดชเตเดฐเดถเตโ€ŒเดจเดฎเตเดฃเตเดŸเต: เด†เดฆเตเดฏเด‚ เดฎเตเดคเตฝ เดˆ เดฑเดฟเดธเต‹เดดเตโ€Œเดธเต เดชเตเดจเตผเดจเดฟเตผเดฎเตเดฎเดฟเด•เตเด•เดพเดคเต† เดจเดฟเด™เตเด™เตพเด•เตเด•เต เด‡เดคเดฟเดจเด•เด‚ เดคเดจเตเดจเต† เด•เตเดฒเดธเตเดฑเตเดฑเดฑเดฟเตฝ เดจเดฟเดฒเดตเดฟเดฒเตเดณเตเดณ เดšเดพเตผเดŸเตเดŸเต เดฎเดพเดจเดฟเดซเต†เดธเตเดฑเตเดฑเตเด•เดณเดฟเดฒเต‡เด•เตเด•เต เด’เดฐเต เด‰เดฑเดตเดฟเดŸเด‚ เดšเต‡เตผเด•เตเด•เดพเตป เด•เดดเดฟเดฏเดฟเดฒเตเดฒ (เด•เดพเดฃเตเด•. #6031, #3275). เดฑเดฟเดฒเต€เดธเดฟเดจเดพเดฏเดฟ เดจเดฟเดฒเดตเดฟเดฒเตเดณเตเดณ เดตเดฟเดญเดตเด™เตเด™เตพ เดธเตเดตเต€เด•เดฐเดฟเด•เตเด•เดพเตป เดžเด™เตเด™เตพ เดตเต†เตผเดซเดฟเดจเต† เดชเด เดฟเดชเตเดชเดฟเดšเตเดšเต. เด‡เดคเต เดšเต†เดฏเตเดฏเตเดจเตเดจเดคเดฟเดจเต, เดฑเดฃเตเดฃเดฟเด‚เด—เต เด•เตเดฒเดธเตเดฑเตเดฑเดฑเดฟเตฝ เดจเดฟเดจเตเดจเตเดณเตเดณ เด‰เดฑเดตเดฟเดŸเดคเตเดคเดฟเดจเตเดฑเต† เดจเดฟเดฒเดตเดฟเดฒเต† เดชเดคเดฟเดชเตเดชเดฟเตฝ เดจเดฟเด™เตเด™เตพ เด’เดฐเต เดตเตเดฏเดพเด–เตเดฏเดพเดจเด‚ เด‡เตปเดธเตเดฑเตเดฑเดพเตพ เดšเต†เดฏเตเดฏเต‡เดฃเตเดŸเดคเตเดฃเตเดŸเต (เด‰เดฆเดพเดนเดฐเดฃเดคเตเดคเดฟเดจเต, เด‰เดชเดฏเต‹เด—เดฟเด•เตเด•เตเดจเตเดจเดคเต kubectl edit):

"werf.io/allow-adoption-by-release": RELEASE_NAME

เด‡เดชเตเดชเต‹เตพ เดตเดฟเดญเดตเด‚ เดšเดพเตผเดŸเตเดŸเดฟเตฝ เดตเดฟเดตเดฐเดฟเด•เตเด•เต‡เดฃเตเดŸเดคเตเดฃเตเดŸเต, เด…เดŸเตเดคเตเดค เดคเดตเดฃ werf เด‰เดšเดฟเดคเดฎเดพเดฏ เดชเต‡เดฐเดฟเตฝ เด’เดฐเต เดฑเดฟเดฒเต€เดธเต เดตเดฟเดจเตเดฏเดธเดฟเด•เตเด•เตเดฎเตเดชเต‹เตพ, เดจเดฟเดฒเดตเดฟเดฒเตเดณเตเดณ เด‰เดฑเดตเดฟเดŸเด‚ เดˆ เดฑเดฟเดฒเต€เดธเดฟเดฒเต‡เด•เตเด•เต เดธเตเดตเต€เด•เดฐเดฟเด•เตเด•เตเด•เดฏเตเด‚ เด…เดคเดฟเดจเตเดฑเต† เดจเดฟเดฏเดจเตเดคเตเดฐเดฃเดคเตเดคเดฟเตฝ เดคเตเดŸเดฐเตเด•เดฏเตเด‚ เดšเต†เดฏเตเดฏเตเด‚. เดฎเดพเดคเตเดฐเดฎเดฒเตเดฒ, เดฑเดฟเดฒเต€เดธเดฟเดจเดพเดฏเดฟ เด’เดฐเต เดฑเดฟเดธเต‹เดดเตโ€Œเดธเต เดธเตเดตเต€เด•เดฐเดฟเด•เตเด•เตเดจเตเดจ เดชเตเดฐเด•เตเดฐเดฟเดฏเดฏเดฟเตฝ, เด…เดคเต‡ 3-เดตเต‡-เดฎเต†เตผเดœเต เดชเดพเดšเตเดšเตเด•เดณเตเด‚ เดธเดฎเดจเตเดตเดฏเดฟเดชเตเดชเดฟเดšเตเดš เดฑเดฟเดธเต‹เดดเตโ€Œเดธเต เดฑเต‚เดณเตเด‚ เด‰เดชเดฏเต‹เด—เดฟเดšเตเดšเต, เดฑเดฃเตเดฃเดฟเด‚เด—เต เด•เตเดฒเดธเตเดฑเตเดฑเดฑเดฟเตฝ เดจเดฟเดจเตเดจเต เดšเดพเตผเดŸเตเดŸเดฟเตฝ เดตเดฟเดตเดฐเดฟเดšเตเดšเดฟเดฐเดฟเด•เตเด•เตเดจเตเดจ เด…เดตเดธเตเดฅเดฏเดฟเดฒเต‡เด•เตเด•เต เดฑเดฟเดธเต‹เดดเตโ€Œเดธเดฟเดจเตเดฑเต† เดจเดฟเดฒเดตเดฟเดฒเต† เด…เดตเดธเตเดฅ เดตเต†เตผเดซเต เด•เตŠเดฃเตเดŸเตเดตเดฐเตเด‚.

เด…เดญเดฟเดชเดพเดฏเดชเตเดชเต†เดŸเตเด•: เด•เตเดฐเดฎเต€เด•เดฐเดฃเด‚ WERF_THREE_WAY_MERGE_MODE เดตเดฟเดญเดตเด™เตเด™เตพ เดธเตเดตเต€เด•เดฐเดฟเด•เตเด•เตเดจเตเดจเดคเดฟเดจเต† เดฌเดพเดงเดฟเด•เตเด•เดฟเดฒเตเดฒ - เดฆเดคเตเดคเต†เดŸเตเด•เตเด•เดฒเดฟเดจเตเดฑเต† เด•เดพเดฐเตเดฏเดคเตเดคเดฟเตฝ, เด’เดฐเต 3-เดตเต‡-เดฒเดฏเดจ เดชเดพเดšเตเดšเต เดŽเดชเตเดชเต‹เดดเตเด‚ เด‰เดชเดฏเต‹เด—เดฟเด•เตเด•เตเดจเตเดจเต.

เดตเดฟเดถเดฆเดพเด‚เดถเด™เตเด™เตพ - เด‡เตป เดชเตเดฐเดฎเดพเดฃเต€เด•เดฐเดฃเด‚.

เดจเดฟเด—เดฎเดจเด™เตเด™เดณเตเด‚ เดญเดพเดตเดฟ เดชเดฆเตเดงเดคเดฟเด•เดณเตเด‚

เดˆ เดฒเต‡เด–เดจเดคเตเดคเดฟเดจเต เดถเต‡เดทเด‚ 3-เดตเต‡-เดฎเต†เตผเดœเต เดชเดพเดšเตเดšเตเด•เตพ เดŽเดจเตเดคเดพเดฃเต†เดจเตเดจเตเด‚ เด…เดต เดŽเดจเตเดคเดฟเดจเดพเดฃเต เด…เดตเดฏเดฟเดฒเต‡เด•เตเด•เต เดตเดจเตเดจเดคเต†เดจเตเดจเตเด‚ เด•เต‚เดŸเตเดคเตฝ เดตเตเดฏเด•เตเดคเดฎเดพเด•เตเดฎเต†เดจเตเดจเต เดžเดพเตป เดชเตเดฐเดคเต€เด•เตเดทเดฟเด•เตเด•เตเดจเตเดจเต. เดตเต†เตผเดซเต เดชเตเดฐเต‹เดœเด•เตเดฑเตเดฑเดฟเดจเตเดฑเต† เดตเดฟเด•เดธเดจเดคเตเดคเดฟเดจเตเดฑเต† เดชเตเดฐเดพเดฏเต‹เด—เดฟเด• เดตเต€เด•เตเดทเดฃเด•เต‹เดฃเดฟเตฝ เดจเดฟเดจเตเดจเต, เดนเต†เตฝเด‚ เดชเต‹เดฒเตเดณเตเดณ เดตเดฟเดจเตเดฏเดพเดธเด‚ เดฎเต†เดšเตเดšเดชเตเดชเต†เดŸเตเดคเตเดคเตเดจเตเดจเดคเดฟเดจเตเดณเตเดณ เดฎเดฑเตเดฑเตŠเดฐเต เดšเตเดตเดŸเตเดตเดฏเตเดชเตเดชเดพเดฏเดฟเดฐเตเดจเตเดจเต เด…เดต เดจเดŸเดชเตเดชเดฟเดฒเดพเด•เตเด•เตเดจเตเดจเดคเต. เด•เต‹เตบเดซเดฟเด—เดฑเต‡เดทเตป เดธเดฟเตปเด•เตเดฐเตŠเดฃเตˆเดธเต‡เดทเดจเดฟเดฒเต† เดชเตเดฐเดถเตโ€Œเดจเด™เตเด™เดณเต†เด•เตเด•เตเดฑเดฟเดšเตเดšเต เดจเดฟเด™เตเด™เตพเด•เตเด•เต เด‡เดชเตเดชเต‹เตพ เดฎเดฑเด•เตเด•เดพเตป เด•เดดเดฟเดฏเตเด‚, เดนเต†เตฝเด‚ 2 เด‰เดชเดฏเต‹เด—เดฟเด•เตเด•เตเดฎเตเดชเต‹เตพ เดชเดฒเดชเตเดชเต‹เดดเตเด‚ เด‡เดคเต เด‰เดฏเตผเดจเตเดจเตเดตเดฐเตเดจเตเดจเต. เด…เดคเต‡ เดธเดฎเดฏเด‚, เด‡เดคเดฟเดจเด•เด‚ เดกเต—เตบเดฒเต‹เดกเต เดšเต†เดฏเตโ€Œเดค เด•เตเดฌเตผเดจเต†เดฑเตเดฑเดธเต เด‰เดฑเดตเดฟเดŸเด™เตเด™เตพ เดธเตเดตเต€เด•เดฐเดฟเด•เตเด•เตเดจเตเดจเดคเดฟเดจเตเดณเตเดณ เด’เดฐเต เดชเตเดคเดฟเดฏ เด‰เดชเดฏเต‹เด—เดชเตเดฐเดฆเดฎเดพเดฏ เดธเดตเดฟเดถเต‡เดทเดค เดนเต†เตฝเด‚ เดฑเดฟเดฒเต€เดธเดฟเดฒเต‡เด•เตเด•เต เดšเต‡เตผเดคเตเดคเต.

Go เดŸเต†เด‚เดชเตเดฒเต‡เดฑเตเดฑเตเด•เดณเตเดŸเต† เด‰เดชเดฏเต‹เด—เด‚ เดชเต‹เดฒเต†เดฏเตเดณเตเดณ เดšเดฟเดฒ เดชเตเดฐเดถเตโ€Œเดจเด™เตเด™เดณเตเด‚ เดตเต†เดฒเตเดฒเตเดตเดฟเดณเดฟเด•เดณเตเด‚ เดนเต†เตฝเด‚ เดชเต‹เดฒเตเดณเตเดณ เดตเดฟเดจเตเดฏเดพเดธเด™เตเด™เดณเดฟเตฝ เด‡เดชเตเดชเต‹เดดเตเด‚ เด‰เดฃเตเดŸเต, เดžเด™เตเด™เตพ เด…เดคเต เดคเตเดŸเตผเดจเตเดจเตเด‚ เดชเดฐเดฟเดนเดฐเดฟเด•เตเด•เตเด‚.

เดฑเดฟเดธเต‹เดดเตโ€Œเดธเต เด…เดชเตโ€Œเดกเต‡เดฑเตเดฑเต เดฐเต€เดคเดฟเด•เดณเต†เดฏเตเด‚ เดฆเดคเตเดคเต†เดŸเตเด•เตเด•เดฒเดฟเดจเต†เดฏเตเด‚ เด•เตเดฑเดฟเดšเตเดšเตเดณเตเดณ เดตเดฟเดตเดฐเด™เตเด™เดณเตเด‚ เด‡เดตเดฟเดŸเต† เด•เดพเดฃเดพเด‚ เดˆ เดกเต‹เด•เตเดฏเตเดฎเต†เดจเตเดฑเต‡เดทเตป เดชเต‡เดœเต.

เดนเต†เตฝเด‚ 3

เดชเตเดฐเดคเตเดฏเต‡เด•เด‚ เดถเตเดฐเดฆเตเดงเดฟเด•เตเด•เต‡เดฃเตเดŸเดคเดพเดฃเต เดตเดฟเดŸเตเดŸเดฏเดšเตเดšเต เด•เดดเดฟเดžเตเดž เดฆเดฟเดตเดธเด‚ เดนเต†เตฝเดฎเดฟเดจเตเดฑเต† เด’เดฐเต เดชเตเดคเดฟเดฏ เดชเตเดฐเดงเดพเดจ เดชเดคเดฟเดชเตเดชเต - v3 - เด…เดคเต 3-เดตเต‡-เดฎเต†เตผเดœเต เดชเดพเดšเตเดšเตเด•เตพ เด‰เดชเดฏเต‹เด—เดฟเด•เตเด•เตเด•เดฏเตเด‚ เดŸเดฟเดฒเตเดฒเดฑเดฟเดจเต† เด’เดดเดฟเดตเดพเด•เตเด•เตเด•เดฏเตเด‚ เดšเต†เดฏเตเดฏเตเดจเตเดจเต. เดนเต†เตฝเดฎเดฟเดจเตเดฑเต† เดชเตเดคเดฟเดฏ เดชเดคเดฟเดชเตเดชเต เด†เดตเดถเตเดฏเดฎเดพเดฃเต เด•เตเดŸเดฟเดฏเต‡เดฑเตเดฑเด‚ เดจเดฟเดฒเดตเดฟเดฒเตเดณเตเดณ เด‡เตปเดธเตเดฑเตเดฑเดฒเต‡เดทเดจเตเด•เตพ เดชเตเดคเดฟเดฏ เดฑเดฟเดฒเต€เดธเต เดธเตเดฑเตเดฑเต‹เดฑเต‡เดœเต เดซเต‹เตผเดฎเดพเดฑเตเดฑเดฟเดฒเต‡เด•เตเด•เต เดชเดฐเดฟเดตเตผเดคเตเดคเดจเด‚ เดšเต†เดฏเตเดฏเตเดจเตเดจเดคเดฟเดจเดพเดฏเดฟ.

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

เดŽเดจเตเดจเดฟเดฐเตเดจเตเดจเดพเดฒเตเด‚, เดนเต†เตฝเด‚ 3 เด•เต‹เดกเตเดฌเต‡เดธเดฟเดฒเต‡เด•เตเด•เต เดตเต†เตผเดซเต เดฎเดพเดฑเตเดจเตเดจเดคเต เด…เดจเดฟเดตเดพเดฐเตเดฏเดฎเดพเดฃเต, เด…เดคเต เดธเดฎเต€เดชเดญเดพเดตเดฟเดฏเดฟเตฝ เดธเด‚เดญเดตเดฟเด•เตเด•เตเด‚. เด‡เดคเต เดตเต†เตผเดซเต 1.1 เด…เดฒเตเดฒเต†เด™เตเด•เดฟเตฝ เดตเต†เตผเดซเต 1.2 เด†เดฏเดฟเดฐเดฟเด•เตเด•เตเด‚ (เด‡เดชเตเดชเต‹เตพ, เดตเต†เตผเดซเดฟเดจเตเดฑเต† เดชเตเดฐเดงเดพเดจ เดชเดคเดฟเดชเตเดชเต 1.0 เด†เดฃเต; เดตเต†เตผเดซเต เดชเดคเดฟเดชเตเดชเดฟเด‚เด—เต เด‰เดชเด•เดฐเดฃเดคเตเดคเต†เด•เตเด•เตเดฑเดฟเดšเตเดšเตเดณเตเดณ เด•เต‚เดŸเตเดคเตฝ เดตเดฟเดตเดฐเด™เตเด™เตพเด•เตเด•เต, เด•เดพเดฃเตเด• เด‡เดตเดฟเดŸเต†). เดˆ เดธเดฎเดฏเดคเตเดคเต, เดนเต†เตฝเด‚ 3 เดจเต เดธเตเดฅเดฟเดฐเดค เด•เตˆเดตเดฐเดฟเด•เตเด•เดพเตป เดธเดฎเดฏเดฎเตเดฃเตเดŸเดพเด•เตเด‚.

เดชเดฟ.เดŽเดธเต

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

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

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