: SW 개발자와 정보기술 전문가 간의 소통, 협업 및 통합을 강조하는 개발 환경이나 문화, 방식 및 도구의 조합
개발자 는 계속해서 새로운것을 도입하고 싶어하지만, Ops 들은 안정성을 최우선으로 여긴다.
그래서 등장한것이 DevOps이다
소프트웨어 개발 방법론 중에 하나이다.
- 제품 출시까지 걸리는 시간(time to market)단축
- 새로운 판의 더 낮은 실패율
- 픽스 간 짧아진 리드 타임(상품 생산 시작부터 완성까지 걸리는 시간)
- 복구 시 더 빠른 평균 시간(새로운 릴리스의 충돌 등..)
: 각 프로세스의 (개발 ~ 배포 및 테스트) 담당자들을 하나의 팀으로 모으는것
개발 프로세스를 하나의 팀에서 할 수 있도록 해야 한다는것
: 팀원 모두가 알고있는 하나의 공유된 지표가 필요하다는것
서비스 개발 뿐만아니라 서비스가 운영에서 잘 돌아가고 있는지, 사용자의 반응은 어떤지를 측정할 수 있는 기준이 필요하다는것
: 장애나 이슈가 있을때 혼자만 알지 말고 팀원들과 공유해아하는것
: 짧은 주기의 정기 배포를 통해 빠르게 서비스의 기능을 개선하고 고객들의 VoC를 반영해 나가는것
- 속도
- 신속한 제공
- 안정성
- 확장
- 협력 강화
- 보안
- 지속적 통합(CI)
- 지속적 제공(CD)
- 마이크로 서비스
- 코드형 인프라
- 모니터링 및 로깅
- 커뮤니케이션 및 협업