스테이징 배포 및 지속적 배포 정책 사용
AWS Command Line Interface(AWS CLI) 또는 CloudFront API를 사용하여 CloudFront 콘솔에서 스테이징 배포와 지속적 배포 정책을 생성, 업데이트 및 수정할 수 있습니다.
스테이징 배포 및 지속적 배포 정책 생성
다음 절차에서는 스테이징 배포 및 지속적 배포 정책을 생성하는 방법을 보여 줍니다.
- Console
-
AWS Management Console을 사용하여 스테이징 배포 및 지속적 배포 정책을 생성할 수 있습니다.
스테이징 배포 및 연속 배포 정책 생성(콘솔)
AWS Management Console에 로그인한 다음 https://console.aws.amazon.com/cloudfront/v4/home
에서 CloudFront 콘솔을 엽니다. -
탐색 창에서 Distributions(배포)를 선택합니다.
-
기본 배포로 사용할 배포를 선택합니다. 기본 배포는 현재 프로덕션 트래픽을 제공하는 배포이며, 여기서 스테이징 배포를 만들게 됩니다.
-
Continuous deployment(지속적 배포) 섹션에서 Create staging distribution(스테이징 배포 생성)을 선택합니다. 그러면 Create staging distribution(스테이징 배포 생성) 마법사가 열립니다.
-
Create staging distribution(스테이징 배포 생성) 마법사에서 다음을 수행합니다.
-
(선택 사항) 스테이징 배포에 대한 설명을 입력합니다.
-
Next(다음)를 선택합니다.
-
스테이징 배포의 구성을 수정합니다. 업데이트할 수 있는 설정에 대한 자세한 내용은 기본 및 스테이징 배포 업데이트를 참조하십시오.
스테이징 배포의 구성 수정을 마치면 Next(다음)을 선택합니다.
-
콘솔을 사용하여 Traffic configuration(트래픽 구성)을 지정합니다. 이에 따라 CloudFront가 스테이징 배포로 트래픽을 라우팅하는 방식이 결정됩니다. (CloudFront는 트래픽 구성을 지속적 배포 정책에 저장합니다.)
트래픽 구성 옵션에 대한 자세한 내용은 요청을 스테이징 배포로 라우팅을 참조하세요.
Traffic configuration(트래픽 구성)을 완료했으면 Next(다음)을 선택합니다.
-
트래픽 구성을 포함하여 스테이징 배포에 대한 구성을 검토한 다음 Create staging distribution(스테이징 배포 생성)을 선택합니다.
-
CloudFront 콘솔에서 Create staging distribution(스테이징 배포 생성) 마법사를 완료하면 CloudFront는 다음을 수행합니다.
-
지정한 설정을 사용하여 스테이징 배포를 만듭니다(5c 단계).
-
지정한 트래픽 구성을 사용하여 지속적 배포 정책을 생성합니다(5d단계).
-
스테이징 배포를 만들 때 바탕이 된 기본 배포에 지속적 배포 정책을 연결합니다.
기본 배포의 구성이 연결된 지속적 배포 정책을 사용하여 엣지 로케이션에 배포되면 CloudFront는 트래픽 구성을 기반으로 지정된 트래픽 부분을 스테이징 배포로 전송하기 시작합니다.
- CLI
-
AWS CLI에서 스테이징 배포와 지속적 배포 정책을 생성하려면 다음 절차를 사용합니다.
스테이징 배포 생성(CLI)
-
aws cloudfront get-distribution 및 grep 명령을 함께 사용하면 기본 배포로 사용할 배포의
ETag
값을 얻을 수 있습니다. 기본 배포는 현재 프로덕션 트래픽을 제공하는 배포이며, 여기서 스테이징 배포를 만들게 됩니다.다음 명령은 예시를 나타냅니다. 다음 예에서는
primary_distribution_ID
를 기본 배포의 ID로 바꿉니다.aws cloudfront get-distribution --id
primary_distribution_ID
| grep 'ETag'다음 단계에 필요하므로
ETag
값을 복사하십시오. -
aws cloudfront copy-distribution 명령을 사용하여 스테이징 배포를 만들 수 있습니다. 다음 예제 명령에서는 가독성을 높이기 위해 이스케이프 문자(\)와 줄 바꿈을 사용하지만 실제 명령에서는 이러한 문자를 생략해야 합니다. 이 예에서 다음과 같이 합니다.
-
primary_distribution_ID
를 기본 배포의 ID로 바꿉니다. -
primary_distribution_ETag
를 기본 배포의ETag
값(이전 단계에서 가져온 값)으로 바꿉니다. -
(선택 사항)
CLI_example
을 원하는 호출자 참조 ID로 바꿉니다.
aws cloudfront copy-distribution --primary-distribution-id
primary_distribution_ID
\ --if-matchprimary_distribution_ETag
\ --staging \ --caller-reference 'CLI_example
'명령의 출력에는 스테이징 배포와 해당 구성에 대한 정보가 표시됩니다. 스테이징 배포의 CloudFront 도메인 이름은 다음 단계에 필요하므로 복사합니다.
-
지속적 배포 정책 생성(입력 파일이 있는 CLI)
-
다음 명령을 사용하여
continuous-deployment-policy.yaml
명령에 대한 모든 입력 파라미터가 포함된 create-continuous-deployment-policy이라는 파일을 만듭니다. 다음 명령에서는 가독성을 높이기 위해 이스케이프 문자(\)와 줄 바꿈을 사용하지만 실제 명령에서는 이러한 문자를 생략해야 합니다.aws cloudfront create-continuous-deployment-policy --generate-cli-skeleton yaml-input \ > continuous-deployment-policy.yaml
-
방금 생성한
continuous-deployment-policy.yaml
이라는 파일을 엽니다. 파일을 편집하여 원하는 지속적 배포 정책 설정을 지정한 다음 파일을 저장합니다. 파일을 편집할 때:-
StagingDistributionDnsNames
섹션:-
Quantity
의 값을1
로 변경합니다. -
Items
의 경우 스테이징 배포의 CloudFront 도메인 이름(이전 단계에서 저장한 이름)을 붙여 넣습니다.
-
-
TrafficConfig
섹션:-
Type
을SingleWeight
또는SingleHeader
로 선택합니다. -
다른 유형에 대한 설정을 제거합니다. 예를 들어, 가중치 기반 트래픽 구성을 원하는 경우
Type
을SingleWeight
로 설정한 다음SingleHeaderConfig
설정을 제거합니다. -
가중치 기반 트래픽 구성을 사용하려면
Weight
의 값을.01
(1%) 에서.15
(15%) 사이의 10진수로 설정합니다.
TrafficConfig
의 이러한 옵션에 대한 자세한 내용은 요청을 스테이징 배포로 라우팅 및 가중치 기반 구성을 위한 세션 고정성을 참조하세요. -
-
-
다음 명령을 사용하여
continuous-deployment-policy.yaml
파일의 입력 파라미터로 지속적 배포 정책을 만듭니다.aws cloudfront create-continuous-deployment-policy --cli-input-yaml file://continuous-deployment-policy.yaml
명령 출력의
Id
값을 복사합니다. 이는 지속적 배포 정책 ID이며 다음 단계에서 필요합니다.
기본 배포에 지속적 배포 정책 연결(입력 파일이 있는 CLI)
-
다음 명령을 사용하여 기본 배포에 대한 구성을 이름이
primary-distribution.yaml
인 파일에 저장합니다.primary_distribution_ID
를 기본 배포의 ID로 바꿉니다.aws cloudfront get-distribution-config --id
primary_distribution_ID
--output yaml > primary-distribution.yaml -
방금 생성한
primary-distribution.yaml
이라는 파일을 엽니다. 파일을 편집하여 다음과 같이 변경합니다.-
지속적 배포 정책 ID(이전 단계에서 복사한 ID)를
ContinuousDeploymentPolicyId
필드에 붙여 넣습니다. -
ETag
필드의 이름을IfMatch
로 바꾸지만 필드 값은 변경하지 마세요.
완료되면 파일을 저장합니다.
-
-
지속적 배포 정책을 사용하도록 기본 배포를 업데이트하려면 다음 명령을 사용합니다.
primary_distribution_ID
를 기본 배포의 ID로 바꿉니다.aws cloudfront update-distribution --id
primary_distribution_ID
--cli-input-yaml file://primary-distribution.yaml
기본 배포의 구성이 연결된 지속적 배포 정책을 사용하여 엣지 로케이션에 배포되면 CloudFront는 트래픽 구성을 기반으로 지정된 트래픽 부분을 스테이징 배포로 전송하기 시작합니다.
-
- API
-
CloudFront API를 사용하여 스테이징 배포 및 지속적 배포 정책을 생성하려면 다음 API 작업을 사용합니다.
이러한 API 호출에서 지정하는 필드에 대한 자세한 내용은 다음을 참조하세요.
-
AWS SDK 또는 기타 API 클라이언트에 대한 API 참조 설명서
스테이징 배포와 지속적 배포 정책을 만든 후에는 UpdateDistribution(기본 배포에서)을 사용하여 지속적 배포 정책을 기본 배포에 연결합니다.
스테이징 배포 업데이트
다음 절차에서는 스테이징 배포 및 지속적 배포 정책을 업데이트하는 방법을 보여 줍니다.
- Console
-
기본 배포와 스테이징 배포 모두에 대해 특정 구성을 업데이트할 수 있습니다. 자세한 내용은 기본 및 스테이징 배포 업데이트 단원을 참조하십시오.
스테이징 배포 업데이트(콘솔)
https://console.aws.amazon.com/cloudfront/v4/home
에서 CloudFront 콘솔을 엽니다. -
탐색 창에서 Distributions(배포)를 선택합니다.
-
기본 배포를 선택합니다. 현재 프로덕션 트래픽을 제공하는 배포이며, 여기서 스테이징 배포를 만들게 됩니다.
-
View staging distribution(스테이징 배포 보기)를 선택합니다.
-
콘솔을 사용하여 스테이징 배포의 구성을 수정합니다. 업데이트할 수 있는 설정에 대한 자세한 내용은 기본 및 스테이징 배포 업데이트를 참조하십시오.
스테이징 배포의 구성이 엣지 로케이션에 배포되는 즉시 스테이징 배포로 라우팅되는 수신 트래픽에 적용됩니다.
- CLI
-
스테이징 배포 업데이트(입력 파일이 있는 CLI)
-
다음 명령을 사용하여 스테이징 배포에 대한 구성을 이름이
staging-distribution.yaml
인 파일에 저장합니다.staging_distribution_ID
를 스테이징 배포 ID로 바꿉니다.aws cloudfront get-distribution-config --id
staging_distribution_ID
--output yaml > staging-distribution.yaml -
방금 생성한
staging-distribution.yaml
이라는 파일을 엽니다. 파일을 편집하여 다음과 같이 변경합니다.-
스테이징 배포의 구성을 수정합니다. 업데이트할 수 있는 설정에 대한 자세한 내용은 기본 및 스테이징 배포 업데이트를 참조하십시오.
-
ETag
필드의 이름을IfMatch
로 바꾸지만 필드 값은 변경하지 마세요.
완료되면 파일을 저장합니다.
-
-
다음 명령을 사용하여 스테이징 배포의 구성을 업데이트합니다.
staging_distribution_ID
를 스테이징 배포 ID로 바꿉니다.aws cloudfront update-distribution --id
staging_distribution_ID
--cli-input-yaml file://staging-distribution.yaml
스테이징 배포의 구성이 엣지 로케이션에 배포되는 즉시 스테이징 배포로 라우팅되는 수신 트래픽에 적용됩니다.
-
- API
-
스테이징 배포의 구성을 업데이트하려면 UpdateDistribution(스테이징 배포에서)을 사용하여 스테이징 배포의 구성을 수정합니다. 업데이트할 수 있는 설정에 대한 자세한 내용은 기본 및 스테이징 배포 업데이트를 참조하십시오.
지속적 배포 정책 업데이트
다음 절차에서는 지속적 배포 정책을 업데이트하는 방법을 보여 줍니다.
- Console
-
지속적 배포 정책을 업데이트하여 배포의 트래픽 구성을 업데이트할 수 있습니다.
지속적 배포 정책 업데이트(콘솔)
https://console.aws.amazon.com/cloudfront/v4/home
에서 CloudFront 콘솔을 엽니다. -
탐색 창에서 Distributions(배포)를 선택합니다.
-
기본 배포를 선택합니다. 현재 프로덕션 트래픽을 제공하는 배포로, 스테이징 배포를 만들 때 바탕이 된 배포입니다.
-
Continuous deployment(지속적 배포) 섹션에서 Edit policy(정책 편집)을 선택합니다.
-
지속적 배포 정책에서 트래픽 구성을 수정합니다. 작업을 마쳤으면 변경 사항 저장을 선택합니다.
기본 배포의 구성이 업데이트된 지속적 배포 정책을 사용하여 엣지 로케이션에 배포되면 CloudFront는 업데이트된 트래픽 구성을 기반으로 지정된 트래픽 부분을 스테이징 배포로 전송하기 시작합니다.
- CLI
-
지속적 배포 정책 업데이트(입력 파일이 있는 CLI)
-
다음 명령을 사용하여 지속적 배포 정책의 구성을 이름이
continuous-deployment-policy.yaml
인 파일로 저장합니다.continuous_deployment_policy_ID
를 지속적 배포 정책의 ID로 바꾸십시오. 다음 명령에서는 가독성을 높이기 위해 이스케이프 문자(\)와 줄 바꿈을 사용하지만 실제 명령에서는 이러한 문자를 생략해야 합니다.aws cloudfront get-continuous-deployment-policy-config --id
continuous_deployment_policy_ID
\ --output yaml > continuous-deployment-policy.yaml -
방금 생성한
continuous-deployment-policy.yaml
이라는 파일을 엽니다. 파일을 편집하여 다음과 같이 변경합니다.-
지속적 배포 정책에서 구성을 원하는 대로 수정합니다. 예를 들어 헤더 기반 트래픽 구성에서 가중치 기반 트래픽 구성으로 변경하거나 가중치 기반 구성의 트래픽 비율(가중치)을 변경할 수 있습니다. 자세한 내용은 요청을 스테이징 배포로 라우팅 및 가중치 기반 구성을 위한 세션 고정성 단원을 참조하세요.
-
ETag
필드의 이름을IfMatch
로 바꾸지만 필드 값은 변경하지 마세요.
완료되면 파일을 저장합니다.
-
-
지속적 배포 정책을 업데이트하려면 다음 명령을 사용합니다.
continuous_deployment_policy_ID
를 지속적 배포 정책의 ID로 바꾸십시오. 다음 명령에서는 가독성을 높이기 위해 이스케이프 문자(\)와 줄 바꿈을 사용하지만 실제 명령에서는 이러한 문자를 생략해야 합니다.aws cloudfront update-continuous-deployment-policy --id
continuous_deployment_policy_ID
\ --cli-input-yaml file://continuous-deployment-policy.yaml
기본 배포의 구성이 업데이트된 지속적 배포 정책을 사용하여 엣지 로케이션에 배포되면 CloudFront는 업데이트된 트래픽 구성을 기반으로 지정된 트래픽 부분을 스테이징 배포로 전송하기 시작합니다.
-
- API
-
지속적 배포 정책을 업데이트하려면 UpdateContinuousDeploymentPolicy를 사용합니다.
스테이징 배포 구성 승격
다음 절차에서는 스테이징 배포 구성을 승격하는 방법을 보여 줍니다.
- Console
-
스테이징 배포를 승격하면 CloudFront는 스테이징 배포의 구성을 기본 배포로 복사합니다. CloudFront는 지속적 배포 정책도 비활성화하며 모든 트래픽을 기본 배포로 라우팅합니다.
구성을 승격시킨 후 다음에 구성 변경을 테스트할 때 동일한 스테이징 배포를 재사용할 수 있습니다.
스테이징 배포의 구성 승격(콘솔)
https://console.aws.amazon.com/cloudfront/v4/home
에서 CloudFront 콘솔을 엽니다. -
탐색 창에서 Distributions(배포)를 선택합니다.
-
기본 배포를 선택합니다. 현재 프로덕션 트래픽을 제공하는 배포로, 스테이징 배포를 만들 때 바탕이 된 배포입니다.
-
지속적 배포 섹션에서 승격을 선택합니다.
-
confirm
을 입력한 다음 Promote(승격)을 선택합니다.
- CLI
-
스테이징 배포를 승격하면 CloudFront는 스테이징 배포의 구성을 기본 배포로 복사합니다. CloudFront는 지속적 배포 정책도 비활성화하며 모든 트래픽을 기본 배포로 라우팅합니다.
구성을 승격시킨 후 다음에 구성 변경을 테스트할 때 동일한 스테이징 배포를 재사용할 수 있습니다.
스테이징 배포의 구성 승격(CLI)
-
aws cloudfront update-distribution-with-staging-config 명령을 사용하여 스테이징 배포의 구성을 기본 배포로 승격시킵니다. 다음 예제 명령에서는 가독성을 높이기 위해 이스케이프 문자(\)와 줄 바꿈을 사용하지만 실제 명령에서는 이러한 문자를 생략해야 합니다. 이 예에서 다음과 같이 합니다.
-
primary_distribution_ID
를 기본 배포의 ID로 바꿉니다. -
staging_distribution_ID
를 스테이징 배포 ID로 바꿉니다. -
primary_distribution_ETag
및staging_distribution_ETag
를 기본 및 스테이징 배포의ETag
값으로 바꿉니다. 예와 같이 기본 분포의 값이 첫 번째인지 확인하십시오.
aws cloudfront update-distribution-with-staging-config --id
primary_distribution_ID
\ --staging-distribution-idstaging_distribution_ID
\ --if-match 'primary_distribution_ETag
,staging_distribution_ETag
' -
-
- API
-
스테이징 배포의 구성을 기본 배포로 승격시키려면 UpdateDistributionWithStagingConfig를 사용합니다.