본문 바로가기

잡인터뷰

DevOps는 무엇이며, 무슨 일을 하는 가?

반응형

DevOps 엔지니어는 지속적인 통합과 배포(CI/CD) 시스템을 구축하는 일도 맡는다.

DevOps라는 직책이 생긴 지는 한참 된듯하다.

예전에 웹개발자로 일하면서 8-9년전부터 흔히 보였다. 물론 그전부터 생겨진 직책이겠지만..

그때는 DevOps라는 직책이 하는 일이 정확히 알지 못했고

또 지금처럼 세분화 되지 않았던 걸로 기억한다.

지금은 나도 DevOps의 한 부분을 겉들여 맡아하고 있었지만,

그 직책을 받아 정확히 어떤일을 맡아 하는지 궁금해서 찾아 보았다.

DevOps는 무엇인가?

DevOps는 개발(Development)과 운영(Operation)을 합쳐 놓은 용어로,

소프트웨어 제품의 전체 라이프사이클에서

개발, 배포, 운영, 유지보수 등을 총괄하는 역할을 말한다.

 

DevOps 엔지니어들은 개발자와 운영팀 간의 협업을 강화시키고,

지속적인 통합과 배포(CI/CD) 시스템을 구축하며,

서버 및 인프라 자원을 관리하며,

모니터링 및 로깅 시스템을 구축하여

소프트웨어 제품의 안정성과 신뢰성을 유지하는 것이 주요 책임이다.

 

또한, DevOps 엔지니어는 클라우드 서비스, 가상화 기술, 컨테이너 기술

최신 기술 동향에 대한 이해와 적용 능력이 필요하다.

이를 통해 비용 효율적인 운영, 확장성 있는 시스템 구축, 빠른 배포 및 롤백 등을 가능케 한다.

 

DevOps의 주요 역할로는 다음과 같다.

  1. 개발과 운영 간의 협업 강화 - 개발자와 운영팀은 서로 다른 역할과 책임을 가지고 있기 때문에 소프트웨어 제품 개발 및 운영에서는 협업이 매우 중요하다. DevOps 엔지니어는 개발자와 운영팀 간의 의사소통과 협업을 강화하여, 소프트웨어 제품의 품질을 향상하고 문제를 빠르게 해결할 수 있도록 해야 한다
  2. 지속적인 통합과 배포(CI/CD) 시스템 구축 - DevOps 엔지니어는 지속적인 통합과 배포(CI/CD) 시스템을 구축하여, 소프트웨어 제품의 개발, 배포, 운영을 자동화하고 효율적으로 관리할 수 있도록 한다. 이를 통해 개발과 운영간의 협업을 강화하고, 빠른 시간 내에 제품을 배포/출시할 수 있다.
  3. 서버 및 인프라 자원 관리 - DevOps 엔지니어는 서버 및 인프라 자원을 관리하고, 소프트웨어 제품이 안정적으로 운영될 수 있도록 하여, 이를 위해 서버 구성, 운영체제 설치, 보안 설정 등 다양한 작업을 수행한다.
  4. 모니터링 및 로깅 시스템 구축 - DevOps 엔지니어는 모니터링 및 로깅 시스템을 구축하여, 소프트웨어 제품의 성능, 안정성, 보안 등을 지속적으로 모니터링하고, 필요한 조치를 취할 수 있도록 한다.

이 외에도 DevOps 엔지니어는 클라우드 서비스, 가상화 기술, 컨테이너 기술 등 최신 기술 동향에 대한 이해와 적용 능력이 필요하다.

이를 통해 비용 효율적인 운영, 확장성 있는 시스템 구축, 빠른 배포 및 롤백 등을 가능하게 한다.

DevOps라는 직책이 생긴 배경

DevOps라는 직책이 생긴 배경은 IT 산업에서 소프트웨어 개발과 운영이 분리되어 있었던 과거의 문제점 때문이다. 이러한 분리로 인해 개발자와 운영팀 사이에 의사소통과 협업이 원활하지 않아, 소프트웨어 제품의 배포와 운영에서 문제가 발생하는 경우가 많았고 이를 해결하기 위해 개발자와 운영팀 간의 협업과 자동화가 필요하다는 인식이 커지면서 DevOps라는 개념이 등장하게 되었다.

 

2008년에 처음 등장하였으며, 애자일 소프트웨어 개발 방법론 (Agile methodology)과 클라우드 컴퓨팅 기술의 발전으로 더욱 중요해졌다. 애자일 방법론은 빠른 속도로 제품을 출시하고 고객의 피드백을 수용하여 지속적인 개선이 가능하도록 해야 한다. 클라우드 컴퓨팅 기술은 서버 자원을 빠르게 확장하거나 축소할 수 있어, 기업이 비용을 절감하고 빠르게 서비스를 제공할 수 있게 한다. 이러한 환경에서 DevOps는 개발과 운영 간의 협업과 자동화를 강조하여, 더욱 중요한 역할을 하게 되었다.

반응형

'잡인터뷰' 카테고리의 다른 글

MVC Framework는 무엇인가?  (0) 2023.04.05
PHP 8.2의 새로운 점  (0) 2023.04.03
React/ReactJS의 매력  (0) 2023.03.30
서비스형 데이터 - DaaS는 무엇인가?  (2) 2023.03.27
NoSQL이란 무엇인가?  (0) 2023.03.26