Microsoft Entra 아키텍처란?
Microsoft Entra ID를 사용하면 사용자를 위한 Azure 서비스 및 리소스에 대한 액세스를 안전하게 관리할 수 있습니다. Microsoft Entra ID에는 전체 ID 관리 기능이 포함됩니다. Microsoft Entra 기능에 대한 자세한 내용은 Microsoft Entra ID란?을 참조하세요.
Microsoft Entra ID에서는 사용자 및 그룹을 만들고 관리하며 사용 권한을 사용하여 엔터프라이즈 리소스에 대한 액세스를 허용 및 거부합니다. ID 관리에 대한 정보는 Azure ID 관리의 기본 항목을 참조하세요.
Microsoft Entra 아키텍처
Microsoft Entra ID의 지리적으로 분산된 아키텍처에는 광범위한 모니터링, 자동화된 재라우팅, 장애 조치(failover) 및 복구 기능이 결합되어 있으므로 회사 전체에서 가용성이 유지되며 고객에게는 뛰어난 성능을 제공할 수 있습니다.
이 문서에서는 다음과 같은 아키텍처 요소를 다룹니다.
- 서비스 아키텍처 디자인
- 확장성
- 지속적인 가용성
- 데이터 센터
서비스 아키텍처 디자인
액세스 및 사용 가능하며 다양한 데이터를 제공하는 시스템을 빌드하는 가장 일반적인 방법은 독립 구성 요소(배율 단위)를 사용하는 것입니다. Microsoft Entra 데이터 계층에서는 이러한 배율 단위를 파티션이라고 합니다.
데이터 계층에는 읽기 쓰기 기능을 제공하는 몇 가지 프런트 엔드 서비스가 있습니다. 다음 다이어그램에서는 지리적으로 분산된 데이터 센터 전반에 걸쳐 단일 디렉터리 파티션의 구성 요소가 제공되는 방식을 보여줍니다.
Microsoft Entra 아키텍처의 구성 요소는 주 복제본과 보조 복제본을 포함합니다.
주 복제본
주 복제본은 속해 있는 파티션의 모든 쓰기를 수신합니다. 쓰기 작업은 호출자에게 성공을 반환하기 전에 다른 데이터 센터의 보조 복제본에 즉시 복제되므로 쓰기의 지리적 중복 내구성을 보장합니다.
보조 복제본
모든 디렉터리 읽기는 물리적으로 여러 지역에 걸쳐 위치한 데이터 센터에 있는 보조 복제본에서 처리됩니다. 데이터가 비동기적으로 복제되는 경우 보조 복제본이 많이 생성됩니다. 인증 요청과 같은 디렉터리 읽기는 고객 위치와 가까운 데이터 센터에서 처리됩니다. 보조 복제본은 읽기 확장성을 담당합니다.
확장성
확장성은 증가하는 성능 요구에 맞게 확장하는 서비스의 기능입니다. 데이터를 분할하여 쓰기 확장성을 달성합니다. 하나의 파티션에서 전 세계에 걸쳐 분포된 여러 보조 복제본으로 데이터를 복제하여 읽기 확장성을 달성합니다.
디렉터리 애플리케이션의 요청은 가장 가까운 데이터 센터로 라우팅됩니다. 쓰기는 주 복제본에 투명하게 리디렉션되어 읽기 쓰기 일관성을 제공합니다. 디렉터리가 일반적으로 대부분의 읽기를 처리하기 때문에 보조 복제본은 파티션 규모를 상당히 확장하게 됩니다.
디렉터리 애플리케이션은 가장 가까운 데이터 센터에 연결됩니다. 이러한 연결로 인해 성능이 향상되며, 따라서 규모 확장이 가능해집니다. 디렉터리 파티션에 여러 개의 보조 복제본이 있으므로 보조 복제본은 디렉터리 클라이언트에 가깝게 배치될 수 있습니다. 쓰기를 많이 사용하는 내부 디렉터리 서비스 구성 요소만이 활성 주 복제본을 직접 대상으로 합니다.
지속적인 가용성
가용성(또는 가동 중단)은 시스템의 기능을 정의하여 방해 받지 않고 실행됩니다. Microsoft Entra ID의 고가용성에서 중요한 점은 서비스가 지리적으로 분산된 여러 데이터 센터 간에 신속하게 트래픽을 전송할 수 있다는 것입니다. 각 데이터 센터는 독립적이며 상관 관계가 지정되지 않은 오류 모드를 사용할 수 있게 해줍니다. 이 고가용성 디자인을 통해 Microsoft Entra ID는 유지 관리 작업을 위한 가동 중지 시간이 필요하지 않습니다.
Microsoft Entra ID의 파티션 디자인은 엔터프라이즈 AD 디자인에 비해 단순합니다. 즉, 면밀하게 오케스트레이션되는 결정적 주 복제본 장애 조치(failover) 프로세스를 포함하는 단일 마스터 디자인이 사용됩니다.
내결함성
시스템은 하드웨어, 네트워크 및 소프트웨어 오류에 대한 내결함성이 있는 경우 가용성이 증가합니다. 디렉터리의 각 파티션의 경우 가용성이 높은 마스터 복제본인 주 복제본이 존재합니다. 파티션에 대한 쓰기만이 이 복제본에서 수행됩니다. 이 복제본이 지속적이고 자세히 모니터링되고 있으며 쓰기는 오류가 감지되는 경우 즉시 다른 복제본(새로운 주 복제본이 됨)으로 이동될 수 있습니다. 장애 조치 중에 일반적으로 1~2분의 쓰기 가용성 손실이 발생할 수 있습니다. 이 시간 동안 읽기 가용성은 영향을 받지 않습니다.
읽기 작업(자릿수가 쓰기보다 월등히 많음)만이 보조 복제본으로 이동합니다. 보조 복제본이 멱등원이기 때문에 지정된 파티션에서 하나의 복제본이 손실되더라도 일반적으로 동일한 데이터 센터에서 다른 복제본에 대한 읽기를 지시하여 쉽게 보완됩니다.
데이터 내구성
쓰기는 승인되기 이전에 두 개 이상의 데이터 센터에 영구적으로 커밋됩니다. 그러려면 먼저 주 서버에서 쓰기를 커밋한 다음, 즉시 하나 이상의 다른 데이터 센터에 해당 쓰기를 복제합니다. 이 쓰기 작업으로 인해 기본 서버를 호스트하는 데이터 센터가 심각하게 파손되더라도 데이터는 손실되지 않습니다.
Microsoft Entra ID는 장애 조치(failover) 시에 데이터가 손실되지 않도록 RTO(복구 시간 목표)를 0으로 유지합니다. 다음 내용이 포함됩니다.
- 토큰 발급 및 디렉터리 읽기
- 디렉터리 쓰기에는 5분 정도의 RTO만 허용
데이터 센터
Microsoft Entra 복제본은 전 세계에 위치한 데이터 센터에 저장됩니다. 자세한 내용은 Azure 글로벌 인프라를 참조하세요.
Microsoft Entra ID는 다음과 같은 특성을 가진 데이터 센터에서 작동합니다.
- Authentication, Graph 및 기타 AD 서비스는 게이트웨이 서비스에 포함됩니다. 게이트웨이는 이러한 서비스의 부하 분산을 관리합니다. 또한 트랜잭션 상태 프로브에서 비정상적인 서버가 검색되면 자동으로 장애 조치(failover)합니다. 이러한 상태 프로브에 따라 게이트웨이는 트래픽을 정상 데이터 센터에 동적으로 라우팅합니다.
- 읽기의 경우 디렉터리에는 보조 복제본 및 여러 데이터 센터에서 운영되는 활성 간 구성의 해당 프런트 엔드 서비스가 있습니다. 데이터 센터에 장애가 발생하면 트래픽이 자동으로 다른 데이터 센터로 라우팅됩니다.
- 쓰기의 경우 디렉터리는 계획(새 주 복제본이 이전 주 복제본에 동기화됨) 또는 응급 장애 조치(failover) 절차를 통해 데이터 센터에 주 복제본을 장애 조치(failover)합니다. 데이터 내구성은 두 개 이상의 데이터 센터에 커밋을 복제하여 수행됩니다.
데이터 일관성
디렉터리 모델에는 일관성 있게 생성된 최종 데이터 중 한 가지가 반영됩니다. 비동기적으로 분산된 복제 시스템의 한 가지 일반적인 문제는 "특정" 복제본에서 반환된 데이터가 최신이 아닐 수도 있다는 점입니다.
Microsoft Entra ID는 주 복제본에는 쓰기를 라우팅하고 보조 복제본에 쓰기를 다시 동기적으로 풀링하여 보조 복제본을 대상으로 하는 애플리케이션의 읽기 쓰기 일관성을 제공합니다.
Microsoft Entra ID의 Microsoft Graph API를 사용하는 애플리케이션은 읽기 쓰기 일관성을 위해 유지 관리 선호도에서 디렉터리 복제본으로 추상화됩니다. Microsoft Graph API 서비스는 읽기에 사용되는 보조 복제본에 대한 선호도가 있는 논리 세션을 유지 관리합니다. 선호도는 보조 복제본 데이터 센터의 분산 캐시를 사용하여 서비스가 캐시하는 "복제본 토큰"에 캡처됩니다. 이 토큰은 동일한 논리 세션의 후속 작업에 사용됩니다. 동일한 논리 세션을 계속 사용하려면 후속 요청을 동일한 Microsoft Entra 데이터 센터로 라우팅해야 합니다. 디렉터리 클라이언트 요청이 여러 Microsoft Entra 데이터 센터로 라우팅되는 경우 논리 세션을 계속할 수 없습니다. 이 경우 클라이언트에는 독립적인 읽기/쓰기 일관성 있는 여러 논리 세션이 있습니다.
참고 항목
쓰기는 논리 세션의 읽기가 실행된 보조 복제본으로 즉시 복제됩니다.
서비스 수준 백업
Microsoft Entra ID는 디렉터리 데이터의 매일 백업을 구현하며 이러한 백업을 사용하여 서비스 전체 문제가 발생하는 경우 데이터를 복원할 수 있습니다.
또한 디렉터리는 선택한 개체 유형에 대해 영구 삭제 대신 일시 삭제를 구현합니다. 테넌트 관리자는 30일 이내에 이러한 개체를 실수로 삭제하는 작업을 취소할 수 있습니다. 자세한 내용은 삭제된 개체를 복원하는 API를 참조하세요.
메트릭 및 모니터
고가용성 서비스를 실행하려면 세계적 수준의 메트릭 및 모니터링 기능이 필요합니다. Microsoft Entra ID는 각 서비스에 대한 주요 서비스 상태 메트릭 및 성공 조건을 지속적으로 분석하고 보고합니다. 또한 각 Microsoft Entra 서비스 내에서, 그리고 모든 서비스에 걸쳐 각 시나리오의 메트릭, 모니터링 및 경고를 지속적으로 개발하고 조정합니다.
Microsoft Entra 서비스가 정상적으로 작동하지 않는 경우 최대한 빨리 기능을 복원하기 위한 작업이 즉시 진행됩니다. 가장 중요한 메트릭인 Microsoft Entra ID 트랙은 고객을 위해 라이브 사이트 문제를 검색하고 완화할 수 있는 속도입니다. 감지할 시간을 최소화하는 경고(TTD 대상: <5분) 및 완화할 시간을 최소화하는 작업 준비(TTM 대상: <30분)를 모니터링하는 데 집중적으로 투자했습니다.
보안 작업
모든 작업에 대해 다단계 인증과 같은 운영 제어를 사용하고 모든 작업을 감사합니다. 또한 Just-In-Time 권한 상승 시스템을 사용하여 지속적으로 주문형 운영 작업에 필요한 임시 액세스 권한을 부여할 수 있습니다. 자세한 내용은 신뢰할 수 있는 클라우드를 참조하세요.