중앙 집중식 및 분산형 배포 패턴 비교 - AWS 권장 가이드

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

중앙 집중식 및 분산형 배포 패턴 비교

중앙 집중식 또는 분산형 배포 패턴으로 OPA를 배포할 수 있으며, 다중 테넌트 애플리케이션에 이상적인 방법은 사용 사례에 따라 다릅니다. 이러한 패턴의 예는이 설명서 앞부분의 APIs에서 PEPs로 중앙 집중식 PDP 사용API에서 분산형 PDP 및 PEPs 사용 APIs 섹션을 참조하세요. 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 SaaS 모델을 사용하는 애플리케이션의 경우 테넌트 데이터의 격리를 유지하는 기능입니다. 분산 모델의 OPA는 테넌트와 함께 배포되므로 테넌트별 데이터는 해당 테넌트와 관련된 OPA 배포에서 격리할 수 있습니다. 또한 분산 배포 패턴은 중앙 집중식 배포 패턴보다 지연 시간이 훨씬 짧습니다. 각 권한 부여 결정은 로컬에서 수행할 수 있기 때문입니다.

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

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