banner

블로그

Jun 20, 2023

플랫폼 엔지니어링으로 인해 DevOps 및 DevSecOps가 무의미해지나요?

작성자: Mark Troester, 2023년 8월 31일

기억할 만큼 나이가 많은 사람들은 DevOps 운동이 2007/2008년쯤에 등장했습니다. 그 지지자들은 당시 코드를 작성한 개발자가 코드를 배포하고 지원하는 개발자와 조직적, 기능적으로 분리되어야 한다는 전통적인 소프트웨어 모델을 비난했습니다. 이러한 움직임의 배경에는 이러한 고립된 팀이 자신의 목표에만 관심을 갖고 릴리스 실패, 심각한 지연, 의사소통 불량, 궁극적으로 고객 불만을 초래한다는 것입니다. 관심을 끌기까지는 몇 년이 걸렸지만 2011년 Gartner가 이 개념을 채택하자 채택이 급증했고 자동화된 빌드 및 테스트, 지속적인 통합 및 제공과 같은 애자일 개발 방식이 새로운 표준이 되었습니다.

Agile, DevOps 및 지속적인 통합과 지속적인 전달에 대한 약속… 글쎄요. 개발 팀과 운영 팀은 마침내 같은 페이지에 있었고 각각 현재 단계의 최종 목표를 볼 수 있게 되었으며, 그 과정에서 변경 및 개선을 수행할 수 있는 유연성을 제공하고 고품질 소프트웨어 제공 속도를 높일 수 있었습니다. 불행하게도 DevOps 성공 초기에는 보안과 규정 준수가 일반적으로 고립되어 있었습니다. 이러한 사일로로 인해 보안은 나중에 고려하게 되었고 애플리케이션 개발 수명 주기가 거의 끝나가게 되었습니다. 결과적으로 보안은 릴리스 지연 병목 현상의 원인이 되었습니다.

2014년은 전년도에 비해 보안 침해가 기하급수적으로 증가한 해였습니다. Security Week의 한 기사에 따르면 2014년은 처음으로 1,500건 이상의 주목할 만한 데이터 침해로 인해 10억 개의 기록이 손상되었으며 이는 2013년보다 80% 증가한 해입니다. Home Depot, JP Morgan Chase 및 eBay가 그 중 하나입니다. 많은 사람들이 공격자에게 노출되었습니다. 이러한 사건과 기타 중대한 침해 사건을 고려하여 이제 개발 프로세스를 재평가하고 보안 및 규정 준수를 논의해야 할 때였습니다.

Microsoft 등의 연구에 따르면 보안 침해의 80%가 구성 오류와 관련되어 있음이 밝혀졌습니다. DevSecOps의 개념은 애자일 개발 프로세스에서 보안을 최우선으로 삼아 자산이 처음부터 올바르게 구성되도록 보장하고 다음을 통해 지속적인 규정 준수를 제공합니다. 구성 드리프트를 식별하기 위해 지속적인 스캔을 실행합니다.

이 접근 방식은 데이터 센터를 넘어 모든 클라우드, 모든 에지로 확장될 수 있으며, 여기에서는 애플리케이션도 규정 준수 및 보안 표준에 따라 관리하고 확인할 수 있습니다. 단일 DevSecOps 규정 준수 프레임워크를 Kubernetes 및 퍼블릭 클라우드 서비스를 포함한 클라우드 네이티브 자산으로 확장할 수도 있습니다.

오늘날 "DevOps"라는 용어는 관련성을 잃어가고 있다고 해도 과언이 아닙니다. 그러나 "DevSecOps"는 조직이 성공에 필요한 문화, 인력 및 프로세스 변화를 수용하는 한 살아 있습니다. 도구와 기술은 보안이 모든 사람의 책임이라는 문화를 채택하는 것과 마찬가지로 DevSecOps에 필수적입니다. 이러한 문화를 위해서는 팀 간에 보안 우선 사고방식을 장려하고 필수 자동화 보안 테스트 도구를 구현해야 합니다.

플랫폼 엔지니어링은 최근 관심을 끌었으며 소프트웨어 제공 및 수명 주기 관리를 위한 셀프 서비스 내부 개발자 플랫폼(IDP) 구축 및 운영에 중점을 두고 있어 상당한 화제를 불러일으키고 있습니다. 이 플랫폼은 전담 제품 팀이 만들고 유지 관리하는 계층형 서비스 또는 도구로 지원되며 기본적으로 구성 요소를 함께 연결하여 원활한 개발자 환경을 조성함으로써 소프트웨어 개발자의 요구 사항을 지원하도록 설계되었습니다.

Gartner는 "플랫폼 엔지니어링은 애플리케이션 제공을 가속화하고 애플리케이션이 비즈니스 가치를 창출하는 속도를 가속화할 수 있는 새로운 기술 접근 ​​방식"이라고 말합니다. 실제로 Gartner는 “2026년까지 소프트웨어 엔지니어링 조직의 80%가 애플리케이션 제공을 위한 재사용 가능한 서비스, 구성 요소 및 도구의 내부 공급자로 플랫폼 팀을 설립할 것입니다. 플랫폼 엔지니어링은 궁극적으로 소프트웨어 개발자와 운영자 간의 협력이라는 핵심 문제를 해결할 것입니다.”

공유하다