Notice
Recent Posts
Recent Comments
Link
«   2025/06   »
1 2 3 4 5 6 7
8 9 10 11 12 13 14
15 16 17 18 19 20 21
22 23 24 25 26 27 28
29 30
Archives
관리 메뉴

공돌이의 DevOps 도전기

DevOps란 무엇인가? 본문

DevOps

DevOps란 무엇인가?

Dozziny 2023. 3. 8. 10:12
DevOps란?

 

매일 새로운 용어가 등장하는 IT분야에서 요즘 DevOps란 말이 자주 등장하고있다.

Wikipedia에선 DevOps를 이렇게 정의한다.

 

▶ DevOps란? DevOps(Devops = Development + Operations)라는 합성어는 소프트웨어 개발자 들과 IT 종사자들 사이의 의사소통, 협업, 융합을 강조한 소프트웨어 개발 방법론이 며, 소프트웨어 개발과 IT 운영간의 상호 의존관계에 대한 산물이다. DevOps는 조 직에서 소프트웨어 상품과 서비스를 신속히 생산하는 것에 도움이 되는 것을 목적으로 한다.

 

 

개발 (Development) 과 운영 (Operations)

DevOps는 새로운 부서(팀)가 아니다. 그렇다고 개발자가 서비스 운영을 책임지는 것도 서비스 운영자가 개발 업무를 맡는 것도 아니다. 이들은 서로가 다른 기술과 우선순위 가 다르다. 개발을 하는 일과 이를 운영하는 일은 서로 다를 수밖에 없다. 아래 그림과 같이 새로운 Devops 조직을 만들고 Devops 전문 인력을 채용하겠다고 것은 Devops를 잘 못 이해하고 있는 것이다.

 

DevOps는 기존 틀에 묶여 있던 개발과 운영이라는 두 팀 간의 장벽을 없애준다. 두 팀이 함께 작업하여 개발자의 생산성과 운영의 안정성을 모두 최적화 할 수 있다. 자주 소통하고, 효율성을 높이고, 고객에게 제공하는 서비스의 품질을 향상하기 위해 최선을 다한다. 일반적으로 명시된 역할 또는 직책의 범위를 넘어 서비스에 대한 완전한 주인의식을 갖는것,

이것이 DevOps의 문화 철학인것이다.

 

커뮤니케이션 및 협업

조직에서 커뮤니케이션과 협업이 증가하는 것도 DevOps의 주요 문화적 측면 중 하나이다. DevOps 도구 및 소프트웨어 제공 프로세스 자동화를 사용하면 개발 및 운영의 워크플로와 책임을 물리적으로 합침으로써 협업이 이루어진다. 해당 팀에서는 채팅 애플리케이션, 문제 또는 프로젝트 추적 시스템, wiki를 사용하여 커뮤니케이션을 지원하고 정보를 공유하는 강력한 문화적 표준을 확립한다. 이를 통해 개발자와 운영 그리고 마케팅이나 영업과 같은 다른 팀 간에도 커뮤니케이션이 활발해지면서 조직의 모든 부분에서 목표와 프로젝트에 좀 더 가깝게 다가갈 수 있습니다.

 

DevOps 및 쿠버네티스(Kubernates)

DevOps 접근 방식은 Linux® 컨테이너와 긴밀히 연계되며, 개발 팀은 이를 통해 클라우드 네이티브 개발 방식에 필요한 기반 기술을 얻게 된다. 컨테이너는 개발, 배포, 통합, 자동화를 위한 통합 환경을 지원한다.

Kubernates는 Linux 컨테이너 운영을 자동화할 수 있는 현대적인 방법이다. Kubernates를 활용하면 퍼블릭, 프라이빗 또는 하이브리드 클라우드 전반에서 Linux 컨테이너를 실행 중인 클러스터를 손쉽게 효율적으로 관리할 수 있다.

적절한 플랫폼을 보유한 기업은 DevOps 문화와 프로세스 변경에 따르는 장점을 최대한 누릴 수 있다.

 

컨테이너는 DevOps를 통해 어떤 작업을 하나?

DevOps는 아이디어 개발에서 배포에 이르는 프로세스를 가속화한다. 그 중심에서 DevOps는 애플리케이션 라이프사이클 전반에서 일상적인 운영 태스크 자동화와 환경 표준화를 사용한다. 컨테이너는 표준화된 환경을 제공할 수 있으나 이를 관리하기 위해서는 모든 인프라에 대한 지원 및 빌트인 자동화를 제공하는 플랫폼이 필요하다.

 

DevOps로 지속적인 배포를 통해 확장 가능

DevOps 구현의 주요 성과는 지속적 통합/지속적 배포이다 . CI/CD를 통해 고객에 대한 애플리케이션 제공 주기를 단축하고 인적 개입을 최소화하여 소프트웨어의 품질을 검증할 수 있다.

특히, CI/CD는 애플리케이션의 통합 및 테스트 단계에서부터 제공 및 배포에 이르는 애플리케이션의 라이프사이클 전체에 걸쳐 지속적인 자동화와 지속적인 모니터링을 제공하여, 신속하게 문제 및 결함을 식별하고 수정한다. 이러한 구축 사례를 일반적으로 "CI/CD 파이프라인"이라 부르며 개발 및 운영 팀의 애자일 방식 협력을 통해 지원된다.

 

DevOps란 무엇입니까? – Amazon Web Services(AWS)

 

Comments