ืืืึทื ื ืืืจ ืืืขืื ืจืขืื ืืืขืื ืื ืคึผืจืื ืกืึทืคึผืึทืื ืืื ืืึธืืขืืก ืคืื GitOps, ืืื ืืขืืื ื ืืื ืืื ืื ืืึธืืขืืก ืืขื ืขื ืืืคึผืืึทืืขื ืึทื ืืืืฃ ืื OpenShift ืคึผืืึทืืคืึธืจืืข. ืึทื ืื ืืขืจืึทืงืืืืืข ืคืืจืขืจ ืืืืฃ ืืขื ืืขืืข ืืื ืื ืืืฆื
ืืื ืึท ื ืึทืืฉืขื, GitOps ืืื ืึท ืกืืื ืคืื ืคึผืจืึทืงืืืกืื ืคึฟืึทืจ ื ืืฆื Git pull ืจืืงืืืขืก ืฆื ืคืืจื ืื ืคืจืึทืกืืจืึทืงืืฉืขืจ ืืื ืึทืคึผืืึทืงืืืฉืึทื ืงืึทื ืคืืืืขืจืืืฉืึทื ื. ืื Git ืจืืคึผืึทืืึทืืึธืจื ืืื GitOps ืืื ืืืืื ืืื ืืื ืึท ืืืื ืืงืืจ ืคืื ืืื ืคึฟืึธืจืืึทืฆืืข ืืืขืื ืื ืฉืืึทื ืคืื ืื ืกืืกืืขื, ืืื ืงืืื ืขื ืืขืจืื ืืขื ืฆื ืืขื ืฉืืึทื ืืขื ืขื ืืึธืจ ืืจืืืกืึทืืึทื ืืื ืึทืืืืึทืืึทื.
ืืขืจ ืืขืืึทื ืง ืคืื ืืืืฉื ืืจืึทืงืื ื ืืื GitOps ืืื ืืื ืงืืื ืืืื ื ืืึท; ืืขืจ ืฆืืืึทื ื ืืื ืืึทื ื ืฉืืื ืืขื ืืฆื ืึผืืขื ืืื ืึทืืืขืจืกืึทืื ืืืขื ืืจืืขืื ืืื ืึทืคึผืืึทืงืืืฉืึทื ืืงืืจ ืงืึธื. GitOps ืคืฉืื ืืืคึผืืึทืืึทื ืฅ ืขื ืืขื ืคึฟืขืึดืงืืืื (ืจืขืฆืขื ืืืขืก, ืฆืืขื ืจืืงืืืขืก, ืืึทืืก, ืืื"ื ื) ืืื ืื ืคืจืึทืกืืจืึทืงืืฉืขืจ ืืื ืึทืคึผืืึทืงืืืฉืึทื ืงืึทื ืคืืืืขืจืืืฉืึทื ืคืึทืจืืืึทืืืื ื ืืื ืืื ืขื ืืขื ืืขื ืขืคืืฅ ืืื ืืื ืื ืคืึทื ืคืื ืืงืืจ ืงืึธื ืคืึทืจืืืึทืืืื ื.
ืขืก ืืื ืงืืื ืึทืงืึทืืขืืืง ืืขืคึฟืื ืืฆืืข ืึธืืขืจ ืืืืืืืืงื ืืึทื ื ืคืื ืึผืืืื ืคึฟืึทืจ GitOps, ืืืืื ืึท ืกืืื ืคืื ืคึผืจืื ืกืึทืคึผืึทืื ืืืืฃ ืืืึธืก ืื ืคืืจ ืืื ืืขืืืื:
- ืื ืืขืงืืึทืจืึทืืืืืข ืืึทืฉืจืืึทืืื ื ืคืื ืื ืกืืกืืขื ืืื ืกืืึธืจื ืืื ืื Git ืจืืคึผืึทืืึทืืึธืจื (ืงืึธื ืคืืืก, ืืึธื ืืืึธืจืื ื, ืืื"ื ื).
- ืฉืืึทื ืขื ืืขืจืื ืืขื ืืขื ืขื ืืขืืืื ืืืจื ืฆืืขื ืจืืงืืืขืก.
- ืื ืฉืืึทื ืคืื ืคืืืกื ืืืง ืกืืกืืขืืขื ืืื ืืขืืจืืื ืืื ืฉืืจื ืืื ืื ืืึทืื ืืื ืื ืจืืคึผืึทืืึทืืึธืจื ื ืืฆื Git ืฉืืืคึผื ืจืืงืืืขืก.
GitOps ืคึผืจืื ืกืึทืคึผืึทืื
- ืกืืกืืขื ืืขืคึฟืื ืืฆืืข ืืขื ืขื ืืืกืงืจืืืื ืืื ืืงืืจ ืงืึธื
ืกืืกืืขื ืงืึทื ืคืืืืขืจืืืฉืึทื ืืื ืืืืื ืืื ืืื ืงืึธื, ืึทืืื ืขืก ืงืขื ืขื ืืืื ืกืืึธืจื ืืื ืืืืืึธืืึทืืืฉ ืืืขืจืกืืข ืืื ืึท Git ืจืืคึผืึทืืึทืืึธืจื, ืืืึธืก ืืื ืขื ืืื ืึท ืืืื ืืงืืจ ืคืื ืืืช. ืืขื ืฆืืืึทื ื ืืืื ืขืก ืืจืื ื ืฆื ืจืึธืืืึทืื ืืื ืจืึธืืืืึทืง ืขื ืืขืจืื ืืขื ืืื ืกืืกืืขืืขื.
- ืืขืจ ืืขืืืืื ืฉืืึทื ืืื ืงืึทื ืคืืืืขืจืืืฉืึทื ืคืื ืกืืกืืขืืขื ืืขื ืขื ืืึทืฉืืืื ืืื ืืืขืจืกืืขืก ืืื Git
ืืืจื ืกืืึธืจืื ื ืืื ืืืขืจืกืืข ืคืื โโืื ืืขืืขืื ืกืืกืืขื ืคืื ืกืืกืืขืืขื ืืื Git, ืืืจ ืงืขื ืขื ืืืืื ืจืึธืืื ืืืืก ืืื ืฆืืจืืงืงืจืืื ืขื ืืขืจืื ืืขื ืฆื ืกืืกืืขืืขื ืืื ืึทืคึผืืึทืงืืืฉืึทื ื. ืืืจ ืงืขื ืขื ืืืื ื ืืฆื Git ืก ืืืืขืจืืืื ืืขืงืึทื ืืืึทืื ืฆื ืงืึธื ืืจืึธืืืจื ืงืึธื ืึธืื ืขืจืฉืืคึผ ืืื ืืึทืฉืืขืืืงื ืื ืึธืืึทื ืืืกืืื.
- ืงืึทื ืคืืืืขืจืืืฉืึทื ืขื ืืขืจืื ืืขื ืงืขื ืขื ืืืื ืืืืืึธืืึทืืืฉ ืืขืืืขื ืื ืืืจื ืฆืืขื ืจืืงืืืขืก
ืืื Git pull ืจืืงืืืขืก, ืืืจ ืงืขื ืขื ืืืืื ืงืึธื ืืจืึธืืืจื ืืื ืขื ืืขืจืื ืืขื ืืขื ืขื ืืขืืืขื ืื ืฆื ืงืึทื ืคืืืืขืจืืืฉืึทื ื ืืื ืื ืจืืคึผืึทืืึทืืึธืจื. ืคึฟืึทืจ ืืืึทืฉืคึผืื, ืืื ืงืขื ืขื ืืืื ืืขืืขืื ืฆื ืื ืืขืจืข ืืึทื ืฉืึทืคึฟื ืืืืืืืืขืจ ืคึฟืึทืจ ืึธืคึผืฉืึทืฆืื ื ืึธืืขืจ ืืืืคื ืืืจื ืกื ืืขืกืฅ, ืขืืง.
ืืื ืืื ืืขืจ ืืขืืืืงืขืจ ืฆืืื, ืขืก ืืื ื ืื ืืึทืจืคึฟื ืฆื ืคืึทืจืฉืคึผืจืืืื ืึทืืืื ืืืืืช ืืื ืงืก ืืื ืจืขืื. ืฆื ืืืขืจืืขืื ืงืึทื ืคืืืืขืจืืืฉืึทื ืขื ืืขืจืื ืืขื, ืืืืขืจื ื ืึธืจ ืืึทืจืคึฟื ืฆืื ืขืืขื ืคึผืขืจืืืฉืึทื ื ืืื ืื Git ืจืืคึผืึทืืึทืืึธืจื ืืื ืื ืงืึทื ืคืืืืขืจืืืฉืึทื ื ืืขื ืขื ืกืืึธืจื.
- ืคืืงืกืืจ ืื ืคึผืจืึธืืืขื ืคืื ืึทื ืงืึทื ืืจืึธืืื ืืจืืคื ืคืื ืงืึทื ืคืืืืขืจืืืฉืึทื ื
ืึทืืึธื ืื ืืขืืขืื ืฉืืึทื ืคืื ืื ืกืืกืืขื ืืื ืกืืึธืจื ืืื ืึท Git ืจืืคึผืึทืืึทืืึธืจื, ืึทืืข ืืืึธืก ืืืจ ืืึธืื ืฆื ืืึธื ืืื ืฆื ืืขืคึฟืื ืขื ืืืืืืืืืจื ืืืึธืก ืืืขื ืขื ืฉืืจ ืึทื ืื ืงืจืึทื ื ืฉืืึทื ืคืื ืื ืกืืกืืขื ืฉืืืืขื ืฆื ืืืื ืืขืืืืื ืฉืืึทื. ืืืื ืืึธืก ืืื ื ืืฉื ืืขืจ ืคืึทื, ืื ืืืืืืืืืจื ืืึธื - ืืืคึผืขื ืืื ื ืืืืฃ ืื ืกืขืืืื ืืก - ืึธืืขืจ ืขืืืืื ืืจื ืื ืืืกืงืจืขืคึผืึทื ืกื ืึทืืืื, ืึธืืขืจ ืืขืื ืฆื ืืืืกื ืืื ืื ืืืขืื ืงืึทื ืคืืืืขืจืืืฉืึทื ืืจืืคื.
GitOps ืืึธืืขืืก ืคึฟืึทืจ OpenShift
ืืืืฃ-ืงื ืืื ืืืื ืจืขืงืึธื ืกืืืขืจ
ืืืื ืืขื ืืึธืืขื, ืืขืจ ืงื ืืื ืืื ืึท ืงืึธื ืืจืึธืืืขืจ ืืืึธืก ืืื ืคืึทืจืึทื ืืืืึธืจืืืขื ืคึฟืึทืจ ืงืึทืืคึผืขืจืื ื Kubernetes ืจืขืกืืจืกื (YAML ืืขืงืขืก) ืืื ืื Git ืจืืคึผืึทืืึทืืึธืจื ืืื ืื ืคืึทืงืืืฉ ืจืขืกืืจืกื ืคืื ืืขื ืงื ืืื. ืืืื ืืืกืงืจืขืคึผืึทื ืกืื ืืขื ืขื ืืืืขืงืืึทื, ืืขืจ ืงืึธื ืืจืึธืืืขืจ ืกืขื ืื ื ืึธืืืึทืคืึทืงืืืฉืึทื ื ืืื ืขืคืฉืขืจ ื ืขืืขื ืงืึทืืฃ ืฆื ืคืึทืจืจืืืื ืื ืืืกืงืจืขืคึผืึทื ืกืื. ืืขืจ GitOps ืืึธืืขื ืืื ืืขื ืืฆื ืืื Anthos Config Management ืืื Weaveworks Flux.
ืคืื ืืจืืืกื ืืืง ืืืื ืจืขืงืึธื ืกืืืขืจ (ืฉืืืคึผื)
ืืขืจ ืืึธืืขื ืงืขื ืขื ืืืื ืืืืจืืื ืืื ืึท ืืืขืจืืืืฉืึทื ืคืื ืื ืคืจืืขืจืืืงืข, ืืืขื ืืืจ ืืึธืื ืืืื ืขืจ ืึธืืขืจ ืืขืจ ืงืึทื ืืจืึธืืืขืจื ืคืึทืจืึทื ืืืืึธืจืืืขื ืคึฟืึทืจ ืกืื ืืงืจืึทื ืึทืืืืฉืึทื ืคืื ืจืขืกืืจืกื ืืื ืื ืคึผืขืจื ืคืื "Git ืจืืคึผืึทืืึทืืึธืจื - Kubernetes ืงื ืืื". ืืขืจ ืืืืืง ืืึธ ืืื ืึทื ืืขืืขืจ ืืขืจืืื ืงื ืืื ืืื ื ืืฉื ืืึทืืืงืข ืืืื ืืืืืขื ืข ืืึทืืื ืืขืจ ืงืึธื ืืจืึธืืืขืจ. Git - k8s ืงื ืืื ืคึผืขืจื ืืขื ืขื ืึธืคื ืืืคืืื ื ืืื CRDs (ืื ืื ืืืื ืืื), ืืืึธืก ืงืขื ืขื ืืึทืฉืจืืึทืื ืืื ืื ืงืึธื ืืจืึธืืืขืจ ืืึธื ืืืจืืคืืจื ืกืื ืืงืจืึทื ืึทืืืืฉืึทื. ืืื ืืขื ืืึธืืขื, ืงืึทื ืืจืึธืืืขืจื ืคืึทืจืืืืึทืื ืื Git ืจืืคึผืึทืืึทืืึธืจื ืกืคึผืขืกืืคืืขื ืืื ืื CRD ืืื ืื Kubernetes ืงื ืืื ืจืขืกืืจืกื, ืืืึธืก ืืขื ืขื ืืืื ืกืคึผืขืกืืคืืขื ืืื ืื CRD, ืืื ืืืจืืคืืจื ืฆืื ืขืืขื ืึทืงืฉืึทื ื ืืืืืจื ืืืืฃ ืื ืจืขืืืืืึทืื ืคืื ืื ืคืึทืจืืืืึทื. ืืื ืืึทืืื ืืขืจ, ืืขื GitOps ืืึธืืขื ืืื ืืขื ืืฆื ืืื ArgoCD.
GitOps ืืืืฃ ืื OpenShift ืคึผืืึทืืคืึธืจืืข
ืึทืืืื ืืกืืจืึทืฆืืข ืคืื โโโโืืึทืืื-ืงื ืืื ืงืืืขืจื ืขืืขืก ืื ืคืจืึทืกืืจืึทืงืืฉืขืจ
ืืื ืื ืคืึทืจืฉืคึผืจืืืื ืคืื Kubernetes ืืื ืื ืืจืึธืืื ื ืคึผืึธืคึผืืืึทืจืืืขื ืคืื ืืืืื-ืืืึธืืงื ืกืืจืึทืืขืืืขืก ืืื ืืจืขื ืงืึทืืคึผืืืืื ื, ืื ืืืจืืฉื ืืืืขื ื ืืืขืจ ืคืื OpenShift ืงืืึทืกืืขืจื ืคึผืขืจ ืงืื ื ืืื ืืืื ืื ืงืจืืกืื ื.
ืคึฟืึทืจ ืืืึทืฉืคึผืื, ืืืขื ื ืืฆื ืืจืขื ืงืึทืืคึผืืืืื ื, ืืืื ืงืื ื ืก ืงืืึทืกืืขืจื ืงืขื ืขื ืืืื ืืืคึผืืืื ืืื ืืื ืืขืจืืขืจ ืึธืืขืจ ืืคืืื ืืืืื ืืขืจ. ืืื ืึท ืจืขืืืืืึทื, ืขืจ ืืื ืืขืฆืืืื ืืขื ืฆื ืคืืจื ืขืืืขืืข ืคืจืืึท ืึธืืขืจ ืงืึธืืึธืจืืึทื ืืืืื OpenShift ืงืืึทืกืืขืจื ืืื ืื ืฆืืืืจ ืืืึธืืงื ืืื ืืืืฃ-ืืึทื ืึธืืข.
ืืื ืืขื ืคืึทื, ืึท ืคึผืืึทืฅ ืคืื ืคึผืจืึธืืืขืืก ืืืื ืืืื ืกืึทืืืื, ืกืคึผืขืฆืืขื:
- ืงืึธื ืืจืึธืืืจื ืึทื ืื ืงืืึทืกืืขืจื ืืขื ืขื ืืื ืึทื ืืืืขื ืืงืึทื ืฉืืึทื (ืงืึธื ืคืืืขืก, ืืึธื ืืืึธืจืื ื, ืกืืึธืจืืืืฉ, ืืื"ื ื)
- ืจืืงืจืืืื (ืึธืืขืจ ืืืงืขืจื) ืงืืึทืกืืขืจื ืืืืืจื ืืืืฃ ืึท ืืึทืืืืกื ืฉืืึทื.
- ืฉืึทืคึฟื ื ืืึทืข ืงืืึทืกืืขืจื ืืืืืจื ืืืืฃ ืึท ืืึทืืืืกื ืฉืืึทื.
- ืจืึธืืืื ื ืขื ืืขืจืื ืืขื ืฆื ืงืืืคื OpenShift ืงืืึทืกืืขืจื.
- ืฆืืจืืงืงืจืืื ืขื ืืขืจืื ืืขื ืืื ืงืืืคื OpenShift ืงืืึทืกืืขืจื.
- ืืื ืง ืืขืืคึผืืึทืืข ืงืึทื ืคืืืืขืจืืืฉืึทื ื ืฆื ืคืึทืจืฉืืืขื ืข ืื ืืืืืจืึทื ืืึทื ืฅ.
ืึทืคึผืคึผืืืงืึทืืืึธื ืงืึทื ืคืืืืขืจืืืฉืึทื ื
ืืขืฉืึทืก ืืืืขืจ ืืืืคืกืืืง, ืึทืคึผืืึทืงืืืฉืึทื ื ืึธืคื ืคืึธืจื ืืืจื ืึท ืงืืื ืคืื ืงืืึทืกืืขืจื (ืืขืื, ืืื ืข, ืืื"ื ื) ืืืืืขืจ ืืื ืขื ืืืงื ืืื ืึท ืคึผืจืึธืืืงืฆืืข ืงื ืืื. ืืื ืึทืืืฉืึทื, ืจืขืื ืฆื ืึทืืืืืืึทืืืืึทืื ืืื ืกืงืึทืืึทืืืืืื ืจืขืงืืืืจืขืืขื ืฅ, ืงืึทืกืืึทืืขืจื ืึธืคื ืฆืขืืืืงืืขื ืึทืคึผืืึทืงืืืฉืึทื ื ืึทืจืืืขืจ ืงืืืคื ืืืืฃ-ืืึทื ืึธืืข ืงืืึทืกืืขืจื ืึธืืขืจ ืงืืืคื ืืงืืืืช ืคืื ืึท ืฆืืืืจ ืืืึธืืงื ืคึผืืึทืืคืึธืจืืข.
ืืื ืืขื ืคืึทื, ืื ืคืืืืขื ืืข ืืึทืกืงืก ืืืื ืืืื ืกืึทืืืื:
- ืคืึทืจืืืืขืจื ืื ืืึทืืืขืืื ื ืคืื ืึทืคึผืืึทืงืืืฉืึทื ื (ืืื ืึทืจืืขืก, ืงืึธื ืคืืืก, ืืื"ื ื) ืฆืืืืฉื ืงืืึทืกืืขืจื (ืืขืื, ืืื ืข, ืืื"ื ื).
- ืจืึธืืืื ื ืขื ืืขืจืื ืืขื ืฆื ืึทืคึผืืึทืงืืืฉืึทื ื (ืืื ืึทืจืืขืก, ืงืึธื ืคืืืก, ืืื"ื ื) ืืื ืขืืืขืืข OpenShift ืงืืึทืกืืขืจื.
- ืฆืืจืืงืงืจืืื ืขื ืืขืจืื ืืขื ืฆื ืึทืคึผืืึทืงืืืฉืึทื ื ืฆื ืึท ืคืจืืขืจืืืงื ืืึทืืืืกื ืฉืืึทื.
OpenShift GitOps ื ืืฆื ืงืึทืกืขืก
1. ืึทืคึผืืืืื ื ืขื ืืขืจืื ืืขื ืคืื ืื ืืื ืจืืคึผืึทืืึทืืึธืจื
ื ืงื ืืื ืึทืืืื ืืกืืจืึทืืึธืจ ืงืขื ืขื ืงืจืึธื OpenShift ืงื ืืื ืงืึทื ืคืืืืขืจืืืฉืึทื ื ืืื ืึท Git ืจืืคึผืึทืืึทืืึธืจื ืืื ืืืืืึธืืึทืืืฉ ืฆืืืืืื ืืื ืฆื ืขืคืขืจืืืึทืกืื ืฉืึทืคึฟื ื ืืึทืข ืงืืึทืกืืขืจื ืืื ืืจืขื ืืขื ืืื ืืื ืึท ืฉืืึทื ืืืืขื ืืงืึทื ืฆื ืื ืืึทืืืืกื ืฉืืึทื ืกืืึธืจื ืืื ืื Git ืจืืคึผืึทืืึทืืึธืจื.
2. ืกืื ืืงืจืึทื ืึทืืืืฉืึทื ืืื ืกืขืงืจืขื ืืึทื ืึทืืขืจ
ืืขืจ ืึทืืืื ืืกืืจืึทืืึธืจ ืืืขื ืืืื ื ืืฅ ืคืื ืื ืคืืืืงืืื ืฆื ืกืื ืืงืจืึทื ืืื OpenShift ืกืื ืึทืืืืฉืขืงืฅ ืืื ืฆืื ืขืืขื ืืืืืืืืืจื ืืื ืืืึธืื ืฆื ืคืืจื ืืื ืืื ืกืคึผืขืฆืืขื ืืืฉืืจืื ืืืึธืก ืืขื ืขื ืืืฉืืคื ืคึฟืึทืจ ืืขื.
3. ืงืึธื ืืจืึธื ืคืื ืืจืืคื ืงืึทื ืคืืืืขืจืืืฉืึทื ื
ืืขืจ ืึทืืืื ืืกืืจืึทืืึธืจ ืืืขื ืืืื ืืื ืืืืืืข ืืืื OpenShift GitOps ืืื ืืืืขื ืึทืคืืื ืืื ืืืึธืจื ื ืืืขืื ืืืกืงืจืขืคึผืึทื ืกืื ืฆืืืืฉื ืคืึทืงืืืฉ ืงืึทื ืคืืืืขืจืืืฉืึทื ื ืืื ืื ืกืคึผืขืกืืคืืขื ืืื ืื ืจืืคึผืึทืืึทืืึธืจื, ืึทืืื ืืื ืงืขื ืขื ืืขืฉืืืื ื ืจืืกืคึผืึทื ื ืฆื ืืจืืคื.
4. ื ืึธืืืึทืคืึทืงืืืฉืึทื ื ืืืขืื ืงืึทื ืคืืืืขืจืืืฉืึทื ืืจืืคื
ืืื ืืขื ืขื ื ืืฆืืง ืืื ืืขื ืคืึทื ืืืขื ืืขืจ ืึทืืืื ืืกืืจืึทืืึธืจ ืืืื ืืขืฉืืืื ื ืืขืจื ืขื ืืืขืื ืืจืืคื ืงืึทืกืขืก ืคืื ืงืึทื ืคืืืืขืจืืืฉืึทื ืฆื ืืขืฉืืืื ื ื ืขืืขื ืฆืื ืขืืขื ืืืืืขื ืืืืฃ ืืืื ืืืืื.
5. ืืึทื ืืึทื ืกืื ืืงืจืึทื ืึทืืืืฉืึทื ืคืื ืงืึทื ืคืืืืขืจืืืฉืึทื ื ืืืขื ืืจืืคืืื ื
ืึทืืึทืื ืืขืจ ืึทืืืื ืืกืืจืึทืืึธืจ ืฆื ืกืื ืืงืจืึทื ืืื ืื OpenShift ืงื ืืื ืืื ืื Git ืจืืคึผืึทืืึทืืึธืจื ืืื ืื ืืขืฉืขืขื ืืฉ ืคืื ืงืึทื ืคืืืืขืจืืืฉืึทื ืืจืืคื, ืฆื ืืขืฉืืืื ื ืฆืืจืืงืงืืืขื ืืขื ืงื ืืื ืฆื ืึท ืคืจืืขืจืืืงื ืืึทืืืืกื ืฉืืึทื.
6.ืึทืืืึธ-ืกืื ืืงืจืึทื ืึทืืืืฉืึทื ืคืื ืงืึทื ืคืืืืขืจืืืฉืึทื ื ืืืขื ืืจืืคืืื ื
ืืขืจ ืึทืืืื ืืกืืจืึทืืึธืจ ืงืขื ืขื ืืืื ืงืึทื ืคืืืืขืจ ืื OpenShift ืงื ืืื ืฆื ืืืืืึธืืึทืืืฉ ืกืื ืืงืจืึทื ืืื ืืื ืื ืจืืคึผืึทืืึทืืึธืจื ืืืขื ืึท ืืจืืคื ืืื ืืืืขืงืืึทื, ืึทืืื ืึทื ืื ืงื ืืื ืงืึทื ืคืืืืขืจืืืฉืึทื ืฉืืขื ืืืง ืืืืึทืื ืื ืงืึทื ืคืืืืขืจืืืฉืึทื ื ืืื ืืื.
7. ืขืืืขืืข ืงืืึทืกืืขืจื - ืืืื ืขืจ ืจืืคึผืึทืืึทืืึธืจื
ืืขืจ ืึทืืืื ืืกืืจืึทืืึธืจ ืงืขื ืขื ืงืจืึธื ืงืึทื ืคืืืืขืจืืืฉืึทื ื ืคืื ืขืืืขืืข ืคืึทืจืฉืืืขื ืข OpenShift ืงืืึทืกืืขืจื ืืื ืืืื Git ืจืืคึผืึทืืึทืืึธืจื ืืื ืกืึทืืขืงืืืืืื ืฆืืืืืื ืืื ืืื ืืืจืฃ.
8. ืืืืขืจืึทืจืงื ืคืื ืงื ืืื ืงืึทื ืคืืืืขืจืืืฉืึทื ื (ืืจืืฉื)
ืืขืจ ืึทืืืื ืืกืืจืึทืืึธืจ ืงืขื ืขื ืฉืืขืื ืึท ืืืืขืจืึทืจืงื ืคืื ืงื ืืื ืงืึทื ืคืืืืขืจืืืฉืึทื ื ืืื ืื ืจืืคึผืึทืืึทืืึธืจื (ืืื ืข, ืคึผืจืึธื, ืึทืคึผ ืคึผืึธืจืืคืขื, ืขืืง ืืื ืืจืืฉื). ืืื ืื ืืขืจืข ืืืขืจืืขืจ, ืขืก ืงืขื ืขื ืืึทืฉืืืืขื ืฆื ืงืึทื ืคืืืืขืจืืืฉืึทื ื ืืึธื ืืืื ืืขืืืขื ืื ืฆื ืืืื ืขืจ ืึธืืขืจ ืืขืจ ืงืืึทืกืืขืจื.
ืคึฟืึทืจ ืืืึทืฉืคึผืื, ืืืื ืึท ืึทืืืื ืืกืืจืึทืืึธืจ ืฉืืขืื ืื ืืืืขืจืึทืจืงื "ืคึผืจืึธืืืงืฆืืข ืงืืึทืกืืขืจื (ืคึผืจืึธื) โ ืกืืกืืขื ืจืขื ืืืขื ืงืืึทืกืืขืจื โ ืคึผืจืึธืืืงืฆืืข ืงืืึทืกืืขืจื ืคืื ืกืืกืืขื ืจืขื ืืืขื " ืืื ืื ืืื ืจืืคึผืึทืืึทืืึธืจื, ืึท ืงืึธืืืื ืึทืฆืืข ืคืื โโโโืื ืคืืืืขื ืืข ืงืึธื ืคืืืก ืืื ืืขืืืขื ืื ืฆื ืื ืคึผืจืึธืืืงืฆืืข ืงืืึทืกืืขืจื ืคืื ืกืืกืืขื X:
- ืงืึธื ืคืืืก ืคึผืจืึธืกื ืฆื ืึทืืข ืคึผืจืึธืืืงืฆืืข ืงืืึทืกืืขืจื.
- ืงืึธื ืคืืืก ืคึฟืึทืจ ืื ืกืืกืืขื X ืงื ืืื.
- ืงืึธื ืคืืืก ืคึฟืึทืจ ืื X ืกืืกืืขื ืคึผืจืึธืืืงืฆืืข ืงื ืืื.
9. ืืขืืคึผืืึทืืขืก ืืื ืงืึทื ืคืืืืขืจืืืฉืึทื ืึธืืืืขืจืจืืืื
ืืขืจ ืึทืืืื ืืกืืจืึทืืึธืจ ืงืขื ืขื ืึธืืืืขืจืจืืื ืึท ืกืืื ืคืื ืื ืืขืจืึทืืื ืงืึทื ืคืืืืขืจืืืฉืึทื ื ืืื ืืืืขืจ ืืืึทืืืขืก, ืืืฉื, ืฆื ืคืืื-ืืื ืื ืงืึทื ืคืืืืขืจืืืฉืึทื ืคึฟืึทืจ ืกืคึผืขืฆืืคืืฉ ืงืืึทืกืืขืจื ืฆื ืืืึธืก ืืื ืืืขืื ืืืื ืืขืืืขื ืื.
10. ืกืขืืขืงืืืื ืึทืจืืึทื ื ืขืืขื ืืื ืืืกืฉืืืกื ืคึฟืึทืจ ืงืึทื ืคืืืืขืจืืืฉืึทื ื, ืึทืคึผืืึทืงืืืฉืึทื ืงืึทื ืคืืืืขืจืืืฉืึทื ื
ืืขืจ ืึทืืืื ืืกืืจืึทืืึธืจ ืงืขื ืขื ืฉืืขืื ืื ืืืืื ืืื ืืขื ืคึฟืึทืจ ืื ืึทืคึผืืึทืงืืืฉืึทื ืึธืืขืจ ื ืื-ืึทืคึผืืึทืงืืืฉืึทื ืคืื ืืืืขืจ ืงืึทื ืคืืืืขืจืืืฉืึทื ื ืฆื ืงืืึทืกืืขืจื ืืื ืืืืขืจ ืงืขืจืึทืงืืขืจืืกืืืงืก.
11. ืืืกืืขืจ ืฉืืืฆื
ืืขืืืขืืึธืคึผืขืจืก ืืืขืื ื ืืฅ ืคืื ืื ืคืืืืงืืื ืฆื ืงืืืึทืื ืืื ืึทืคึผืืึทืงืืืฉืึทื ืจืขืกืืจืกื ืืืขื ืืืื ืืืคืืื ื (ืืขืื ืืฉืึทืจื, ืจืืื Kubernetes yaml, ืืื"ื ื) ืฆื ื ืืฆื ืื ืืขืจืกื ืฆืื ืขืืขื ืคึฟืึธืจืืึทื ืคึฟืึทืจ ืืขืืขืจ ืกืคึผืขืฆืืคืืฉ ืึทืคึผืืึทืงืืืฉืึทื.
GitOps ืืืฉืืจืื ืืืืฃ ืื OpenShift ืคึผืืึทืืคืึธืจืืข
ArgoCD
ArgoCD ืืืคึผืืึทืืึทื ืฅ ืื ืคืื ืืจืืืกื ืืืง ืจืืกืึธืจืก ืจืขืงืึธื ืกืืืข ืืึธืืขื ืืื ืึธืคืคืขืจืก ืึท ืกืขื ืืจืึทืืืืื ืื ืคึฟืึทืจ ืึธืจืงืขืกืืจืืืืื ื ืืืื-ืฆื-ืคืืืข ืืืฆืืื ืืขื ืฆืืืืฉื ืงืืึทืกืืขืจื ืืื Git ืจืืคึผืึทืืึทืืึธืจืื. ืื ืืืกืึทืืืืึทื ืืืืืฉืื ืคืื ืืขื ืคึผืจืึธืืจืึทื ืึทืจืืึทื ื ืขืืขื ืื ืื ืึทืืืืืื ืฆื ืคืืจื ืึทืคึผืืึทืงืืืฉืึทื ื ืืืขื ArgoCD ืืื ื ืืฉื ืืจืืขืื.
ืคืืึทืงืก
ืคืืืงืก ืืืคึผืืึทืืึทื ืฅ ืึทื ืืืืฃ-ืงืืืกืืขืจ ืจืืกืึธืจืก ืจืขืงืึธื ืกืืืข ืืึธืืขื ืืื, ืืื ืึท ืจืขืืืืืึทื, ืขืก ืืื ืงืืื ืกืขื ืืจืึทืืืืื ืคืึทืจืืืึทืืืื ื ืคืื ืื ืืขืคึฟืื ืืฆืืข ืจืืคึผืึทืืึทืืึธืจื, ืืืึธืก ืืื ืึท ืฉืืืึทื ืคืื ื. ืืืืฃ ืื ืื ืืขืจืข ืืึทื ื, ืคึผืื ืงื ืืืืึทื ืคืื ืื ืคืขืื ืคืื ืกืขื ืืจืึทืืืืืืฉืึทื, ืื ืคืืืืงืืื ืฆื ืคืืจื ืึทืคึผืืึทืงืืืฉืึทื ื ืืืืืื ืืคืืื ืืืื ืืืื ืงื ืืื ืคืืืื.
ืื ืกืืึธืืื ื ArgoCD ืืืืฃ OpenShift
ArgoCD ืึธืคืคืขืจืก ืึท ืืืกืืขืฆืืืื ื ืืึทืคึฟืขืื ืฉืืจื ืฆืืืื ื ืืื ืืืขื ืงืึทื ืกืึธืื, ืึทืืื ืืืจ ืืืขืื ื ืืฉื ืืขืงื ืคืืึทืงืก ืืื ืื ืืขืจืข ืึทืืืขืจื ืึทืืืืืขืก ืืึธ.
ืฆื ืฆืขืืืืงืืขื ArgoCD ืืืืฃ ืื OpenShift 4 ืคึผืืึทืืคืึธืจืืข, ื ืึธืืืืื ืื ืกืืขืคึผืก ืืื ืึท ืงื ืืื ืึทืืืื ืืกืืจืึทืืึธืจ:
ืืืคึผืืืืื ื ArgoCD ืงืึทืืคึผืึธืื ืึทื ืฅ ืืืืฃ ืื OpenShift ืคึผืืึทืืคืึธืจืืข
# Create a new namespace for ArgoCD components
oc create namespace argocd
# Apply the ArgoCD Install Manifest
oc -n argocd apply -f https://raw.githubusercontent.com/argoproj/argo-cd/v1.2.2/manifests/install.yaml
# Get the ArgoCD Server password
ARGOCD_SERVER_PASSWORD=$(oc -n argocd get pod -l "app.kubernetes.io/name=argocd-server" -o jsonpath='{.items[*].metadata.name}')
ืคึฟืึทืจืืขืกืขืจืื ื ืคืื ArgoCD ืกืขืจืืืืจืขืจ ืึทืืื ืึทื ืขืก ืงืขื ืขื ืืืื ืืขืืขื ืืืจื OpenShift Route
# Patch ArgoCD Server so no TLS is configured on the server (--insecure)
PATCH='{"spec":{"template":{"spec":{"$setElementOrder/containers":[{"name":"argocd-server"}],"containers":[{"command":["argocd-server","--insecure","--staticassets","/shared/app"],"name":"argocd-server"}]}}}}'
oc -n argocd patch deployment argocd-server -p $PATCH
# Expose the ArgoCD Server using an Edge OpenShift Route so TLS is used for incoming connections
oc -n argocd create route edge argocd-server --service=argocd-server --port=http --insecure-policy=Redirect
ืืืคึผืืืืื ื ArgoCD Cli Tool
# Download the argocd binary, place it under /usr/local/bin and give it execution permissions
curl -L https://github.com/argoproj/argo-cd/releases/download/v1.2.2/argocd-linux-amd64 -o /usr/local/bin/argocd
chmod +x /usr/local/bin/argocd
ืืฉืึทื ืืื ื ืื ArgoCD ืกืขืจืืืืจืขืจ ืึทืืืื ืคึผืึทืจืึธื
# Get ArgoCD Server Route Hostname
ARGOCD_ROUTE=$(oc -n argocd get route argocd-server -o jsonpath='{.spec.host}')
# Login with the current admin password
argocd --insecure --grpc-web login ${ARGOCD_ROUTE}:443 --username admin --password ${ARGOCD_SERVER_PASSWORD}
# Update admin's password
argocd --insecure --grpc-web --server ${ARGOCD_ROUTE}:443 account update-password --current-password ${ARGOCD_SERVER_PASSWORD} --new-password
ื ืึธื ืงืึทืืคึผืืืืื ื ืื ืกืืขืคึผืก, ืืืจ ืงืขื ืขื ืึทืจืืขืื ืืื ArgoCD ืกืขืจืืืืจืขืจ ืืืจื ืื ArgoCD WebUI ืืืขื ืงืึทื ืกืึธืื ืึธืืขืจ ืื ArgoCD Cli ืืึทืคึฟืขืื ืฉืืจื ืืขืฆืืึทื.
GitOps - ืขืก ืืื ืงืืื ืืึธื ืฆื ืฉืคึผืขื
"ืื ืืึทื ืืื ืืื ืงืก" - ืืึธืก ืืื ืืืึธืก ืืื ืืึธืื ืืืขืื ืึท ืกืืืืึทืฆืืข ืืืขื ืื ืืขืืขืื ืืืื ืฆื ืืึธื ืขืคึผืขืก ืืื ืืืกื. ืืื ืืขื ืคืึทื ืคืื OpenShift, ืืขืจ ืคืึทืจืืึทื ื ืฆื ืืืืื ืึธื ืืืืื ื ืืฆื ืืขื ืงืืื ื ืืึทืข ืคึผืืึทืืคืึธืจืืข ืึธืคื ืงืจืืืืฅ ืคึผืื ืงื ืืขื ืกืืืืึทืฆืืข ืืื ืื ืคืึทืจืืืึทืืืื ื ืืื ืืืฉืึทืื ืคืื ืจืืฅ, ืืืคึผืืืืืึทื ืฅ ืืื ืื ืืขืจืข OpenShift ืึทืืืืฉืขืงืฅ. ืืืขืจ ืืื ืื ืืขืืขืื ืืืึทื ืฉืืขื ืืืง ืืึธืจ ืคืึทืจืคืึทืื?
ืคืึธืจืืขืฆื ืื ืกืขืจืืข ืคืื โโืึทืจืืืงืืขื ืืืขืื
oc create -f https://raw.githubusercontent.com/openshift/federation-dev/master/labs/lab-4-assets/namespace.yaml
oc create -f https://raw.githubusercontent.com/openshift/federation-dev/master/labs/lab-4-assets/deployment.yaml
oc create -f https://raw.githubusercontent.com/openshift/federation-dev/master/labs/lab-4-assets/service.yaml
oc expose svc/httpd -n simple-app
ืึทืืื ืืืจ ืืึธืื ืึท ืืึทื ืืงืจืึทืคืืื ืึทืคึผืืึทืงืืืฉืึทื. ืืืฆื ืขืก ืืึทืจืฃ ืืืื ืืจืึทื ืกืคืขืจื ืืื ืืขืจ GitOps ืคืึทืจืืืึทืืืื ื ืึธื ืึธื ืืืขืจ ืคืื ืึทืืืืืืึทืืืืึทืื. ืืื ืงืืจืฅ, ืขืก ืืื ืืึธืก:
- ืฉืึทืคึฟื ืึท ืืื ืจืืคึผืึทืืึทืืึธืจื ืคึฟืึทืจ ืื ืงืึธื.
- ืืืจ ืึทืจืืืกืคืืจื ืืื ืืืขืจ ืงืจืึทื ื ืึทืืืืฉืขืงืฅ ืืื ืืคึผืืึธืึทื ืืื ืฆื ืื Git ืจืืคึผืึทืืึทืืึธืจื.
- ืกืขืืขืงืืื ื ืืื ืืืคึผืืืืื ื GitOps ืืืฉืืจืื.
- ืืืจ ืืืืื ืืื ืืืขืจ ืจืืคึผืึทืืึทืืึธืจื ืฆื ืืขื ืืึธืึธืืงืื.
- ืืืจ ืืขืคืื ืืจื ืื ืึทืคึผืืึทืงืืืฉืึทื ืืื ืืื ืืืขืจ GitOps ืืึธืึธืืงืื.
- ืืืจ ืืืจืืคืืจื ืึท ืคึผืจืึธืืข ืืืืคื ืคืื ืื ืึทืคึผืืึทืงืืืฉืึทื ืืื ืื GitOps ืืึธืึธืืงืื.
- ืืืจ ืกืื ืืงืจืึทื ืืื ืึทืืืืฉืขืงืฅ ืืื ืื GitOps ืืึธืึธืืงืื.
- ืืขืื ืคึผืจืื ืื ื ืืื ืึทืืืึธ-ืกืื ืืงืจืึทื ืึทืืืืฉืึทื ืคืื ืึทืืืืฉืขืงืฅ.
ืืื ืืขืจืืื ื ืืื ืื ืคืจืืขืจืืืงืข
ืืื ืืื ืืืขืจ ืืืึทืฉืคึผืื, ืืืจ ืืืขืื ืฉืึทืคึฟื ืึท ื ืืึทืข ืขืคื ืืืขื ืจืืคึผืึทืืึทืืึธืจื ืืืืฃ GitHub. ืืืจ ืงืขื ืขื ืจืืคื ืขืก ืืืึธืก ืืืจ ืืืืื, ืืืจ ื ืืฆื ืืขื ื ืึธืืขื ืืืึธืืคึผืึธืกื.
ืืืื ืื YAML ืึทืืืืฉืขืงื ืืขืงืขืก ืืขื ืขื ื ืืฉื ืกืืึธืจื ืืึธืืงืึทืื ืึธืืขืจ ืืื Git, ืืืจ ืืืขื ืืึธืื ืฆื ื ืืฆื ืื oc ืึธืืขืจ kubectl ืืื ืึทืจืืขืก. ืืื ืื ืกืงืจืขืขื ืฉืึธื ืืื ืื ืืืจ ืืขืื YAML ืคึฟืึทืจ ืืื ืืืขืจ ื ืึทืืขืกืคึผืึทืกืข, ืืืคึผืืืืืึทื ื, ืืื ืกื ืืื ืืึทืจืฉืจืื. ืืืืืขืจ ืืขื, ืืืจ ืงืืึธืื ื ืื ื ืื ืืืฉืืคื ืจืืคึผืึทืืึทืืึธืจื ืืื ืกื ืืื ืขืก.
oc get namespace simple-app -o yaml --export > namespace.yaml
oc get deployment httpd -o yaml -n simple-app --export > deployment.yaml
oc get service httpd -o yaml -n simple-app --export > service.yaml
oc get route httpd -o yaml -n simple-app --export > route.yaml
ืืืฆื ืืึธืื ืืื ืื ืจืขืืึทืืืจื ืื deployment.yaml ืืขืงืข ืฆื ืืึทืืืึทืืืงื ืื ืคืขืื ืืืึธืก Argo CD ืงืขื ื ืืฉื ืกืื ืง.
sed -i '/sgeneration: .*/d' deployment.yaml
ืืื ืืขืจืฆื, ืื ืืึทืจืฉืจืื ืืึทืจืฃ ืืืื ืืขืืืื. ืืืจ ืืืขืื ืขืจืฉืืขืจ ืฉืืขืื ืึท ืืืืืืืื ืข ืืืึทืืขืืืืืง ืืื ืืขืืึธืื ืคืึทืจืืืึทืื ืื ืืจืขืกืก: ื ืึทื ืืื ืื ืืื ืืึทืื ืคืื ืื ืืืึทืืขืืืืืง.
export ROUTE=" ingress:
- conditions:
- status: 'True'
type: Admitted"
sed -i "s/ ingress: null/$ROUTE/g" route.yaml
ืึทืืื, ืืืจ ืืึธืื ืืืืกืืขืฉืืขืื ืื ืืขืงืขืก, ืึทืืข ืืืึธืก ืืืืืื ืืื ืฆื ืจืึทืืขืืืขื ืืื ืฆื ืื Git ืจืืคึผืึทืืึทืืึธืจื. ื ืึธื ืืืึธืก ืืขื ืจืืคึผืึทืืึทืืึธืจื ืืืขืจื ืืขืจ ืืืืื ืืงืืจ ืคืื ืืื ืคึฟืึธืจืืึทืฆืืข, ืืื ืงืืื ืืึทื ืืึทื ืขื ืืขืจืื ืืขื ืฆื ืึทืืืืฉืขืงืฅ ืืึธื ืืืื ืฉืืจืขื ื ืคึผืจืึธืืืืืึทืืึทื.
git commit -am โinitial commit of objectsโ
git push origin master
ืืืืึทืืขืจ ืืืจ ืืืื ืืืืึทืืขืจ ืคืื ืื ืคืึทืงื ืึทื ืืืจ ืืึธื ืฉืืื ืืืคึผืืืื ArgoCD (ืืื ืฆื ืืึธื ืืึธืก - ืืขื ืื ืคืจืืขืจืืืงืข
argocd repo add https://github.com/cooktheryan/blogpost
ืืืฆื ืืึธืื ืืื ืื ืืึทืื ืื ืึทืคึผืืึทืงืืืฉืึทื. ืื ืึทืคึผืืึทืงืืืฉืึทื ืฉืืขืื ืืืึทืืืขืก ืึทืืื ืึทื ืื GitOps ืืึธืึธืืงืื ืคืืจืฉืืืื ืืืึธืก ืจืืคึผืึทืืึทืืึธืจื ืืื ืคึผืึทืืก ืฆื ื ืืฆื, ืืืึธืก OpenShift ืืื ืืืจืฃ ืฆื ืคืืจื ืึทืืืืฉืขืงืฅ, ืืืึธืก ืกืคึผืขืฆืืคืืฉ ืฆืืืืึทื ืคืื ืื ืจืืคึผืึทืืึทืืึธืจื ืืื ืืืจืฃ, ืืื ืฆื ืจืขืกืืจืกื ืืึธื ืึทืืืึธ-ืกืื ืง.
argocd app create --project default
--name simple-app --repo https://github.com/cooktheryan/blogpost.git
--path . --dest-server https://kubernetes.default.svc
--dest-namespace simple-app --revision master --sync-policy none
ืึทืืึธื ืึทื ืึทืคึผืืึทืงืืืฉืึทื ืืื ืกืคึผืขืกืืคืืขื ืืื ืื Argo CD, ืื ืืึธืึธืืงืื ืืืืื ืฆื ืงืึธื ืืจืึธืืืจื ืฉืืื ืืืคึผืืืื ืึทืืืืฉืขืงืฅ ืงืขืื ืื ืืื ืืื ืื ืจืืคึผืึทืืึทืืึธืจื. ืืื ืืื ืืืขืจ ืืืึทืฉืคึผืื, ืึทืืืึธ-ืกืื ืง ืืื ืงืืื ืึทืคึผ ืืขื ืขื ืคืึทืจืงืจืืคึผืื, ืึทืืื ืื ืขืืขืืขื ืื ืืึธื ื ืื ืืืืฉื ื ืึธื. ืืืืข ืืึธื ืึทื ืืื ืื ืึทืจืืึธ ืงืึธืืคึผืึทืงืืืืกืง ืฆืืืื ื ืืื ืืืขืจ ืึทืคึผืืึทืงืืืฉืึทื ืืืขื ืืึธืื ืื ืกืืึทืืืก "ืืืืก ืคืื ืกืื ืง" ืืืืึทื ืขืก ืืื ืงืืื ืคืืจืืข ืืืึธืก ArgoCD ืืื.
ืืึธืก ืืื ืืืึธืก ืืืขื ืืืจ ืึธื ืืืืื ืกืื ืืงืจืึทื ืึทืืืืฉืึทื ืึท ืืืกื ืฉืคึผืขืืขืจ, ืื ืึทืืืืฉืขืงืฅ ืืืขื ื ืืฉื ืืืื ืจืืคึผืืืื.
ืืืฆื ืืึธืื ืึท ืคึผืจืืืืจื ืืืืคื ืฆื ืืึทืื ืืืืขืจ ืึทื ืขืก ืืขื ืขื ืงืืื ืขืจืจืึธืจืก ืืื ืืื ืืืขืจ ืืขืงืขืก.
argocd app sync simple-app --dry-run
ืืืื ืขืก ืืขื ืขื ืงืืื ืขืจืจืึธืจืก, ืืืจ ืงืขื ืขื ืืืื ืืืืึทืืขืจ ืฆื ืกืื ืืงืจืึทื ืึทืืืืฉืึทื.
argocd app sync simple-app
ื ืึธื ืคืืืกื ืืืง ืื ืึทืจืืึธืงื ืืึทืงืืืขื ืืึทืคึฟืขื ืืืืฃ ืืื ืืืขืจ ืึทืคึผืืึทืงืืืฉืึทื, ืืืจ ืืึธื ืืขื ืึทื ืื ืึทืคึผืืึทืงืืืฉืึทื ืกืืึทืืืก ืืื ืคืืจืขื ืืขืจื ืฆื ืืขืืื ื ืึธืืขืจ ืกืื ืกืขื. ืืึธืก ืืืขื ืืืื ืขื ืึทื ืึทืืข ืจืขืกืืจืกื ืืื ืื Git ืจืืคึผืึทืืึทืืึธืจื ืืืฆื ืฉืืืืขื ืฆื ืื ืจืขืกืืจืกื ืืืึธืก ืืึธืื ืฉืืื ืืืคึผืืืื.
argocd app get simple-app
Name: simple-app
Project: default
Server: https://kubernetes.default.svc
Namespace: simple-app
URL: https://argocd-server-route-argocd.apps.example.com/applications/simple-app
Repo: https://github.com/cooktheryan/blogpost.git
Target: master
Path: .
Sync Policy: <none>
Sync Status: Synced to master (60e1678)
Health Status: Healthy
...
ืืืฆื ืืืจ ืงืขื ืขื ืืขืื ืึทืืืึธ-ืกืื ืง ืืื ืงืืื ืึทืคึผ ืฆื ืขื ืฉืืจ ืึทื ืืึธืจื ืืฉื ืืื ืืืฉืืคื ืืึทื ืืืึทืื ืืื ืึทื ืืขืืขืจ ืืึธื ืึท ืืืืคืขืฅ ืืื ืืืฉืืคื ืึธืืขืจ ืืขืจืืืึทื ืืืงื ืฆื ืื ืจืืคึผืึทืืึทืืึธืจื, ืึท ืืืคึผืืืืืึทื ื ืืืขื ืคึผืึทืกืืจื.
argocd app set simple-app --sync-policy automated --auto-prune
ืึทืืื, ืืืจ ืืึธืื ืืฆืืื ืืขืืจืืื ืึท ืึทืคึผืืึทืงืืืฉืึทื ืืื ืืขืจ GitOps ืงืึธื ืืจืึธื ืืืึธืก ืืืืืขืก ืืื ื ืืฉื ื ืืฆื GitOps ืืื ืงืืื ืืืขื.
ืืงืืจ: www.habr.com