

# 다중 테넌트 배포의 작동 방식 이해
<a name="distribution-config-options"></a>

여러 배포 테넌트에서 재사용할 수 있는 설정을 사용하여 CloudFront 다중 테넌트 배포를 만들 수 있습니다. 다중 테넌트 배포를 사용하면 CloudFront가 콘텐츠 오리진 유형에 따라 배포 설정을 구성하도록 할 수 있습니다. 재구성 설정에 대한 자세한 내용은 [사전 구성된 배포 설정 참조](template-preconfigured-origin-settings.md) 섹션을 참조하시기 바랍니다.

표준 배포 대신 다중 테넌트 배포를 사용하면 다음과 같은 이점이 있습니다.
+ 운영 부담을 줄입니다.
+ 웹 관리자 및 소프트웨어 공급자가 최종 사용자에게 콘텐츠를 제공하는 여러 웹 애플리케이션에서 CloudFront 배포를 관리하기 위한 재사용 가능한 구성입니다.
+ 자동화된 인증서 관리, 통합 보안 제어 및 규모에 맞는 간편한 구성 제어를 제공하기 위해 다른 AWS 서비스와의 통합을 개선했습니다.
+ 구현 전반에 걸쳐 일관된 리소스 패턴을 유지합니다. 공유해야 하는 설정을 정의한 다음, 재정의할 설정을 사용자 지정합니다.
+ 배포 테넌트 수준에서 특정 요구 사항을 충족하도록 사용자 지정 가능한 오리진 및 보안 설정입니다.
+ 배포 테넌트를 서로 다른 계층에 정리합니다. 예를 들어 일부 배포 테넌트에 Origin Shield가 필요하고 일부는 필요하지 않은 경우 배포 테넌트를 서로 다른 다중 테넌트 배포로 그룹화할 수 있습니다.
+ 여러 도메인에서 공통 DNS 구성을 공유합니다.

표준 배포와 달리 다중 테넌트 배포에는 CloudFront 라우팅 엔드포인트가 없으므로 직접 액세스할 수 없습니다. 따라서 연결 그룹 및 하나 이상의 배포 테넌트와 함께 사용해야 합니다. 표준 배포에는 자체 CloudFront 엔드포인트가 있으며 최종 사용자가 직접 액세스할 수 있지만 템플릿으로 다른 배포에 사용할 수 없습니다.

다중 테넌트 배포 할당량에 대한 자세한 내용은 [다중 테넌트 배포의 할당량](cloudfront-limits.md#limits-template) 섹션을 참조하시기 바랍니다.

**Topics**
+ [작동 방식](#how-template-distribution-works)
+ [용어](#template-distributions-concepts)
+ [지원되지 않는 기능](#unsupported-saas)
+ [배포 테넌트 사용자 지정](tenant-customization.md)
+ [CloudFront 배포 테넌트에 대한 인증서 요청](managed-cloudfront-certificates.md)
+ [사용자 지정 연결 그룹 생성(선택 사항)](custom-connection-group.md)
+ [다중 테넌트 배포로 마이그레이션](template-migrate-distribution.md)

## 작동 방식
<a name="how-template-distribution-works"></a>

*표준 배포*의 배포에는 오리진 구성, 캐시 동작, 보안 설정 등 웹 사이트 또는 애플리케이션에서 사용 설정하려는 모든 설정이 포함됩니다. 별도의 웹 사이트를 만들고 동일한 설정을 많이 사용하려면 매번 새 배포를 만들어야 합니다.

CloudFront 다중 테넌트 배포는 초기 다중 테넌트 배포를 만들 수 있다는 점에서 다릅니다. 각 새 웹 사이트에서 소스 배포의 정의된 값을 자동으로 상속하는 배포 테넌트를 만듭니다. 그런 다음 배포 테넌트에 대한 특정 설정을 사용자 지정합니다.

**개요**

1. 시작하려면 먼저 다중 테넌트 배포를 만듭니다. CloudFront는 콘텐츠 오리진 유형에 따라 배포 설정을 구성합니다. VPC 오리진을 제외한 모든 오리진에서 설정을 사용자 지정할 수 있습니다. VPC 오리진 설정은 VPC 오리진 리소스 자체에서 사용자 지정됩니다. 사용자 지정할 수 있는 다중 테넌트 배포 설정에 대한 자세한 내용은 [사전 구성된 배포 설정 참조](template-preconfigured-origin-settings.md) 섹션을 참조하시기 바랍니다.
   + 다중 테넌트 배포에 사용하는 TLS 인증서는 배포 테넌트에서 상속될 수 있습니다. 다중 테넌트 배포 자체는 라우팅할 수 없으므로 연결된 도메인 이름이 없습니다.

1. 기본적으로 CloudFront에서는 연결 그룹을 만듭니다. 연결 그룹은 콘텐츠에 대한 뷰어 요청이 CloudFront에 연결되는 방식을 제어합니다. 연결 그룹에서 일부 라우팅 설정을 사용자 지정할 수 있습니다.

   연결 그룹을 직접 수동으로 만들어 이를 변경할 수 있습니다. 자세한 내용은 [사용자 지정 연결 그룹 생성(선택 사항)](custom-connection-group.md) 섹션을 참조하세요.

1. 그런 다음 하나 이상의 배포 테넌트를 만듭니다. 배포 테넌트는 뷰어가 콘텐츠에 액세스할 수 있는 '출입구'입니다. 각 배포 테넌트는 다중 테넌트 배포를 참조하며 CloudFront에서 만든 연결 그룹과 자동으로 연결됩니다. 배포 테넌트는 개별 도메인 또는 하위 도메인을 지원합니다.

1. 그런 다음 가상 도메인 및 오리진 경로 등 일부 배포 테넌트 설정을 사용자 지정할 수 있습니다. 자세한 내용은 [배포 테넌트 사용자 지정](tenant-customization.md) 섹션을 참조하세요.

1. 마지막으로 DNS 호스트의 DNS 레코드를 업데이트하여 트래픽을 배포 테넌트로 라우팅해야 합니다. 이렇게 하려면 연결 그룹에서 CloudFront 엔드포인트 값을 가져오고 CloudFront 엔드포인트를 가리키는 CNAME 레코드를 만듭니다.

**Example 예제**  
다음 그래픽은 다중 테넌트 배포, 배포 테넌트, 연결 그룹이 함께 작동하여 여러 도메인의 뷰어에게 콘텐츠를 제공하는 방법을 보여줍니다.  

1. 다중 테넌트 배포는 각 배포 테넌트에서 상속된 설정을 정의합니다. 다중 테넌트 배포를 템플릿으로 사용합니다.

1. 다중 테넌트 배포에서 만든 각 배포 테넌트에는 자체 도메인이 있습니다.

1. 배포 테넌트는 다중 테넌트 배포를 만들 때 CloudFront에서 만든 연결 그룹에 자동으로 추가됩니다. 연결 그룹은 뷰어 요청이 CloudFront 네트워크에 연결되는 방식을 제어합니다.

![다중 테넌트 배포가 배포 테넌트와 작동하는 방식.](http://docs.aws.amazon.com/ko_kr/AmazonCloudFront/latest/DeveloperGuide/images/template_distribution.png)


자세한 다중 테넌트 배포 만들기 설명은 [콘솔에서 CloudFront 배포 생성](distribution-web-creating-console.md#create-console-distribution) 섹션을 참조하시기 바랍니다.

## 용어
<a name="template-distributions-concepts"></a>

다음 개념은 다중 테넌트 배포의 구성 요소를 설명합니다.

**다중 테넌트 배포**  
캐시 동작, 보안 보호 및 오리진을 포함하여 모든 배포 테넌트에 대한 모든 공유 구성 설정을 지정하는 블루프린트 멀티 테넌트 배포입니다. 다중 테넌트 배포는 트래픽을 직접 제공할 수 없습니다. 연결 그룹 및 배포 테넌트와 함께 사용해야 합니다.

**표준 배포**  
다중 테넌트 기능이 없는 배포입니다. 이러한 배포는 단일 웹 사이트 또는 앱을 지원하는 데 가장 적합합니다.

**배포 테넌트**  
배포 테넌트는 다중 테넌트 배포 구성을 상속합니다. 일부 구성 설정은 배포 테넌트 수준에서 사용자 지정할 수 있습니다. 배포 테넌트 도메인 또는 하위 도메인을 포함하면 배포 테넌트에는 다중 테넌트 배포에서 상속할 수 있는 유효한 TLS 인증서가 있어야 합니다.  
배포 테넌트는 연결 그룹과 연결되어야 합니다. CloudFront는 배포 테넌트를 만들 때 연결 그룹을 만들고 해당 연결 그룹에 배포 테넌트를 자동으로 할당합니다.

**멀티테넌시**  
구성과 인프라를 공유하면서 다중 테넌트 배포를 사용하여 여러 도메인의 콘텐츠를 제공할 수 있습니다. 이 접근 방식을 사용하면 여러 도메인(테넌트라고 함)이 자체 사용자 지정을 유지하면서 다중 테넌트 배포의 공통 설정을 공유할 수 있습니다.

**연결 그룹**  
뷰어에게 콘텐츠를 제공하는 CloudFront 라우팅 엔드포인트를 제공합니다. 배포 테넌트 도메인 또는 하위 도메인에 대해 만든 CNAME 레코드에 해당하는 CloudFront 라우팅 엔드포인트를 가져오려면 각 배포 테넌트를 연결 그룹에 연결해야 합니다. 연결 그룹은 여러 배포 테넌트 간에 공유할 수 있습니다. 연결 그룹은 IPv6 및 애니캐스트 IP 목록 설정 등의 배포 테넌트의 라우팅 설정을 관리합니다.

**파라미터**  
오리진 경로 및 도메인 이름과 같은 자리 표시자 값의 키-값 페어 목록입니다. 다중 테넌트 배포에서 파라미터를 정의하고 배포 테넌트 수준에서 해당 파라미터의 값을 제공할 수 있습니다. 배포 테넌트에 파라미터 값을 입력해야 하는지 여부를 선택합니다.  
배포 테넌트에서 선택 사항 파라미터 값을 제공하지 않으면 다중 테넌트 배포의 기본값이 값으로 사용됩니다.

**CloudFront 라우팅 엔드포인트**  
연결 그룹의 표준 DNS입니다(예: `d123.cloudfront.net`). 배포 테넌트 도메인 또는 하위 도메인의 CNAME 레코드에 사용됩니다.

**사용자 지정**  
배포 테넌트가 다중 테넌트 배포와 *다른* 설정을 사용하도록 사용자 지정할 수 있습니다. 각 배포 테넌트에서 다른 AWS WAF 웹 액세스 제어 목록(ACL), TLS 인증서 및 지리적 제한 사항을 지정할 수 있습니다.

## 지원되지 않는 기능
<a name="unsupported-saas"></a>

다음 기능은 다중 테넌트 배포에 사용할 수 없습니다. 표준 배포와 동일한 설정을 사용하여 새 멀티 테넌트 배포를 만들면 일부 설정을 사용할 수 없으니 참고하시기 바랍니다.

**참고**  
현재 AWS Firewall Manager 정책은 표준 배포에만 적용됩니다. Firewall Manager는 향후 릴리스에서 다중 테넌트 배포에 대한 지원을 추가할 예정입니다.
표준 배포와 달리 *배포 테넌트* 수준에서 도메인 이름(별칭)을 지정합니다. 자세한 내용은 [CloudFront 배포 테넌트에 대한 인증서 요청](managed-cloudfront-certificates.md) 및 [CreateDistributionTenant](https://docs.aws.amazon.com/cloudfront/latest/APIReference/API_CreateDistributionTenant.html) API 작업을 확인하시기 바랍니다.
+ [지속적 배포](continuous-deployment.md)
+ [오리진 액세스 ID(OAI)](private-content-restricting-access-to-s3.md#private-content-restricting-access-to-s3-oai) - [오리진 액세스 제어(OAC)](private-content-restricting-access-to-origin.md)를 대신 사용합니다.
+ [전용 IP 사용자 지정 SSL 지원](DownloadDistValuesGeneral.md#DownloadDistValuesClientsSupported) - `sni-only` 메서드만 지원됩니다.
+ [AWS WAF 클래식(V1) 웹 ACL](DownloadDistValuesGeneral.md#DownloadDistValuesWAFWebACL) - AWS WAF V2 웹 ACL만 지원됩니다.
+ [표준 로깅(레거시)](standard-logging-legacy-s3.md)
+ [최소 TTL](DownloadDistValuesCacheBehavior.md#DownloadDistValuesMinTTL)
+ [기본 TTL](DownloadDistValuesCacheBehavior.md#DownloadDistValuesDefaultTTL)
+ [최대 TTL](DownloadDistValuesCacheBehavior.md#DownloadDistValuesMaxTTL)
+ [ForwardedValues](https://docs.aws.amazon.com/cloudfront/latest/APIReference/API_ForwardedValues.html)
+ [PriceClass](https://docs.aws.amazon.com/cloudfront/latest/APIReference/API_DistributionConfig.html)
+ [신뢰할 수 있는 서명자 ](DownloadDistValuesCacheBehavior.md#DownloadDistValuesTrustedSigners)
+ [스무스 스트리밍](DownloadDistValuesCacheBehavior.md#DownloadDistValuesSmoothStreaming)
+ [AWS Identity and Access Management(IAM) 서버 인증서](https://docs.aws.amazon.com/IAM/latest/UserGuide/id_credentials_server-certs.html)
+ [전용 IP 주소](cnames-https-dedicated-ip-or-sni.md#cnames-https-dedicated-ip)
+ [최소 프로토콜 버전 SSLv3](DownloadDistValuesGeneral.md#DownloadDistValues-security-policy)

다음 설정은 다중 테넌트 배포 또는 배포 테넌트에서 구성할 수 없습니다. 대신 연결 그룹에서 원하는 값을 설정합니다. 연결 그룹에 연결된 모든 배포 테넌트는 이러한 설정을 사용합니다. 자세한 내용은 [사용자 지정 연결 그룹 생성(선택 사항)](custom-connection-group.md) 섹션을 참조하세요.
+ [IPv6 활성화(뷰어 요청)](DownloadDistValuesGeneral.md#DownloadDistValuesEnableIPv6)
+ [애니캐스트 고정 IP 목록](request-static-ips.md)