본문 바로가기
CS

DevOps(데브옵스)

by 이건 뭐야 2024. 2. 13.

DevOps : 개발(Development) + 운영(Operation)

DevOps시스템 개발자와 운영을 담당하는 정보기술 전문가 사이의 소통, 협업, 통합 및 자동화를 강조하는 소프트웨어 개발 문화이자 방법론이며, 애자일(Agile) 소프트웨어 개발과 지속적인 통합 등의 개념과도 관련이 있다.

 

☞ 개발팀과 운영팀 간의 원활한 소통을 기반으로 운영팀에서 고객의 수요를 맞춰 서버와 데이터베이스를 관리하는 일을 통해 서비스가 제대로 작동할 수 있는 환경을 개발팀에게 제공할 수 있다.

 

 

애자일 소프트웨어 개발

계획과 문서를 기반으로 개발 모형이나 모델에 따라 앞을 예측하여 개발하는 것이 아니라, 실질적인 코딩을 기반으로 일정한 주기에 따라 계속적으로 프로토타입을 형성하고 필요한 요구사항을 파악하며 이에 따라 즉시 수정사항을 적용하여 결과적으로 하나의 큰 소프트웨어를 개발하는 적응형 개발 방법

 

익스트림 프로그래밍, 스크럼, 크리스탈 패밀리, 익스트림 모델링 등의 방법이 있다.

 

 

지속적인 통합

개발 초기부터 실행이 가능한 상태로 코드를 유지하는 것으로 퀄리티 컨트롤을 적용하는 프로세스이다.

소프트웨어의 질적 향상과 소프트웨어를 배포하는데 걸리는 시간을 줄인다.

 

 

DevOps의 이점

  1. 속도 : 작업 속도가 빨라지면서 시장 변화에 잘 적응하고 효율적으로 비즈니스 성과를 창출한다.
  2. 신속한 제공 : 새로운 기능의 릴리즈와 버그 수정 속도가 빨라질수록 경쟁 우위를 차지한다.
  3. 안정성 : 애플리케이션 업데이트와 인프라 변경의 품질 보장, 지속적 통합 및 지속적 전달과 같은 방식을 통해 변경 사항이 제대로 안전하게 작동하는지 테스트한다.
  4. 확장 가능 : 규모에 따라 인프라와 개발 프로세스 운영, 관리 가능하다.
  5. 협업 강화 : 개발자와 운영 부서 간의 협력을 통해 효과적인 팀 구축이 가능하다.
  6. 보안 : 자동화된 규정 준수 정책, 세분화된 제어 및 구성 관리 기술이 사용 가능하다.

 

 

DevOps 엔지니어가 하는 일

  1. 클라우드 마이그레이션 : 기존의 물리적인 서버 인프라를 클라우드 환경으로 이주시키는 것을 의미하며, 최근 시작된 기업들은 처음부터 클라우드 환경에서 인프라를 구축하기도 한다.
  2. 피크 트래픽 핸들링 스케일 아웃 : 서비스를 이용하는 사용자가 급증할 때 정상적으로 작동하도록 대비하는 설계를 한다.
  3. 데이터 파이프라인 : 절차에 따라 반복적으로 수행되어야 하는 것들을 자동화해서 필요한 데이터, 리소스를 전달하는 구조를 만든다.
  4. 모니터링 시스템 : 서비스를 운영하면서 발생하는 수많은 데이터를 파악할 수 있도록 시각화한다.
  5. 네트워크 보안 : 악의적인 접근을 방지하기 위해서 퍼블릭 영역과 프라이빗 영역을 구분하거나 연결한다.
  6. 코드를 통한 인프라 관리 : 인프라 구조를 파악하고, 관련 작업자들이 현 상황을 공유하고, 버전관리를 쉽게 하기 위해 IaC(Infrastructure as Code)의 필요성이 증가한다.

 

 

☞ 데브옵스 엔지니어는 모든 서비스(APP)가 겪을 수 밖에 없는 단계(개발, 배포, 운영)에서의 문제를 해결한다고 생각할 수 있다!

 

 


 

참조

데브옵스 DevOps란 무엇일까요? - 에이콘아카데미

데브옵스(DevOps)란?ㅣ클라우드 엔지니어, 데브옵스 엔지니어가 하는 일 - 코드스테이츠 공식 블로그

'CS' 카테고리의 다른 글

CORS, CSRF  (0) 2024.03.04
CI/CD  (0) 2024.02.15
Component(컴포넌트)  (1) 2024.02.11
Mock Data  (1) 2024.02.08
HTTP 인증 방식  (0) 2024.02.02