DevOps

DevOps(데브옵스)는 소프트웨어 개발(Development)과 정보기술 운영(Operations)을 긴밀하게 연결하여 소프트웨어의 변경을 안정적이고 반복 가능한 방식으로 전달·운영하려는 문화, 실천 방법과 기술적 접근을 가리킨다. 개발과 운영의 역할을 분리된 단계로만 다루지 않고,...

분류소프트웨어 공학, 개발·운영 협업 및 자동화
주요 활동개발, 빌드, 테스트, 배포, 관측, 운영
관련 기술지속적 통합, 지속적 전달, 인프라스트럭처 애즈 코드, 모니터링
관련 분야애자일 소프트웨어 개발, 사이트 신뢰성 공학

DevOps(데브옵스)는 소프트웨어 개발(Development)과 정보기술 운영(Operations)을 긴밀하게 연결하여 소프트웨어의 변경을 안정적이고 반복 가능한 방식으로 전달·운영하려는 문화, 실천 방법과 기술적 접근을 가리킨다. 개발과 운영의 역할을 분리된 단계로만 다루지 않고, 개발부터 실제 서비스 운영에 이르는 흐름 전체에서 협업과 피드백을 강조한다.

DevOps 환경에서는 버전 관리, 자동화된 빌드·테스트, 지속적 통합과 지속적 전달, 설정 및 인프라 관리, 모니터링과 사고 대응이 서로 연결된다. 자동화는 수동 작업을 줄이고 변경 내역을 추적할 수 있게 하지만, DevOps의 범위에는 팀 간 의사소통과 책임 공유, 운영에서 얻은 피드백의 개발 과정 반영도 포함된다.[1]

DevOps는 소프트웨어 생명주기의 개발·배포·운영 단계를 지속적으로 연결하는 관점으로 이해할 수 있으며, 조직에 따라 애자일 소프트웨어 개발, 사이트 신뢰성 공학, 보안 자동화 및 클라우드 인프라 운영과 함께 적용된다.

역사

개발과 운영의 분리

DevOps 운동의 등장

클라우드와 자동화의 확산

원칙

협업과 책임 공유

자동화

측정과 피드백

지속적 개선

개발과 통합

버전 관리

자동화된 빌드

지속적 통합

테스트 자동화

배포와 릴리스

지속적 전달

지속적 배포

릴리스 관리

배포 전략

인프라와 운영

인프라스트럭처 애즈 코드

구성 관리

컨테이너와 오케스트레이션

관측성과 모니터링

사고 대응

보안과 품질

DevSecOps

안정성과 복구

주요 도구

소프트웨어 생명주기와의 관계

관련 문서

  1. Atlassian: What is DevOps? ↩