개발자를 위해 만들어진 클라우드 — 2021년 총정리
Urs Hölzle
Senior Vice President, Technical Infrastructure, Google Cloud
Aparna Sinha
Director of Product Management
* 본 아티클의 원문은 2021년 12월 24일 Google Cloud 블로그(영문)에 게재되었습니다.
2021년은 소프트웨어 개발자에게 중요한 해였습니다. 모든 기업이 디지털과 온라인 행보에 박차를 가하는 동시에 원격 개발 체제로 전환하는 모습을 보였습니다. 개발자 생산성 향상을 통한 혁신은 조사에 응답한 거의 모든 IT 담당 임원이 꼽은 최우선 과제였습니다. 그중 많은 수가 Alphabet이 오랜 기간 혁신을 거듭한 비결을 물었습니다. Google 검색 기술부터 Waymo의 무인 자동차에 이르기까지, 차세대 핵심 기술을 개발할 수 있는 비결은 무엇일까요?
답은 간단합니다. 생각을 10배 더 많이 하는 거죠. 장기간 쌓여 더 큰 결실이 되는 일련의 소소한 변화를 통해 고객이 10배 더 빠르게 개선할 수 있도록 만드는 솔루션을 찾으면 됩니다. Google Cloud에서는 고객이 혁신적인 기술 기업이 되도록 돕기 위해 이와 같은 철학을 따르고 있습니다. 최근에는 파트너, 고객, 개발자와 긴밀하게 협업하여 개발자 생산성을 10배 더 높여주는 서비스를 개발하고 있습니다.
6년 전에 Google은 관리형 Kubernetes 서비스인 Google Kubernetes Engine(GKE)을 소개했습니다. 올해에는 일체의 노드 관리 작업을 없애 Kubernetes 관리에 혁신을 불러온 GKE Autopilot을 추가했습니다. Cloud Run 서버리스 플랫폼 역시 개발자가 작은 코드 조각을 실행하던 기존의 방식에서 벗어나 서버리스 환경에서 전체 애플리케이션을 실행할 수 있도록 만든 업계 최초의 서비스였습니다. 2020년 9월부터 2021년 9월까지 Cloud Run 배포는 4배 넘게 늘었습니다. 최근에는 오픈소스 보안 재단(Open Source Security Foundation)을 공동 설립해 안전한 지속적 통합 및 지속적 배포(CI/CD) 서비스를 함께 개발하기 시작했으며, 이는 헤드라인을 장식한 사이버 보안 위협보다도 1여 년 이상 앞선 것이었습니다.
2021년에 가장 많은 고객이 Google에 솔루션을 요청한 개발 관련 과제는 다음과 같습니다.
- 분산된 개발자 생산성 향상
- 소프트웨어 공급망 보호
- 클라우드 기반 애플리케이션 실행 간소화
자세한 내용을 확인하려면 계속 읽어보세요.
분산된 개발자 생산성 향상
시간은 혁신을 이루는 데 있어 중요한 필수 요건입니다. 개발자 생산성에 투자하면 개발자에게 중요한 업무에 집중할 수 있는 시간적 여유가 생깁니다. 과거에 개발자는 로컬 환경에 도구를 다운로드 및 설치하고, 최신 버전 또는 종속 항목으로 업데이트하는 데 많은 시간을 보냈습니다. Cloud Shell 편집기는 완전 원격 개발 환경으로, 보안 기능이 기본 제공되며 계속 추가되고 있습니다. 이 편집기는 MySQL, Kubernetes, Docker, minikube, Skaffold 같은 개발자 도구가 사전 설치된 상태로 제공되므로 개발자는 웹브라우저와 인터넷 연결만 갖추면 생산성을 발휘할 수 있습니다. 개발자는 이제 Cloud Shell 편집기에서 바로 튜토리얼에 액세스할 수 있으며 Google 문서에서 바로 코드 샘플을 사용해 볼 수 있습니다. 또한 개발자는 빌드팩 지원 덕분에 Docker 또는 컨테이너에 대한 지식이 없어도 소스 코드에서 바로 컨테이너 이미지를 만들 수 있습니다.
소프트웨어 공급망 보호
소프트웨어 공급망 취약점은 2021년에 SolarWinds, Mimecast/Microsoft Exchange, Log4j 등의 사건을 일으키며 비즈니스, 일상, 정부 기관 전체에까지 영향을 미쳤습니다. 이에 바이든 대통령은 소프트웨어 공급망 보안 표준을 강화하는 행정 명령을 내리기에 이르렀습니다.
소프트웨어 공급망 문제를 해결하기 위해서는 전 산업분야의 기업이 힘을 모아야 합니다. Google이 오픈소스 보안 협회(Open SSF)를 공동 설립한 이유도 여기에 있습니다. Google은 소프트웨어 공급망 전반의 소프트웨어 아티팩트 무결성을 유지할 수 있도록 산업 전반에 적용되는 프레임워크인 SLSA를 제안하기도 했습니다.
종속 항목 트리가 복잡하게 얽혀 있는 오픈소스는 여전히 주요 공격 대상입니다. 실제로 대략 84%의 상업적 코드베이스에 하나 이상의 오픈소스 취약점이 존재합니다. 오늘날 개발자는 Allstar GitHub App, 오픈소스 보안 점수 카드, Open Source Insights와 같은 Google 도구를 사용해 보안 권장사항을 구현하고 오픈소스 프로젝트의 위험 점수를 판단하며 프로젝트 내부의 종속 항목을 시각화할 수 있습니다. 또한 이와 같은 종류의 오픈소스 혁신 기술 중 다수가 Google Cloud 고객이 바로 사용할 수 있도록 제공됩니다. 예를 들면 다음과 같습니다.
- Apache Log4j 취약점을 완화하기 위한 상세 권장사항
- Google Cloud On-Demand Scanning의 자바 스캔 기능은 개발자가 취약한 Log4j 버전을 사용하는 Linux 기반 컨테이너 이미지를 식별하는 데 매우 유용하게 사용됩니다. On-Demand Scanning은 2021년 12월 31일까지 무료로 사용할 수 있습니다.
- 자사의 서버리스 CI/CD 서비스인 Cloud Build는 SLSA 레벨 1 수준의 규정 준수를 기본적으로 제공합니다. 이처럼 빌드 출처를 검증함으로써 소스 코드의 바이너리를 추적해 조작을 방지하고 실행 중인 코드가 의도한 코드가 맞는지 증명할 수 있습니다.
- Cloud Build의 새로운 빌드 무결성 기능은 디지털 서명을 자동으로 생성하여 무결성을 개선합니다. Binary Authorization으로 배포하기 전에 이 디지털 서명을 검사하는 방식입니다.
클라우드 기반 애플리케이션 실행 간소화
혁신이 순탄하게 이루어지는 경우는 거의 없으며 수많은 시행착오를 거치기 마련입니다. 개발자는 실험을 실행하고 오류를 신속하게 수정할 수 있는 비용 효과적인 런타임이 필요합니다. 이를 위해 GKE Autopilot은 시장에서 가장 성숙한 Kubernetes 서비스인 GKE를 채택하고, 관리형 제어 영역과 데이터 영역, 즉시 사용 가능한 최적화된 구성, 자동화된 확장성, 상태 점검 및 복원, 사용한 만큼 지불하는 요금제를 제공하여 Kubernetes 작업을 더욱 간소화합니다.
"GKE Autopilot 덕분에 비즈니스의 잠재력이 더욱 향상됐습니다. 인프라의 세부 조정에 신경 쓸 필요 없이 지속적으로 제품을 개발하고 업그레이드할 수 있게 되었습니다."—준 사카타, Ubie의 사이트 안정성 담당 소프트웨어 엔지니어
클러스터가 없으면 더욱 단순해집니다. 개발자는 Cloud Run을 통해 클러스터나 VM을 관리할 필요 없이 노드나 컨테이너 이미지에서 서비스를 실행할 수 있는 자유를 얻게 됩니다. 그와 동시에 하이퍼바이저급의 안전한 샌드박스 환경과 여러 가지 기본 제공 DevOps 기능(예: 여러 버전의 배포 환경, 점진적 출시 및 롤백, GitHub, Cloud Build 통합)을 제공합니다. 이 환경은 웹과 모바일 애플리케이션을 개발하기에 이상적입니다. 2021년에 인스턴스당 동시 실행 수 증가, 새로운 CPU 할당 제어, 표준 Docker 이미지 지원 같은 기능이 추가되면서 서버리스의 이점은 이제 기존 워크로드를 포함한 더 광범위한 워크로드로 확대될 수 있습니다. 추가적으로, 약정 사용 계약 같은 결제 유연성과 CPU 상시 사용 같은 기능과 더불어 새로운 비용 관리 수단을 사용함으로써 서버리스 환경에서 보다 안정적인 패턴의 워크로드를 비용 효과적으로 실행할 수 있게 되었습니다. 무엇보다도 이러한 개선에 힘입어 Cloud Run을 사용하는 조직에서 개발자 인건비를 40%나 절감한 것으로 조사되었습니다.
Cloud Run은 개발자에게 탄소 발자국을 최적화할 수 있는 옵션을 제공하는 최초의 플랫폼이기도 합니다. 새로운 셀프서비스 방식의 리전 선택 도구를 사용하면 Cloud Run 워크로드 실행 시 총 탄소 비용이 가장 낮은 데이터 센터 리전을 선택할 수 있습니다. 게다가 Google Cloud 탄소 발자국을 사용하면 단 한 번의 클릭으로 에너지 관련 배출 데이터에 액세스하여 외부 탄소 공개 정보를 확인할 수 있습니다.
"Cloud Run을 사용하면서 전과 비교해 절반 수준의 인력만으로 시스템을 관리할 수 있게 되었습니다."Cosmetics의 Google Cloud Platform 아키텍트설계자
"Cloud Run은 Google Cloud Platform에서 배포할 수 있는 가장 쉬운 서비스입니다. 놀랍도록 간단하죠." Healthcare SaaS의 CTO
Cloud Run과 관련 Cloud Functions를 사용해 보려면 2만 달러가 넘는 상금이 걸려 있는 Easy as Pie Serverless Hackathon을 확인해 보세요.
2022년에 다가올 새로운 변화
2021년은 간소화를 실현하고 개발자 생산성에 대한 관심을 높인 한 해였습니다. 중요한 것은 개발자가 인프라, 보안, 규정 준수, 통합에 대해 걱정할 필요 없이 더 높은 수준의 스택에서 계속 작업을 수행하는 것입니다. 이것이 2022년의 목표입니다. 2022년에는 Google Cloud의 ISV 파트너, 개발자, SecOps팀과 함께 혁신을 일구어 개발자를 위해 만들어진 클라우드에서 10배 더 빠르게 혁신을 이루세요.