DevOps란
데브옵스는 분리되어 있던 개발 조직과 운영 조직의 경계를 허물고 하나의 팀으로 통합하고자하는 문화이자 철학입니다.
대부분의 회사들에서 직접 서버장비를 구매하고, 그 서버장비 위에 운영체제를 설치하고 그리고 그 위에 서비스를 운영하기 위한 환경을 만들고, 해당 환경에 서비스를 올리는 식으로 진행되었습니다. 이 단계에서 개발팀과 운영팀이 분리되어 있었습니다. 따라서 이러한 개발팀과 운영팀 사이의 소통에서 문제가 있었습니다. 즉 이러한 과정에서 굉장히 많은 커뮤니케이션 오버헤드가 발생한 것입니다.
이는 대부분의 조직의 구조입니다. 조직의 규모가 크다면 각 단계 별 전문가로 구성된 기능 조직을 운영할 수도 있습니다. 하지만, 그만큼 의사소통이 많아지기 때문에 커뮤니케이션 문제가 발생하게 되고, 병목구간이 발생하기 쉬워집니다.
예를 들어 Architect가 설계한 구조를 Developer가 이해해야 하고, 개발자가 어떻게 개발해서 Tester가 어떻게 test해야 하는지 소통이 이루어져야 합니다. Release Eng또한 개발이 어떻게 진행되었고 어떻게 배포가 진행되어야 하는지 소통이 매우 많이 필요한 것입니다.
DevOps는 이러한 프로세스를 개선하기 위한 움직임이라고 보시면 됩니다. 즉 데브옵스가 조직에 정착되고 나면 개발자는 작성한 코드에 대해 스스로 테스트하고, 배포하고 운영에 참여할 수 있게 됩니다.
즉 소프트웨어 개발자가 소프트웨어 개발 Cycle의 모든 부분에 참여 함 으로써, 효율성을 극대화 할 수 있게 되는 것입니다.
데브옵스는 패러다임입니다. 방법을 제시하지는 않지만, 명확한 목표는 존재합니다. 개발과 운영의 벽을 허물어 더 빨리 자주 배포하는 것입니다. 이에 대해 AWS는 DevOps를 어떻게 실천할 수 있는지에 대한 방법을 제공해 줍니다.
DevOps의 핵심은 여기에 있는 지속적 통합(CI)와 지속적 배포(CD)입니다. 이 두가지만 되어도 개발한 결과를 빠르게 운영환경까지 배포하여 전달할 수 있고 제품의 품질 또한 보장할 수 있게 됩니다.
'DevOps > AWS Architecture' 카테고리의 다른 글
[ DevOps ] - AWS 기반 소규모 & 중규모 아키텍트 설계 - 네트워킹의 동작원리 - 1 (0) | 2022.06.27 |
---|---|
[ DevOps ] - AWS 기반 소규모 & 중규모 아키텍트 설계 - 네트워킹의 기본 (0) | 2022.06.27 |
[ DevOps ] - AWS 기반 소규모 & 중규모 아키텍트 설계 - AWS의 주요 서비스 소개 (0) | 2022.06.27 |
[ DevOps ] - AWS 기반 소규모 & 중규모 아키텍트 설계 - 클라우드 컴퓨팅 (0) | 2022.06.27 |
[ DevOps ] - DevOps 엔지니어의 역할 (0) | 2022.06.26 |