정의
Development + Operations
개발 업무와 관리 업무의 두 역할 사이에서 커뮤니케이션, 협업, 통합을 강조하는 개념.
기존의 소프트웨어 개발 및 인프라 관리 프로세스를 사용하는 조직보다 제품을 더 빠르게 혁신하고 개선할 수 있다.
개발팀과 운영팀이 병합되어 전체 애플리케이션 수명 주기에 걸쳐 작업하고 광범위한 기술을 개발한다.
DevOps 팀 전체가 보안을 중점으로 두는 경우에는 DevSecOps라고 불린다.
등장 배경
기존에는 폭포수 모델 방법론을 사용.
폭포수(Waterfall) 모델 방법론은 순차적인 소프트웨어 개발 프로세스로,
한 단계 한 단계를 완전히 확정시키면서 진행해나가야 한다.
하지만 이렇게 각 단계를 완벽히 마무리하고 다음 단계로 넘어가는 방식에는 현실적으로 어려움이 많다.
따라서 애자일 프로세스가 대두되게 된다.
애자일(Agile) 프로세스는 일정한 주기를 가지고 계속해서 프로토타입을 만들어내며 그때마다 필요한 요구를 더하고 수정하며 개발해나가는 방법이다.
DevOps는 애자일 선언에 뿌리를 둔 여러가지 실천법 중 하나이다.
분리되어있던 개발자와 운영자의 역할을 합침으로써 더 민첩한 개발 및 배포 사이클을 가질 수 있게 되었다.
이점
1. 작업 속도가 빨라진다.
: 작업 속도가 빨라져서 시장 변화에 더 잘 적응하고, 효육적으로 비즈니스 성과를 창출할 수 있다.
2. 제품을 빠르게 개선할 수 있다.
: 릴리스의 빈도와 속도를 개선하여 제품을 더 빠르게 혁신하고 개선할 수 있다.
따라서 고객의 요구에 빠르게 대응할 수 있게 된다.
3. 사용자에게 안정적으로 제공할 수 있다.
: 안정적으로 제공할 수 있도록 애플리케이션 업데이트와 인프라 변경의 품질을 보장한다.
4. 복잡하고 변화하는 시스템을 효율적으로 관리할 수 있다.
: 자동화와 일관성이 지원되므로 위험을 줄이면서 복잡한 시스템 또는 변화하는 시스템을 효율적으로 관리할 수 있게 된다.
5. 협업이 강화된다.
: 개발팀과 운영팀이 협력하므로 비효율성이 줄어들고 시간이 절약된다.
6. 보안이 유지된다.
: 자동화된 규정 준수 정책, 세분화된 제어 및 구성 관리 기술을 사용함으로써 보안을 그대로 유지할 수 있다.
참고 1 : https://blog.lgcns.com/1755
'CS' 카테고리의 다른 글
네트워크 - 기본 네트워크 (0) | 2023.03.16 |
---|---|
쿠버네티스 (0) | 2023.03.13 |
클라우드 기반 기술 (0) | 2023.02.23 |
클라우드 관련 용어 정리 (0) | 2023.02.17 |
클라우드의 분류 (0) | 2023.02.10 |