GitOps 란?
GitOps는 Git 리포지토리를 단일 정보 소스로 사용하여 인프라를 코드로 제공하며, 제출된 코드에서는 CI 프로세스를 확인하고, CD 프로세스에서는 보안, 코드형 인프라(IaC) 또는 애플리케이션 프레임워크에 설정된 기타 경계와 같은 요구 사항을 확인하고 적용한다.코드에 대한 모든 변경 사항이 추적되므로 업데이트를 손쉽게 수행할 수 있으며 롤백이 필요한 경우 버전 제어 기능도 제공해준다.
GitOps repository
- Platform repository
플랫폼 및 k8s 프로비저닝을 위한 IaC 코드 관리
- Management repository
k8s 등 관리를 위한 설정 ,플러그인 , 시스템 배포 코드 관리
- Service repository
서비스 소스 코드 관리
Git의 원칙
1. 선언적 원하는 상태(Desired state) 원칙
- 사용자와 플랫폼이 모두 읽고 쓸 수 있는 선언적 코드로 표현된 원하는 상태를 가져야 한다.
2. 불변한 원하는 상태 버전 원칙
- 원하는 상태는 버전 관라 및 버전의 불변성을 지원하고 완전한 버전 기록을 유지하는 방식으로 저장해 형상 관리
3. 지속적인 상태 조정 원칙
- gitops 관리 시스템은 플랫폼의 실제 배포된 상태를 원하는 상태와 지속적으로 자동으로 비교하고 다를 경우 일치시키기 위한 자동화 작업 진행
4. 선언을 통한 작동원칙
- 플랫폼이 의도적으로 작동되는 유일한 메커니즘은 gitops 원칙을 통해서만 가능하다
'Etc' 카테고리의 다른 글
[Jenkins] slave node 등록 (1) | 2023.10.09 |
---|---|
[Jenkins] 개념 및 우분투 설치 (1) | 2023.10.05 |
Git_add , commit , push , pull diff (0) | 2023.09.10 |
Storage 종류 , 파티션 (0) | 2023.08.13 |