본문 바로가기
Architecture

DevOps란?

by parkjp 2017. 8. 29.

 

 

1. DevOps란?

 

 개발과 운영이 분리되면서 오는 문제점을 해결하기 위해서 개발과 운영 나아가 테스트까지 하나의 조직으로 합쳐 팀을 운영하는 문화이자 방법론.

 

 

2. DevOps를 적용하려면?

 

  1. Cross Functional Team

     
     하나의 팀에 각각 다른 역할을 할 수 있는 팀원들로 세트업 해서 전체 End 2 End 서비스를 운용할 수 있도록 한다. 한 팀 내에서 서비스의 기획부터 운영 그리고 영업까지 해당 서비스에 관련된 모든 것을 할 수 있는 구조로 팀을 구성한다.

  2. Widely Shared Metric

     
    팀 전체가 기준으로 삼을 수 있는 서비스에 대한 공통적인 지표를 둔다. 예를 들어, 하루 방문자 수, 평균 체류 시간, 가입자 수와 같은 비즈니스 지표부터 CPU 사용률, 메모리 사용률, 응답 시간 같은 기술 지표가 있다.

  3. Automating Repetitve Tasks

     반복적인 작업은 도구를 이용해서 자동화한다. 일반적으로 CI (Continuous Integration)이나 CD (Continuous Delivery)등을 이용해서 다루는 빌드, 배포, 테스트 자동화가 이에 속한다.

  4. Post-mortem

     
    장애나 이슈가 있을 때 처리 후에 그 내용을 전체 팀과 공유해야 한다. 

  5. Regular Release

     
    정기 릴리즈. 릴리즈가 끝나면 다음 릴리즈를 위한 기능 정의 과정을 거쳐야한다. 정기적으로 릴리즈 주기를 설정하면 전체 협업을 하는 입장에서 언제 어떤 협업을 해야 할지도 명확해진다.
     

3. DevOps를 구성할 때 주의점

 

  - DevOps팀을 새로 만들지는 말 것.

  - DevOps 엔지니어를 따로 채용하지 말 것.

  - DevOps는 소규모 스타트업 기업에 유리, 조직이 크면 인내심을 가지고 차근차근 적용할 것.

 

 

 

 

 

 

참조 저서 : 조병욱(조대협), 대용량 아키텍처와 성능 튜닝, 프리렉 출판, 123쪽

반응형

'Architecture' 카테고리의 다른 글

JWT의 이해  (0) 2017.08.30
REST의 이해  (2) 2017.08.29
마이크로 서비스 아키텍처 (Micro Service Architecture)  (0) 2017.08.28
모노리틱 아키텍처 (Monolithic Architecture)  (0) 2017.08.28
SOA (Service Oriented Architecture)  (0) 2017.08.28