기계 번역으로 제공되는 번역입니다. 제공된 번역과 원본 영어의 내용이 상충하는 경우에는 영어 버전이 우선합니다.
자습서: Service Catalog에 배포하는 파이프라인 생성
Service Catalog를 사용하면 AWS CloudFormation 템플릿을 기반으로 제품을 생성하고 프로비저닝할 수 있습니다.
중요
파이프라인 생성의 일환으로 고객이 제공하는 S3 아티팩트 버킷이 아티팩트 CodePipeline 에 사용됩니다. (이는 S3 소스 작업에 사용되는 버킷과 다릅니다.) S3 아티팩트 버킷이 파이프라인의 계정과 다른 계정에 있는 경우 S3 아티팩트 버킷을 안전하고 신뢰할 수 AWS 계정 있는 에서 소유해야 합니다.
이 자습서에서는 제품 템플릿을 Service Catalog에 배포하고 소스 리포지토리(, GitHub CodeCommit또는 Amazon S3에서 이미 생성됨)에서 변경한 내용을 전달하도록 파이프라인을 생성 및 구성하는 방법을 보여줍니다.
참고
Amazon S3가 파이프라인의 소스 공급자인 경우, 단일 .zip 파일로 패키지된 모든 소스 파일을 버킷에 업로드해야 합니다. 그렇지 않으면 소스 작업이 실패합니다.
먼저 Service Catalog에서 제품을 생성한 다음 AWS CodePipeline에서 파이프 라인을 생성합니다. 이 자습서에서는 배포 구성을 설정하기 위한 두 가지 옵션을 제공합니다.
-
Service Catalog에서 제품을 생성하고 소스 리포지토리에 템플릿 파일을 업로드합니다. CodePipeline 콘솔에 제품 버전 및 배포 구성을 제공합니다(별도 구성 파일 없음). 옵션 1: 구성 파일 없이 Service Catalog에 배포을 참조하세요.
참고
템플릿 파일은 YAML 또는 JSON 형식으로 생성할 수 있습니다.
-
Service Catalog에서 제품을 생성하고 소스 리포지토리에 템플릿 파일을 업로드합니다. 별도의 구성 파일에서 제품 버전 및 배포 구성을 제공합니다. 옵션 2: 구성 파일을 사용하여 Service Catalog에 배포을 참조하세요.
옵션 1: 구성 파일 없이 Service Catalog에 배포
이 예제에서는 S3 버킷에 대한 샘플 AWS CloudFormation 템플릿 파일을 업로드한 다음 Service Catalog에서 제품을 생성합니다. 다음으로 파이프라인을 생성하고 CodePipeline 콘솔에서 배포 구성을 지정합니다.
1단계: 샘플 템플릿 파일을 소스 리포지토리에 업로드
-
텍스트 편집기를 엽니다. 다음을 파일에 붙여 넣고 샘플 템플릿을 생성합니다. 파일을
S3_template.json
(으)로 저장합니다.{ "AWSTemplateFormatVersion": "2010-09-09", "Description": "CloudFormation Sample Template S3_Bucket: Sample template showing how to create a privately accessible S3 bucket. **WARNING** This template creates an S3 bucket. You will be billed for the resources used if you create a stack from this template.", "Resources": { "S3Bucket": { "Type": "AWS::S3::Bucket", "Properties": {} } }, "Outputs": { "BucketName": { "Value": { "Ref": "S3Bucket" }, "Description": "Name of Amazon S3 bucket to hold website content" } } }
이 템플릿을 사용하면 가 Service Catalog에서 사용할 수 있는 S3 버킷을 AWS CloudFormation 생성할 수 있습니다.
-
AWS CodeCommit 리포지토리에
S3_template.json
파일을 업로드합니다.
2단계: Service Catalog에서 제품 생성
-
IT 관리자로 Service Catalog 콘솔에 로그인하고 제품 페이지로 이동한 다음 제품 신규 업로드를 선택합니다.
-
제품 신규 업로드 페이지에서 다음 작업을 완료합니다.
-
제품 이름에 새 제품에 사용할 이름을 입력합니다.
-
설명에 제품 카탈로그 설명을 입력합니다. 이 설명은 사용자가 올바른 제품을 선택할 수 있도록 제품 목록에 표시됩니다.
-
공급자 - IT 부서 또는 관리자의 이름을 입력합니다.
-
Next(다음)를 선택합니다.
-
-
(선택 사항) 지원 세부 정보 입력 페이지에서 제품 지원에 대한 연락처 정보를 입력하고 다음을 선택합니다.
-
버전 세부 정보에서 다음을 완료합니다.
-
템플릿 파일 업로드를 선택합니다.
S3_template.json
파일을 찾고 업로드합니다. -
버전 제목 - 제품 버전의 이름을 입력합니다(예:
devops S3 v2
). -
설명에서 이 버전을 다른 버전과 구별하는 세부 정보를 입력합니다.
-
Next(다음)를 선택합니다.
-
-
검토 페이지에서 정보가 올바른지 확인한 다음 생성을 선택합니다.
-
제품 페이지의 브라우저에서 새 제품의 URL 를 복사합니다. 이는 제품 ID를 포함합니다. 이 제품 ID를 복사하여 보관합니다. 에서 파이프라인을 생성할 때 사용합니다 CodePipeline.
다음은 라는 이름의 제품에 URL 대한 입니다
my-product
. 제품 ID를 추출하려면 등호 기호(=
) 및 앰퍼샌드(&
) 사이의 값을 복사합니다. 이 예시에서의 제품 ID는prod-example123456
입니다.https://<region-URL>/servicecatalog/home?region=<region>#/admin-products?productCreated=prod-example123456&createdProductTitle=my-product
참고
페이지에서 나가기 전에 제품의 URL 를 복사합니다. 이 페이지에서 벗어나면 를 사용하여 제품 IDCLI를 얻어야 합니다.
몇 초 후 제품 페이지에 제품이 표시됩니다. 목록의 제품을 보기 위해 브라우저를 새로 고쳐야 할 수도 있습니다.
3단계: 파이프라인 생성
-
파이프라인에 이름을 지정하고 파이프라인에 대한 파라미터를 선택하려면 다음을 수행합니다.
에 로그인 AWS Management Console 하고 에서 CodePipeline 콘솔을 엽니다https://console.aws.amazon.com/codepipeline/
. -
시작하기를 선택합니다. 파이프라인 생성을 선택한 다음 파이프라인의 이름을 입력합니다.
-
파이프라인 유형에서 V2를 선택합니다. 자세한 내용은 파이프라인 유형 단원을 참조하십시오. Next(다음)를 선택합니다.
-
서비스 역할 에서 새 서비스 역할을 선택하여 가 에서 서비스 역할을 CodePipeline 생성하도록 허용합니다IAM.
-
[Advanced settings]의 설정은 기본값 그대로 두고, [Next]를 선택합니다.
-
소스 단계를 추가하려면 다음을 수행합니다.
-
소스 공급자에서 AWS CodeCommit을 선택합니다.
-
리포지토리 이름 및 브랜치 이름에서 소스 작업에 사용할 리포지토리와 브랜치를 입력합니다.
-
Next(다음)를 선택합니다.
-
-
Add build stage(빌드 단계 추가)에서 Skip build stage(빌드 단계 건너뛰기)를 선택하고 Skip(건너뛰기)을 다시 선택하여 경고 메시지를 수락합니다.
-
Add deploy stage(배포 단계 추가)에서 다음을 완료합니다.
-
Deploy provider(배포 공급자)에서 AWS Service Catalog를 선택합니다.
-
배포 구성에서 Enter deployment configuration(배포 구성 입력)을 선택합니다.
-
제품 ID에 Service Catalog 콘솔에서 복사한 제품 ID를 붙여 넣습니다.
-
Template file path(템플릿 파일 경로)에 템플릿 파일이 저장된 상대 경로를 입력합니다.
-
제품 유형에서 AWS CloudFormation 템플릿을 선택합니다.
-
제품 버전 이름에 Service Catalog에서 지정한 제품 버전의 이름을 입력합니다. 템플릿 변경 사항을 새 제품 버전에 배포하려면 동일한 제품의 이전 제품 버전에 사용되지 않은 제품 버전 이름을 입력합니다.
-
입력 아티팩트에 소스 입력 아티팩트를 선택합니다.
-
Next(다음)를 선택합니다.
-
-
Review(검토)에서 파이프라인 설정을 검토한 다음 Create(생성)를 선택합니다.
-
파이프라인이 성공적으로 실행된 후 배포 단계에서 세부 정보를 선택합니다. 그러면 제품이 Service Catalog에서 열립니다.
-
제품 정보에서 버전 이름을 선택하여 제품 템플릿을 엽니다. 템플릿 배포를 봅니다.
4단계: Service Catalog에서 변경 사항 푸시 및 제품 확인
-
CodePipeline 콘솔에서 파이프라인을 보고 소스 단계에서 세부 정보 를 선택합니다. 소스 AWS CodeCommit 리포지토리가 콘솔에서 열립니다. 편집을 선택하고 파일에 대해 변경합니다(예: 설명 변경).
"Description": "Name of Amazon S3 bucket to hold and version website content"
-
변경 사항을 커밋하고 푸시합니다. 변경 사항을 푸시한 후 파이프라인이 시작됩니다. 파이프라인 실행이 완료되면 배포 단계에서 세부 정보를 선택하여 Service Catalog에서 제품을 엽니다.
-
제품 정보에서 새 버전 이름을 선택하여 제품 템플릿을 엽니다. 배포된 템플릿 변경 사항을 봅니다.
옵션 2: 구성 파일을 사용하여 Service Catalog에 배포
이 예제에서는 S3 버킷에 대한 샘플 AWS CloudFormation 템플릿 파일을 업로드한 다음 Service Catalog에서 제품을 생성합니다. 또한 배포 구성을 지정하는 별도의 구성 파일을 업로드합니다. 그런 다음 파이프 라인을 생성하고 구성 파일의 위치를 지정합니다.
1단계: 샘플 템플릿 파일을 소스 리포지토리에 업로드
-
텍스트 편집기를 엽니다. 다음을 파일에 붙여 넣고 샘플 템플릿을 생성합니다. 파일을
S3_template.json
(으)로 저장합니다.{ "AWSTemplateFormatVersion": "2010-09-09", "Description": "CloudFormation Sample Template S3_Bucket: Sample template showing how to create a privately accessible S3 bucket. **WARNING** This template creates an S3 bucket. You will be billed for the resources used if you create a stack from this template.", "Resources": { "S3Bucket": { "Type": "AWS::S3::Bucket", "Properties": {} } }, "Outputs": { "BucketName": { "Value": { "Ref": "S3Bucket" }, "Description": "Name of Amazon S3 bucket to hold website content" } } }
이 템플릿을 사용하면 가 Service Catalog에서 사용할 수 있는 S3 버킷을 AWS CloudFormation 생성할 수 있습니다.
-
AWS CodeCommit 리포지토리에
S3_template.json
파일을 업로드합니다.
2단계: 제품 배포 구성 파일 생성
-
텍스트 편집기를 엽니다. 제품의 구성 파일을 생성합니다. 구성 파일은 Service Catalog 배포 파라미터/기본 설정을 정의하는 데 사용됩니다. 이 파일은 파이프라인을 생성할 때 사용합니다.
이 샘플은 "devops S3 v2"의
ProductVersionName
및MyProductVersionDescription
의ProductVersionDescription
을 제공합니다. 템플릿 변경 사항을 새 제품 버전에 배포하려면 동일한 제품의 이전 제품 버전에 사용되지 않은 제품 버전 이름을 입력합니다.파일을
sample_config.json
(으)로 저장합니다.{ "SchemaVersion": "1.0", "ProductVersionName": "devops S3 v2", "ProductVersionDescription": "MyProductVersionDescription", "ProductType": "CLOUD_FORMATION_TEMPLATE", "Properties": { "TemplateFilePath": "/S3_template.json" } }
이 파일은 파이프라인이 실행될 때마다 제품 버전 정보를 생성합니다.
-
AWS CodeCommit 리포지토리에
sample_config.json
파일을 업로드합니다. 이 파일을 소스 리포지토리에 업로드했는지 확인합니다.
3단계: Service Catalog에서 제품 생성
-
IT 관리자로 Service Catalog 콘솔에 로그인하고 제품 페이지로 이동한 다음 제품 신규 업로드를 선택합니다.
-
제품 신규 업로드 페이지에서 다음 작업을 완료합니다.
-
제품 이름에 새 제품에 사용할 이름을 입력합니다.
-
설명에 제품 카탈로그 설명을 입력합니다. 이 설명은 사용자가 올바른 제품을 선택할 수 있도록 제품 목록에 표시됩니다.
-
공급자 - IT 부서 또는 관리자의 이름을 입력합니다.
-
Next(다음)를 선택합니다.
-
-
(선택 사항) 지원 세부 정보 입력 페이지에서 제품 지원 연락처 정보를 입력하고 다음을 선택합니다.
-
버전 세부 정보에서 다음을 완료합니다.
-
템플릿 파일 업로드를 선택합니다.
S3_template.json
파일을 찾고 업로드합니다. -
버전 제목 - 제품 버전의 이름을 입력합니다(예: "devops S3 v2").
-
설명에서 이 버전을 다른 버전과 구별하는 세부 정보를 입력합니다.
-
Next(다음)를 선택합니다.
-
-
검토 페이지에서 정보가 올바른지 확인한 후 Confirm and upload(확인 및 업로드)를 선택합니다.
-
제품 페이지의 브라우저에서 새 제품의 URL 를 복사합니다. 이는 제품 ID를 포함합니다. 이 제품 ID를 복사하여 보관합니다. 에서 파이프라인을 생성할 때 를 사용합니다 CodePipeline.
다음은 라는 이름의 제품에 URL 대한 입니다
my-product
. 제품 ID를 추출하려면 등호 기호(=
) 및 앰퍼샌드(&
) 사이의 값을 복사합니다. 이 예시에서의 제품 ID는prod-example123456
입니다.https://<region-URL>/servicecatalog/home?region=<region>#/admin-products?productCreated=prod-example123456&createdProductTitle=my-product
참고
페이지에서 나가기 전에 제품의 URL 를 복사합니다. 이 페이지에서 벗어나면 를 사용하여 제품 IDCLI를 얻어야 합니다.
몇 초 후 제품 페이지에 제품이 표시됩니다. 목록의 제품을 보기 위해 브라우저를 새로 고쳐야 할 수도 있습니다.
4단계: 파이프라인 생성
-
파이프라인에 이름을 지정하고 파이프라인에 대한 파라미터를 선택하려면 다음을 수행합니다.
에 로그인 AWS Management Console 하고 에서 CodePipeline 콘솔을 엽니다https://console.aws.amazon.com/codepipeline/
. -
시작하기를 선택합니다. 파이프라인 생성을 선택한 다음 파이프라인의 이름을 입력합니다.
-
서비스 역할 에서 새 서비스 역할을 선택하여 CodePipeline 가 에서 서비스 역할을 생성하도록 허용합니다IAM.
-
[Advanced settings]의 설정은 기본값 그대로 두고, [Next]를 선택합니다.
-
소스 단계를 추가하려면 다음을 수행합니다.
-
소스 공급자에서 AWS CodeCommit을 선택합니다.
-
리포지토리 이름 및 브랜치 이름에서 소스 작업에 사용할 리포지토리와 브랜치를 입력합니다.
-
Next(다음)를 선택합니다.
-
-
Add build stage(빌드 단계 추가)에서 Skip build stage(빌드 단계 건너뛰기)를 선택하고 Skip(건너뛰기)을 다시 선택하여 경고 메시지를 수락합니다.
-
Add deploy stage(배포 단계 추가)에서 다음을 완료합니다.
-
Deploy provider(배포 공급자)에서 AWS Service Catalog를 선택합니다.
-
Use configuration file(구성 파일 사용)을 선택합니다.
-
제품 ID에 Service Catalog 콘솔에서 복사한 제품 ID를 붙여 넣습니다.
-
Configuration file path(구성 파일 경로)에서 리포지토리의 구성 파일 경로를 입력합니다.
-
Next(다음)를 선택합니다.
-
-
Review(검토)에서 파이프라인 설정을 검토한 다음 Create(생성)를 선택합니다.
-
파이프라인이 성공적으로 실행된 후 배포 단계에서 세부 정보를 선택하여 Service Catalog에서 제품을 엽니다.
-
제품 정보에서 버전 이름을 선택하여 제품 템플릿을 엽니다. 템플릿 배포를 봅니다.
5단계: Service Catalog에서 변경 사항 푸시 및 제품 확인
-
CodePipeline 콘솔에서 파이프라인을 보고 소스 단계에서 세부 정보 를 선택합니다. 소스 AWS CodeCommit 리포지토리가 콘솔에서 열립니다. 편집을 선택한 다음 파일에 대해 변경합니다(예: 설명 변경).
"Description": "Name of Amazon S3 bucket to hold and version website content"
-
변경 사항을 커밋하고 푸시합니다. 변경 사항을 푸시한 후 파이프라인이 시작됩니다. 파이프라인 실행이 완료되면 배포 단계에서 세부 정보를 선택하여 Service Catalog에서 제품을 엽니다.
-
제품 정보에서 새 버전 이름을 선택하여 제품 템플릿을 엽니다. 배포된 템플릿 변경 사항을 봅니다.