본문 바로가기
IT기술노트/소프트웨어공학

DevOps

by 비트코기 2021. 1. 29.

개발+운영


I. 개발, 운영 부서의 통합, DevOps의 개요

가. DevOps 정의

   - SW 개발 조직과 운영 조직간의 의사소통, 협업, 융합을 강조하여 SW 상품과 서비스를 신속히 생산하는 개발 방법론

나. DevOps의 등장배경

   - 수요증가, 비용절감, 장애대응, SW 라이프사이클 단축

다. DevOps의 특징

구분

특징

내용

기능적 관점

지속적 관리/시간

지속적 관리로 발생되는 복잡성을 낮추고 해결시간 단축

빠른 서비스 제공

문제 발생 시 신속한 초기 대응으로 문제 확산 확률 감소

올바른 측정 평가

유효한 데이터 평가 및 도출, 프로제트 성공 실패 원인 분석, 평가

비즈니스적 관점

지속적 의사소통

개발과 운영에 협업을 위한 의사소통 중요도 증가 및 목표 공유, 협력


II. DevOps의 프로세스 및 단계별 활동, 구현방안

가.DevOps의 프로세스

나. DevOps의 단계별 활동

단계

활동

설명

Dev Area

Product Backlog

- 사용자의 요구사항 리스트

SW Dev Team

- 작은 스프린트 단위 개발팀

Check In

- 작은 배포

Auto Process

Area

Auto Build

- 자동으로 빌드

Auto Script

- 자동으로 테스트 스크립트 생성

Auto Deployment

- 테스트가 완료된 부분에 배치

Operator

Area

Monitoring & Operation

- 시스템 운영에 대한관리

- 개발 조직이 운영까지 진행

  

다. DevOps의 프로세스

단계

내용

도구

계획

· 피드백, 비즈니스 요구사항, 사용자 수요 기준으로 우선순위 부여 계획 수립

Office, MS Project

개발 및 빌드

· 소스가 형상관리 Repository Check-in되면 자동으로 지속적인 통합 작업 수행

· 조기 문제 발견

Git, Github, eclipse, maven

테스트

· 테스트 자동화를 통해 각 코드 기반 빌드에 대한 테스트 수행

JUnit, XUnit, TestNG

릴리즈

· 자동화된 릴리즈 환경으로 성공,실패, 취소 여부 쉽게 제어

· 최종 사용자에 배포 준비

Jenkins, codeship

배포

· 릴리즈된 최종 결과물 도구 활용 운영 서버 배포

docker,aws

운영

· 연속성 있는 시스템 운영

CHEF, Jira, mantis, kubernetes

모니터링

· 애플리케이션 가용성, 상태 및 성능 모니터링

splunk, datadog

라. DevOps의 구현방안

구분

구현방안

설명

품질

통합적 품질보증

결함이나 기능 수정을 별도 구분하지 않고 개발 조직의 업무 백로그로 부터 운영시스템 서비스까지 하나의 프로세스 인식

테스트 자동화

자동화 테스트를 필수적 영역으로 간주하고 테스트 자동화는 테스팅 피라미드 구성 가능

프로세스

Small Release

잦은 배포를 통한 개발자와 운영자의 협력을 유도하고 피드백을 통한 배포 위험 감소

기능흐름 개선

개발되거나 변경된 SW가 실제 사용자에게 배포되는데까지 걸리는 사이클 타임을 줄여서 기능의 흐름을 개선

지속적 통합

지속적 통합과 지속적 출시를 통해 개발/운영을 하나의 프로세스로 구현 가능

도구

릴리즈 자동화

클릭 한번으로 전체 과정이 수분내에 수행, 릴리즈 실패 또는 취소와 같은 경우도 쉽게 제어

프로비저닝

IT 인프라 자원을 중앙에서 관리하여 사용자 및 비즈니스 요구사항에 따라 할당하고 배치하여 사용

 

반응형

'IT기술노트 > 소프트웨어공학' 카테고리의 다른 글

요구사항 추적표  (0) 2021.01.31
요구공학(Requirements Engineering)  (0) 2021.01.31
요구사항명세서(SRS,Software Request Specification)  (0) 2021.01.29
요구사항  (0) 2021.01.29
방법론 테일러링(Tailoring)  (0) 2021.01.29
JAD  (0) 2021.01.29
Kanban  (0) 2021.01.29
Lean  (0) 2021.01.29

댓글