

기계 번역으로 제공되는 번역입니다. 제공된 번역과 원본 영어의 내용이 상충하는 경우에는 영어 버전이 우선합니다.

# 중앙 집중식 배포 패턴과 분산형 배포 패턴 비교
<a name="opa-design-comparison"></a>

중앙 집중식 또는 분산형 배포 패턴으로 OPA를 배포할 수 있으며, 멀티 테넌트 애플리케이션에 이상적인 방법은 사용 사례에 따라 다릅니다. 이러한 패턴의 예는이 가이드 앞부분의 [ APIs에서 PEPs와 함께 중앙 집중식 PDP 사용](using-opa.md#using-opa-centralized-pdp) 및 [API에서 분산형 PDP 및 PEPs 사용 APIs](using-opa.md#using-opa-distributed-pdp) 섹션을 참조하세요. OPA는 운영 체제 또는 컨테이너에서 데몬으로 배포할 수 있으므로 다중 테넌트 애플리케이션을 지원하는 여러 가지 방법으로 구현할 수 있습니다.

중앙 집중식 배포 패턴에서 OPA는 애플리케이션의 다른 서비스에서 RESTful API를 사용할 수 있는 컨테이너 또는 데몬으로 배포됩니다. 서비스에 OPA의 결정이 필요한 경우 중앙 OPA RESTful API를 호출하여이 결정을 생성합니다. 이 접근 방식은 OPA를 한 번만 배포하기 때문에 배포 및 유지 관리가 간단합니다. 이 접근 방식의 단점은 테넌트 데이터의 분리를 유지하는 메커니즘을 제공하지 않는다는 것입니다. OPA는 한 번만 배포되므로 OPA에서 참조하는 외부 데이터를 포함하여 OPA 결정에 사용되는 모든 테넌트 데이터를 OPA에서 사용할 수 있어야 합니다. 이 접근 방식을 사용하여 테넌트 데이터 격리를 유지할 수 있지만 OPA의 정책 및 문서 구조 또는 외부 데이터에 대한 액세스에 의해 적용되어야 합니다. 또한 중앙 집중식 배포 패턴은 각 권한 부여 결정이 다른 서비스에 대한 RESTful API 호출을 수행해야 하므로 지연 시간이 더 깁니다.

분산 배포 패턴에서 OPA는 다중 테넌트 애플리케이션의 서비스와 함께 컨테이너 또는 데몬으로 배포됩니다. 사이드카 컨테이너 또는 운영 체제에서 로컬로 실행되는 데몬으로 배포할 수 있습니다. OPA에서 결정을 검색하기 위해 서비스는 로컬 OPA 배포에 대한 RESTful API 호출을 수행합니다. (OPA는 Go 패키지로 배포할 수 있으므로 RESTful API 호출을 사용하는 대신 Go를 기본적으로 사용하여 결정을 검색할 수 있습니다.) 중앙 집중식 배포 패턴과 달리 분산 패턴은 애플리케이션의 여러 영역에 존재하므로 배포, 유지 관리 및 업데이트하는 데 훨씬 더 강력한 노력이 필요합니다. 분산 배포 패턴의 이점은 특히 [사일로화된 SaaS 모델을](https://docs.aws.amazon.com/wellarchitected/latest/saas-lens/silo-isolation.html) 사용하는 애플리케이션에서 테넌트 데이터의 격리를 유지하는 기능입니다. 분산 모델의 OPA는 테넌트와 함께 배포되므로 테넌트별 데이터는 해당 테넌트와 관련된 OPA 배포에서 격리할 수 있습니다. 또한 분산 배포 패턴은 중앙 집중식 배포 패턴보다 지연 시간이 훨씬 짧습니다. 각 권한 부여 결정을 로컬에서 내릴 수 있기 때문입니다.

다중 테넌트 애플리케이션에서 OPA 배포 패턴을 선택할 때는 애플리케이션에 가장 중요한 기준을 평가해야 합니다. 다중 테넌트 애플리케이션이 지연 시간에 민감한 경우 분산 배포 패턴은 더 복잡한 배포 및 유지 관리를 희생하면서 더 나은 성능을 제공합니다. DevOps 및 자동화를 통해 이러한 복잡성을 관리할 수 있지만 중앙 집중식 배포 패턴과 비교할 때 여전히 추가 노력이 필요합니다.

다중 테넌트 애플리케이션이 사일로화된 SaaS 모델을 사용하는 경우 분산 OPA 배포 패턴을 사용하여 테넌트 데이터 격리에 대한 사일로화된 접근 방식을 모방할 수 있습니다. 이는 OPA가 각 테넌트별 애플리케이션 서비스와 함께 실행되는 경우 해당 테넌트와 연결된 데이터만 포함하도록 각 OPA 배포를 사용자 지정할 수 있기 때문입니다. 중앙 집중식 OPA 배포 패턴에서 OPA 데이터를 사일로화하는 것은 불가능합니다. [풀링된 SaaS 모델](https://docs.aws.amazon.com/wellarchitected/latest/saas-lens/pool-isolation.html)과 함께 중앙 집중식 배포 패턴 또는 분산 패턴을 사용하는 경우 OPA 문서 모델에서 테넌트 데이터 격리를 유지해야 합니다.