아티팩트 관리 개요

아티팩트는 패키지, 컨테이너, 구성 파일, 문서 등의 소프트웨어 개발 프로세스로 생성한 파일입니다. 아티팩트의 예시는 다음과 같습니다.

  • 컨테이너 이미지 또는 소프트웨어 패키지와 같은 빌드의 출력
  • 기본 이미지 또는 오픈소스 패키지와 같이, 애플리케이션을 빌드하거나 배포하는 데 필요한 종속 항목
  • Helm 차트와 같은 구성 파일

이 페이지에서는 아티팩트 저장, 보안 및 배포를 위해 사용할 수 있는 Google Cloud의 아티팩트 관리 도구에 대해 설명합니다.

Google Cloud의 아티팩트 관리 도구

  • 아티팩트를 Artifact Registry에 저장합니다. 여기에서는 비공개 또는 공개 저장소에서 아티팩트를 안전하게 저장하고 관리할 수 있습니다. 이 저장소는 컨테이너 저장 및 관리를 위한 Google Cloud 서비스인 Container Registry의 후속 버전입니다.

  • 컨테이너 분석을 통해 메타데이터를 관리하여 다음을 수행할 수 있습니다.

    • 컨테이너 이미지에서 알려진 취약점을 검사합니다.
    • 이미지가 통합 테스트 모음을 통과했음을 나타내는 메타데이터와 같은 다른 메타데이터를 컨테이너 이미지에 추가합니다. 컨테이너 분석을 사용하면 여러 소스의 메타데이터를 통합할 수 있습니다.
  • Binary Authorization으로 신뢰할 수 있는 컨테이너만 배포합니다. 이를 사용하여 승인된 컨테이너만 VMware의 Google Kubernetes Engine 또는 Anthos 클러스터에 배포되도록 보안 정책을 만듭니다. Binary Authorization은 Artifact Registry, Container Registry, 기타 컨테이너 이미지 레지스트리의 컨테이너 이미지로 작동합니다.

아티팩트 관리 시스템의 이점

아티팩트가 조직 내부 및 외부의 여러 소스로부터 시작되기 때문에 아티팩트는 사용하기 복잡할 수 있습니다. 상호작용하는 각 개별 시스템마다 중단 또는 기타 문제로 인한 잠재적 장애점을 발생시킬 수 있습니다. 단일 빌드에는 다음 항목들로부터 시작되는 파일이 포함될 수 있습니다.

  • 여러 내부 팀 사이의 빌드
  • GitHub의 오픈소스 프로젝트
  • Maven Central 및 Docker Hub와 같은 형식 특정 사이트

아티팩트 관리 시스템은 아티팩트를 단일 위치로 중앙화함으로써 이러한 복잡성과 안정성 문제를 해결합니다. 아티팩트 및 아티팩트 사용 방법을 더 세밀하게 제어할 수 있습니다. 아티팩트 저장소는 다음과 같습니다.

  • 단일 신뢰 소스 및 아티팩트의 CI/CD 통합 지점으로 작동합니다.
  • 버전 관리, 취약점 검사, 승인 워크플로와 같은 기능을 제공합니다.
  • 통합 액세스 제어 및 일관된 구성을 사용 설정합니다.
  • 아티팩트 작업을 위한 자동화에 일관성을 제공합니다.
  • 조직 성능을 최적화하기 위한 다양한 DevOps 기능을 지원합니다.

CI/CD 워크플로의 아티팩트 관리

아티팩트 관리는 지속적 통합 및 지속적 배포(CI/CD) 파이프라인의 핵심 부분입니다. Google Cloud는 소프트웨어 개발에 대해 통합된 엔드 투 엔드 서비스를 제공합니다.

이러한 서비스를 함께 사용하거나 일부 서비스를 기존 CI/CD 도구와 통합할 수 있습니다.

다음 단계