GitOps

What is GitOps?

GitOps는 클라우드 네이티브 애플리케이션을 위한 지속적인 배포를 구현하는 방법입니다. Git 및 지속적 배포 도구를 포함하여 개발자가 이미 익숙한 도구를 사용하여 인프라를 운영할 때 개발자 중심의 경험에 중점을 둡니다.

GitOps의 핵심 아이디어는 현재 프로덕션 환경에서 원하는 인프라에 대한 선언적 설명을 항상 포함하는 Git 저장소와 프로덕션 환경이 저장소의 설명된 상태와 일치하도록 하는 자동화된 프로세스를 갖는 것입니다.

새 응용 프로그램을 배포하거나 기존 응용 프로그램을 업데이트 하려는 경우 저장소만 업데이트하면 됩니다. 다른 모든 것은 자동화된 프로세스가 처리합니다. 프로덕션 환경에서 애플리케이션을 관리하기 위한 순항 제어 기능이 있는 것과 같습니다.

Why should I use GitOps?

Deploy Faster More Often

공정하게 말해서 모든 연속 배포 기술은 배포 속도를 높이고 더 자주 배포할 수 있다고 약속합니다. GitOps의 고유한 점은 애플리케이션 배포를 위해 도구를 전환할 필요가 없다는 것입니다. 어쨌든 응용 프로그램 개발에 사용하는 버전 제어 시스템에서 모든 것이 발생합니다.

Easy and Fast Error Recovery

안 돼! 프로덕션 환경이 다운되었습니다! GitOps를 사용하면 시간이 지남에 따라 환경이 어떻게 변했는지에 대한 완전한 기록이 있습니다. git revert이렇게 하면 오류 복구를 실행하고 환경이 복원되는 것을 지켜보는 것만큼 쉽게 오류를 복구할 수 있습니다.

Easier Credential Management

GitOps를 사용하면 환경 내부에서 배포를 완전히 관리할 수 있습니다. 이를 위해 환경은 리포지토리 및 이미지 레지스트리에만 액세스하면 됩니다. 그게 다야 개발자에게 환경에 대한 직접 액세스 권한을 부여할 필요는 없습니다.

Self-documenting Deployments

SSH로 서버에 접속하고 그곳에서 무엇이 실행되고 있는지 궁금해 한 적이 있습니까? GitOps를 사용하면 환경에 대한 모든 변경이 저장소를 통해 이루어져야 합니다. 항상 마스터 브랜치를 확인하고 어디에 배포되었는지에 대한 완전한 설명과 시스템에 적용된 모든 변경 사항의 전체 기록을 얻을 수 있습니다. 그리고 시스템의 모든 변경 사항에 대한 감사 추적을 무료로 받을 수 있습니다!

Shared Knowledge in Teams

Git을 사용하여 배포된 인프라에 대한 완전한 설명을 저장하면 팀의 모든 사람이 시간 경과에 따른 발전을 확인할 수 있습니다. 훌륭한 커밋 메시지를 통해 누구나 인프라 변경에 대한 생각 프로세스를 재현하고 새 시스템을 설정하는 방법에 대한 예를 쉽게 찾을 수 있습니다.

How does GitOps work?