320x100
320x100

데브옵스를 위한 툴 전략

- 프로세스 전략

 : 개발을 위한 개발 프로세스 전략 수립

 

- 커뮤니케이션 및 협업 계획

 

- 지속적인 개발 도구

 

- 지속적인 통합 툴

 : 팀원들의 코드를 자동으로 통합 하는 툴

 

- 지속적인 테스트 툴

 : 기능적 및 비기능적인 부분에 대해 테스트 하는 툴

 

- 지속적인 구축 툴

 : CI/CD

 

- 지속적인 운영 및 CloudOps 툴

 : 모니터링 및 운영을 위한 툴

 

 

 

자동화

- 수동 프로세스를 줄이고 태스크를 수행하는 IT 및 비즈니스 운영 시스템

 : IT 시스템에 대한 수동 작업을 대체하기 위해 반복적인 일련의 프로세스를 수행하는 명령 시스템

- 데브옵스에서 빌드, 테스트, 릴리즈, 모니터링을 자동으로 진행하는 시스템

 

 

 

 

 

 

 

CI/CD

출처 : https://devuna.tistory.com/56

의미

- 애플리케이션 구축, 테스트 및 배포에 자동화를 적용하여 개발 및 운영진 간의 격차를 해소하는 시스템

 

 

 

CI (Continuous Intergration) 

- 지속적인 통합

- 추가 / 뱐경 된 코드를 자동으로 빌드한 후 테스트

- 테스트를 통과한 소스코드만이 공유 레포지터리에 병합

 

 

 

CD (Continuous Delivery / Continuous Deployment)

- 지속적인 제공, 지속적인 배포

- 지속적인 제공

 : CI 과정을 거쳐 실 서버 환경에 배포하기 위한 레포지터리로 자동으로 업로드

- 지속적인 배포

 : 개발자의 변경 사항을 레포지터리에서 고객이 사용가능한 프로덕션 환경까지 자동으로 배포

 

 

 

CI/CD Tool

- Jenkins

 : 장점 

  ㆍ무료이며 레퍼런스 및 사용자가 많아 정보가 많음

  ㆍ지원되는 플러그인이 많아 개발속도가 빠름

  ㆍ설치 및 사용이 간편 (maven으로 빌드될 경우 가장 빠름)

  ㆍRemote Access API를 제공하여 다른 솔루션에서 연계하여 기능 확장 가능

 : 단점

  ㆍ프로젝트 별 보안 및 권한 설정이 불편함 (Bamboo에 비해)

  ㆍJIRA나 redmine과 같은 Issue tracking과의 연계가 불편하거나 불완전 하다

  ㆍ관리의 어려움

 

- Bamboo

 : 장점

  ㆍ간편하고 직관적인 UI

  ㆍatlassian 제품군과 완벽한 통합 제공 (JIRA 대쉬보드 등의 제품군과 연계성)

  ㆍVisual Studio, XCode 등 Java 이외의 개발환경 지원 (Visual Studio의 경우 )

  ㆍJenkins에 비해 프로젝트 권한 설정이나 분산 빌드가 아주 간편함

  ㆍRemote Access API를 제공하여 다른 솔루션에서 연계하여 기능 확장 가능

 : 단점

  ㆍ비싼비용

 

 

 

CI Tool

- Travis CI

 : 장점 

  ㆍGitHub와의 연계 용이

  ㆍ클라우드 형식의 서비스로, 따로 서버를 관리하지 않아도 됨 

  ㆍ오픈소스 프로젝트에 대해서는 무료 (학생에게도 무료)

  ㆍ많은 레퍼런스

 : 단점

  ㆍJenkins에 비해 부족한 기능

  ㆍ유료

 

- Circle CI

 : 장점

  ㆍGit과의 연계 용이

  ㆍ클라우드 형식의 서비스로, 따로 서버를 관리하지 않아도 됨

  ㆍ무료 / 주당 2500 크레딧 제공

  ㆍ간단한 사용법

 : 단점

  ㆍJenkins에 비해 적은 레퍼런스

  ㆍ무료의 경우한번에 한개의 job만 수행가능

 

 

 

 

 

 

300x250
728x90