제품은 AWS에서 배포용으로 제공하고자 하는 AWS 클라우드 리소스 세트입니다. 제품은 EC2 인스턴스, 스토리지 볼륨, 데이터베이스, 모니터링 구성 및 네트워킹 구성 요소 또는 패키지화된 AWS Marketplace 제품 등 하나 이상의 AWS 리소스로 구성될 수 있습니다. 제품은 AWS Linux를 실행하는 단일 컴퓨팅 인스턴스, 자체 환경에서 실행되는 전체 구성 멀티 티어 웹 애플리케이션 또는 그 사이에 있는 제품이 될 수 있습니다. AWS Service Catalog를 사용하면 AWS CloudFormation 템플릿 또는 Terraform 구성을 비롯한 다양한 방법으로 제품을 만들 수 있습니다. 이러한 템플릿과 구성은 제품에 필요한 AWS 리소스, 리소스 간의 관계 및 최종 사용자가 제품을 시작할 때 보안 그룹을 구성하기 위해 플러그인할 수 있는 파라미터를 정의하고 키 페어를 생성하며 다른 사용자 정의 작업을 수행합니다.
AWS Service Catalog 제품은 AWS CloudFormation 유형 제품이거나 Terraform 오픈 소스 유형 또는 Terraform Cloud 제품입니다. AWS CloudFormation 유형 제품은 제품의 해당 인스턴스에 대해 프로비저닝된 리소스 세트인 AWS CloudFormation 스택으로 시작됩니다. Terraform 오픈 소스 및 Terraform Cloud 유형 제품의 경우 AWS Resource Groups에 기본 리소스가 저장되고 태깅됩니다. AWS CloudFormation 스택과 AWS Resource Groups를 사용하면 단일 단위로 제품 인스턴스를 프로비저닝, 태그 지정, 업데이트 및 종료할 수 있어 제품의 수명 주기를 더 편리하게 관리할 수 있습니다.
포트폴리오는 제품의 모음과 구성 정보입니다. 포트폴리오는 제품 구성과 특정 제품을 사용할 수 있는 사람과 사용할 수 있는 방법을 관리하는 데 도움이 됩니다. AWS Service Catalog를 사용하면 조직에서 각 유형의 사용자에 대해 사용자 정의된 포트폴리오를 생성하고 적절한 포트폴리오에 대한 액세스를 선택적으로 허용할 수 있습니다. 새 제품 버전을 추가하면 해당 버전은 자동으로 해당 포트폴리오의 모든 현재 사용자에게 제공됩니다. 다른 AWS 계정과 포트폴리오를 공유하고 해당 계정의 관리자가 추가 제약을 적용하여 해당 계정이 자신의 포트폴리오를 배포할 수 있도록 허용할 수 있습니다. 예를 들어 개발자의 경우 사용자가 소프트웨어 개발 및 테스트에 사용할 수 있는 승인된 버전이 포함된 LAMP 스택 등 개발 환경의 포트폴리오를 정의할 수 있습니다. 캠페인 웹 사이트 및 시장 분석 애플리케이션이 포함된 마케팅 조직의 포트폴리오를 정의할 수도 있습니다. 포트폴리오에는 AWS CloudFormation 유형 제품 또는 Terraform 오픈 소스 및 Terraform Cloud 유형 제품을 비롯한 다양한 유형의 제품이 혼합되어 포함될 수 있습니다.
AWS Service Catalog를 사용하면 카탈로그의 여러 제품 버전을 관리할 수 있습니다. 따라서 소프트웨어 업데이트 또는 구성 변경 사항에 따라 새 템플릿 버전과 연결된 리소스를 추가할 수 있습니다. 새 제품 버전을 생성할 때 업데이트가 제품에 액세스할 수 있는 모든 사용자에게 자동으로 배포되어 사용자가 사용할 제품의 버전을 선택할 수 있습니다. 사용자는 새 버전에 실행 중인 제품 인스턴스를 신속하고 편리하게 업데이트할 수 있습니다.
포트폴리오에 대한 사용자 액세스를 허용하면 해당 사용자가 포트폴리오를 검색하고 그 포트폴리오의 제품을 시작할 수 있습니다. AWS Identity and Access Management(IAM) 권한을 적용하여 제품과 포트폴리오를 보고 수정할 수 있는 사람을 관리합니다. IAM 권한은 IAM 사용자, 그룹 및 역할에 할당할 수 있습니다. 사용자가 할당된 IAM 역할이 있는 제품을 시작할 경우 AWS Service Catalog는 그 역할로 제품의 클라우드 리소스를 시작합니다. 각 제품에 IAM 역할을 할당하면 사용자에게 승인되지 않은 작업을 수행할 권한을 허용하지 않을 수 있고 사용자가 카탈로그를 사용하여 리소스를 프로비저닝할 수 있습니다.
제약은 제품에 대해 특정 AWS 리소스를 배포하는 방식을 제한합니다. 제약을 사용하여 거버넌스와 비용 관리를 위해 제품에 제한을 적용할 수 있습니다. 제약은 두 가지, 즉 템플릿과 시작이 있습니다. 템플릿 제약은 제품을 시작할 때 사용자에게 제공하는 구성 파라미터를 제한합니다(예: EC2 인스턴스 유형 또는 IP 범위). 템플릿 제약을 사용하면 제품에 일반 코드형 인프라(IaC) 템플릿을 재사용하고 제품당 또는 포트폴리오당 템플릿에 제한을 적용할 수 있습니다. 시작 제약을 사용하면 포트폴리오의 제품에 대해 역할을 지정할 수 있습니다. 이 역할을 사용하면 시작 시 리소스를 프로비저닝할 수 있기 때문에 사용자가 카탈로그에서 제품을 프로비저닝할 수 있는 능력에 영향을 주지 않고 사용자 권한을 제한할 수 있습니다. 예를 들어 마케팅 사용자의 경우 이러한 제약을 활성화하여 캠페인 웹 사이트를 생성할 수 있지만 제약을 사용하면 기반 데이터베이스를 프로비저닝하기 위한 액세스를 제한할 수 있습니다. Terraform 오픈 소스 및 Terraform Cloud 유형 제품에는 시작 제약이 지원됩니다. 템플릿 제약의 경우 아직 Terraform 오픈 소스 및 Terraform Cloud 유형 제품에 사용할 수 없습니다.
서비스 작업을 사용해서 AWS 서비스에 대한 완전한 액세스를 최종 사용자에게 부여하지 않고도 사용자가 운영 작업을 수행하고 문제를 해결하며, 허용된 명령을 수행하거나, 프로비저닝한 제품에 대해 AWS Service Catalog 내 승인을 요청할 수 있습니다. AWS Systems Manager 문서를 사용해 서비스 활동을 정의합니다. AWS Systems Manager 문서는 Amazon EC2 정지 및 리부팅 등의 AWS 모범 사례를 구현하는 사전 정의 활동에 대한 액세스를 제공하며, 사용자 지정 활동을 정의할 수 있습니다. Terraform 오픈 소스 및 Terraform Cloud 유형 제품에는 아직 서비스 작업을 사용할 수 없습니다.
빌더는 이름, 설명, 애플리케이션 메타데이터에 대한 연결 및 CloudFormation 스택에 대한 연결을 제공함으로써 Service Catalog AppRegistry 내에서 애플리케이션을 정의합니다. 관련 속성 그룹은 기업이 애플리케이션용으로 생성 및 관리하는 메타데이터를 보여줍니다. 관련 CloudFormation 스택은 애플리케이션 관련 AWS 리소스를 보여줍니다. 이는 단일 환경 내에서 필요한 인프라일 수 있으며, 또한 전체 환경 전반의 애플리케이션을 지원하는 코드 저장소 및 파이프라인을 포함할 수 있습니다. 기존 또는 새로운 CloudFormation 스택을 애플리케이션에 연결할 수 있습니다. 스택은 양식 자체 내 애플리케이션과 관련이 있을 수 있으며, 프로비저닝 동안 애플리케이션 연계를 자동화합니다.
기업은 애플리케이션 메타데이터를 캡처하는 속성을 생성 및 관리하며 이는 귀사에 중요합니다. 애플리케이션 속성은 오픈 JSON 계획을 지원하며, 기업 메타데이터 분류의 복합성을 보여주는 유연성을 제공합니다. 애플리케이션 속성은 애플리케이션 보안 분류, 조직 소유권, 애플리케이션 유형, 비용 센터 및 지원 정보를 포함합니다. 구축자는 애플리케이션에 필요한 속성을 엮습니다. 속성이 오래되면 자동으로 모든 관련 애플리케이션을 자동으로 반영합니다.