반응형
이번에 소개할 표현은 "GitOps"입니다. "GitOps"는 인프라와 애플리케이션 배포 과정을 Git 저장소로 완전히 관리하고, Git에 기록된 상태를 기준으로 시스템을 자동화하는 DevOps 접근 방식을 의미합니다. 즉, Git에 선언형으로 정의된 상태를 실제 프로덕션 환경과 동기화하여, 인프라 관리와 애플리케이션 배포를 한층 간소하고 신뢰성 있게 만드는 방법론입니다.1. 의미"GitOps"는 Git 저장소를 단순한 코드 버전 관리 도구가 아닌, 시스템 전체의 단일 진실의 원천(Single Source of Truth)으로 삼는 개념입니다. 애플리케이션 구성, 인프라 설정, 환경 변수 등을 모두 Git에 기록해두면, 자동화 도구가 이를 주기적으로 혹은 이벤트 기반으로 확인하고, 현재 실제 환경을 정의..
이번에 소개할 표현은 "Continuous Delivery"입니다. "Continuous Delivery"는 소프트웨어가 언제든지 신뢰할 수 있는 상태로 릴리즈될 수 있도록, 코드 변경 사항을 자동으로 빌드, 테스트, 배포 준비하는 개발 방식입니다. 이를 통해 개발팀은 변화하는 요구 사항에 신속히 대응하고, 가치 있는 업데이트를 빈번하면서도 안정적으로 제공할 수 있습니다.1. 의미"Continuous Delivery"는 개발 과정에서 발생하는 모든 변경 사항(기능 추가, 버그 수정, 설정 변경 등)을 릴리즈 가능한 상태로 유지하는 개념입니다. 코드가 변경될 때마다 자동 빌드와 테스트를 거쳐, 실제 운영 환경에 투입할 준비가 갖춰진 '릴리즈 후보(Release Candidate)' 상태를 지속적으로 보유하..
이번에 소개할 표현은 "Infrastructure as Code" (IaC)입니다. "Infrastructure as Code"는 서버, 네트워크, 스토리지 등 시스템 인프라를 코드로 정의하고 관리하는 개념으로, 소프트웨어 개발 방법론을 인프라 관리에 적용한 것입니다. 이를 통해 인프라를 자동화, 버전 관리, 재사용 가능하게 만들며, 신뢰성과 일관성을 높일 수 있습니다.1. 의미"Infrastructure as Code"는 '코드로써 인프라를 정의'하는 방식입니다. 과거에는 서버나 네트워크 설정을 사람이 직접 콘솔에서 명령어를 입력하거나, GUI 콘솔을 통해 일일이 구성했지만, IaC를 활용하면 모든 설정을 코드(예: YAML, JSON, HCL)로 정의하고 관리할 수 있습니다. 이는 인프라 변경 사항도..
이번에 소개할 표현은 "Regression Testing"입니다. 소프트웨어 개발 과정에서 "Regression Testing"은 기존에 동작하던 기능이 새로운 코드 변경, 패치, 또는 업데이트로 인해 예상치 못하게 망가졌는지(Regression) 확인하는 테스트 활동을 의미합니다. 즉, "회귀(Regression)"라는 단어처럼, 과거 정상 동작했던 부분이 되돌아가(퇴보하여) 문제가 생기지 않았는지 확인하는 절차입니다.1. 의미"Regression Testing"은 새로운 기능 추가나 코드 수정 후에도 기존 기능이 정상적으로 작동하는지 검증하는 테스트를 뜻합니다. 이는 변화가 전체 시스템에 어떤 영향을 미치는지 파악하고, 이미 해결된 버그가 다시 나타나는지 확인하는 데에 꼭 필요한 과정입니다.예:"이번..