https://docs.microsoft.com/ko-kr/azure/security/fundamentals/isolation-choices

 

Azure 퍼블릭 클라우드에서 격리

Azure가 악의적인 사용자와 악의적이지 않은 사용자 모두에게 격리를 제공하고, 설계자에게 다양한 격리 선택 사항을 제공하는 방법을 알아 봅니다.

docs.microsoft.com

Azure를 사용하면 공유된 실제 인프라에서 애플리케이션과 VM(가상 머신)을 실행할 수 있습니다. 클라우드 환경에서 애플리케이션을 실행하는 데 있어 가장 중요한 경제적 동기 중 하나는 여러 고객에게 공유 리소스에 대한 비용을 분산할 수 있는 능력입니다. 이러한 다중 테넌트 방식은 저렴한 비용으로 서로 다른 고객 간에 리소스를 다중화함으로써 효율성을 향상시킵니다.

 

아쉽게도 물리적 서버 및 기타 인프라 리소스를 공유하여 임의의 잠재적 악성 사용자에게 속할 수 있는 중요한 애플리케이션과 VM을 실행할 위험이 있습니다.

 

테넌트 수준 격리

클라우드 컴퓨팅의 주요 이점 중 하나는 수많은 고객들에게 동시에 공유되는 일반적인 인프라 개념에 있으며 규모의 경제를 실현합니다. 이 개념을 다중 테넌트라고 합니다. Microsoft는 Microsoft Cloud Azure의 다중 테넌트 아키텍처에서 보안, 기밀성, 개인 정보 보호, 무결성 및 가용성 표준을 지원할 수 있도록 지속적으로 노력하고 있습니다.

 

클라우드 기반 작업 공간에서 테넌트는 해당 클라우드 서비스의 특정 인스턴스를 소유하고 관리하는 클라이언트나 조직으로 정의할 수 있습니다. 

테넌트는 Microsoft Azure에서 제공하는 ID 플랫폼을 사용하여 조직에서 Microsoft 클라우드 서비스에 등록할 때 받고 소유하는 Azure AD(Azure Active Directory)의 전용 인스턴스일 뿐입니다.

 

각 Azure AD 디렉터리는 고유하며 다른 Azure AD 디렉터리와 구분됩니다.

 

회사 사무실 건물이 해당 조직에게만 속하는 안전한 자산인 것처럼 Azure AD 디렉터리도 조직에서만 사용하기 위해 자산을 보호하도록 설계되었습니다. Azure AD 아키텍처는 고객 데이터 및 ID 정보가 함께 혼합되지 않도록 격리합니다. 즉, 한 Azure AD 디렉터리의 사용자 및 관리자가 실수로 또는 악의적으로 다른 디렉터리의 데이터에 액세스할 수 없습니다.

 

Azure 하이퍼바이저는 가상 머신 간의 메모리 및 프로세스 분리를 적용하고 네트워크 트래픽을 게스트 OS 테넌트로 안전하게 라우팅합니다. 이렇게 하면 VM 수준에서 측면 채널 공격의 가능성과 해당 공격을 제거합니다.

Azure에서 루트 VM은 FA(패브릭 에이전트)를 호스팅하는 루트 OS라고 하는 확정된 운영 체제를 실행하기 때문에 특별합니다. 이에 따라 FA는 고객 VM의 게스트 운영 체제 내에서 GA(게스트 에이전트)를 관리합니다. FA는 스토리지 노드도 관리합니다.

Azure 하이퍼바이저, 루트 OS/FA 및 고객 VM/GA의 모음은 컴퓨팅 노드를 구성합니다. FA는 컴퓨팅 및 스토리지 노드 외부에 있는 FC(패브릭 컨트롤러)로 관리됩니다(컴퓨팅 및 스토리지 클러스터는 별도의 FC로 관리됨). 고객이 실행 중인 애플리케이션의 구성 파일을 업데이트하는 경우 FC는 FA와 통신한 다음, GA에 접속하여 애플리케이션에 구성 변경 내용을 알립니다. 하드웨어 장애가 발생하면 FC에서 자동으로 사용 가능한 하드웨어를 찾아 이 하드웨어에서 VM을 다시 시작합니다.

 

생각해보면, 한 Azure Computer Node에는 여러 사용자들의 컴퓨팅 리소스들이 같이 올라가고, root vm이라는 애가 애플리케이션이랑 다른 컴퓨팅 리소스애들 중간에서 관리해주는듯?

 

그럼 hypervisor와 root vm Fabric Controller(더 엄밀하게는)의 차이가 뭐야?

음.. hypervisor는 guest os들 하드웨어와 리소스 격리하고 cpu/메모리 이런거 관리해주고 pass through 이런거 해준다면 root vm은 하드웨어 꺼지면 다른데서 켜지고 이런건가봐? -> VMware의 vCenter가 일종의 root vm의 역할인가?

 

-> Azure Architecture 게시글을 보자

  • 네이버 블러그 공유하기
  • 네이버 밴드에 공유하기
  • 페이스북 공유하기
  • 카카오스토리 공유하기