1. 개요
Dev(개발) | Ops(운영) | 정의 |
변화 | 안정 | 개발과 운영을 통합하여 자동화/측정/공유/축적을 통해서 애플리케이션/서비스의 개선과 혁신으로 시장 경쟁우위를 제공하는 개발 환경이나 문화 |
- 소프트웨어 개발자와 정보기술 전문가 간의 소통, 협업 및 통합을 강조하는 개발 환경이나 문화
2. DevOps의 핵심 요소와 기술 요소
가. 핵심 요소
핵심 요소 | 의미 | 도구 |
Culture(문화) | 개발과 운영이 협업하는 하나의 문화(사람, 프로세스, 소통) | People, Process, Practice 가치, 소통, 기술, 도구, 자원, 일정 |
Automation(자동화) | 효율성과 민첩성을 위한 자동화(개발~운영까지 자동화) | 배포(CI/CD)/구축(IaC)/운영 자동화 |
Measurement(측정) | 지속적 개선을 위한 지표 측정(운영에서 개발로 피드백) | 개발속도, 애플리케이션 성능 지표 |
Sharing(공유) | 함께 성장과 발전을 위한 공유(개발지식을 운영과정에 적용) | 집단지성, 오픈마인드 |
File Up(축적) | 지식 자산을 위한 기록의 축적 | Repository, Reuse |
- 발전단계 : 자동화 구축(CI/CD) --> 지표를 참조한 개발 요구사항에 반영 -> 운영상황의 배포 검토 -> 운영을 고려한 설계 및 개발
나. 기술 요소
구분 | 기술 요소 | 설명 |
프로세스 | IaC | 인프라를 코드로 구성하여 자동화 구축 |
CI/CD | 자동 빌드 및 배포, 지속적 통합과 지속적인 배포 | |
Small Release | 작은 단위로 배포하여 서비스에 적용 | |
배포 전략 | Recreate배포, Blue/Green배포, Rolling Update배포, Canary릴리즈 | |
품질 | 테스트 자동화 | 단위 테스트, UI 테스트, 통합테스트, 시스템 테스트 |
모니터링 & 로깅 | 품질 지표를 모니터링하고, 이벤트 로깅을 통한 운영 인사이트 도출 | |
도구 | 중앙집중식 인프라 | 젠킨스(Jenkins), 스플렁크(Splunk), 테라폼(Terraform), 나기오스(Nagios), 그라파나(Grafana), 프로메테우스(Prometheus) 도구 활용 |
'ITPE metacog' 카테고리의 다른 글
디지털 주권 (0) | 2021.04.01 |
---|---|
DID(Decentralized Identity) (0) | 2021.03.22 |
MCTS (0) | 2021.03.21 |
초실감 콘텐츠 (0) | 2021.03.19 |
티스토리 블로그 default font 변경 (0) | 2021.03.18 |