brunch

You can make anything
by writing

C.S.Lewis

by 하이프마크 Nov 15. 2021

데브옵스란?


데브옵스(DevOps)는 개발(Development)과 운영(Operations)의 합성어로서, 2009년 처음으로 등장하게 된 단어입니다. 개발과 운영의 경계를 허물고 하나의 팀으로서 소통, 협업 및 통합을 강조하는 개발 환경이나 문화를 뜻합니다.


여태까지는 개발자가 개발을 완료하면 운영자에게 전달해야하는 루트가 있었습니다. 개발을 완료하더라도 운영자를 통해 배포되어야 했고, 운영자는 개발자가 만든 프로그램을 이해하는 시간이 필요했습니다. 이 과정에서 커뮤니케이션에 문제가 생긴다면 시간이 더 걸리게 되겠죠.


데브옵스는 이러한 상황을 타개하고자 나온 새로운 문화, 혹은 환경입니다.







이처럼 데브옵스 적용이 가능한 툴을 묶어 하나의 체인 형식으로 모든 과정인 기획-개발-빌드-테스트-배포-모니터링-산출물-KnowledgeBase을 묶어 사용할 수 있게 되는 것입니다.  


DevOps의 등장은 고객뿐 아니라 조직에 있어서도 중요한 국면을 차지합니다. 점점 더 빠른 속도의 개발을 원하는 요즘 시대에 발맞출 수 있는 개발 속도가 가능하기 때문입니다.


따라서 많은 기업들이 DevOps를 적용시키고 있는데요.  단순히 개발 팀과 운영 팀을 통합해 만드는 것은 데브옵스가 아닙니다. 개발에서 운영까지 매끄럽게 진행할 수 있는, 각기 다른 기술을 갖고 있는 이들이 모여서 팀을 이루는 것입니다. 따라서 데브옵스 엔지니어는 개발자가 시스템 관리도 한다 / 운영자가 개발도 한다 로 정의하는 것이 아니고, 운영과 개발 사이에서 지속적 전달과 지속적 통합을 진행할 수 있도록 데브옵스 환경을 조성하는 사람이라고 볼 수 있습니다. 


그렇다면 데브옵스를 적용할 경우 장점에 대해 알아보겠습니다.


속도

데브옵스를 적용하면 자연스레 작업 속도가 빨라집니다. 개발과 운영 사이를 왔다갔다하는 커뮤니케이션 작업이 사라지기 때문입니다. 또한 고객의 요구를 더 빠르게 받아들여 개선할 수 있고, 시장 변화에 더 잘 적응할 수 있는 등 더 효율적으로 비즈니스 성과를 만들어낼 수 있습니다.


빠른 배포

속도가 빨라졌기 때문의 프로그램의 배포가 빨라집니다. 배포가 빨라진다는 것은 타사와의 시장 경쟁 구도에서 우위를 차지한다는 것을 뜻합니다. 


협업 강화

DevOps는 말 그대로 협업을 중시하는 문화입니다. 따라서 자연히 개발과 운영 간의 협업이 강화되고 협력해 많은 책임을 공유하게 됩니다.  이 책임 공유는 팀을 보다 효율적으로 만들고 프로그램의 품질을 높이는 결과를 가져옵니다.


품질 향상

여러단계를 거치지 않고 내부에서 지속적 전달과 통합을 이뤄내면 버그의 경우도 비교적 빨리 잡아낼 수 있고, 변경사항을 바로바로 적용시킬 수 있어 프로그램의 품질과 완성도를 한단계 높입니다. 또한 모니터링을 통해 실시간으로 성능을 파악할 수 있습니다.


보안

자동화된 규정 준수 정책과 세분화된 제어 및 구성 관리 기술로 보안을 높은 수준으로 유지할 수 있습니다. 

이처럼 데브옵스는 개발과 운영을 통합하여 제품 출시 및 조직의 효율성을 끌어올리기 위한 문화라 볼 수 있습니다. 따라서 고객과 회사, 그리고 팀까지 모두에게 이점을 가져다 줄 수 있죠.


그렇다면 DevOps는 어떤 방법으로 이뤄질까요? 대체적으로 다음과 같습니다. 

 

지속적 통합

지속적 전달

마이크로 서비스

코드형 인프라

모니터링 및 로깅

협업


지속적 통합과 지속적 전달 방식으로 소프트웨어를 개발하고, 마이크로 서비스로 단일 애플리케이션을 작은 서비스의 집합으로 구축해 설계합니다. 코드형 인프라는 앞선 개발 기술을 통해 인프라를 프로비저닝하고 관리하는 방식을 뜻합니다. 물론 지표와 로그를 모니터링해 상황을 파악해야겠죠. 그리고 이 모든 과정들을 원할하게 진행하기 위한 협업이 필수입니다.


따라서 데브옵스 엔지니어는 다음와 같은 역량을 가지고 있어야 합니다. 



출처 : https://github.com/devJang/developer-roadmap



이처럼 엔지니어 개발자에게는 여러 역량이 요구됩니다. 


시스템 관리 및 개발에 대한 지식은 당연히 필요하겠죠. 이를 다 이해할 수 있어야 운영과 개발 양쪽 모두와 함께 소통하며 작업 환경 조성에 일조할 수 있으니까요. 따라서 또 다른 중요한 건 조건은 커뮤니케이션을 원할하게 할 수 있는 인적 관리 역량입니다. 


DevOps는 어떤 기술이나 특정한 팀을 만드는 것을 뜻하는 것이 아닙니다. 말 그대로 문화입니다. 이러한 문화가 기업에 자리잡게 된다면 기업의 목표 향상과 그를 위한 프로젝트 달성에 큰 도움이 될 것입니다.


하이프마크에서는 기업의 웹앱로그데이터의 클라우드 적재와 ETL 파이프라인 구성 그 외 클라우드 내 데이터분석 환경 구축 및 분석 시각화 서비스를 함께 제공하고 있습니다.


AWS, GCP등 클라우드 이전 매니지드서비스 및 웹앱로그데이터 태깅 적재 관련 문의사항이 있으시면 하이프마크에 문의 주세요


감사합니다.

매거진의 이전글 GCP : 빅쿼리(BigQuery)
브런치는 최신 브라우저에 최적화 되어있습니다. IE chrome safari