OpenShift เจฒเจˆ GitOps เจฆเฉ€ เจœเจพเจฃ-เจชเจ›เจพเจฃ

เจ…เฉฑเจœ เจ…เจธเฉ€เจ‚ GitOps เจฆเฉ‡ เจธเจฟเจงเจพเจ‚เจคเจพเจ‚ เจ…เจคเฉ‡ เจฎเจพเจกเจฒเจพเจ‚ เจฌเจพเจฐเฉ‡ เจ—เฉฑเจฒ เจ•เจฐเจพเจ‚เจ—เฉ‡, เจจเจพเจฒ เจนเฉ€ เจ‡เจน เจฎเจพเจกเจฒเจพเจ‚ เจจเฉ‚เฉฐ OpenShift เจชเจฒเฉ‡เจŸเจซเจพเจฐเจฎ 'เจคเฉ‡ เจ•เจฟเจตเฉ‡เจ‚ เจฒเจพเจ—เฉ‚ เจ•เฉ€เจคเจพ เจœเจพเจ‚เจฆเจพ เจนเฉˆเฅค เจ‡เจธ เจตเจฟเจธเจผเฉ‡ 'เจคเฉ‡ เจ‡เฉฑเจ• เจ‡เฉฐเจŸเจฐเจเจ•เจŸเจฟเจต เจ—เจพเจˆเจก เจ‰เจชเจฒเจฌเจง เจนเฉˆ เจฒเจฟเฉฐเจ•.

OpenShift เจฒเจˆ GitOps เจฆเฉ€ เจœเจพเจฃ-เจชเจ›เจพเจฃ

เจธเฉฐเจ–เฉ‡เจช เจฐเฉ‚เจช เจตเจฟเฉฑเจš, GitOps เจฌเฉเจจเจฟเจ†เจฆเฉ€ เจขเจพเจ‚เจšเฉ‡ เจ…เจคเฉ‡ เจเจชเจฒเฉ€เจ•เฉ‡เจธเจผเจจ เจ•เฉŒเจ‚เจซเจฟเจ—เจฐเฉ‡เจธเจผเจจเจพเจ‚ เจฆเจพ เจชเฉเจฐเจฌเฉฐเจงเจจ เจ•เจฐเจจ เจฒเจˆ เจ—เจฟเฉฑเจŸ เจชเฉเฉฑเจฒ เจฌเฉ‡เจจเจคเฉ€เจ†เจ‚ เจฆเฉ€ เจตเจฐเจคเฉ‹เจ‚ เจ•เจฐเจจ เจฒเจˆ เจ…เจญเจฟเจ†เจธเจพเจ‚ เจฆเจพ เจ‡เฉฑเจ• เจธเจฎเฉ‚เจน เจนเฉˆเฅค GitOps เจตเจฟเฉฑเจš Git เจฐเจฟเจชเฉ‹เจœเจผเจŸเจฐเฉ€ เจจเฉ‚เฉฐ เจธเจฟเจธเจŸเจฎ เจฆเฉ€ เจธเจฅเจฟเจคเฉ€ เจฌเจพเจฐเฉ‡ เจœเจพเจฃเจ•เจพเจฐเฉ€ เจฆเฉ‡ เจ‡เฉฑเจ• เจธเจฐเฉ‹เจค เจตเจœเฉ‹เจ‚ เจฎเฉฐเจจเจฟเจ† เจœเจพเจ‚เจฆเจพ เจนเฉˆ, เจ…เจคเฉ‡ เจ‡เจธ เจธเจฅเจฟเจคเฉ€ เจตเจฟเฉฑเจš เจ•เฉ‹เจˆ เจตเฉ€ เจคเจฌเจฆเฉ€เจฒเฉ€ เจชเฉ‚เจฐเฉ€ เจคเจฐเฉเจนเจพเจ‚ เจ–เฉ‹เจœเจฃเจฏเฉ‹เจ— เจ…เจคเฉ‡ เจ†เจกเจฟเจŸเจฏเฉ‹เจ— เจนเฉˆเฅค

GitOps เจตเจฟเฉฑเจš เจชเจฐเจฟเจตเจฐเจคเจจ เจŸเจฐเฉˆเจ•เจฟเฉฐเจ— เจฆเจพ เจตเจฟเจšเจพเจฐ เจ•เจฟเจธเฉ‡ เจตเฉ€ เจคเจฐเฉเจนเจพเจ‚ เจจเจตเจพเจ‚ เจจเจนเฉ€เจ‚ เจนเฉˆ; เจเจชเจฒเฉ€เจ•เฉ‡เจธเจผเจจ เจธเจฐเฉ‹เจค เจ•เฉ‹เจก เจจเจพเจฒ เจ•เฉฐเจฎ เจ•เจฐเจฆเฉ‡ เจธเจฎเฉ‡เจ‚ เจ‡เจน เจชเจนเฉเฉฐเจš เจฒเฉฐเจฌเฉ‡ เจธเจฎเฉ‡เจ‚ เจคเฉ‹เจ‚ เจฒเจ—เจญเจ— เจตเจฟเจ†เจชเจ• เจคเฉŒเจฐ 'เจคเฉ‡ เจตเจฐเจคเฉ€ เจœเจพเจ‚เจฆเฉ€ เจฐเจนเฉ€ เจนเฉˆเฅค GitOps เจฌเจธ เจฌเฉเจจเจฟเจ†เจฆเฉ€ เจขเจพเจ‚เจšเฉ‡ เจ…เจคเฉ‡ เจเจชเจฒเฉ€เจ•เฉ‡เจธเจผเจจ เจ•เฉŒเจ‚เจซเจฟเจ—เจฐเฉ‡เจธเจผเจจ เจชเฉเจฐเจฌเฉฐเจงเจจ เจตเจฟเฉฑเจš เจธเจฎเจพเจจ เจตเจฟเจธเจผเฉ‡เจธเจผเจคเจพเจตเจพเจ‚ (เจธเจฎเฉ€เจ–เจฟเจ†เจตเจพเจ‚, เจชเฉเฉฑเจฒ เจฌเฉ‡เจจเจคเฉ€เจ†เจ‚, เจŸเฉˆเจ—เจธ, เจ†เจฆเจฟ) เจจเฉ‚เฉฐ เจฒเจพเจ—เฉ‚ เจ•เจฐเจฆเจพ เจนเฉˆ เจ…เจคเฉ‡ เจธเจฐเฉ‹เจค เจ•เฉ‹เจก เจชเฉเจฐเจฌเฉฐเจงเจจ เจฆเฉ‡ เจฎเจพเจฎเจฒเฉ‡ เจตเจฟเฉฑเจš เจธเจฎเจพเจจ เจฒเจพเจญ เจชเฉเจฐเจฆเจพเจจ เจ•เจฐเจฆเจพ เจนเฉˆเฅค

GitOps เจฒเจˆ เจ•เฉ‹เจˆ เจ…เจ•เจพเจฆเจฎเจฟเจ• เจชเจฐเจฟเจญเจพเจธเจผเจพ เจœเจพเจ‚ เจจเจฟเจฏเจฎเจพเจ‚ เจฆเจพ เจชเฉเจฐเจตเจพเจจเจฟเจค เจธเฉˆเฉฑเจŸ เจจเจนเฉ€เจ‚ เจนเฉˆ, เจธเจฟเจฐเจซเจผ เจธเจฟเจงเจพเจ‚เจคเจพเจ‚ เจฆเจพ เจ‡เฉฑเจ• เจธเจฎเฉ‚เจน เจนเฉˆ เจœเจฟเจธ 'เจคเฉ‡ เจ‡เจน เจ…เจญเจฟเจ†เจธ เจฌเจฃเจพเจ‡เจ† เจ—เจฟเจ† เจนเฉˆ:

  • เจธเจฟเจธเจŸเจฎ เจฆเจพ เจ˜เฉ‹เจธเจผเจฃเจพเจคเจฎเจ• เจตเฉ‡เจฐเจตเจพ Git เจฐเจฟเจชเฉ‹เจœเจผเจŸเจฐเฉ€ (เจธเฉฐเจฐเจšเจจเจพ, เจจเจฟเจ—เจฐเจพเจจเฉ€, เจ†เจฆเจฟ) เจตเจฟเฉฑเจš เจธเจŸเฉ‹เจฐ เจ•เฉ€เจคเจพ เจœเจพเจ‚เจฆเจพ เจนเฉˆเฅค
  • เจฐเจพเจœ เจตเจฟเฉฑเจš เจคเจฌเจฆเฉ€เจฒเฉ€เจ†เจ‚ เจชเฉเฉฑเจฒ เจฌเฉ‡เจจเจคเฉ€เจ†เจ‚ เจฐเจพเจนเฉ€เจ‚ เจ•เฉ€เจคเฉ€เจ†เจ‚ เจœเจพเจ‚เจฆเฉ€เจ†เจ‚ เจนเจจเฅค
  • เจšเฉฑเจฒ เจฐเจนเฉ‡ เจธเจฟเจธเจŸเจฎเจพเจ‚ เจฆเฉ€ เจธเจฅเจฟเจคเฉ€ เจจเฉ‚เฉฐ Git เจชเฉเจธเจผ เจฌเฉ‡เจจเจคเฉ€เจ†เจ‚ เจฆเฉ€ เจตเจฐเจคเฉ‹เจ‚ เจ•เจฐเจฆเฉ‡ เจนเฉ‹เจ เจฐเจฟเจชเฉ‹เจœเจผเจŸเจฐเฉ€ เจตเจฟเฉฑเจš เจกเฉ‡เจŸเจพ เจฆเฉ‡ เจ…เจจเฉเจธเจพเจฐ เจฒเจฟเจ†เจ‡เจ† เจœเจพเจ‚เจฆเจพ เจนเฉˆเฅค

GitOps เจธเจฟเจงเจพเจ‚เจค

  • เจธเจฟเจธเจŸเจฎ เจชเจฐเจฟเจญเจพเจธเจผเจพเจตเจพเจ‚ เจจเฉ‚เฉฐ เจธเจฐเฉ‹เจค เจ•เฉ‹เจก เจตเจœเฉ‹เจ‚ เจฆเจฐเจธเจพเจ‡เจ† เจ—เจฟเจ† เจนเฉˆ

เจธเจฟเจธเจŸเจฎ เจ•เฉŒเจ‚เจซเจฟเจ—เจฐเฉ‡เจธเจผเจจ เจจเฉ‚เฉฐ เจ•เฉ‹เจก เจตเจœเฉ‹เจ‚ เจฎเฉฐเจจเจฟเจ† เจœเจพเจ‚เจฆเจพ เจนเฉˆ เจคเจพเจ‚ เจœเฉ‹ เจ‡เจธเจจเฉ‚เฉฐ เจ‡เฉฑเจ• เจ—เจฟเฉฑเจŸ เจฐเจฟเจชเฉ‹เจœเจผเจŸเจฐเฉ€ เจตเจฟเฉฑเจš เจธเจŸเฉ‹เจฐ เจ•เฉ€เจคเจพ เจœเจพ เจธเจ•เฉ‡ เจ…เจคเฉ‡ เจ†เจŸเฉ‹เจฎเฉˆเจŸเจฟเจ•เจฒเฉ€ เจธเฉฐเจธเจ•เจฐเจฃ เจฌเจฃเจพเจ‡เจ† เจœเจพ เจธเจ•เฉ‡, เจœเฉ‹ เจธเฉฑเจš เจฆเฉ‡ เจ‡เฉฑเจ• เจธเจฐเฉ‹เจค เจตเจœเฉ‹เจ‚ เจ•เฉฐเจฎ เจ•เจฐเจฆเจพ เจนเฉˆเฅค เจ‡เจน เจชเจนเฉเฉฐเจš เจธเจฟเจธเจŸเจฎเจพเจ‚ เจตเจฟเฉฑเจš เจฐเฉ‹เจฒเจ†เจ‰เจŸ เจ…เจคเฉ‡ เจฐเฉ‹เจฒเจฌเฉˆเจ• เจคเจฌเจฆเฉ€เจฒเฉ€เจ†เจ‚ เจจเฉ‚เฉฐ เจ†เจธเจพเจจ เจฌเจฃเจพเจ‰เจ‚เจฆเฉ€ เจนเฉˆเฅค

  • เจธเจฟเจธเจŸเจฎเจพเจ‚ เจฆเฉ€ เจฒเฉ‹เฉœเฉ€เจฆเฉ€ เจธเจฅเจฟเจคเฉ€ เจ…เจคเฉ‡ เจธเฉฐเจฐเจšเจจเจพ Git เจตเจฟเฉฑเจš เจธเฉˆเฉฑเจŸ เจ…เจคเฉ‡ เจธเฉฐเจธเจ•เจฐเจฃ เจนเจจ

Git เจตเจฟเฉฑเจš เจธเจฟเจธเจŸเจฎเจพเจ‚ เจฆเฉ€ เจฒเฉ‹เฉœเฉ€เจฆเฉ€ เจธเจฅเจฟเจคเฉ€ เจจเฉ‚เฉฐ เจธเจŸเฉ‹เจฐ เจ•เจฐเจจ เจ…เจคเฉ‡ เจธเฉฐเจธเจ•เจฐเจฃ เจ•เจฐเจ•เฉ‡, เจ…เจธเฉ€เจ‚ เจธเจฟเจธเจŸเจฎเจพเจ‚ เจ…เจคเฉ‡ เจเจชเจฒเฉ€เจ•เฉ‡เจธเจผเจจเจพเจ‚ เจตเจฟเฉฑเจš เจคเจฌเจฆเฉ€เจฒเฉ€เจ†เจ‚ เจจเฉ‚เฉฐ เจ†เจธเจพเจจเฉ€ เจจเจพเจฒ เจฐเฉ‹เจฒ เจ†เจŠเจŸ เจ…เจคเฉ‡ เจฐเฉ‹เจฒ เจฌเฉˆเจ• เจ•เจฐเจจ เจฆเฉ‡ เจฏเฉ‹เจ— เจนเฉเฉฐเจฆเฉ‡ เจนเจพเจ‚เฅค เจ…เจธเฉ€เจ‚ เจ•เฉ‹เจก เจฆเฉ€ เจฎเจฒเจ•เฉ€เจ…เจค เจจเฉ‚เฉฐ เจจเจฟเจฏเฉฐเจคเจฐเจฟเจค เจ•เจฐเจจ เจ…เจคเฉ‡ เจ‡เจธเจฆเฉ€ เจชเฉเจฐเจฎเจพเจฃเจฟเจ•เจคเจพ เจฆเฉ€ เจชเฉเจธเจผเจŸเฉ€ เจ•เจฐเจจ เจฒเจˆ Git เจฆเฉ‡ เจธเฉเจฐเฉฑเจ–เจฟเจ† เจตเจฟเจงเฉ€เจ†เจ‚ เจฆเฉ€ เจตเจฐเจคเฉ‹เจ‚ เจตเฉ€ เจ•เจฐ เจธเจ•เจฆเฉ‡ เจนเจพเจ‚เฅค

  • เจ•เฉŒเจ‚เจซเจฟเจ—เจฐเฉ‡เจธเจผเจจ เจคเจฌเจฆเฉ€เจฒเฉ€เจ†เจ‚ เจชเฉเฉฑเจฒ เจฌเฉ‡เจจเจคเฉ€เจ†เจ‚ เจฆเฉเจ†เจฐเจพ เจ†เจชเจฃเฉ‡ เจ†เจช เจฒเจพเจ—เฉ‚ เจ•เฉ€เจคเฉ€เจ†เจ‚ เจœเจพ เจธเจ•เจฆเฉ€เจ†เจ‚ เจนเจจ

Git เจชเฉเฉฑเจฒ เจฌเฉ‡เจจเจคเฉ€เจ†เจ‚ เจฆเฉ€ เจตเจฐเจคเฉ‹เจ‚ เจ•เจฐเจฆเฉ‡ เจนเฉ‹เจ, เจ…เจธเฉ€เจ‚ เจ†เจธเจพเจจเฉ€ เจจเจพเจฒ เจจเจฟเจฏเฉฐเจคเจฐเจฃ เจ•เจฐ เจธเจ•เจฆเฉ‡ เจนเจพเจ‚ เจ•เจฟ เจฐเจฟเจชเฉ‹เจœเจผเจŸเจฐเฉ€ เจตเจฟเฉฑเจš เจธเฉฐเจฐเจšเจจเจพเจตเจพเจ‚ เจตเจฟเฉฑเจš เจคเจฌเจฆเฉ€เจฒเฉ€เจ†เจ‚ เจ•เจฟเจตเฉ‡เจ‚ เจฒเจพเจ—เฉ‚ เจ•เฉ€เจคเฉ€เจ†เจ‚ เจœเจพเจ‚เจฆเฉ€เจ†เจ‚ เจนเจจเฅค เจ‰เจฆเจพเจนเจฐเจจ เจฒเจˆ, เจ‰เจนเจจเจพเจ‚ เจจเฉ‚เฉฐ เจŸเฉ€เจฎ เจฆเฉ‡ เจฆเฉ‚เจœเฉ‡ เจฎเฉˆเจ‚เจฌเจฐเจพเจ‚ เจจเฉ‚เฉฐ เจธเจฎเฉ€เจ–เจฟเจ† เจฒเจˆ เจฆเจฟเฉฑเจคเจพ เจœเจพ เจธเจ•เจฆเจพ เจนเฉˆ เจœเจพเจ‚ CI เจŸเฉˆเจธเจŸเจพเจ‚ เจฐเจพเจนเฉ€เจ‚ เจšเจฒเจพเจ‡เจ† เจœเจพ เจธเจ•เจฆเจพ เจนเฉˆ, เจ†เจฆเจฟเฅค

เจ…เจคเฉ‡ เจ‰เจธเฉ‡ เจธเจฎเฉ‡เจ‚, เจชเฉเจฐเจฌเฉฐเจงเจ•เฉ€ เจธเจผเจ•เจคเฉ€เจ†เจ‚ เจจเฉ‚เฉฐ เจ–เฉฑเจฌเฉ‡ เจ…เจคเฉ‡ เจธเฉฑเจœเฉ‡ เจตเฉฐเจกเจฃ เจฆเฉ€ เจ•เฉ‹เจˆ เจฒเฉ‹เฉœ เจจเจนเฉ€เจ‚ เจนเฉˆ. เจธเฉฐเจฐเจšเจจเจพ เจคเจฌเจฆเฉ€เจฒเฉ€เจ†เจ‚ เจ•เจฐเจจ เจฒเจˆ, เจ‰เจชเจญเฉ‹เจ—เจคเจพเจตเจพเจ‚ เจจเฉ‚เฉฐ เจธเจฟเจฐเจซ Git เจฐเจฟเจชเฉ‹เจœเจผเจŸเจฐเฉ€ เจตเจฟเฉฑเจš เจ‰เจšเจฟเจค เจ…เจจเฉเจฎเจคเฉ€เจ†เจ‚ เจฆเฉ€ เจฒเฉ‹เฉœ เจนเฉเฉฐเจฆเฉ€ เจนเฉˆ เจœเจฟเฉฑเจฅเฉ‡ เจ‰เจน เจธเฉฐเจฐเจšเจจเจพ เจธเจŸเฉ‹เจฐ เจ•เฉ€เจคเฉ€เจ†เจ‚ เจœเจพเจ‚เจฆเฉ€เจ†เจ‚ เจนเจจเฅค

  • เจธเฉฐเจฐเจšเจจเจพ เจฆเฉ‡ เจฌเฉ‡เจ•เจพเจฌเฉ‚ เจตเจนเจพเจ… เจฆเฉ€ เจธเจฎเฉฑเจธเจฟเจ† เจจเฉ‚เฉฐ เจนเฉฑเจฒ เจ•เจฐเจจเจพ

เจ‡เฉฑเจ• เจตเจพเจฐ เจธเจฟเจธเจŸเจฎ เจฆเฉ€ เจฒเฉ‹เฉœเฉ€เจฆเฉ€ เจธเจฅเจฟเจคเฉ€ เจ‡เฉฑเจ• Git เจฐเจฟเจชเฉ‹เจœเจผเจŸเจฐเฉ€ เจตเจฟเฉฑเจš เจธเจŸเฉ‹เจฐ เจนเฉ‹ เจœเจพเจฃ เจคเฉ‹เจ‚ เจฌเจพเจ…เจฆ, เจธเจพเจจเฉ‚เฉฐ เจธเจฟเจฐเจซเจผ เจ‰เจน เจธเฉŒเจซเจŸเจตเฉ‡เจ…เจฐ เจฒเฉฑเจญเจฃเจพ เจนเฉˆ เจœเฉ‹ เจ‡เจน เจฏเจ•เฉ€เจจเฉ€ เจฌเจฃเจพเจเจ—เจพ เจ•เจฟ เจธเจฟเจธเจŸเจฎ เจฆเฉ€ เจฎเฉŒเจœเฉ‚เจฆเจพ เจธเจฅเจฟเจคเฉ€ เจ‡เจธเจฆเฉ€ เจฒเฉ‹เฉœเฉ€เจ‚เจฆเฉ€ เจธเจฅเจฟเจคเฉ€ เจจเจพเจฒ เจฎเฉ‡เจฒ เจ–เจพเจ‚เจฆเฉ€ เจนเฉˆเฅค เจœเฉ‡เจ•เจฐ เจ…เจœเจฟเจนเจพ เจจเจนเฉ€เจ‚ เจนเฉˆ, เจคเจพเจ‚ เจ‡เจธ เจธเฉŒเจซเจŸเจตเฉ‡เจ…เจฐ เจจเฉ‚เฉฐ - เจธเฉˆเจŸเจฟเฉฐเจ—เจพเจ‚ 'เจคเฉ‡ เจจเจฟเจฐเจญเจฐ เจ•เจฐเจฆเฉ‡ เจนเฉ‹เจ - เจœเจพเจ‚ เจคเจพเจ‚ เจ†เจชเจฃเฉ‡ เจ†เจช เจนเฉ€ เจฎเจคเจญเฉ‡เจฆ เจจเฉ‚เฉฐ เจ–เจคเจฎ เจ•เจฐเจจเจพ เจšเจพเจนเฉ€เจฆเจพ เจนเฉˆ, เจœเจพเจ‚ เจธเจพเจจเฉ‚เฉฐ เจธเฉฐเจฐเจšเจจเจพ เจกเฉเจฐเจพเจซเจŸ เจฌเจพเจฐเฉ‡ เจธเฉ‚เจšเจฟเจค เจ•เจฐเจจเจพ เจšเจพเจนเฉ€เจฆเจพ เจนเฉˆเฅค

OpenShift เจฒเจˆ GitOps เจฎเจพเจกเจฒ

เจ†เจจ-เจ•เจฒเฉฑเจธเจŸเจฐ เจฐเจฟเจธเฉ‹เจฐเจธ เจฐเฉ€เจ•เฉŒเจ‚เจธเฉ€เจฒเจฐ

เจ‡เจธ เจฎเจพเจกเจฒ เจฆเฉ‡ เจ…เจจเฉเจธเจพเจฐ, เจ•เจฒเฉฑเจธเจŸเจฐ เจตเจฟเฉฑเจš เจ‡เฉฑเจ• เจ•เฉฐเจŸเจฐเฉ‹เจฒเจฐ เจนเฉˆ เจœเฉ‹ เจ•เจฟ เจ•เจฒเฉฑเจธเจŸเจฐ เจฆเฉ‡ เจ…เจธเจฒ เจธเจฐเฉ‹เจคเจพเจ‚ เจจเจพเจฒ เจ—เจฟเจŸ เจฐเจฟเจชเฉ‹เจœเจผเจŸเจฐเฉ€ เจตเจฟเฉฑเจš เจ•เฉเจฌเจฐเจจเฉ‡เจŸเจธ เจธเจฐเฉ‹เจคเจพเจ‚ (YAML เจซเจพเจˆเจฒเจพเจ‚) เจฆเฉ€ เจคเฉเจฒเจจเจพ เจ•เจฐเจจ เจฒเจˆ เจœเจผเจฟเฉฐเจฎเฉ‡เจตเจพเจฐ เจนเฉˆเฅค เจœเฉ‡เจ•เจฐ เจฎเจคเจญเฉ‡เจฆเจพเจ‚ เจฆเจพ เจชเจคเจพ เจฒเจ—เจพเจ‡เจ† เจœเจพเจ‚เจฆเจพ เจนเฉˆ, เจคเจพเจ‚ เจ•เฉฐเจŸเจฐเฉ‹เจฒเจฐ เจธเฉ‚เจšเจจเจพเจตเจพเจ‚ เจญเฉ‡เจœเจฆเจพ เจนเฉˆ เจ…เจคเฉ‡ เจธเฉฐเจญเจต เจคเฉŒเจฐ 'เจคเฉ‡ เจ…เฉฐเจคเจฐ เจจเฉ‚เฉฐ เจ เฉ€เจ• เจ•เจฐเจจ เจฒเจˆ เจ•เจพเจฐเจตเจพเจˆ เจ•เจฐเจฆเจพ เจนเฉˆเฅค เจ‡เจน GitOps เจฎเจพเจกเจฒ เจเจ‚เจฅเฉ‹เจธ เจ•เฉŒเจ‚เจซเจฟเจ— เจฎเฉˆเจจเฉ‡เจœเจฎเฉˆเจ‚เจŸ เจ…เจคเฉ‡ เจตเฉ‡เจตเจตเจฐเจ•เจธ เจซเจฒเฉˆเจ•เจธ เจตเจฟเฉฑเจš เจตเจฐเจคเจฟเจ† เจœเจพเจ‚เจฆเจพ เจนเฉˆเฅค

OpenShift เจฒเจˆ GitOps เจฆเฉ€ เจœเจพเจฃ-เจชเจ›เจพเจฃ

เจฌเจพเจนเจฐเฉ€ เจธเฉฐเจธเจพเจงเจจ เจฐเฉ€เจ•เจจเจธเจฟเจฒเจฐ (เจชเฉเจธเจผ)

เจ‡เจธ เจฎเจพเจกเจฒ เจจเฉ‚เฉฐ เจชเจฟเจ›เจฒเฉ‡ เจฎเจพเจกเจฒ เจฆเฉ€ เจ‡เฉฑเจ• เจชเจฐเจฟเจตเจฐเจคเจจ เจฎเฉฐเจจเจฟเจ† เจœเจพ เจธเจ•เจฆเจพ เจนเฉˆ, เจœเจฆเฉ‹เจ‚ เจธเจพเจกเฉ‡ เจ•เฉ‹เจฒ "Git เจฐเจฟเจชเฉ‹เจœเจผเจŸเจฐเฉ€ - เจ•เฉเจฌเจฐเจจเฉ‡เจŸเจธ เจ•เจฒเฉฑเจธเจŸเจฐ" เจœเฉ‹เฉœเจฟเจ†เจ‚ เจตเจฟเฉฑเจš เจธเจฐเฉ‹เจคเจพเจ‚ เจจเฉ‚เฉฐ เจธเจฎเจ•เจพเจฒเฉ€ เจ•เจฐเจจ เจฒเจˆ เจœเจผเจฟเฉฐเจฎเฉ‡เจตเจพเจฐ เจ‡เฉฑเจ• เจœเจพเจ‚ เจตเฉฑเจง เจ•เฉฐเจŸเจฐเฉ‹เจฒเจฐ เจนเฉเฉฐเจฆเฉ‡ เจนเจจเฅค เจ‡เฉฑเจฅเฉ‡ เจซเจฐเจ• เจ‡เจน เจนเฉˆ เจ•เจฟ เจนเจฐเฉ‡เจ• เจชเฉเจฐเจฌเฉฐเจงเจฟเจค เจ•เจฒเฉฑเจธเจŸเจฐ เจฆเจพ เจ†เจชเจฃเจพ เจตเฉฑเจ–เจฐเจพ เจ•เฉฐเจŸเจฐเฉ‹เจฒเจฐ เจœเจผเจฐเฉ‚เจฐเฉ€ เจจเจนเฉ€เจ‚ เจนเฉเฉฐเจฆเจพเฅค Git - k8s เจ•เจฒเฉฑเจธเจŸเจฐ เจœเฉ‹เฉœเจฟเจ†เจ‚ เจจเฉ‚เฉฐ เจ…เจ•เจธเจฐ CRDs (เจ•เจธเจŸเจฎ เจธเจฐเฉ‹เจค เจชเจฐเจฟเจญเจพเจธเจผเจพเจตเจพเจ‚) เจตเจœเฉ‹เจ‚ เจชเจฐเจฟเจญเจพเจธเจผเจฟเจค เจ•เฉ€เจคเจพ เจœเจพเจ‚เจฆเจพ เจนเฉˆ, เจœเฉ‹ เจ‡เจน เจตเจฐเจฃเจจ เจ•เจฐ เจธเจ•เจฆเจพ เจนเฉˆ เจ•เจฟ เจ•เฉฐเจŸเจฐเฉ‹เจฒเจฐ เจจเฉ‚เฉฐ เจธเจฎเจ•เจพเจฒเฉ€เจ•เจฐเจจ เจ•เจฟเจตเฉ‡เจ‚ เจ•เจฐเจจเจพ เจšเจพเจนเฉ€เจฆเจพ เจนเฉˆเฅค เจ‡เจธ เจฎเจพเจกเจฒ เจฆเฉ‡ เจ…เฉฐเจฆเจฐ, เจ•เฉฐเจŸเจฐเฉ‹เจฒเจฐ CRD เจตเจฟเฉฑเจš เจฆเจฐเจธเจพเจ เจ—เจ Git เจฐเจฟเจชเฉ‹เจœเจผเจŸเจฐเฉ€ เจฆเฉ€ เจ•เฉเจฌเจฐเจจเฉ‡เจŸเจธ เจ•เจฒเฉฑเจธเจŸเจฐ เจธเจฐเฉ‹เจคเจพเจ‚ เจจเจพเจฒ เจคเฉเจฒเจจเจพ เจ•เจฐเจฆเฉ‡ เจนเจจ, เจœเฉ‹ เจ•เจฟ CRD เจตเจฟเฉฑเจš เจตเฉ€ เจฆเจฐเจธเจพเจ เจ—เจ เจนเจจ, เจ…เจคเฉ‡ เจคเฉเจฒเจจเจพ เจฆเฉ‡ เจจเจคเฉ€เจœเจฟเจ†เจ‚ เจฆเฉ‡ เจ†เจงเจพเจฐ 'เจคเฉ‡ เจ‰เจšเจฟเจค เจ•เจพเจฐเจตเจพเจˆเจ†เจ‚ เจ•เจฐเจฆเฉ‡ เจนเจจเฅค เจ–เจพเจธ เจคเฉŒเจฐ 'เจคเฉ‡, เจ‡เจน GitOps เจฎเจพเจกเจฒ ArgoCD เจตเจฟเฉฑเจš เจตเจฐเจคเจฟเจ† เจœเจพเจ‚เจฆเจพ เจนเฉˆเฅค

OpenShift เจฒเจˆ GitOps เจฆเฉ€ เจœเจพเจฃ-เจชเจ›เจพเจฃ

OpenShift เจชเจฒเฉ‡เจŸเจซเจพเจฐเจฎ 'เจคเฉ‡ GitOps

เจฎเจฒเจŸเฉ€-เจ•เจฒเฉฑเจธเจŸเจฐ เจ•เฉเจฌเจฐเจจเฉ‡เจŸเจธ เจฌเฉเจจเจฟเจ†เจฆเฉ€ เจขเจพเจ‚เจšเฉ‡ เจฆเจพ เจชเฉเจฐเจธเจผเจพเจธเจจ

เจ•เฉเจฌเจฐเจจเฉ‡เจŸเจธ เจฆเฉ‡ เจซเฉˆเจฒเจฃ เจ…เจคเฉ‡ เจฌเจนเฉ-เจ•เจฒเจพเจŠเจก เจฐเจฃเจจเฉ€เจคเฉ€เจ†เจ‚ เจ…เจคเฉ‡ เจ•เจฟเจจเจพเจฐเฉ‡ เจ•เฉฐเจชเจฟเจŠเจŸเจฟเฉฐเจ— เจฆเฉ€ เจตเจงเจฆเฉ€ เจชเฉเจฐเจธเจฟเฉฑเจงเฉ€ เจฆเฉ‡ เจจเจพเจฒ, เจชเฉเจฐเจคเฉ€ เจ—เจพเจนเจ• เจ“เจชเจจเจธเจผเจฟเจซเจŸ เจ•เจฒเฉฑเจธเจŸเจฐเจพเจ‚ เจฆเฉ€ เจ”เจธเจค เจ—เจฟเจฃเจคเฉ€ เจตเฉ€ เจตเจง เจฐเจนเฉ€ เจนเฉˆเฅค

เจ‰เจฆเจพเจนเจฐเจจ เจฒเจˆ, เจ•เจฟเจจเจพเจฐเฉ‡ เจ•เฉฐเจชเจฟเจŠเจŸเจฟเฉฐเจ— เจฆเฉ€ เจตเจฐเจคเฉ‹เจ‚ เจ•เจฐเจฆเฉ‡ เจธเจฎเฉ‡เจ‚, เจ‡เฉฑเจ• เจ—เจพเจนเจ• เจฆเฉ‡ เจ•เจฒเฉฑเจธเจŸเจฐ เจธเฉˆเจ‚เจ•เฉœเฉ‡ เจœเจพเจ‚ เจนเจœเจผเจพเจฐเจพเจ‚ เจตเจฟเฉฑเจš เจคเจพเจ‡เจจเจพเจค เจ•เฉ€เจคเฉ‡ เจœเจพ เจธเจ•เจฆเฉ‡ เจนเจจเฅค เจจเจคเฉ€เจœเฉ‡ เจตเจœเฉ‹เจ‚, เจ‰เจธเจจเฉ‚เฉฐ เจœเจจเจคเจ• เจ•เจฒเจพเจ‰เจก เจ…เจคเฉ‡ เจ†เจจ-เจชเฉเจฐเฉ€เจฎเจฟเจธ เจตเจฟเฉฑเจš เจ•เจˆ เจธเฉเจคเฉฐเจคเจฐ เจœเจพเจ‚ เจคเจพเจฒเจฎเฉ‡เจฒ เจตเจพเจฒเฉ‡ เจ“เจชเจจเจธเจผเจฟเจซเจŸ เจ•เจฒเฉฑเจธเจŸเจฐเจพเจ‚ เจฆเจพ เจชเฉเจฐเจฌเฉฐเจงเจจ เจ•เจฐเจจ เจฒเจˆ เจฎเจœเจฌเฉ‚เจฐ เจ•เฉ€เจคเจพ เจœเจพเจ‚เจฆเจพ เจนเฉˆเฅค

เจ‡เจธ เจธเจฅเจฟเจคเฉ€ เจตเจฟเฉฑเจš, เจฌเจนเฉเจค เจธเจพเจฐเฉ€เจ†เจ‚ เจธเจฎเฉฑเจธเจฟเจ†เจตเจพเจ‚ เจจเฉ‚เฉฐ เจนเฉฑเจฒ เจ•เฉ€เจคเจพ เจœเจพเจฃเจพ เจšเจพเจนเฉ€เจฆเจพ เจนเฉˆ, เจ–เจพเจธ เจ•เจฐเจ•เฉ‡:

  • เจจเจฟเจฏเฉฐเจคเจฐเจฃ เจ•เจฐเฉ‹ เจ•เจฟ เจ•เจฒเฉฑเจธเจŸเจฐ เจ‡เฉฑเจ• เจธเจฎเจพเจจ เจธเจฅเจฟเจคเฉ€ เจตเจฟเฉฑเจš เจนเจจ (เจธเฉฐเจฐเจšเจจเจพ, เจจเจฟเจ—เจฐเจพเจจเฉ€, เจธเจŸเฉ‹เจฐเฉ‡เจœ, เจ†เจฆเจฟ)
  • เจ•เจฟเจธเฉ‡ เจœเจพเจฃเฉ€-เจชเจ›เจพเจฃเฉ€ เจธเจฅเจฟเจคเฉ€ เจฆเฉ‡ เจ†เจงเจพเจฐ 'เจคเฉ‡ เจ•เจฒเฉฑเจธเจŸเจฐ เจฎเฉเฉœ เจฌเจฃเจพเจ“ (เจœเจพเจ‚ เจฐเฉ€เจธเจŸเฉ‹เจฐ)เฅค
  • เจ•เจฟเจธเฉ‡ เจœเจพเจฃเฉ€-เจชเจ›เจพเจฃเฉ€ เจธเจฅเจฟเจคเฉ€ เจฆเฉ‡ เจ†เจงเจพเจฐ 'เจคเฉ‡ เจจเจตเฉ‡เจ‚ เจ•เจฒเฉฑเจธเจŸเจฐ เจฌเจฃเจพเจ“เฅค
  • เจ•เจˆ OpenShift เจ•เจฒเฉฑเจธเจŸเจฐเจพเจ‚ เจตเจฟเฉฑเจš เจคเจฌเจฆเฉ€เจฒเฉ€เจ†เจ‚ เจจเฉ‚เฉฐ เจฐเฉ‹เจฒ เจ†เจŠเจŸ เจ•เจฐเฉ‹เฅค
  • เจ‡เฉฑเจ• เจคเฉ‹เจ‚ เจตเฉฑเจง OpenShift เจ•เจฒเฉฑเจธเจŸเจฐเจพเจ‚ เจตเจฟเฉฑเจš เจคเจฌเจฆเฉ€เจฒเฉ€เจ†เจ‚ เจจเฉ‚เฉฐ เจฐเฉ‹เจฒ เจฌเฉˆเจ• เจ•เจฐเฉ‹เฅค
  • เจŸเฉˆเจ‚เจชเจฒเฉ‡เจŸ เจ•เฉ€เจคเฉ€เจ†เจ‚ เจธเฉฐเจฐเจšเจจเจพเจตเจพเจ‚ เจจเฉ‚เฉฐ เจตเฉฑเจ–-เจตเฉฑเจ– เจตเจพเจคเจพเจตเจฐเจฃเจพเจ‚ เจจเจพเจฒ เจฒเจฟเฉฐเจ• เจ•เจฐเฉ‹เฅค

เจเจชเจฒเฉ€เจ•เฉ‡เจธเจผเจจ เจธเฉฐเจฐเจšเจจเจพเจตเจพเจ‚

เจ†เจชเจฃเฉ‡ เจœเฉ€เจตเจจ-เจšเฉฑเจ•เจฐ เจฆเฉ‡ เจฆเฉŒเจฐเจพเจจ, เจเจชเจฒเฉ€เจ•เฉ‡เจธเจผเจจ เจ…เจ•เจธเจฐ เจ‰เจคเจชเจพเจฆเจจ เจ•เจฒเฉฑเจธเจŸเจฐ เจตเจฟเฉฑเจš เจ–เจคเจฎ เจนเฉ‹เจฃ เจคเฉ‹เจ‚ เจชเจนเจฟเจฒเจพเจ‚ เจ•เจฒเฉฑเจธเจŸเจฐเจพเจ‚ (เจฆเฉ‡เจต, เจชเฉœเจพเจ…, เจ†เจฆเจฟ) เจฆเฉ€ เจ‡เฉฑเจ• เจฒเฉœเฉ€ เจตเจฟเฉฑเจšเฉ‹เจ‚ เจฒเฉฐเจ˜เจฆเฉ€เจ†เจ‚ เจนเจจเฅค เจ‡เจธ เจคเฉ‹เจ‚ เจ‡เจฒเจพเจตเจพ, เจ‰เจชเจฒเจฌเจงเจคเจพ เจ…เจคเฉ‡ เจธเจ•เฉ‡เจฒเฉ‡เจฌเจฟเจฒเจŸเฉ€ เจฒเฉ‹เฉœเจพเจ‚ เจฆเฉ‡ เจ•เจพเจฐเจจ, เจ—เจพเจนเจ• เจ…เจ•เจธเจฐ เจ•เจˆ เจ†เจจ-เจชเฉเจฐเฉ€เจฎเจพเจˆเจธ เจ•เจฒเฉฑเจธเจŸเจฐเจพเจ‚ เจœเจพเจ‚ เจœเจจเจคเจ• เจ•เจฒเจพเจ‰เจก เจชเจฒเฉ‡เจŸเจซเจพเจฐเจฎ เจฆเฉ‡ เจ•เจˆ เจ–เฉ‡เจคเจฐเจพเจ‚ เจตเจฟเฉฑเจš เจเจชเจฒเฉ€เจ•เฉ‡เจธเจผเจจเจพเจ‚ เจจเฉ‚เฉฐ เจคเฉˆเจจเจพเจค เจ•เจฐเจฆเฉ‡ เจนเจจเฅค

เจ‡เจธ เจธเจฅเจฟเจคเฉ€ เจตเจฟเฉฑเจš, เจนเฉ‡เจ เจพเจ‚ เจฆเจฟเฉฑเจคเฉ‡ เจ•เจพเจฐเจœเจพเจ‚ เจจเฉ‚เฉฐ เจนเฉฑเจฒ เจ•เฉ€เจคเจพ เจœเจพเจฃเจพ เจšเจพเจนเฉ€เจฆเจพ เจนเฉˆ:

  • เจ•เจฒเฉฑเจธเจŸเจฐเจพเจ‚ (เจฆเฉ‡เจต, เจชเฉœเจพเจ…, เจ†เจฆเจฟ) เจตเจฟเจšเจ•เจพเจฐ เจเจชเจฒเฉ€เจ•เฉ‡เจธเจผเจจเจพเจ‚ (เจฌเจพเจˆเจจเจฐเฉ€, เจธเฉฐเจฐเจšเจจเจพ, เจ†เจฆเจฟ) เจฆเฉ€ เจ—เจคเฉ€ เจจเฉ‚เฉฐ เจฏเจ•เฉ€เจจเฉ€ เจฌเจฃเจพเจ“เฅค
  • เจ•เจˆ OpenShift เจ•เจฒเฉฑเจธเจŸเจฐเจพเจ‚ เจตเจฟเฉฑเจš เจเจชเจฒเฉ€เจ•เฉ‡เจธเจผเจจเจพเจ‚ (เจฌเจพเจˆเจจเจฐเฉ€, เจธเฉฐเจฐเจšเจจเจพ, เจ†เจฆเจฟ) เจตเจฟเฉฑเจš เจฌเจฆเจฒเจพเจ… เจฐเฉ‹เจฒ เจ†เจŠเจŸ เจ•เจฐเฉ‹เฅค
  • เจชเจฟเจ›เจฒเฉ‡ เจœเจพเจฃเฉ‡-เจชเจ›เจพเจฃเฉ‡ เจฐเจพเจœ เจตเจฟเฉฑเจš เจเจชเจฒเฉ€เจ•เฉ‡เจธเจผเจจเจพเจ‚ เจตเจฟเฉฑเจš เจคเจฌเจฆเฉ€เจฒเฉ€เจ†เจ‚ เจจเฉ‚เฉฐ เจฐเฉ‹เจฒ เจฌเฉˆเจ• เจ•เจฐเฉ‹เฅค

OpenShift GitOps เจตเจฐเจคเฉ‹เจ‚ เจฆเฉ‡ เจ•เฉ‡เจธ

1. Git เจฐเจฟเจชเฉ‹เจœเจผเจŸเจฐเฉ€ เจคเฉ‹เจ‚ เจฌเจฆเจฒเจพเจ… เจฒเจพเจ—เฉ‚ เจ•เจฐเจจเจพ

เจ‡เฉฑเจ• เจ•เจฒเฉฑเจธเจŸเจฐ เจชเฉเจฐเจธเจผเจพเจธเจ• เจ‡เฉฑเจ• Git เจฐเจฟเจชเฉ‹เจœเจผเจŸเจฐเฉ€ เจตเจฟเฉฑเจš OpenShift เจ•เจฒเฉฑเจธเจŸเจฐ เจธเฉฐเจฐเจšเจจเจพเจตเจพเจ‚ เจจเฉ‚เฉฐ เจธเจŸเฉ‹เจฐ เจ•เจฐ เจธเจ•เจฆเจพ เจนเฉˆ เจ…เจคเฉ‡ เจ‰เจนเจจเจพเจ‚ เจจเฉ‚เฉฐ เจ†เจธเจพเจจเฉ€ เจจเจพเจฒ เจจเจตเฉ‡เจ‚ เจ•เจฒเฉฑเจธเจŸเจฐ เจฌเจฃเจพเจ‰เจฃ เจฒเจˆ เจ†เจชเจฃเฉ‡ เจ†เจช เจฒเจพเจ—เฉ‚ เจ•เจฐ เจธเจ•เจฆเจพ เจนเฉˆ เจ…เจคเฉ‡ เจ‰เจนเจจเจพเจ‚ เจจเฉ‚เฉฐ Git เจฐเจฟเจชเฉ‹เจœเจผเจŸเจฐเฉ€ เจตเจฟเฉฑเจš เจธเจŸเฉ‹เจฐ เจ•เฉ€เจคเฉ‡ เจœเจพเจฃเฉ‡-เจชเจ›เจพเจฃเฉ‡ เจฐเจพเจœ เจฆเฉ‡ เจธเจฎเจพเจจ เจธเจฅเจฟเจคเฉ€ เจตเจฟเฉฑเจš เจฒเจฟเจ† เจธเจ•เจฆเจพ เจนเฉˆเฅค

2. เจธเฉ€เจ•เฉเจฐเฉ‡เจŸ เจฎเฉˆเจจเฉ‡เจœเจฐ เจจเจพเจฒ เจธเจฎเจ•เจพเจฒเฉ€เจ•เจฐเจจ

เจชเฉเจฐเจธเจผเจพเจธเจ• เจจเฉ‚เฉฐ เจ‡เจธ เจฒเจˆ เจตเจฟเจธเจผเฉ‡เจธเจผ เจคเฉŒเจฐ 'เจคเฉ‡ เจฌเจฃเจพเจ เจ—เจ เจŸเฉ‚เจฒเจธ เจฆเฉ€ เจตเจฐเจคเฉ‹เจ‚ เจ•เจฐเจ•เฉ‡ เจ‰เจนเจจเจพเจ‚ เจฆเจพ เจชเฉเจฐเจฌเฉฐเจงเจจ เจ•เจฐเจจ เจฒเจˆ Vault เจตเจฐเจ—เฉ‡ เจขเฉเจ•เจตเฉ‡เจ‚ เจธเฉŒเจซเจŸเจตเฉ‡เจ…เจฐ เจจเจพเจฒ OpenShift เจ—เฉเจชเจค เจตเจธเจคเฉ‚เจ†เจ‚ เจจเฉ‚เฉฐ เจธเจฟเฉฐเจ•เฉเจฐเฉ‹เจจเจพเจˆเจœเจผ เจ•เจฐเจจ เจฆเฉ€ เจฏเฉ‹เจ—เจคเจพ เจคเฉ‹เจ‚ เจตเฉ€ เจฒเจพเจญ เจนเฉ‹เจตเฉ‡เจ—เจพเฅค

3. เจตเจนเจฟเจฃ เจธเฉฐเจฐเจšเจจเจพ เจฆเจพ เจจเจฟเจฏเฉฐเจคเจฐเจฃ

เจเจกเจฎเจฟเจจ เจ•เฉ‡เจตเจฒ เจคเจพเจ‚ เจนเฉ€ เจชเฉฑเจ– เจตเจฟเฉฑเจš เจนเฉ‹เจตเฉ‡เจ—เจพ เจœเฉ‡เจ•เจฐ เจ“เจชเจจเจธเจผเจฟเจซเจŸ เจ—เจฟเจŸเจ“เจชเจธ เจ–เฉเจฆ เจ…เจธเจฒ เจธเฉฐเจฐเจšเจจเจพเจตเจพเจ‚ เจ…เจคเฉ‡ เจฐเจฟเจชเฉ‹เจœเจผเจŸเจฐเฉ€ เจตเจฟเฉฑเจš เจฆเจฐเจธเจพเจ เจ—เจ เจ…เฉฐเจคเจฐเจพเจ‚ เจฆเฉ€ เจชเจ›เจพเจฃ เจ•เจฐเจฆเจพ เจนเฉˆ เจ…เจคเฉ‡ เจšเฉ‡เจคเจพเจตเจจเฉ€ เจฆเจฟเฉฐเจฆเจพ เจนเฉˆ, เจคเจพเจ‚ เจœเฉ‹ เจ‰เจน เจคเฉ‡เจœเจผเฉ€ เจจเจพเจฒ เจตเจนเจฟเจฃ เจฆเจพ เจœเจตเจพเจฌ เจฆเฉ‡ เจธเจ•เจฃเฅค

4. เจ•เฉŒเจ‚เจซเจฟเจ—เจฐเฉ‡เจธเจผเจจ เจกเจฐเจพเจซเจŸ เจฌเจพเจฐเฉ‡ เจธเฉ‚เจšเจจเจพเจตเจพเจ‚

เจ‰เจน เจ‰เจธ เจธเจฅเจฟเจคเฉ€ เจตเจฟเฉฑเจš เจฒเจพเจญเจฆเจพเจ‡เจ• เจนเฉเฉฐเจฆเฉ‡ เจนเจจ เจœเจฆเฉ‹เจ‚ เจชเฉเจฐเจธเจผเจพเจธเจ• เจ†เจชเจฃเฉ‡ เจ†เจช เจนเฉ€ เจ‰เจšเจฟเจค เจ‰เจชเจพเจ… เจ•เจฐเจจ เจฒเจˆ เจคเฉเจฐเฉฐเจค เจธเฉฐเจฐเจšเจจเจพ เจกเฉเจฐเจพเจˆเจซเจŸ เจฆเฉ‡ เจฎเจพเจฎเจฒเจฟเจ†เจ‚ เจฌเจพเจฐเฉ‡ เจœเจพเจฃเจจเจพ เจšเจพเจนเฉเฉฐเจฆเจพ เจนเฉˆเฅค

5. เจตเจนเจฟเจฃ เจตเฉ‡เจฒเฉ‡ เจธเฉฐเจฐเจšเจจเจพเจตเจพเจ‚ เจฆเจพ เจฎเฉˆเจจเฉเจ…เจฒ เจธเจฎเจ•เจพเจฒเฉ€เจ•เจฐเจจ

เจชเฉเจฐเจธเจผเจพเจธเจ• เจจเฉ‚เฉฐ เจ•เจฒเฉฑเจธเจŸเจฐ เจจเฉ‚เฉฐ เจชเจฟเจ›เจฒเฉ€ เจœเจพเจฃเฉ€-เจชเจ›เจพเจฃเฉ€ เจธเจฅเจฟเจคเฉ€ 'เจคเฉ‡ เจคเฉ‡เจœเจผเฉ€ เจจเจพเจฒ เจตเจพเจชเจธ เจ•เจฐเจจ เจฒเจˆ, เจธเฉฐเจฐเจšเจจเจพ เจกเจฐเจพเจซเจŸ เจฆเฉ€ เจธเจฅเจฟเจคเฉ€ เจตเจฟเฉฑเจš เจ“เจชเจจเจธเจผเจฟเจซเจŸ เจ•เจฒเฉฑเจธเจŸเจฐ เจจเฉ‚เฉฐ Git เจฐเจฟเจชเฉ‹เจœเจผเจŸเจฐเฉ€ เจฆเฉ‡ เจจเจพเจฒ เจธเจฎเจ•เจพเจฒเฉ€ เจ•เจฐเจจ เจฆเฉ€ เจ†เจ—เจฟเจ† เจฆเจฟเฉฐเจฆเจพ เจนเฉˆเฅค

6. เจตเจนเจฟเจฃ เจตเฉ‡เจฒเฉ‡ เจธเฉฐเจฐเจšเจจเจพ เจฆเจพ เจ†เจŸเฉ‹-เจธเจฟเฉฐเจ•เฉเจฐเฉ‹เจจเจพเจˆเจœเจผเฉ‡เจธเจผเจจ

เจเจกเจฎเจฟเจจเจฟเจธเจŸเฉเจฐเฉ‡เจŸเจฐ เจ“เจชเจจเจธเจผเจฟเจซเจŸ เจ•เจฒเฉฑเจธเจŸเจฐ เจจเฉ‚เฉฐ เจฐเจฟเจชเฉ‹เจœเจผเจŸเจฐเฉ€ เจจเจพเจฒ เจ†เจชเจฃเฉ‡ เจ†เจช เจธเจฎเจ•เจพเจฒเฉ€ เจ•เจฐเจจ เจฒเจˆ เจ•เฉŒเจ‚เจซเจฟเจ—เจฐ เจตเฉ€ เจ•เจฐ เจธเจ•เจฆเจพ เจนเฉˆ เจœเจฆเฉ‹เจ‚ เจ‡เฉฑเจ• เจกเฉเจฐเฉˆเจซเจŸ เจฆเจพ เจชเจคเจพ เจฒเจ—เจพเจ‡เจ† เจœเจพเจ‚เจฆเจพ เจนเฉˆ, เจคเจพเจ‚ เจœเฉ‹ เจ•เจฒเฉฑเจธเจŸเจฐ เจธเฉฐเจฐเจšเจจเจพ เจนเจฎเฉ‡เจธเจผเจพเจ‚ เจ—เจฟเฉฑเจŸ เจตเจฟเฉฑเจš เจธเฉฐเจฐเจšเจจเจพเจตเจพเจ‚ เจจเจพเจฒ เจฎเฉ‡เจฒ เจ–เจพเจ‚เจฆเฉ€ เจนเฉ‹เจตเฉ‡เฅค

7. เจ•เจˆ เจ•เจฒเฉฑเจธเจŸเจฐ - เจ‡เฉฑเจ• เจฐเจฟเจชเฉ‹เจœเจผเจŸเจฐเฉ€

เจชเฉเจฐเจฌเฉฐเจงเจ• เจ‡เฉฑเจ• เจ—เจฟเฉฑเจŸ เจฐเจฟเจชเฉ‹เจœเจผเจŸเจฐเฉ€ เจตเจฟเฉฑเจš เจ•เจˆ เจตเฉฑเจ–-เจตเฉฑเจ– เจ“เจชเจจเจธเจผเจฟเจซเจŸ เจ•เจฒเฉฑเจธเจŸเจฐเจพเจ‚ เจฆเฉ€เจ†เจ‚ เจธเฉฐเจฐเจšเจจเจพเจตเจพเจ‚ เจจเฉ‚เฉฐ เจธเจŸเฉ‹เจฐ เจ•เจฐ เจธเจ•เจฆเจพ เจนเฉˆ เจ…เจคเฉ‡ เจฒเฉ‹เฉœ เจ…เจจเฉเจธเจพเจฐ เจ‰เจนเจจเจพเจ‚ เจจเฉ‚เฉฐ เจšเฉ‹เจฃเจตเฉ‡เจ‚ เจฐเฉ‚เจช เจตเจฟเฉฑเจš เจฒเจพเจ—เฉ‚ เจ•เจฐ เจธเจ•เจฆเจพ เจนเฉˆเฅค

8. เจ•เจฒเฉฑเจธเจŸเจฐ เจธเฉฐเจฐเจšเจจเจพเจตเจพเจ‚ เจฆเฉ€ เจฒเฉœเฉ€ (เจตเจฟเจฐเจธเจพ)

เจชเฉเจฐเจธเจผเจพเจธเจ• เจฐเจฟเจชเฉ‹เจœเจผเจŸเจฐเฉ€ เจตเจฟเฉฑเจš เจ•เจฒเฉฑเจธเจŸเจฐ เจ•เฉŒเจ‚เจซเจฟเจ—เจฐเฉ‡เจธเจผเจจเจพเจ‚ เจฆเฉ€ เจ‡เฉฑเจ• เจฒเฉœเฉ€ เจธเฉˆเจŸ เจ•เจฐ เจธเจ•เจฆเจพ เจนเฉˆ (เจชเฉœเจพเจ…, เจชเฉเจฐเฉ‹เจก, เจเจช เจชเฉ‹เจฐเจŸเจซเฉ‹เจฒเฉ€เจ“, เจ†เจฆเจฟเฅค เจตเจฟเจฐเจพเจธเจค เจฆเฉ‡ เจจเจพเจฒ)เฅค เจฆเฉ‚เจœเฉ‡ เจธเจผเจฌเจฆเจพเจ‚ เจตเจฟเฉฑเจš, เจ‡เจน เจจเจฟเจฐเจงเจพเจฐเจค เจ•เจฐ เจธเจ•เจฆเจพ เจนเฉˆ เจ•เจฟ เจ•เฉ€ เจธเฉฐเจฐเจšเจจเจพ เจ‡เฉฑเจ• เจœเจพเจ‚ เจ‡เฉฑเจ• เจคเฉ‹เจ‚ เจตเฉฑเจง เจ•เจฒเฉฑเจธเจŸเจฐเจพเจ‚ 'เจคเฉ‡ เจฒเจพเจ—เฉ‚ เจ•เฉ€เจคเฉ€ เจœเจพเจฃเฉ€ เจšเจพเจนเฉ€เจฆเฉ€ เจนเฉˆเฅค

เจ‰เจฆเจพเจนเจฐเจจ เจฒเจˆ, เจœเฉ‡เจ•เจฐ เจ‡เฉฑเจ• เจชเฉเจฐเจธเจผเจพเจธเจ• Git เจฐเจฟเจชเฉ‹เจœเจผเจŸเจฐเฉ€ เจตเจฟเฉฑเจš เจฆเจฐเจœเจพเจฌเฉฐเจฆเฉ€ โ€œเจชเฉเจฐเฉ‹เจกเจ•เจธเจผเจจ เจ•เจฒเฉฑเจธเจŸเจฐ (เจ‰เจคเจชเจพเจฆ) โ†’ เจธเจฟเจธเจŸเจฎ X เจ•เจฒเฉฑเจธเจŸเจฐ โ†’ เจธเจฟเจธเจŸเจฎ X เจฆเฉ‡ เจ‰เจคเจชเจพเจฆเจจ เจ•เจฒเฉฑเจธเจŸเจฐโ€ เจจเฉ‚เฉฐ เจธเฉˆเฉฑเจŸ เจ•เจฐเจฆเจพ เจนเฉˆ, เจคเจพเจ‚ เจนเฉ‡เจ เจพเจ‚ เจฆเจฟเฉฑเจคเฉ€เจ†เจ‚ เจธเฉฐเจฐเจšเจจเจพเจตเจพเจ‚ เจฆเจพ เจธเฉเจฎเฉ‡เจฒ เจธเจฟเจธเจŸเจฎ X เจฆเฉ‡ เจ‰เจคเจชเจพเจฆเจจ เจ•เจฒเฉฑเจธเจŸเจฐเจพเจ‚ เจ‰เฉฑเจคเฉ‡ เจฒเจพเจ—เฉ‚ เจ•เฉ€เจคเจพ เจœเจพเจ‚เจฆเจพ เจนเฉˆ:

  • เจธเจพเจฐเฉ‡ เจ‰เจคเจชเจพเจฆเจจ เจ•เจฒเฉฑเจธเจŸเจฐเจพเจ‚ เจฒเจˆ เจธเจพเจ‚เจเฉ€เจ†เจ‚ เจธเฉฐเจฐเจšเจจเจพเจตเจพเจ‚เฅค
  • เจธเจฟเจธเจŸเจฎ X เจ•เจฒเฉฑเจธเจŸเจฐ เจฒเจˆ เจธเฉฐเจฐเจšเจจเจพเฅค
  • X เจธเจฟเจธเจŸเจฎ เจ‰เจคเจชเจพเจฆเจจ เจ•เจฒเฉฑเจธเจŸเจฐ เจฒเจˆ เจธเฉฐเจฐเจšเจจเจพเฅค

9. เจŸเฉˆเจ‚เจชเจฒเฉ‡เจŸเจธ เจ…เจคเฉ‡ เจ•เฉŒเจ‚เจซเจฟเจ—เจฐเฉ‡เจธเจผเจจ เจ“เจตเจฐเจฐเจพเจˆเจก

เจชเฉเจฐเจธเจผเจพเจธเจ• เจตเจฟเจฐเจพเจธเจคเฉ€ เจธเฉฐเจฐเจšเจจเจพเจตเจพเจ‚ เจ…เจคเฉ‡ เจ‰เจนเจจเจพเจ‚ เจฆเฉ‡ เจฎเฉเฉฑเจฒเจพเจ‚ เจฆเฉ‡ เจ‡เฉฑเจ• เจธเฉˆเฉฑเจŸ เจจเฉ‚เฉฐ เจ“เจตเจฐเจฐเจพเจˆเจก เจ•เจฐ เจธเจ•เจฆเจพ เจนเฉˆ, เจ‰เจฆเจพเจนเจฐเจจ เจฒเจˆ, เจ–เจพเจธ เจ•เจฒเฉฑเจธเจŸเจฐเจพเจ‚ เจฒเจˆ เจธเฉฐเจฐเจšเจจเจพ เจจเฉ‚เฉฐ เจตเจงเฉ€เจ†-เจŸเจฟเจŠเจจ เจ•เจฐเจจ เจฒเจˆ เจœเจฟเจธ 'เจคเฉ‡ เจ‰เจน เจฒเจพเจ—เฉ‚ เจ•เฉ€เจคเฉ‡ เจœเจพเจฃเจ—เฉ‡เฅค

10. เจธเฉฐเจฐเจšเจจเจพเจตเจพเจ‚, เจเจชเจฒเฉ€เจ•เฉ‡เจธเจผเจจ เจ•เฉŒเจ‚เจซเจฟเจ—เจฐเฉ‡เจธเจผเจจเจพเจ‚ เจฒเจˆ เจšเฉ‹เจฃเจตเฉ‡เจ‚ เจธเจผเจพเจฎเจฒ เจ…เจคเฉ‡ เจฌเจพเจนเจฐ เจ•เฉฑเจขเฉ‹

เจชเฉเจฐเจฌเฉฐเจงเจ• เจ•เฉเจ เจตเจฟเจธเจผเฉ‡เจธเจผเจคเจพเจตเจพเจ‚ เจตเจพเจฒเฉ‡ เจ•เจฒเฉฑเจธเจŸเจฐเจพเจ‚ เจฒเจˆ เจเจชเจฒเฉ€เจ•เฉ‡เจธเจผเจจ เจœเจพเจ‚ เจ•เฉเจ เจธเฉฐเจฐเจšเจจเจพเจตเจพเจ‚ เจฆเฉ‡ เจ—เฉˆเจฐ-เจเจชเจฒเฉ€เจ•เฉ‡เจธเจผเจจ เจฒเจˆ เจธเจผเจฐเจคเจพเจ‚ เจธเฉˆเจŸ เจ•เจฐ เจธเจ•เจฆเจพ เจนเฉˆเฅค

11. เจŸเฉˆเจ‚เจชเจฒเฉ‡เจŸ เจธเจฎเจฐเจฅเจจ

เจนเจฐเฉ‡เจ• เจ–เจพเจธ เจเจชเจฒเฉ€เจ•เฉ‡เจธเจผเจจ เจฒเจˆ เจธเจญ เจคเฉ‹เจ‚ เจขเฉเจ•เจตเฉ‡เจ‚ เจซเจพเจฐเจฎเฉˆเจŸ เจฆเฉ€ เจตเจฐเจคเฉ‹เจ‚ เจ•เจฐเจจ เจฒเจˆ เจกเจฟเจตเฉˆเจฒเจชเจฐเจพเจ‚ เจจเฉ‚เฉฐ เจ‡เจน เจšเฉเจฃเจจ เจฆเฉ€ เจฏเฉ‹เจ—เจคเจพ เจคเฉ‹เจ‚ เจฒเจพเจญ เจนเฉ‹เจตเฉ‡เจ—เจพ เจ•เจฟ เจเจชเจฒเฉ€เจ•เฉ‡เจธเจผเจจ เจธเจฐเฉ‹เจคเจพเจ‚ เจจเฉ‚เฉฐ เจ•เจฟเจตเฉ‡เจ‚ เจชเจฐเจฟเจญเจพเจธเจผเจฟเจค เจ•เฉ€เจคเจพ เจœเจพเจตเฉ‡เจ—เจพ (เจนเฉˆเจฒเจฎ เจšเจพเจฐเจŸ, เจธเจผเฉเฉฑเจง เจ•เฉเจฌเจฐเจจเฉ‡เจŸเจธ เจฏเจพเจฎเจฒ, เจ†เจฆเจฟ)เฅค

OpenShift เจชเจฒเฉ‡เจŸเจซเจพเจฐเจฎ 'เจคเฉ‡ GitOps เจŸเฉ‚เจฒ

เจ†เจฐเจ—เฉ‹เจธเฉ€เจกเฉ€

เจ…เจฐเจ—เฉ‹เจธเฉ€เจกเฉ€ เจฌเจพเจนเจฐเฉ€ เจธเจฐเฉ‹เจค เจฐเจฟเจ•เฉฐเจธเจพเจˆเจฒ เจฎเจพเจกเจฒ เจจเฉ‚เฉฐ เจฒเจพเจ—เฉ‚ เจ•เจฐเจฆเจพ เจนเฉˆ เจ…เจคเฉ‡ เจ•เจฒเฉฑเจธเจŸเจฐเจพเจ‚ เจ…เจคเฉ‡ เจ—เจฟเฉฑเจŸ เจฐเจฟเจชเฉ‹เจœเจผเจŸเจฐเฉ€เจ†เจ‚ เจตเจฟเจšเจ•เจพเจฐ เจ‡เฉฑเจ•-เจคเฉ‹เจ‚-เจ…เจจเฉ‡เจ• เจธเจฌเฉฐเจงเจพเจ‚ เจจเฉ‚เฉฐ เจ†เจฐเจ•เฉ‡เจธเจŸเฉเจฐเฉ‡เจŸ เจ•เจฐเจจ เจฒเจˆ เจ‡เฉฑเจ• เจ•เฉ‡เจ‚เจฆเจฐเฉ€เจ•เฉเจฐเจฟเจค UI เจฆเฉ€ เจชเฉ‡เจธเจผเจ•เจธเจผ เจ•เจฐเจฆเจพ เจนเฉˆเฅค เจ‡เจธ เจชเฉเจฐเฉ‹เจ—เจฐเจพเจฎ เจฆเฉ‡ เจจเฉเจ•เจธเจพเจจเจพเจ‚ เจตเจฟเฉฑเจš เจเจชเจฒเฉ€เจ•เฉ‡เจธเจผเจจเจพเจ‚ เจฆเจพ เจชเฉเจฐเจฌเฉฐเจงเจจ เจ•เจฐเจจ เจตเจฟเฉฑเจš เจ…เจธเจฎเจฐเฉฑเจฅเจพ เจธเจผเจพเจฎเจฒ เจนเฉˆ เจœเจฆเฉ‹เจ‚ ArgoCD เจ•เฉฐเจฎ เจจเจนเฉ€เจ‚ เจ•เจฐ เจฐเจฟเจนเจพ เจนเฉˆเฅค

เจธเจฐเจ•เจพเจฐเฉ€ เจตเฉˆเจฌเจธเจพเจˆเจŸ '

เจตเจนเจฟเจฃเจพ

เจซเจฒเฉˆเจ•เจธ เจ‡เฉฑเจ• เจ†เจจ-เจ•เจฒเฉฑเจธเจŸเจฐ เจฐเจฟเจธเฉ‹เจฐเจธ เจฐเฉ€เจ•เฉฐเจธเจพเจˆเจฒ เจฎเจพเจกเจฒ เจจเฉ‚เฉฐ เจฒเจพเจ—เฉ‚ เจ•เจฐเจฆเจพ เจนเฉˆ เจ…เจคเฉ‡ เจจเจคเฉ€เจœเฉ‡ เจตเจœเฉ‹เจ‚, เจชเจฐเจฟเจญเจพเจธเจผเจพ เจฐเจฟเจชเฉ‹เจœเจผเจŸเจฐเฉ€ เจฆเจพ เจ•เฉ‹เจˆ เจ•เฉ‡เจ‚เจฆเจฐเฉ€เจ•เฉเจฐเจฟเจค เจชเฉเจฐเจฌเฉฐเจงเจจ เจจเจนเฉ€เจ‚ เจนเฉˆ, เจœเฉ‹ เจ•เจฟ เจ‡เฉฑเจ• เจ•เจฎเจœเจผเฉ‹เจฐ เจฌเจฟเฉฐเจฆเฉ‚ เจนเฉˆเฅค เจฆเฉ‚เจœเฉ‡ เจชเจพเจธเฉ‡, เจ•เฉ‡เจ‚เจฆเจฐเฉ€เจ•เจฐเจจ เจฆเฉ€ เจ•เจฎเฉ€ เจฆเฉ‡ เจ•เจพเจฐเจจ, เจเจชเจฒเฉ€เจ•เฉ‡เจธเจผเจจเจพเจ‚ เจฆเจพ เจชเฉเจฐเจฌเฉฐเจงเจจ เจ•เจฐเจจ เจฆเฉ€ เจธเจฎเจฐเฉฑเจฅเจพ เจฐเจนเจฟเฉฐเจฆเฉ€ เจนเฉˆ เจญเจพเจตเฉ‡เจ‚ เจ‡เฉฑเจ• เจ•เจฒเฉฑเจธเจŸเจฐ เจซเฉ‡เจฒ เจนเฉ‹ เจœเจพเจตเฉ‡เฅค

เจธเจฐเจ•เจพเจฐเฉ€ เจตเฉˆเจฌเจธเจพเจˆเจŸ '

เจ“เจชเจจเจธเจผเจฟเจซเจŸ 'เจคเฉ‡ เจ…เจฐเจ—เฉ‹เจธเฉ€เจกเฉ€ เจธเจฅเจพเจชเจค เจ•เจฐเจจเจพ

ArgoCD เจ‡เฉฑเจ• เจธเจผเจพเจจเจฆเจพเจฐ เจ•เจฎเจพเจ‚เจก เจฒเจพเจˆเจจ เจ‡เฉฐเจŸเจฐเจซเฉ‡เจธ เจ…เจคเฉ‡ เจตเฉˆเจฌ เจ•เฉฐเจธเฉ‹เจฒ เจฆเฉ€ เจชเฉ‡เจธเจผเจ•เจธเจผ เจ•เจฐเจฆเจพ เจนเฉˆ, เจ‡เจธเจฒเจˆ เจ…เจธเฉ€เจ‚ เจ‡เฉฑเจฅเฉ‡ เจซเจฒเจ•เจธ เจ…เจคเฉ‡ เจนเฉ‹เจฐ เจตเจฟเจ•เจฒเจชเจพเจ‚ เจจเฉ‚เฉฐ เจ•เจตเจฐ เจจเจนเฉ€เจ‚ เจ•เจฐเจพเจ‚เจ—เฉ‡เฅค

เจ“เจชเจจเจธเจผเจฟเจซเจŸ 4 เจชเจฒเฉ‡เจŸเจซเจพเจฐเจฎ 'เจคเฉ‡ เจ†เจฐเจ—เฉ‹เจธเฉ€เจกเฉ€ เจจเฉ‚เฉฐ เจคเฉˆเจจเจพเจค เจ•เจฐเจจ เจฒเจˆ, เจ•เจฒเฉฑเจธเจŸเจฐ เจชเฉเจฐเจธเจผเจพเจธเจ• เจตเจœเฉ‹เจ‚ เจ‡เจนเจจเจพเจ‚ เจ•เจฆเจฎเจพเจ‚ เจฆเฉ€ เจชเจพเจฒเจฃเจพ เจ•เจฐเฉ‹:

เจ“เจชเจจเจธเจผเจฟเจซเจŸ เจชเจฒเฉ‡เจŸเจซเจพเจฐเจฎ 'เจคเฉ‡ เจ…เจฐเจ—เฉ‹เจธเฉ€เจกเฉ€ เจ•เฉฐเจชเฉ‹เจจเฉˆเจ‚เจŸเจพเจ‚ เจจเฉ‚เฉฐ เจคเฉˆเจจเจพเจค เจ•เจฐเจจเจพ

# 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}')

เจ…เจฐเจ—เฉ‹เจธเฉ€เจกเฉ€ เจธเจฐเจตเจฐ เจตเจฟเฉฑเจš เจธเฉเจงเจพเจฐ เจคเจพเจ‚ เจœเฉ‹ เจ‡เจธเจจเฉ‚เฉฐ เจ“เจชเจจเจธเจผเจฟเจซเจŸ เจฐเฉ‚เจŸ เจฆเฉเจ†เจฐเจพ เจฆเฉ‡เจ–เจฟเจ† เจœเจพ เจธเจ•เฉ‡

# 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

เจ…เจฐเจ—เฉ‹เจธเฉ€เจกเฉ€ เจ•เจฒเฉ€ เจŸเฉ‚เจฒ เจจเฉ‚เฉฐ เจคเฉˆเจจเจพเจค เจ•เฉ€เจคเจพ เจœเจพ เจฐเจฟเจนเจพ เจนเฉˆ

# 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 WebUI เจตเฉˆเฉฑเจฌ เจ•เฉฐเจธเฉ‹เจฒ เจœเจพเจ‚ ArgoCD Cli เจ•เจฎเจพเจ‚เจก เจฒเจพเจˆเจจ เจŸเฉ‚เจฒ เจฐเจพเจนเฉ€เจ‚ ArgoCD เจธเจฐเจตเจฐ เจจเจพเจฒ เจ•เฉฐเจฎ เจ•เจฐ เจธเจ•เจฆเฉ‡ เจนเฉ‹เฅค
https://blog.openshift.com/is-it-too-late-to-integrate-gitops/

GitOps - เจ‡เจน เจ•เจฆเฉ‡ เจตเฉ€ เจฌเจนเฉเจค เจฆเฉ‡เจฐ เจจเจนเฉ€เจ‚ เจนเฉเฉฐเจฆเจพ

"เจŸเจฐเฉ‡เจจ เจšเฉฑเจฒเฉ€ เจ—เจˆ เจนเฉˆ" - เจ‡เจน เจ‰เจน เจนเฉˆ เจœเฉ‹ เจ‰เจน เจ…เจœเจฟเจนเฉ€ เจธเจฅเจฟเจคเฉ€ เจฌเจพเจฐเฉ‡ เจ•เจนเจฟเฉฐเจฆเฉ‡ เจนเจจ เจœเจฆเฉ‹เจ‚ เจ•เฉเจ เจ•เจฐเจจ เจฆเจพ เจฎเฉŒเจ•เจพ เจ–เฉเฉฐเจ เจœเจพเจ‚เจฆเจพ เจนเฉˆเฅค เจ“เจชเจจเจธเจผเจฟเจซเจŸ เจฆเฉ‡ เจฎเจพเจฎเจฒเฉ‡ เจตเจฟเฉฑเจš, เจ‡เจธ เจธเจผเจพเจจเจฆเจพเจฐ เจจเจตเฉ‡เจ‚ เจชเจฒเฉ‡เจŸเจซเจพเจฐเจฎ เจฆเฉ€ เจตเจฐเจคเฉ‹เจ‚ เจคเฉเจฐเฉฐเจค เจธเจผเฉเจฐเฉ‚ เจ•เจฐเจจ เจฆเฉ€ เจ‡เฉฑเจ›เจพ เจ…เจ•เจธเจฐ เจฐเฉ‚เจŸเจพเจ‚, เจคเฉˆเจจเจพเจคเฉ€เจ†เจ‚ เจ…เจคเฉ‡ เจนเฉ‹เจฐ เจ“เจชเจจเจธเจผเจฟเจซเจŸ เจตเจธเจคเฉ‚เจ†เจ‚ เจฆเฉ‡ เจชเฉเจฐเจฌเฉฐเจงเจจ เจ…เจคเฉ‡ เจฐเฉฑเจ–-เจฐเจ–เจพเจ… เจฆเฉ‡ เจจเจพเจฒ เจฌเจฟเจฒเจ•เฉเจฒ เจ…เจœเจฟเจนเฉ€ เจธเจฅเจฟเจคเฉ€ เจชเฉˆเจฆเจพ เจ•เจฐเจฆเฉ€ เจนเฉˆเฅค เจชเจฐ เจ•เฉ€ เจฎเฉŒเจ•เจพ เจนเจฎเฉ‡เจธเจผเจพ เจชเฉ‚เจฐเฉ€ เจคเจฐเฉเจนเจพเจ‚ เจ–เฉเฉฐเจ เจœเจพเจ‚เจฆเจพ เจนเฉˆ?

เจฌเจพเจฐเฉ‡ เจฒเฉ‡เจ–เจพเจ‚ เจฆเฉ€ เจฒเฉœเฉ€ เจœเจพเจฐเฉ€ เจฐเฉฑเจ–เฉ€ GitOps, เจ…เฉฑเจœ เจ…เจธเฉ€เจ‚ เจคเฉเจนเจพเจจเฉ‚เฉฐ เจฆเจฟเจ–เจพเจตเจพเจ‚เจ—เฉ‡ เจ•เจฟ เจ‡เฉฑเจ• เจนเฉˆเจ‚เจกเจ•เฉเจฐเจพเจซเจŸ เจเจชเจฒเฉ€เจ•เฉ‡เจธเจผเจจ เจ…เจคเฉ‡ เจ‡เจธเจฆเฉ‡ เจธเจฐเฉ‹เจคเจพเจ‚ เจจเฉ‚เฉฐ เจ‡เฉฑเจ• เจชเฉเจฐเจ•เจฟเจฐเจฟเจ† เจตเจฟเฉฑเจš เจ•เจฟเจตเฉ‡เจ‚ เจฌเจฆเจฒเจฃเจพ เจนเฉˆ เจœเจฟเฉฑเจฅเฉ‡ เจนเจฐ เจšเฉ€เจœเจผ GitOps เจŸเฉ‚เจฒเจธ เจฆเฉเจ†เจฐเจพ เจชเฉเจฐเจฌเฉฐเจงเจฟเจค เจ•เฉ€เจคเฉ€ เจœเจพเจ‚เจฆเฉ€ เจนเฉˆเฅค เจ…เจœเจฟเจนเจพ เจ•เจฐเจจ เจฒเจˆ, เจ…เจธเฉ€เจ‚ เจชเจนเจฟเจฒเจพเจ‚ httpd เจเจชเจฒเฉ€เจ•เฉ‡เจธเจผเจจ เจจเฉ‚เฉฐ เจฆเจธเจคเฉ€ เจคเฉˆเจจเจพเจค เจ•เจฐเจพเจ‚เจ—เฉ‡เฅค เจนเฉ‡เจ เจพเจ‚ เจฆเจฟเฉฑเจคเจพ เจธเจ•เฉเจฐเฉ€เจจเจธเจผเฉŒเจŸ เจฆเจฟเจ–เจพเจ‰เจ‚เจฆเจพ เจนเฉˆ เจ•เจฟ เจ…เจธเฉ€เจ‚ เจ‡เฉฑเจ• เจจเฉ‡เจฎเจธเจชเฉ‡เจธ, เจคเฉˆเจจเจพเจคเฉ€ เจ…เจคเฉ‡ เจธเฉ‡เจตเจพ เจ•เจฟเจตเฉ‡เจ‚ เจฌเจฃเจพเจ‰เจ‚เจฆเฉ‡ เจนเจพเจ‚, เจ…เจคเฉ‡ เจซเจฟเจฐ เจ‡เฉฑเจ• เจฐเฉ‚เจŸ เจฌเจฃเจพเจ‰เจฃ เจฒเจˆ เจ‡เจธ เจธเฉ‡เจตเจพ เจฆเจพ เจชเจฐเจฆเจพเจซเจพเจธเจผ เจ•เจฐเจฆเฉ‡ เจนเจพเจ‚เฅค

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 เจฐเจฟเจชเฉ‹เจœเจผเจŸเจฐเฉ€ เจฌเจฃเจพเจ“เฅค
  • เจ…เจธเฉ€เจ‚ เจ†เจชเจฃเฉ€เจ†เจ‚ เจฎเฉŒเจœเฉ‚เจฆเจพ เจตเจธเจคเฉ‚เจ†เจ‚ เจจเฉ‚เฉฐ เจจเจฟเจฐเจฏเจพเจค เจ•เจฐเจฆเฉ‡ เจนเจพเจ‚ เจ…เจคเฉ‡ เจ‰เจนเจจเจพเจ‚ เจจเฉ‚เฉฐ Git เจฐเจฟเจชเฉ‹เจœเจผเจŸเจฐเฉ€ เจตเจฟเฉฑเจš เจ…เฉฑเจชเจฒเฉ‹เจก เจ•เจฐเจฆเฉ‡ เจนเจพเจ‚เฅค
  • GitOps เจŸเฉ‚เจฒเจธ เจฆเฉ€ เจšเฉ‹เจฃ เจ…เจคเฉ‡ เจคเฉˆเจจเจพเจค เจ•เจฐเจจเจพเฅค
  • เจ…เจธเฉ€เจ‚ เจ‡เจธ เจŸเฉ‚เจฒเจ•เจฟเฉฑเจŸ เจตเจฟเฉฑเจš เจ†เจชเจฃเฉ€ เจฐเจฟเจชเฉ‹เจœเจผเจŸเจฐเฉ€ เจœเฉ‹เฉœเจฆเฉ‡ เจนเจพเจ‚เฅค
  • เจ…เจธเฉ€เจ‚ เจธเจพเจกเฉ€ GitOps เจŸเฉ‚เจฒเจ•เจฟเฉฑเจŸ เจตเจฟเฉฑเจš เจเจชเจฒเฉ€เจ•เฉ‡เจธเจผเจจ เจจเฉ‚เฉฐ เจชเจฐเจฟเจญเจพเจธเจผเจฟเจค เจ•เจฐเจฆเฉ‡ เจนเจพเจ‚เฅค
  • เจ…เจธเฉ€เจ‚ GitOps เจŸเฉ‚เจฒเจ•เจฟเฉฑเจŸ เจฆเฉ€ เจตเจฐเจคเฉ‹เจ‚ เจ•เจฐเจ•เฉ‡ เจเจชเจฒเฉ€เจ•เฉ‡เจธเจผเจจ เจฆเฉ€ เจ‡เฉฑเจ• เจŸเฉˆเจธเจŸ เจฐเจจ เจ•เจฐเจฆเฉ‡ เจนเจพเจ‚เฅค
  • เจ…เจธเฉ€เจ‚ GitOps เจŸเฉ‚เจฒเจ•เจฟเฉฑเจŸ เจฆเฉ€ เจตเจฐเจคเฉ‹เจ‚ เจ•เจฐเจ•เฉ‡ เจตเจธเจคเฉ‚เจ†เจ‚ เจจเฉ‚เฉฐ เจธเจฎเจ•เจพเจฒเฉ€ เจ•เจฐเจฆเฉ‡ เจนเจพเจ‚เฅค
  • เจตเจธเจคเฉ‚เจ†เจ‚ เจฆเฉ€ เจ›เจพเจ‚เจ—เจฃ เจ…เจคเฉ‡ เจ†เจŸเฉ‹-เจธเจฟเฉฐเจ•เฉเจฐเฉ‹เจจเจพเจˆเจœเจผเฉ‡เจธเจผเจจ เจจเฉ‚เฉฐ เจธเจฎเจฐเฉฑเจฅ เจฌเจฃเจพเจ“เฅค

เจœเจฟเจตเฉ‡เจ‚ เจ•เจฟ เจชเจฟเจ›เจฒเฉ‡ เจตเจฟเฉฑเจš เจฆเฉฑเจธเจฟเจ† เจ—เจฟเจ† เจนเฉˆ เจฒเฉ‡เจ–, GitOps เจตเจฟเฉฑเจš เจ•เฉเจฌเจฐเจจเฉ‡เจŸเจธ เจ•เจฒเฉฑเจธเจŸเจฐ (เจ†เจ‚) เจตเจฟเฉฑเจš เจธเจพเจฐเฉ€เจ†เจ‚ เจตเจธเจคเฉ‚เจ†เจ‚ เจฌเจพเจฐเฉ‡ เจœเจพเจฃเจ•เจพเจฐเฉ€ เจฆเจพ เจ‡เฉฑเจ• เจ…เจคเฉ‡ เจ‡เฉฑเจ•เฉ‹ เจ‡เฉฑเจ• เจธเจฐเฉ‹เจค เจนเฉˆ - เจ—เจฟเฉฑเจŸ เจฐเจฟเจชเฉ‹เจœเจผเจŸเจฐเฉ€เฅค เจ…เฉฑเจ—เฉ‡, เจ…เจธเฉ€เจ‚ เจ‡เจธ เจ…เจงเจพเจฐ เจคเฉ‹เจ‚ เจ…เฉฑเจ—เฉ‡ เจตเจงเจฆเฉ‡ เจนเจพเจ‚ เจ•เจฟ เจคเฉเจนเจพเจกเฉ€ เจธเฉฐเจธเจฅเจพ เจชเจนเจฟเจฒเจพเจ‚ เจนเฉ€ เจ‡เฉฑเจ• เจ—เจฟเฉฑเจŸ เจฐเจฟเจชเฉ‹เจœเจผเจŸเจฐเฉ€ เจฆเฉ€ เจตเจฐเจคเฉ‹เจ‚ เจ•เจฐเจฆเฉ€ เจนเฉˆเฅค เจ‡เจน เจœเจจเจคเจ• เจœเจพเจ‚ เจจเจฟเฉฑเจœเฉ€ เจนเฉ‹ เจธเจ•เจฆเจพ เจนเฉˆ, เจชเจฐ เจ‡เจน Kubernetes เจ•เจฒเฉฑเจธเจŸเจฐเจพเจ‚ เจฒเจˆ เจชเจนเฉเฉฐเจšเจฏเฉ‹เจ— เจนเฉ‹เจฃเจพ เจšเจพเจนเฉ€เจฆเจพ เจนเฉˆเฅค เจ‡เจน เจ‰เจนเฉ€ เจฐเจฟเจชเฉ‹เจœเจผเจŸเจฐเฉ€ เจนเฉ‹ เจธเจ•เจฆเฉ€ เจนเฉˆ เจœเฉ‹ เจเจชเจฒเฉ€เจ•เฉ‡เจธเจผเจจ เจ•เฉ‹เจก เจฒเจˆ, เจœเจพเจ‚ เจ–เจพเจธ เจคเฉŒเจฐ 'เจคเฉ‡ เจคเฉˆเจจเจพเจคเฉ€เจ†เจ‚ เจฒเจˆ เจฌเจฃเจพเจˆ เจ—เจˆ เจ‡เฉฑเจ• เจตเฉฑเจ–เจฐเฉ€ เจฐเจฟเจชเฉ‹เจœเจผเจŸเจฐเฉ€ เจนเฉ‹ เจธเจ•เจฆเฉ€ เจนเฉˆเฅค เจฐเจฟเจชเฉ‹เจœเจผเจŸเจฐเฉ€ เจตเจฟเฉฑเจš เจธเจ–เจผเจค เจ…เจจเฉเจฎเจคเฉ€เจ†เจ‚ เจนเฉ‹เจฃ เจฆเฉ€ เจธเจฟเจซเจพเจฐเจธเจผ เจ•เฉ€เจคเฉ€ เจœเจพเจ‚เจฆเฉ€ เจนเฉˆ เจ•เจฟเจ‰เจ‚เจ•เจฟ เจญเฉ‡เจฆ, เจฐเฉ‚เจŸ เจ…เจคเฉ‡ เจนเฉ‹เจฐ เจธเฉเจฐเฉฑเจ–เจฟเจ†-เจธเฉฐเจตเฉ‡เจฆเจจเจธเจผเฉ€เจฒ เจšเฉ€เจœเจผเจพเจ‚ เจ‰เฉฑเจฅเฉ‡ เจธเจŸเฉ‹เจฐ เจ•เฉ€เจคเฉ€เจ†เจ‚ เจœเจพเจฃเจ—เฉ€เจ†เจ‚เฅค

เจธเจพเจกเฉ€ เจ‰เจฆเจพเจนเจฐเจจ เจตเจฟเฉฑเจš, เจ…เจธเฉ€เจ‚ GitHub 'เจคเฉ‡ เจ‡เฉฑเจ• เจจเจตเฉ€เจ‚ เจœเจจเจคเจ• เจฐเจฟเจชเฉ‹เจœเจผเจŸเจฐเฉ€ เจฌเจฃเจพเจตเจพเจ‚เจ—เฉ‡เฅค เจคเฉเจธเฉ€เจ‚ เจ‡เจธเจจเฉ‚เฉฐ เจœเฉ‹ เจตเฉ€ เจšเจพเจนเฉ‹ เจ•เจนเจฟ เจธเจ•เจฆเฉ‡ เจนเฉ‹, เจ…เจธเฉ€เจ‚ เจฌเจฒเฉŒเจ—เจชเฉ‹เจธเจŸ เจจเจพเจฎ เจฆเฉ€ เจตเจฐเจคเฉ‹เจ‚ เจ•เจฐเจฆเฉ‡ เจนเจพเจ‚เฅค

เจœเฉ‡เจ•เจฐ YAML เจ†เจฌเจœเฉˆเจ•เจŸ เจซเจพเจˆเจฒเจพเจ‚ เจธเจฅเจพเจจเจ• เจคเฉŒเจฐ 'เจคเฉ‡ เจœเจพเจ‚ เจ—เจฟเฉฑเจŸ เจตเจฟเฉฑเจš เจธเจŸเฉ‹เจฐ เจจเจนเฉ€เจ‚ เจ•เฉ€เจคเฉ€เจ†เจ‚ เจ—เจˆเจ†เจ‚ เจธเจจ, เจคเจพเจ‚ เจคเฉเจนเจพเจจเฉ‚เฉฐ 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 เจซเจพเจˆเจฒ เจจเฉ‚เฉฐ เจธเฉฐเจชเจพเจฆเจฟเจค เจ•เจฐเฉ€เจ เจœเจฟเจธ เจจเฉ‚เฉฐ เจ†เจฐเจ—เฉ‹ เจธเฉ€เจกเฉ€ เจธเจฟเฉฐเจ• เจจเจนเฉ€เจ‚ เจ•เจฐ เจธเจ•เจฆเฉ€ เจนเฉˆเฅค

sed -i '/sgeneration: .*/d' deployment.yaml

เจ‡เจธ เจคเฉ‹เจ‚ เจ‡เจฒเจพเจตเจพ เจฐเฉ‚เจŸ เจฌเจฆเจฒเจฃ เจฆเฉ€ เจฒเฉ‹เฉœ เจนเฉˆเฅค เจ…เจธเฉ€เจ‚ เจชเจนเจฟเจฒเจพเจ‚ เจ‡เฉฑเจ• เจฎเจฒเจŸเฉ€เจฒเจพเจˆเจจ เจตเฉ‡เจฐเฉ€เจเจฌเจฒ เจธเฉˆเจŸ เจ•เจฐเจพเจ‚เจ—เฉ‡ เจ…เจคเฉ‡ เจซเจฟเจฐ ingress: null เจจเฉ‚เฉฐ เจ‰เจธ เจตเฉ‡เจฐเฉ€เจเจฌเจฒ เจฆเฉ€ เจธเจฎเฉฑเจ—เจฐเฉ€ เจจเจพเจฒ เจฌเจฆเจฒเจพเจ‚เจ—เฉ‡เฅค

export ROUTE="  ingress:                                                            
    - conditions:
        - status: 'True'
          type: Admitted"

sed -i "s/  ingress: null/$ROUTE/g" route.yaml

เจ‡เจธ เจฒเจˆ, เจ…เจธเฉ€เจ‚ เจซเจพเจˆเจฒเจพเจ‚ เจจเฉ‚เฉฐ เจ›เจพเจ‚เจŸ เจฒเจฟเจ† เจนเฉˆ, เจœเฉ‹ เจ•เฉเจ เจฌเจšเจฟเจ† เจนเฉˆ เจ‰เจนเจจเจพเจ‚ เจจเฉ‚เฉฐ เจ—เจฟเฉฑเจŸ เจฐเจฟเจชเฉ‹เจœเจผเจŸเจฐเฉ€ เจตเจฟเฉฑเจš เจธเฉเจฐเฉฑเจ–เจฟเจ…เจค เจ•เจฐเจจเจพ เจนเฉˆ. เจœเจฟเจธ เจคเฉ‹เจ‚ เจฌเจพเจ…เจฆ เจ‡เจน เจฐเจฟเจชเฉ‹เจœเจผเจŸเจฐเฉ€ เจœเจพเจฃเจ•เจพเจฐเฉ€ เจฆเจพ เจ‡เฉฑเจ•เฉ‹ เจ‡เฉฑเจ• เจธเจฐเฉ‹เจค เจฌเจฃ เจœเจพเจ‚เจฆเฉ€ เจนเฉˆ, เจ…เจคเฉ‡ เจตเจธเจคเฉ‚เจ†เจ‚ เจตเจฟเฉฑเจš เจ•เจฟเจธเฉ‡ เจตเฉ€ เจฆเจธเจคเฉ€ เจคเจฌเจฆเฉ€เจฒเฉ€ เจจเฉ‚เฉฐ เจธเจ–เจคเฉ€ เจจเจพเจฒ เจตเจฐเจœเจฟเจค เจ•เฉ€เจคเจพ เจœเจพเจฃเจพ เจšเจพเจนเฉ€เจฆเจพ เจนเฉˆเฅค

git commit -am โ€˜initial commit of objectsโ€™
git push origin master

เจ…เฉฑเจ—เฉ‡ เจ…เจธเฉ€เจ‚ เจ‡เจธ เจคเฉฑเจฅ เจคเฉ‹เจ‚ เจ…เฉฑเจ—เฉ‡ เจตเจงเจฆเฉ‡ เจนเจพเจ‚ เจ•เจฟ เจคเฉเจธเฉ€เจ‚ เจชเจนเจฟเจฒเจพเจ‚ เจนเฉ€ เจ…เจฐเจ—เฉ‹เจธเฉ€เจกเฉ€ เจคเจพเจ‡เจจเจพเจค เจ•เจฐ เจšเฉเฉฑเจ•เฉ‡ เจนเฉ‹ (เจ‡เจน เจ•เจฟเจตเฉ‡เจ‚ เจ•เจฐเจจเจพ เจนเฉˆ - เจชเจฟเจ›เจฒเจพ เจฆเฉ‡เจ–เฉ‹ เจชเฉ‹เจธเจŸ). เจ‡เจธเจฒเจˆ, เจ…เจธเฉ€เจ‚ เจ†เจฐเจ—เฉ‹ เจธเฉ€เจกเฉ€ เจตเจฟเฉฑเจš เจธเจพเจกเฉ‡ เจฆเฉเจ†เจฐเจพ เจฌเจฃเจพเจˆ เจ—เจˆ เจฐเจฟเจชเฉ‹เจœเจผเจŸเจฐเฉ€ เจจเฉ‚เฉฐ เจœเฉ‹เฉœเจพเจ‚เจ—เฉ‡, เจœเจฟเจธ เจตเจฟเฉฑเจš เจธเจพเจกเฉ€ เจ‰เจฆเจพเจนเจฐเจฃ เจคเฉ‹เจ‚ เจเจชเจฒเฉ€เจ•เฉ‡เจธเจผเจจ เจ•เฉ‹เจก เจนเฉˆเฅค เจฌเจธ เจ‡เจน เจฏเจ•เฉ€เจจเฉ€ เจฌเจฃเจพเจ“ เจ•เจฟ เจคเฉเจธเฉ€เจ‚ เจธเจนเฉ€ เจฐเจฟเจชเฉ‹เจœเจผเจŸเจฐเฉ€ เจจเจฟเจฐเจงเจพเจฐเจค เจ•เฉ€เจคเฉ€ เจนเฉˆ เจœเฉ‹ เจคเฉเจธเฉ€เจ‚ เจชเจนเจฟเจฒเจพเจ‚ เจฌเจฃเจพเจˆ เจธเฉ€เฅค

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

เจ‡เฉฑเจ• เจตเจพเจฐ เจ…เจฐเจ—เฉ‹ เจธเฉ€เจกเฉ€ เจตเจฟเฉฑเจš เจ‡เฉฑเจ• เจเจชเจฒเฉ€เจ•เฉ‡เจธเจผเจจ เจจเจฟเจฐเจงเจพเจฐเจค เจนเฉ‹เจฃ เจคเฉ‹เจ‚ เจฌเจพเจ…เจฆ, เจŸเฉ‚เจฒเจ•เจฟเฉฑเจŸ เจฐเจฟเจชเฉ‹เจœเจผเจŸเจฐเฉ€ เจตเจฟเฉฑเจš เจชเจฐเจฟเจญเจพเจธเจผเจพเจตเจพเจ‚ เจฆเฉ‡ เจตเจฟเจฐเฉเฉฑเจง เจชเจนเจฟเจฒเจพเจ‚ เจคเฉ‹เจ‚ เจคเฉˆเจจเจพเจค เจตเจธเจคเฉ‚เจ†เจ‚ เจฆเฉ€ เจœเจพเจ‚เจš เจ•เจฐเจจเจพ เจธเจผเฉเจฐเฉ‚ เจ•เจฐ เจฆเจฟเฉฐเจฆเฉ€ เจนเฉˆเฅค เจธเจพเจกเฉ€ เจ‰เจฆเจพเจนเจฐเจจ เจตเจฟเฉฑเจš, เจ†เจŸเฉ‹-เจธเจฟเฉฐเจ• เจ…เจคเฉ‡ เจ•เจฒเฉ€เจจเจ…เฉฑเจช เจ…เจธเจฎเจฐเฉฑเจฅ เจนเจจ, เจ‡เจธเจฒเจˆ เจคเฉฑเจค เจ…เจœเฉ‡ เจจเจนเฉ€เจ‚ เจฌเจฆเจฒเจฆเฉ‡ เจนเจจเฅค เจ•เจฟเจฐเจชเจพ เจ•เจฐเจ•เฉ‡ เจจเฉ‹เจŸ เจ•เจฐเฉ‹ เจ•เจฟ เจ†เจฐเจ—เฉ‹ เจธเฉ€เจกเฉ€ เจ‡เฉฐเจŸเจฐเจซเฉ‡เจธ เจตเจฟเฉฑเจš เจธเจพเจกเฉ€ เจเจชเจฒเฉ€เจ•เฉ‡เจธเจผเจจ เจฆเฉ€ เจธเจฅเจฟเจคเฉ€ "เจธเจฟเฉฐเจ• เจคเฉ‹เจ‚ เจฌเจพเจนเจฐ" เจนเฉ‹เจตเฉ‡เจ—เฉ€ เจ•เจฟเจ‰เจ‚เจ•เจฟ เจ‡เฉฑเจฅเฉ‡ เจ•เฉ‹เจˆ เจฒเฉ‡เจฌเจฒ เจจเจนเฉ€เจ‚ เจนเฉˆ เจœเฉ‹ เจ†เจฐเจ—เฉ‹เจธเฉ€เจกเฉ€ เจชเฉเจฐเจฆเจพเจจ เจ•เจฐเจฆเจพ เจนเฉˆเฅค
เจ‡เจนเฉ€ เจ•เจพเจฐเจจ เจนเฉˆ เจ•เจฟ เจœเจฆเฉ‹เจ‚ เจ…เจธเฉ€เจ‚ เจฅเฉ‹เฉœเฉ€ เจฆเฉ‡เจฐ เจฌเจพเจ…เจฆ เจธเจฎเจ•เจพเจฒเฉ€เจ•เจฐเจจ เจธเจผเฉเจฐเฉ‚ เจ•เจฐเจฆเฉ‡ เจนเจพเจ‚, เจคเจพเจ‚ เจตเจธเจคเฉ‚เจ†เจ‚ เจจเฉ‚เฉฐ เจฎเฉเฉœ เจคเฉˆเจจเจพเจค เจจเจนเฉ€เจ‚ เจ•เฉ€เจคเจพ เจœเจพเจตเฉ‡เจ—เจพเฅค

เจนเฉเจฃ เจ‡เจน เจฏเจ•เฉ€เจจเฉ€ เจฌเจฃเจพเจ‰เจฃ เจฒเจˆ เจ‡เฉฑเจ• เจŸเฉˆเจธเจŸ เจฐเจจ เจ•เจฐเฉ€เจ เจ•เจฟ เจธเจพเจกเฉ€เจ†เจ‚ เจซเจพเจˆเจฒเจพเจ‚ เจตเจฟเฉฑเจš เจ•เฉ‹เจˆ เจคเจฐเฉเฉฑเจŸเฉ€เจ†เจ‚ เจจเจนเฉ€เจ‚ เจนเจจเฅค

argocd app sync simple-app --dry-run

เจœเฉ‡เจ•เจฐ เจ•เฉ‹เจˆ เจคเจฐเฉเฉฑเจŸเฉ€เจ†เจ‚ เจจเจนเฉ€เจ‚ เจนเจจ, เจคเจพเจ‚ เจคเฉเจธเฉ€เจ‚ เจธเจฎเจ•เจพเจฒเฉ€เจ•เจฐเจจ เจฒเจˆ เจ…เฉฑเจ—เฉ‡ เจตเจง เจธเจ•เจฆเฉ‡ เจนเฉ‹เฅค

argocd app sync simple-app

เจธเจพเจกเฉ€ เจเจชเจฒเฉ€เจ•เฉ‡เจธเจผเจจ 'เจคเฉ‡ argocd get เจ•เจฎเจพเจ‚เจก เจšเจฒเจพเจ‰เจฃ เจคเฉ‹เจ‚ เจฌเจพเจ…เจฆ, เจธเจพเจจเฉ‚เฉฐ เจ‡เจน เจฆเฉ‡เจ–เจฃเจพ เจšเจพเจนเฉ€เจฆเจพ เจนเฉˆ เจ•เจฟ เจเจชเจฒเฉ€เจ•เฉ‡เจธเจผเจจ เจฆเฉ€ เจธเจฅเจฟเจคเฉ€ เจธเจฟเจนเจคเจฎเฉฐเจฆ เจœเจพเจ‚ เจธเจฟเฉฐเจ• เจ•เฉ€เจคเฉ€ เจ—เจˆ เจนเฉˆเฅค เจ‡เจธเจฆเจพ เจ…เจฐเจฅ เจ‡เจน เจนเฉ‹เจตเฉ‡เจ—เจพ เจ•เจฟ 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

เจ‡เฉฑเจ• เจŸเจฟเฉฑเจชเจฃเฉ€ เจœเฉ‹เฉœเฉ‹