GitOps(깃옵스)
인프라와 애플리케이션이 어떤 상태여야 하는지를 Git 저장소에 코드로 선언해두고, 그 코드가 바뀌면 자동화 도구가 실제 시스템을 Git에 선언된 상태와 항상 일치하도록 맞춰나가는 운영 방식입니다.
한눈에 보는 정의
GitOps(깃옵스)는 인프라와 애플리케이션의 원하는 상태를 Git 저장소에 코드로 선언해두고, Git의 변경 이력을 기준으로 실제 시스템을 자동으로 맞춰나가는 운영 방식입니다.
자세히 알아보기
- 예문: "서버에 직접 접속해 설정을 바꾸는 대신, GitOps 방식으로 Git 저장소의 설정 파일을 수정하고 커밋하는 것만으로 배포가 이뤄지도록 했다."
- IaC(코드형 인프라) (IaC)로 인프라를 코드화하는 데서 한 걸음 더 나아가, 그 코드가 담긴 Git 저장소 자체를 '진실의 원천'으로 삼아 실제 시스템 상태를 지속적으로 비교하고 자동으로 맞춰나갑니다.
- 모든 변경이 Git 커밋으로 기록되기 때문에, 언제 누가 무엇을 바꿨는지 추적하기 쉽고, 문제가 생기면 이전 커밋으로 되돌리는 것만으로 시스템도 함께 이전 상태로 복구할 수 있습니다.
- Kubernetes(쿠버네티스) (쿠버네티스) 환경에서 특히 널리 채택되며, CI/CD(지속적 통합·배포) (CI/CD) 파이프라인과 결합해 배포 자동화의 표준적인 방식 중 하나로 자리 잡고 있습니다.