DevOps와 오픈소스 소프트웨어

2021. 5. 1. 22:02공부/오픈소스를 활용한 DevOps 환경 이해

반응형

4차 산업혁명시대 기술 변화 가속화로 새로운 sw기반 서비스 등장

시장의 변화, 고객 요구에 대한 빠른 대응이 중요

빠른 시도, 빠른 실패를 통한 점진적 서비스 개선

DevOps란

기술과 시장의 빠른 변화에 대응하기 위한 최신 소프트웨어 개발/운영 트렌드

Development(개발) +Operatioins(운영)

개발, 운영, 품질의 교집합에 devops가 있다.

왜 DevOps인가

더 빠르게, 더 자주 배포

낮은 실패율, 빠른 복구

높은 품질, 안정적 제공

시스템 기반 자동화 및 자동 특정

-> 서비스를 지속적으로 개선하고 제공하기 위해. 최소비용+최고 효율

DevOps가 가능해진 이유

-> 오픈소스 소프트웨어 모델의 성공

기술과 시장의 빠른 변화에 대응해야 하는 DevOps에 적합

최첨단 아이디어, 기술을 선도하는 기업들의 오픈소스 주도

공유와 협력 기반의 오픈소스 커뮤니티(생태계) 활성화

DevOps 수명 수기

계획 개발 빌드 테스트 릴리즈 배포 운영 모니터링

-> 개발과 운영을 반복

 

계획, 개발 => 애자일 개발

빌드, 테스트 => 지속적 통합

릴리즈, 배포 => 지속적 전달/배포

운영, 모니터링 => 지속적 서비스 개선

 

이상적 : 지속적 서비스 개선까지 이루는 것이 목표

현실적 : 조직의 성숙도에 따라 구현 가능한 수준부터 적용 필요

오픈 소스 DevOps 도구 사슬

계획 : 협업/일감 관리 도구 사용 -> redmine..

개발 : 코드 버전 관리 도구 사용 -> git...

빌드 : 컴파일, 패키징, 단위 테스팅 도구 사용 -> maven...

테스트 : 다양한 테스팅 도구 사용 ->  sonarqube...

릴리즈, 배포 : 애플리케이션 관리 도구 사용 -> docker

운영 : container orchestration 도구, 인프라를 토대 코드로 다룰 수 있는 도구

모니터링 : 로깅 관리, 가시화 대시보드 도구 사용

 

반응형