본문 바로가기
7.유용한팁/>> IT용어

데브옵스.. 그거 어떻게 하는 건데..☆

by 블록메타 2022. 12. 19.
데브옵스는?

개발, 빌드, 테스팅, 배포, 모니터링, 운영 이런 부분에 대해서 유기적으로 이루어져야 되는 사항입니다. 

 

 

예를 들어 카카오톡 서비스를 만들어서 런칭하는게 개발이고, 런칭후에는 문제가 생기지 않도록 하는게 운영입니다. 

개발과 운영을 묶는 이유는 카카오톡에 송금 기능이 추가되고 선물하기가 점차적으로 추가된 것처럼 지속적으로 서비스가 업그레이드 되고 있습니다. 그럼 개발이 더 들어가야 되는거죠.  추가된 기능이 배포가 된 이후에는 운영이 되어야 되는 거죠. 

 

지속적으로 모니터링 해야 하고 결국 개발과 운영이 하나의 파이프라인으로 연결이 되어야 합니다.  

 

데브옵스 도입의 목적?

IT 전문 기업이라면 가장 강력한 무기를 가지게 되는 것입니다.  조직 문화가 서비스 중심, 협업 중심으로 바뀌게 되는 거구요. 게임을 예로 들자면 예전처럼 개인이 혼자서 개발을 해서 게임을 만드는 것이 아니라 협업이라는 것을 통해서 게임을 기획하고 기능도 개발하고 출시하고 운영도 하는 거죠.

 

기획, 개발에서부터 QA테스트, 지속적 모니터링과 운영까지 모두 유기적으로 일어나야 합니다.  데브옵스라는게 뫼비우스의 띠처럼 도는 거거든요. 그래서 나는 개발만 할거야, 운영만 할거야 같은 문화가 아니라 개발자도 운영을 고민하게 되고 운영자도 개발을 고민하게 됩니다. 왜냐하면, 데브옵스의 중심은 서비스에 있거든요.  개발자도 운영자도 어떻게 더 좋은 서비스를 만들지 고민해야 하는거죠.

 

서비스 중심의 마인드 전환이 필요한 것입니다. 

 

차별화된 데브옵스를 하는 방법은?

첫 번째는 지속적인 배포인데요. 개발자가 개발을 하기 위해서 개발을 기획하고, 개발하고, 빌드하고, 결과물이 테스트 후에 안정적으로 운영 환경에 배포가 되고 또한 서비스가 죽지 않게 무정지로 배포하는 거죠. 배포 이후에는 이 서비스가 정말로 안정적인지 지속적으로 모니터링을 하게 되고 이 배포 파이프라인의 과정에서 특정 이벤트가 발생하면 그걸 실시간으로 알림을 받을 수 있도록 구성해 놓는 것입니다. 

 

두번째로는 탄력적인 확장을 들 수 있습니다. 예를 들어서 사용자 100명이 접속해서 사용하는 서비스가 있는데 컴퓨팅 파워를 1,000개 노드 인스턴스를 만든다던가 이러면 비용이 상당히 낭비되는 거죠. 그래서 100명이 접속했을때 그거에 합당하는 컴퓨팅 인스턴스를 늘리고, 그리고 갑자기 프로모션에 의해서 사용자가 팍 튀었을 때 컴퓨팅 파워가 스케일 아웃 된다던지 이런 것들을 잘 자동화해서 구성하고 보여줄 수 있는 이런 차별화를 또 생각할 수 있고요. 

 

마지막으로는 데브옵스의 전 과정에서 자동화된 모니터링을 추구합니다. 그래서 클라우드 환경에 보안 이슈가 있진 않은지, 서비스 운영 환경에서 CPU라든지, IOPS 같은 락이 발생하진 않는지, 이런 것들이 실시간으로 감지되고 즉시 대응할 수 있는 실시간 채널과 같은 것들을 확립함으로써 진정한 데브옵스를 완성할 수 있습니다. 

 

데브옵스를 하려고 하는 사람들에게

데브옵스의 철학은 실패가 정상적인 것임을 인정하는 것입니다. 장애가 발생하면 조사해서 동일한 장애가 다시 방생하지 않도록 기술로써 점진적으로 노력해야 될 것입니다. 

 

 

 

Reference

https://www.youtube.com/watch?v=cp-oc0dcU7A

'7.유용한팁 > >> IT용어' 카테고리의 다른 글

검색엔진 최적화 SEO  (0) 2022.12.19
Docker 한방에 정리  (0) 2022.12.19
CI/CD  (0) 2022.12.10

댓글