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; เช…เชฅเชตเชพ เชคเซ‹ เช—เซ€เชŸเซ‹เชชเซเชธ เชตเชงเซ เช†เชงเซเชจเชฟเช• เชตเชฟเช•เชฒเซเชช เชคเชฐเซ€เช•เซ‡, เช•เซเชฌเชฐเชจเซ‡เชŸเซ€เชธ เช‡เช•เซ‹เชธเชฟเชธเซเชŸเชฎเชฎเชพเช‚ เชฒเซ‹เช•เชชเซเชฐเชฟเชฏเชคเชพ เชฎเซ‡เชณเชตเซ€ เชฐเชนเซ€ เช›เซ‡). เชคเซ‡เชฅเซ€, เช† เช†เชฆเซ‡เชถเซ‹เชจเซ‡ kubectl เชฎเชพเช‚ เชตเชงเซ เชตเชฟเช•เชพเชธ เชชเซเชฐเชพเชชเซเชค เชฅเชฏเซ‹ เชจเชฅเซ€.

เช“เชชเชฐเซ‡เชถเชจเซเชธ เชฌเชจเชพเชตเซ‹, เชฎเซ‡เชณเชตเซ‹, เชฌเชฆเชฒเซ‹ เช…เชจเซ‡ เช•เชพเชขเซ€ เชจเชพเช–เซ‹

เชชเซเชฐเชพเชฅเชฎเชฟเช• เชธเชพเชฅเซ‡ เชฌเชจเชพเชตเชŸ เชคเซ‡ เชธเชฐเชณ เช›เซ‡: เช‘เชชเชฐเซ‡เชถเชจเชฎเชพเช‚ เชฎเซ‡เชจเชฟเชซเซ‡เชธเซเชŸ เชฎเซ‹เช•เชฒเซ‹ create kube api เช…เชจเซ‡ เชธเช‚เชธเชพเชงเชจ เชฌเชจเชพเชตเชตเชพเชฎเชพเช‚ เช†เชตเซเชฏเซเช‚ เช›เซ‡. เชฎเซ‡เชจเชฟเชซเซ‡เชธเซเชŸเชจเซเช‚ YAML เชชเซเชฐเชคเชฟเชจเชฟเชงเชฟเชคเซเชต Git เชฎเชพเช‚ เชธเช‚เช—เซเชฐเชนเชฟเชค เช•เชฐเซ€ เชถเช•เชพเชฏ เช›เซ‡ เช…เชจเซ‡ เช†เชฆเซ‡เชถเชจเซ‹ เช‰เชชเชฏเซ‹เช— เช•เชฐเซ€เชจเซ‡ เชฌเชจเชพเชตเซ€ เชถเช•เชพเชฏ เช›เซ‡ kubectl create -f manifest.yaml.

ะก เชฆเซ‚เชฐ เช•เชฐเซ€ เชฐเชนเซเชฏเชพ เช›เซ€เช เชชเชฃ เชธเชฐเชณ: เชคเซ‡ เชœ เช…เชตเซ‡เชœเซ€ manifest.yaml เช—เชฟเชŸเชฅเซ€ เชŸเซ€เชฎ เชธเซเชงเซ€ 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 เช…เชจเซ‡ เช†เชถเชพเชตเชพเชฆเซ€ เชฒเซ‹เช•เซ€เช‚เช—เชจเชพ เช•เซ‡เชธเชจเซ‡ เช†เชชเชฎเซ‡เชณเซ‡ เชนเซ‡เชจเซเชกเชฒ เช•เชฐเซ‹ - เชตเชพเชฐเช‚เชตเชพเชฐ เช…เชชเชกเซ‡เชŸ เช•เชฐเชตเชพเชจเซ‹ เชชเซเชฐเชฏเชพเชธ เช•เชฐเซ‹.

เชœเซ‹ เช•เซ‡, เชœเซเชฏเชพเชฐเซ‡ เช•เซเชฌเซ‡-เชเชชเซ€เชธเชฐเซเชตเชฐ เชธเช‚เชธเชพเชงเชจเซ‹เชจเซ‡ เช…เชชเชกเซ‡เชŸ เช•เชฐเชตเชพเชจเซ€ เชฌเซ€เชœเซ€ เชฐเซ€เชค เชชเซเชฐเชฆเชพเชจ เช•เชฐเซ‡ เช›เซ‡ เชคเซเชฏเชพเชฐเซ‡ เชตเซเชนเซ€เชฒเชจเซ‡ เชถเชพ เชฎเชพเชŸเซ‡ เชซเชฐเซ€เชฅเซ€ เชถเซ‹เชงเซ‹: เช“เชชเชฐเซ‡เชถเชจ patch, เชœเซ‡ เชตเชฐเซเชฃเชตเซ‡เชฒ เช•เซ‡เชŸเชฒเซ€เช• เชธเชฎเชธเซเชฏเชพเช“เชฎเชพเช‚เชฅเซ€ เชตเชชเชฐเชพเชถเช•เชฐเซเชคเชพเชจเซ‡ เชฐเชพเชนเชค เช†เชชเซ‡ เช›เซ‡?

เชชเซ‡เชš

เชนเชตเซ‡ เช†เชชเชฃเซ‡ เชชเซ‡เชšเซ‹ เชชเชฐ เชœเชˆเช เช›เซ€เช.

เช•เซเชฌเชฐเชจเซ‡เชŸเซเชธเชฎเชพเช‚ เช…เชธเซเชคเชฟเชคเซเชตเชฎเชพเช‚ เช›เซ‡ เชคเซ‡ เช‘เชฌเซเชœเซ‡เช•เซเชŸเชฎเชพเช‚ เชซเซ‡เชฐเชซเชพเชฐเซ‹ เชฒเชพเช—เซ เช•เชฐเชตเชพเชจเซ€ เชชเซเชฐเชพเชฅเชฎเชฟเช• เชฐเซ€เชค เชชเซ‡เชšเซ‹ เช›เซ‡. เช“เชชเชฐเซ‡เชถเชจ patch เชคเซ‡ เช†เชจเซ€ เชœเซ‡เชฎ เช•เชพเชฎ เช•เชฐเซ‡ เช›เซ‡:

  • kube-apiserver เชตเชชเชฐเชพเชถเช•เชฐเซเชคเชพเชจเซ‡ JSON เชซเซ‹เชฐเซเชฎเชฎเชพเช‚ เชชเซ‡เชš เชฎเซ‹เช•เชฒเชตเชพเชจเซ€ เช…เชจเซ‡ เช‘เชฌเซเชœเซ‡เช•เซเชŸเชจเซ‹ เช‰เชฒเซเชฒเซ‡เช– เช•เชฐเชตเชพเชจเซ€ เชœเชฐเซ‚เชฐ เช›เซ‡,
  • เช…เชจเซ‡ apiserver เชชเซ‹เชคเซ‡ เช‘เชฌเซเชœเซ‡เช•เซเชŸเชจเซ€ เชตเชฐเซเชคเชฎเชพเชจ เชธเซเชฅเชฟเชคเชฟ เชธเชพเชฅเซ‡ เช•เชพเชฎ เช•เชฐเชถเซ‡ เช…เชจเซ‡ เชคเซ‡เชจเซ‡ เชœเชฐเซ‚เชฐเซ€ เชธเซเชตเชฐเซ‚เชชเชฎเชพเช‚ เชฒเชพเชตเชถเซ‡.

เช† เช•เชฟเชธเซเชธเชพเชฎเชพเช‚ เช†เชถเชพเชตเชพเชฆเซ€ เชฒเซ‹เช•เซ€เช‚เช— เชœเชฐเซ‚เชฐเซ€ เชจเชฅเซ€. เช† เช‘เชชเชฐเซ‡เชถเชจ เชฐเชฟเชชเซเชฒเซ‡เชธ เช•เชฐเชคเชพเช‚ เชตเชงเซ เช˜เซ‹เชทเชฃเชพเชคเซเชฎเช• เช›เซ‡, เชœเซ‹ เช•เซ‡ เชถเชฐเซ‚เช†เชคเชฎเชพเช‚ เชคเซ‡ เชฌเซ€เชœเซ€ เชฐเซ€เชคเซ‡ เชฒเชพเช—เซ‡ เช›เซ‡.

เช† เชฐเซ€เชคเซ‡:

  • เช“เชชเชฐเซ‡เชถเชจเชจเซ‹ เช‰เชชเชฏเซ‹เช— เช•เชฐเซ€เชจเซ‡ create เช…เชฎเซ‡ Git เชจเชพ เชฎเซ‡เชจเชฟเชซเซ‡เชธเซเชŸ เช…เชจเซเชธเชพเชฐ เช‘เชฌเซเชœเซ‡เช•เซเชŸ เชฌเชจเชพเชตเซ€เช เช›เซ€เช,
  • เชจเซ€ เชฎเชฆเชฆ เชธเชพเชฅเซ‡ delete - เชœเซ‹ เช‘เชฌเซเชœเซ‡เช•เซเชŸเชจเซ€ เชœเชฐเซ‚เชฐ เชจ เชนเซ‹เชฏ เชคเซ‹ เช•เชพเชขเซ€ เชจเชพเช–เซ‹,
  • เชจเซ€ เชฎเชฆเชฆ เชธเชพเชฅเซ‡ patch - เช…เชฎเซ‡ เช‘เชฌเซเชœเซ‡เช•เซเชŸ เชฌเชฆเชฒเซ€เช เช›เซ€เช, เชคเซ‡เชจเซ‡ เช—เชฟเชŸเชฎเชพเช‚ เชตเชฐเซเชฃเชตเซ‡เชฒ เชซเซ‹เชฐเซเชฎเชฎเชพเช‚ เชฒเชพเชตเซ€เช เช›เซ€เช.

เชœเซ‹ เช•เซ‡, เช† เช•เชฐเชตเชพ เชฎเชพเชŸเซ‡, เชคเชฎเชพเชฐเซ‡ เชฌเชจเชพเชตเชตเชพเชจเซ€ เชœเชฐเซ‚เชฐ เช›เซ‡ เชฏเซ‹เช—เซเชฏ เชชเซ‡เชš!

เชนเซ‡เชฒเซเชฎ 2: 2-เชตเซ‡-เชฎเชฐเซเชœเชฎเชพเช‚ เชชเซ‡เชšเซ‹ เช•เซ‡เชตเซ€ เชฐเซ€เชคเซ‡ เช•เชพเชฐเซเชฏ เช•เชฐเซ‡ เช›เซ‡

เชœเซเชฏเชพเชฐเซ‡ เชคเชฎเซ‡ เชชเซเชฐเชฅเชฎ เชฐเซ€เชฒเซ€เช เช‡เชจเซเชธเซเชŸเซ‹เชฒ เช•เชฐเซ‹ เช›เซ‹, เชคเซเชฏเชพเชฐเซ‡ เชนเซ‡เชฒเซเชฎ เช“เชชเชฐเซ‡เชถเชจ เช•เชฐเซ‡ เช›เซ‡ create เชšเชพเชฐเซเชŸ เชธเช‚เชธเชพเชงเชจเซ‹ เชฎเชพเชŸเซ‡.

เชฆเชฐเซ‡เช• เชธเช‚เชธเชพเชงเชจ เชฎเชพเชŸเซ‡ เชนเซ‡เชฒเซเชฎ เชฐเชฟเชฒเซ€เช เช…เชชเชกเซ‡เชŸ เช•เชฐเชคเซ€ เชตเช–เชคเซ‡:

  • เชชเชพเช›เชฒเชพ เชšเชพเชฐเซเชŸเชฎเชพเช‚เชฅเซ€ เชธเช‚เชธเชพเชงเชจ เชธเช‚เชธเซเช•เชฐเชฃ เช…เชจเซ‡ เชตเชฐเซเชคเชฎเชพเชจ เชšเชพเชฐเซเชŸ เชธเช‚เชธเซเช•เชฐเชฃ เชตเชšเซเชšเซ‡เชจเชพ เชชเซ‡เชšเชจเซ‡ เชงเซเชฏเชพเชจเชฎเชพเช‚ เชฒเซ‡ เช›เซ‡,
  • เช† เชชเซ‡เชš เชฒเชพเช—เซ เช•เชฐเซ‡ เช›เซ‡.

เช…เชฎเซ‡ เช† เชชเซ‡เชšเชจเซ‡ เช•เซ‰เชฒ เช•เชฐเซ€เชถเซเช‚ 2-เชตเซ‡ เชฎเชฐเซเชœ เชชเซ‡เชš, เช•เชพเชฐเชฃ เช•เซ‡ เชคเซ‡เชจเซ€ เชฐเชšเชจเชพเชฎเชพเช‚ 2 เชฎเซ‡เชจเชฟเชซเซ‡เชธเซเชŸเซ‹ เชธเชพเชฎเซ‡เชฒ เช›เซ‡:

  • เช…เช—เชพเช‰เชจเชพ เชชเซเชฐเช•เชพเชถเชจเชฎเชพเช‚เชฅเซ€ เชธเช‚เชธเชพเชงเชจ เชฎเซ‡เชจเชฟเชซเซ‡เชธเซเชŸ,
  • เชตเชฐเซเชคเชฎเชพเชจ เชธเช‚เชธเชพเชงเชจเชฎเชพเช‚เชฅเซ€ เชธเช‚เชธเชพเชงเชจ เชฎเซ‡เชจเชฟเชซเซ‡เชธเซเชŸ.

เช“เชชเชฐเซ‡เชถเชจ เชฆเซ‚เชฐ เช•เชฐเชคเซ€ เชตเช–เชคเซ‡ delete in 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 เชจเชพ เชฎเซ‡เชจเชฟเชซเซ‡เชธเซเชŸเชฎเชพเช‚ เชธเซเชชเชทเซเชŸเชชเชฃเซ‡ เช‰เชฒเซเชฒเซ‡เช–เชฟเชค เช›เซ‡ (เช…เชฅเชตเชพ เช…เช—เชพเช‰เชจเชพ เชธเช‚เชธเซเช•เชฐเชฃเชฎเชพเช‚ เช‰เชฒเซเชฒเซ‡เช–เชฟเชค เชนเชคเชพ เช…เชจเซ‡ เชนเชตเซ‡ เช•เชพเชขเซ€ เชจเชพเช–เชตเชพเชฎเชพเช‚ เช†เชตเซเชฏเชพ เช›เซ‡).

3-เชตเซ‡ เชฎเชฐเซเชœ เชชเซ‡เชš

เชฎเซเช–เซเชฏ เชตเชฟเชšเชพเชฐ 3-เชตเซ‡ เชฎเชฐเซเชœ เชชเซ‡เชš: เช…เชฎเซ‡ เชšเชพเชฒเซ€ เชฐเชนเซ‡เชฒเชพ เช•เซเชฒเชธเซเชŸเชฐเชฎเชพเช‚เชฅเซ€ เชฎเซ‡เชจเชฟเชซเซ‡เชธเซเชŸเชจเชพ เชตเชฐเซเชคเชฎเชพเชจ เชธเช‚เชธเซเช•เชฐเชฃเชจเซ‡ เชงเซเชฏเชพเชจเชฎเชพเช‚ เชฒเชˆเชจเซ‡, Git เชคเชฐเชซเชฅเซ€ เชฎเซ‡เชจเชฟเชซเซ‡เชธเซเชŸเชจเชพ เช›เซ‡เชฒเซเชฒเชพ เชฒเชพเช—เซ เช•เชฐเซ‡เชฒ เชธเช‚เชธเซเช•เชฐเชฃ เช…เชจเซ‡ Gitเชฎเชพเช‚เชฅเซ€ เชฎเซ‡เชจเชฟเชซเซ‡เชธเซเชŸเชจเชพ เชฒเช•เซเชทเซเชฏ เชธเช‚เชธเซเช•เชฐเชฃ เชตเชšเซเชšเซ‡ เชเช• เชชเซ‡เชš เชœเชจเชฐเซ‡เชŸ เช•เชฐเซ€เช เช›เซ€เช. เชชเชฐเชฟเชฃเชพเชฎเซ€ เชชเซ‡เชš เชธเชฟเช‚เช•เซเชฐเชจเชพเช‡เชเซเชก เชธเช‚เชธเชพเชงเชจ เชจเชฟเชฏเชฎเชจเซเช‚ เชชเชพเชฒเชจ เช•เชฐเชตเซเช‚ เช†เชตเชถเซเชฏเช• เช›เซ‡:

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

เชคเซ‡ เช† เชธเชฟเชฆเซเชงเชพเช‚เชค เชชเชฐ เช›เซ‡ เช•เซ‡ เชคเซ‡ เชชเซ‡เชšเซ‹ เชชเซ‡เชฆเชพ เช•เชฐเซ‡ เช›เซ‡ kubectl apply:

  • เชฎเซ‡เชจเชฟเชซเซ‡เชธเซเชŸเชจเซเช‚ เช›เซ‡เชฒเซเชฒเซเช‚ เชฒเชพเช—เซ เชตเชฐเซเชเชจ เช‘เชฌเซเชœเซ‡เช•เซเชŸเชจเซ€ เชœ เชŸเซ€เช•เชพเชฎเชพเช‚ เชธเช‚เช—เซเชฐเชนเชฟเชค เช›เซ‡,
  • เชฒเช•เซเชทเซเชฏ - เช‰เชฒเซเชฒเซ‡เช–เชฟเชค YAML เชซเชพเช‡เชฒเชฎเชพเช‚เชฅเซ€ เชฒเซ‡เชตเชพเชฎเชพเช‚ เช†เชตเซ‡ เช›เซ‡,
  • เชตเชฐเซเชคเชฎเชพเชจ เชเช• เชšเชพเชฒเซ€ เชฐเชนเซ‡เชฒ เช•เซเชฒเชธเซเชŸเชฐเชฎเชพเช‚เชฅเซ€ เช›เซ‡.

เชนเชตเซ‡ เชœเซเชฏเชพเชฐเซ‡ เช…เชฎเซ‡ เชธเชฟเชฆเซเชงเชพเช‚เชคเชจเซ‡ เช‰เช•เซ‡เชฒเซ€ เชฒเซ€เชงเซ‹ เช›เซ‡, เชคเซ‡ เชคเชฎเชจเซ‡ เช•เชนเซ‡เชตเชพเชจเซ‹ เชธเชฎเชฏ เช›เซ‡ เช•เซ‡ เช…เชฎเซ‡ เชตเชฐเซเชซเชฎเชพเช‚ เชถเซเช‚ เช•เชฐเซเชฏเซเช‚.

werf เชฎเชพเช‚ เชซเซ‡เชฐเชซเชพเชฐเซ‹ เชฒเชพเช—เซ เช•เชฐเซ€ เชฐเชนเซเชฏเชพ เช›เซ€เช

เช…เช—เชพเช‰, เชนเซ‡เชฒเซเชฎ 2 เชจเซ€ เชœเซ‡เชฎ werf, 2-เชตเซ‡-เชฎเชฐเซเชœ เชชเซ‡เชšเชจเซ‹ เช‰เชชเชฏเซ‹เช— เช•เชฐเชคเซเช‚ เชนเชคเซเช‚.

เชธเชฎเชพเชฐเช•เชพเชฎ เชชเซ‡เชš

เชจเชตเชพ เชชเซเชฐเช•เชพเชฐเชจเชพ เชชเซ‡เชšเซ‹ เชชเชฐ เชธเซเชตเชฟเชš เช•เชฐเชตเชพ เชฎเชพเชŸเซ‡ - 3-เชตเซ‡-เชฎเชฐเซเชœ - เชชเซเชฐเชฅเชฎ เชชเช—เชฒเซเช‚ เช…เชฎเซ‡ เช•เชนเซ‡เชตเชพเชคเชพ เชธเชฎเชพเชฐเช•เชพเชฎ เชชเซ‡เชšเซ‹.

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

เชœเซ‹ เชกเชฟเชธเชฟเช‚เช•เซเชฐเซ‹เชจเชพเช‡เชเซ‡เชถเชจ เชฅเชพเชฏ เช›เซ‡, เชกเชฟเชชเซเชฒเซ‹เชฏเชฎเซ‡เชจเซเชŸเชจเชพ เช…เช‚เชคเซ‡ เชตเชชเชฐเชพเชถเช•เชฐเซเชคเชพเชจเซ‡ เช…เชจเซเชฐเซ‚เชช เชธเช‚เชฆเซ‡เชถ เช…เชจเซ‡ เชชเซ‡เชš เชธเชพเชฅเซ‡ เชšเซ‡เชคเชตเชฃเซ€ เชชเซเชฐเชพเชชเซเชค เชฅเชพเชฏ เช›เซ‡ เชœเซ‡ เชธเช‚เชธเชพเชงเชจเชจเซ‡ เชธเชฟเช‚เช•เซเชฐเชจเชพเช‡เชเซเชก เชธเซเชตเชฐเซ‚เชชเชฎเชพเช‚ เชฒเชพเชตเชตเชพ เชฎเชพเชŸเซ‡ เชฒเชพเช—เซ เช•เชฐเชตเซเช‚ เช†เชตเชถเซเชฏเช• เช›เซ‡. เช† เชชเซ‡เชš เช–เชพเชธ เชŸเซ€เช•เชพเชฎเชพเช‚ เชชเชฃ เชจเซ‹เช‚เชงเชพเชฏเซ‡เชฒ เช›เซ‡ werf.io/repair-patch. เชเชตเซเช‚ เชฎเชพเชจเชตเชพเชฎเชพเช‚ เช†เชตเซ‡ เช›เซ‡ เช•เซ‡ เชตเชชเชฐเชพเชถเช•เชฐเซเชคเชพเชจเชพ เชนเชพเชฅ ัะฐะผ เช† เชชเซ‡เชš เชฒเชพเช—เซ เช•เชฐเชถเซ‡: werf เชคเซ‡เชจเซ‡ เชฌเชฟเชฒเช•เซเชฒ เชฒเชพเช—เซ เช•เชฐเชถเซ‡ เชจเชนเซ€เช‚.

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

เชซเช•เซเชค เชจเชตเชพ เชชเซเชฐเช•เชพเชถเชจเซ‹ เชฎเชพเชŸเซ‡ 3-เชตเซ‡-เชฎเชฐเซเชœ เชชเซ‡เชš

1 เชกเชฟเชธเซ‡เชฎเซเชฌเชฐ, 2019 เชฅเซ€, werf เชจเชพ เชฌเซ€เชŸเชพ เช…เชจเซ‡ เช†เชฒเซเชซเชพ เชตเชฐเซเชเชจ เชถเชฐเซ‚ เชฅเชพเชฏ เช›เซ‡ เชฎเซ‚เชณเชญเซ‚เชค เชซเช•เซเชค werf เชฆเซเชตเชพเชฐเชพ เชฌเชนเชพเชฐ เชชเชพเชกเชตเชพเชฎเชพเช‚ เช†เชตเซ‡เชฒ เชจเชตเชพ เชนเซ‡เชฒเซเชฎ เชฐเซ€เชฒเซ€เชเชฎเชพเช‚ เชซเซ‡เชฐเชซเชพเชฐเซ‹ เชฒเชพเช—เซ เช•เชฐเชตเชพ เชฎเชพเชŸเซ‡ เชธเช‚เชชเซ‚เชฐเซเชฃ 3-เชตเซ‡-เชฎเชฐเซเชœ เชชเซ‡เชšเชจเซ‹ เช‰เชชเชฏเซ‹เช— เช•เชฐเซ‹. เชนเชพเชฒเชจเชพ เชชเซเชฐเช•เชพเชถเชจเซ‹ 2-เชตเซ‡-เชฎเชฐเซเชœ + เชฐเชฟเชชเซ‡เชฐ เชชเซ‡เชš เช…เชญเชฟเช—เชฎเชจเซ‹ เช‰เชชเชฏเซ‹เช— เช•เชฐเชตเชพเชจเซเช‚ เชšเชพเชฒเซ เชฐเชพเช–เชถเซ‡.

เช† เช“เชชเชฐเซ‡เชŸเชฟเช‚เช— เชฎเซ‹เชกเชจเซ‡ เชธเซ‡เชŸเชฟเช‚เช— เชฆเซเชตเชพเชฐเชพ เชธเซเชชเชทเซเชŸ เชฐเซ€เชคเซ‡ เชธเช•เซเชทเชฎ เช•เชฐเซ€ เชถเช•เชพเชฏ เช›เซ‡ WERF_THREE_WAY_MERGE_MODE=onlyNewReleases เชนเชตเซ‡

เชจเซ‹เช‚เชงเชฃเซ€: เช† เชซเซ€เชšเชฐ เช…เชจเซ‡เช• เชฐเซ€เชฒเซ€เชเชฎเชพเช‚ เชตเชฐเซเชซเชฎเชพเช‚ เชฆเซ‡เช–เชพเชฏเซเช‚: เช†เชฒเซเชซเชพ เชšเซ‡เชจเชฒเชฎเชพเช‚ เชคเซ‡ เชตเชฐเซเชเชจ เชธเชพเชฅเซ‡ เชคเซˆเชฏเชพเชฐ เชฅเชˆ เช—เชฏเซเช‚ v1.0.5-เช†เชฒเซเชซเชพ.19, เช…เชจเซ‡ เชฌเซ€เชŸเชพ เชšเซ‡เชจเชฒเชฎเชพเช‚ - เชธเชพเชฅเซ‡ v1.0.4-เชฌเซ€เชŸเชพ.20.

เชคเชฎเชพเชฎ เชชเซเชฐเช•เชพเชถเชจเซ‹ เชฎเชพเชŸเซ‡ 3-เชตเซ‡-เชฎเชฐเซเชœ เชชเซ‡เชš

15 เชกเชฟเชธเซ‡เชฎเซเชฌเชฐ, 2019 เชฅเซ€, werf เชจเชพ เชฌเซ€เชŸเชพ เช…เชจเซ‡ เช†เชฒเซเชซเชพ เชตเชฐเซเชเชจ เชคเชฎเชพเชฎ เชฐเซ€เชฒเซ€เชเชฎเชพเช‚ เชซเซ‡เชฐเชซเชพเชฐเซ‹ เชฒเชพเช—เซ เช•เชฐเชตเชพ เชฎเชพเชŸเซ‡ เชฎเซ‚เชณเชญเซ‚เชค เชฐเซ€เชคเซ‡ เชธเช‚เชชเซ‚เชฐเซเชฃ 3-เชตเซ‡-เชฎเชฐเซเชœ เชชเซ‡เชšเชจเซ‹ เช‰เชชเชฏเซ‹เช— เช•เชฐเชตเชพเชจเซเช‚ เชถเชฐเซ‚ เช•เชฐเซ‡ เช›เซ‡.

เช† เช“เชชเชฐเซ‡เชŸเชฟเช‚เช— เชฎเซ‹เชกเชจเซ‡ เชธเซ‡เชŸเชฟเช‚เช— เชฆเซเชตเชพเชฐเชพ เชธเซเชชเชทเซเชŸ เชฐเซ€เชคเซ‡ เชธเช•เซเชทเชฎ เช•เชฐเซ€ เชถเช•เชพเชฏ เช›เซ‡ WERF_THREE_WAY_MERGE_MODE=enabled เชนเชตเซ‡

เชธเช‚เชธเชพเชงเชจ เช“เชŸเซ‹เชธเซเช•เซ‡เชฒเชฟเช‚เช— เชธเชพเชฅเซ‡ เชถเซเช‚ เช•เชฐเชตเซเช‚?

เช•เซเชฌเชฐเชจเซ‡เชŸเซเชธเชฎเชพเช‚ 2 เชชเซเชฐเช•เชพเชฐเชจเชพ เช“เชŸเซ‹เชธเซเช•เซ‡เชฒเชฟเช‚เช— เช›เซ‡: เชเชšเชชเซ€เช (เชนเซ‹เชฐเซ€เชเซ‹เชจเซเชŸเชฒ) เช…เชจเซ‡ เชตเซ€เชชเซ€เช (เชตเชฐเซเชŸเชฟเช•เชฒ).

เช†เชกเซเช‚ เช†เชชเซ‹เช†เชช เชชเซเชฐเชคเชฟเช•เซƒเชคเชฟเช“เชจเซ€ เชธเช‚เช–เซเชฏเชพ เชชเชธเช‚เชฆ เช•เชฐเซ‡ เช›เซ‡, เชŠเชญเซ€ - เชธเช‚เชธเชพเชงเชจเซ‹เชจเซ€ เชธเช‚เช–เซเชฏเชพ. เชชเซเชฐเชคเชฟเช•เซƒเชคเชฟเช“เชจเซ€ เชธเช‚เช–เซเชฏเชพ เช…เชจเซ‡ เชธเช‚เชธเชพเชงเชจ เช†เชตเชถเซเชฏเช•เชคเชพเช“ เชฌเช‚เชจเซ‡ เชธเช‚เชธเชพเชงเชจ เชฎเซ‡เชจเชฟเชซเซ‡เชธเซเชŸเชฎเชพเช‚ เช‰เชฒเซเชฒเซ‡เช–เชฟเชค เช›เซ‡ (เชธเช‚เชธเชพเชงเชจ เชฎเซ‡เชจเชฟเชซเซ‡เชธเซเชŸ เชœเซเช“). spec.replicas เช…เชฅเชตเชพ spec.containers[].resources.limits.cpu, spec.containers[].resources.limits.memory ะธ ะดั€ัƒะณะธะต).

เชธเชฎเชธเซเชฏเชพ: เชœเซ‹ เชตเชชเชฐเชพเชถเช•เชฐเซเชคเชพ เชšเชพเชฐเซเชŸเชฎเชพเช‚ เช•เซ‹เชˆ เชธเช‚เชธเชพเชงเชจเชจเซ‡ เช—เซ‹เช เชตเซ‡ เช›เซ‡ เชœเซ‡เชฅเซ€ เชคเซ‡ เชธเช‚เชธเชพเชงเชจ เชฎเชพเชŸเซ‡ เชšเซ‹เช•เซเช•เชธ เชฎเซ‚เชฒเซเชฏเซ‹เชจเซ‹ เช‰เชฒเซเชฒเซ‡เช– เช•เชฐเซ‡ เช…เชฅเชตเชพ เช† เชธเช‚เชธเชพเชงเชจ เชฎเชพเชŸเซ‡ เชชเซเชฐเชคเชฟเช•เซƒเชคเชฟเช“ เช…เชจเซ‡ เช‘เชŸเซ‹เชธเซเช•เซ‡เชฒเชฐเซเชธ เชธเช•เซเชทเชฎ เชนเซ‹เชฏ, เชคเซ‹ เชชเช›เซ€ เชฆเชฐเซ‡เช• เชœเชฎเชพเชตเชŸ เชธเชพเชฅเซ‡ werf เช† เชฎเซ‚เชฒเซเชฏเซ‹เชจเซ‡ เชšเชพเชฐเซเชŸ เชฎเซ‡เชจเชฟเชซเซ‡เชธเซเชŸเชฎเชพเช‚ เชฒเช–เซ‡เชฒเชพ เชชเชฐ เชซเชฐเซ€เชฅเซ€ เชธเซ‡เชŸ เช•เชฐเชถเซ‡. .

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

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

เชœเซ‹ เช†เชตเซ€ เชŸเซ€เช•เชพ เชนเชพเชœเชฐ เชนเซ‹เชฏ, เชคเซ‹ werf เชฆเชฐเซ‡เช• เชœเชฎเชพเชตเชŸ เชชเชฐ เช…เชจเซเชฐเซ‚เชช เชฎเซ‚เชฒเซเชฏเซ‹เชจเซ‡ เชซเชฐเซ€เชฅเซ€ เชธเซ‡เชŸ เช•เชฐเชถเซ‡ เชจเชนเซ€เช‚, เชชเชฐเช‚เชคเซ เชœเซเชฏเชพเชฐเซ‡ เชธเช‚เชธเชพเชงเชจ เชถเชฐเซ‚เช†เชคเชฎเชพเช‚ เชฌเชจเชพเชตเชตเชพเชฎเชพเช‚ เช†เชตเซ‡ เชคเซเชฏเชพเชฐเซ‡ เชœ เชคเซ‡เชจเซ‡ เชธเซ‡เชŸ เช•เชฐเชถเซ‡.

เชตเชงเซ เชตเชฟเช—เชคเซ‹ เชฎเชพเชŸเซ‡, เชฎเชพเชŸเซ‡ เชชเซเชฐเซ‹เชœเซ‡เช•เซเชŸ เชฆเชธเซเชคเชพเชตเซ‡เชœเซ€เช•เชฐเชฃ เชœเซเช“ เชเชšเชชเซ€เช ะธ VPA.

3-เชตเซ‡-เชฎเชฐเซเชœ เชชเซ‡เชšเชจเซ‹ เช‰เชชเชฏเซ‹เช— เชชเซเชฐเชคเชฟเชฌเช‚เชงเชฟเชค เช•เชฐเซ‹

เชตเชชเชฐเชพเชถเช•เชฐเซเชคเชพ เชนเชพเชฒเชฎเชพเช‚ เชชเชฐเซเชฏเชพเชตเชฐเชฃ เชตเซ‡เชฐเซ€เชเชฌเชฒเชจเซ‹ เช‰เชชเชฏเซ‹เช— เช•เชฐเซ€เชจเซ‡ werf เชฎเชพเช‚ เชจเชตเชพ เชชเซ‡เชšเซ‹เชจเชพ เช‰เชชเชฏเซ‹เช—เชจเซ‡ เชชเซเชฐเชคเชฟเชฌเช‚เชงเชฟเชค เช•เชฐเซ€ เชถเช•เซ‡ เช›เซ‡ WERF_THREE_WAY_MERGE_MODE=disabled. เชœเซ‹ เช•เซ‡, เชถเชฐเซ‚ 1 เชฎเชพเชฐเซเชš, 2020 เชฅเซ€, เช† เชชเซเชฐเชคเชฟเชฌเช‚เชง เชฒเชพเช—เซ เชฅเชถเซ‡ เชจเชนเซ€เช‚. เช…เชจเซ‡ เชฎเชพเชคเซเชฐ 3-เชตเซ‡-เชฎเชฐเซเชœ เชชเซ‡เชšเชจเซ‹ เช‰เชชเชฏเซ‹เช— เช•เชฐเชตเซ‹ เชถเช•เซเชฏ เชฌเชจเชถเซ‡.

เชตเชฐเซเชซเชฎเชพเช‚ เชธเช‚เชธเชพเชงเชจเซ‹เชจเซ‹ เชฆเชคเซเชคเช• เชฒเซ‡เชตเซ‹

3-เชตเซ‡-เชฎเชฐเซเชœ เชชเซ‡เชš เชธเชพเชฅเซ‡ เชซเซ‡เชฐเชซเชพเชฐเซ‹ เชฒเชพเช—เซ เช•เชฐเชตเชพเชจเซ€ เชชเชฆเซเชงเชคเชฟเชฎเชพเช‚ เชจเชฟเชชเซเชฃเชคเชพเชฅเซ€ เช…เชฎเชจเซ‡ เชนเซ‡เชฒเซเชฎ เชฐเชฟเชฒเซ€เชเชฎเชพเช‚ เช•เซเชฒเชธเซเชŸเชฐเชฎเชพเช‚ เช…เชธเซเชคเชฟเชคเซเชตเชฎเชพเช‚ เชฐเชนเซ‡เชฒเชพ เชธเช‚เชธเชพเชงเชจเซ‹เชจเซ‡ เช…เชชเชจเชพเชตเชตเชพ เชœเซ‡เชตเซ€ เชธเซเชตเชฟเชงเชพเชจเซ‡ เชคเชพเชคเซเช•เชพเชฒเชฟเช• เช…เชฎเชฒเชฎเชพเช‚ เชฎเซ‚เช•เชตเชพเชจเซ€ เชฎเช‚เชœเซ‚เชฐเซ€ เชฎเชณเซ€.

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

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

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

เชจเซ‹เช‚เชงเชฃเซ€: เชธเซ‡เชŸเชฟเช‚เช— WERF_THREE_WAY_MERGE_MODE เชธเช‚เชธเชพเชงเชจเซ‹เชจเชพ เชฆเชคเซเชคเช•เชจเซ‡ เช…เชธเชฐ เช•เชฐเชคเซเช‚ เชจเชฅเซ€ - เชฆเชคเซเชคเช• เชฒเซ‡เชตเชพเชจเชพ เช•เชฟเชธเซเชธเชพเชฎเชพเช‚, 3-เชตเซ‡-เชฎเชฐเซเชœ เชชเซ‡เชšเชจเซ‹ เชนเช‚เชฎเซ‡เชถเชพ เช‰เชชเชฏเซ‹เช— เชฅเชพเชฏ เช›เซ‡.

เชตเชฟเช—เชคเซ‹ - เชฎเชพเช‚ เชฆเชธเซเชคเชพเชตเซ‡เชœเซ€เช•เชฐเชฃ.

เชคเชพเชฐเชฃเซ‹ เช…เชจเซ‡ เชญเชพเชตเชฟ เชฏเซ‹เชœเชจเชพเช“

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

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

เชธเช‚เชธเชพเชงเชจ เช…เชชเชกเซ‡เชŸ เชชเชฆเซเชงเชคเชฟเช“ เช…เชจเซ‡ เช…เชชเชจเชพเชตเชตเชพ เชตเชฟเชถเซ‡เชจเซ€ เชฎเชพเชนเชฟเชคเซ€ เชชเชฃ เช…เชนเซ€เช‚ เชฎเชณเซ€ เชถเช•เซ‡ เช›เซ‡ เช† เชฆเชธเซเชคเชพเชตเซ‡เชœเซ€เช•เชฐเชฃ เชชเซƒเชทเซเช .

เชธเซเช•เชพเชจ 3

เช–เชพเชธ เชจเซ‹เช‚เชง เชฒเซ‡เชตเชพ เชฒเชพเชฏเช• เชชเซเชฐเช•เชพเชถเชฟเชค เชฌเซ€เชœเชพ เชฆเชฟเชตเชธเซ‡ เชนเซ‡เชฒเซเชฎเชจเซเช‚ เชจเชตเซเช‚ เชฎเซเช–เซเชฏ เชธเช‚เชธเซเช•เชฐเชฃ - v3 - เชœเซ‡ 3-เชตเซ‡-เชฎเชฐเซเชœ เชชเซ‡เชšเชจเซ‹ เชชเชฃ เช‰เชชเชฏเซ‹เช— เช•เชฐเซ‡ เช›เซ‡ เช…เชจเซ‡ เชŸเชฟเชฒเชฐเชฅเซ€ เช›เซ‚เชŸเช•เชพเชฐเซ‹ เชฎเซ‡เชณเชตเซ‡ เช›เซ‡. เชนเซ‡เชฒเซเชฎเชจเชพ เชจเชตเชพ เชธเช‚เชธเซเช•เชฐเชฃเชจเซ€ เชœเชฐเซ‚เชฐ เช›เซ‡ เชธเซเชฅเชณเชพเช‚เชคเชฐ เชตเชฐเซเชคเชฎเชพเชจ เชธเซเชฅเชพเชชเชจเซ‹เชจเซ‡ เชจเชตเชพ เชชเซเชฐเช•เชพเชถเชจ เชธเช‚เช—เซเชฐเชน เชซเซ‹เชฐเซเชฎเซ‡เชŸเชฎเชพเช‚ เชฐเซ‚เชชเชพเช‚เชคเชฐเชฟเชค เช•เชฐเชตเชพ เชฎเชพเชŸเซ‡.

เชตเซ‡เชฐเซเชซ, เชคเซ‡เชจเชพ เชญเชพเช— เชฎเชพเชŸเซ‡, เชนเชพเชฒเชฎเชพเช‚ เชŸเชฟเชฒเชฐเชจเซ‹ เช‰เชชเชฏเซ‹เช— เช•เชฐเชตเชพเชฅเซ€ เช›เซ‚เชŸเช•เชพเชฐเซ‹ เชฎเซ‡เชณเชตเซเชฏเซ‹ เช›เซ‡, 3-เชตเซ‡-เชฎเชฐเซเชœ เชชเชฐ เชธเซเชตเชฟเชš เช•เชฐเซเชฏเซเช‚ เช…เชจเซ‡ เช‰เชฎเซ‡เชฐเซเชฏเซเช‚ เช˜เชฃเซเช‚ เชตเชงเชพเชฐเซ‡, เชœเซเชฏเชพเชฐเซ‡ เชนเชพเชฒเชจเชพ เชนเซ‡เชฒเซเชฎ 2 เชธเซเชฅเชพเชชเชจเซ‹ เชธเชพเชฅเซ‡ เชธเซเชธเช‚เช—เชค เชฐเชนเซ‡ เช›เซ‡ (เช•เซ‹เชˆ เชธเซเชฅเชณเชพเช‚เชคเชฐ เชธเซเช•เซเชฐเชฟเชชเซเชŸ เชšเชฒเชพเชตเชตเชพเชจเซ€ เชœเชฐเซ‚เชฐ เชจเชฅเซ€). เชคเซ‡เชฅเซ€, เชœเซเชฏเชพเช‚ เชธเซเชงเซ€ werf เชนเซ‡เชฒเซเชฎ 3 เชชเชฐ เชธเซเชตเชฟเชš เชจ เช•เชฐเซ‡ เชคเซเชฏเชพเช‚ เชธเซเชงเซ€, werf เชตเชชเชฐเชพเชถเช•เชฐเซเชคเชพเช“ Helm 3 เช•เชฐเชคเชพเช‚ Helm 2 เชจเชพ เชฎเซเช–เซเชฏ เชซเชพเชฏเชฆเชพเช“ เช—เซเชฎเชพเชตเชคเชพ เชจเชฅเซ€ (werf เชชเชฃ เชคเซ‡เชฎเชพเช‚ เช›เซ‡).

เชœเซ‹ เช•เซ‡, เชนเซ‡เชฒเซเชฎ 3 เช•เซ‹เชกเชฌเซ‡เชเชฎเชพเช‚ เชตเซ‡เชฐเซเชซเชจเซเช‚ เชธเซเชตเชฟเชš เช…เชจเชฟเชตเชพเชฐเซเชฏ เช›เซ‡ เช…เชจเซ‡ เชจเชœเซ€เช•เชจเชพ เชญเชตเชฟเชทเซเชฏเชฎเชพเช‚ เชฅเชถเซ‡. เชธเช‚เชญเชตเชคเชƒ เช† werf 1.1 เช…เชฅเชตเชพ werf 1.2 เชนเชถเซ‡ (เช† เช•เซเชทเชฃเซ‡, werf เชจเซเช‚ เชฎเซเช–เซเชฏ เชธเช‚เชธเซเช•เชฐเชฃ 1.0 เช›เซ‡; werf เชธเช‚เชธเซเช•เชฐเชฃเชฟเช‚เช— เช‰เชชเช•เชฐเชฃ เชตเชฟเชถเซ‡ เชตเชงเซ เชฎเชพเชนเชฟเชคเซ€ เชฎเชพเชŸเซ‡, เชœเซเช“ เช…เชนเซ€เช‚). เช† เชธเชฎเชฏ เชฆเชฐเชฎเชฟเชฏเชพเชจ เชนเซ‡เชฒเซเชฎ 3 เชชเชพเชธเซ‡ เชธเซเชฅเชฟเชฐ เชฅเชตเชพเชจเซ‹ เชธเชฎเชฏ เชนเชถเซ‡.

PS

เช…เชฎเชพเชฐเชพ เชฌเซเชฒเซ‹เช— เชชเชฐ เชชเชฃ เชตเชพเช‚เชšเซ‹:

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

เชเช• เชŸเชฟเชชเซเชชเชฃเซ€ เช‰เชฎเซ‡เชฐเซ‹