본문 바로가기

인공지능,프로그래밍/MS Azure

Azure 104 연습 문제 36

 



문제 211

문제: Microsoft Azure에 다음과 같은 리소스들이 배포되어 있습니다. TDVet 1과 TDVet 2를 연결해야 합니다.

가장 먼저 무엇을 해야 할까요?

Microsoft Entra Tenant 구독
(Subscription)
가상 네트워크
(Virtual Network)
주소 범위
(Address Range)
가상 머신
(Virtual Machine)
Tenant 1 TD1 TDVnet1 10.1.0.0/16 VM1
Tenant 2 TD2 TDVnet2 10.10.0.0/18 VM2

보기

A. 가상 네트워크 피어링(Virtual Network Peering)을 생성합니다.

B. TDVnet 2의 주소 공간(Address Space)을 변경합니다.

C. TDVnet 1을 TD2로 이전합니다.

D. VM1을 TD2로 이전합니다.

 

 

 

답: A. 가상 네트워크 피어링(Virtual Network Peering)을 생성합니다.

해설:

  • 문제는 서로 다른 가상 네트워크(TDVnet 1, TDVnet 2)에 있는 리소스들을 연결하는 방법을 묻고 있습니다.
  • **가상 네트워크 피어링(VNet Peering)**은 서로 다른 Azure 가상 네트워크를 연결하여 서로 통신할 수 있도록 하는 기능입니다. 마치 두 개의 별도 네트워크 케이블을 연결하는 것과 비슷하다고 생각하시면 됩니다.
  • 보기 B는 주소 공간 변경인데, 주어진 주소 범위(10.1.0.0/16, 10.10.0.0/16)는 겹치지 않기 때문에 굳이 변경할 필요가 없습니다. 주소 범위가 겹치면 네트워크 연결에 문제가 생길 수 있지만, 지금은 괜찮습니다.
  • 보기 C와 D는 가상 네트워크나 가상 머신 자체를 다른 구독으로 옮기는 것인데, 단순히 두 네트워크를 연결하는 것이 목적이므로 적절하지 않습니다. 가상 네트워크 피어링은 서로 다른 구독 간에도 가능합니다.
  • 따라서, 가장 먼저 해야 할 일은 가상 네트워크 피어링을 설정하여 TDVnet 1과 TDVnet 2가 서로 통신할 수 있도록 하는 것입니다. 가상 네트워크 피어링은 낮은 지연 시간과 높은 대역폭을 제공하며, 통신 트래픽은 Microsoft의 내부 네트워크를 통해 안전하게 이루어집니다.

Azure VNet Peering 개요 및 주요 특징

**Azure Virtual Network Peering(VNet Peering)**은 Azure 내 두 개 이상의 가상 네트워크(VNet)를 마치 하나의 네트워크처럼 안전하고 빠르게 연결해주는 기능입니다. 이 연결을 통해 각 VNet 내의 리소스(VM 등)는 별도의 게이트웨이, 공인 인터넷, 암호화 없이도 서로 직접 통신할 수 있습니다.

주요 특징

  • 저지연, 고대역폭 연결
    피어링된 네트워크 간 트래픽은 Microsoft 백본망을 통해 전달되어, 단일 VNet 내 통신과 동일한 수준의 네트워크 성능(지연, 대역폭)을 보장합니다.
  • 프라이빗 트래픽
    트래픽은 항상 Azure 내부 네트워크에서만 이동하며, 공용 인터넷을 거치지 않습니다. 별도의 VPN Gateway나 암호화가 필요하지 않습니다.
  • 다양한 피어링 유형
    • Virtual Network Peering: 동일 지역 내 VNet 연결
    • Global Virtual Network Peering: 서로 다른 지역의 VNet 연결
    • Subnet Peering: 전체 VNet이 아니라 특정 서브넷만 선택적으로 피어링(신규 기능).
  • 구독/테넌트/배포 모델 간 연결
    서로 다른 Azure 구독, Microsoft Entra(Azure AD) 테넌트, ARM/클래식 배포 모델 간에도 피어링이 가능합니다.
  • 확장성
    기본적으로 한 VNet당 최대 500개, Azure Virtual Network Manager를 사용하면 최대 1,000개의 VNet과 피어링할 수 있습니다.
  • 네트워크 보안 그룹(NSG) 적용
    피어링된 네트워크 간에도 NSG를 통해 접근 제어가 가능합니다. 기본적으로는 전체 통신이 열려 있으나, NSG로 세부 제어가 가능합니다.
  • 다운타임 없음
    피어링 생성·변경·삭제 시 연결된 리소스에 다운타임이 발생하지 않습니다.
  • 게이트웨이 트랜짓 지원
    한쪽 VNet의 VPN Gateway를 피어링된 다른 VNet에서 공유해 사용할 수 있습니다. 단, 한 VNet당 하나의 게이트웨이만 사용 가능.
  • 주소 공간 동적 확장 지원
    피어링된 VNet의 주소 공간을 다운타임 없이 확장/축소할 수 있습니다. 변경 후에는 피어링 동기화가 필요합니다.

대표적 활용 사례

  • 멀티티어 애플리케이션의 네트워크 분리 및 통신
  • 지역 간 데이터 복제, 장애 조치(Disaster Recovery)
  • 허브-스포크(Hub-Spoke), 메시(Mesh) 등 복잡한 네트워크 아키텍처 구현
  • 서로 다른 구독/테넌트/리소스 그룹 간 안전한 네트워크 통신

한계 및 주의점

  • 트랜짓 라우팅(Transit Routing): 피어링은 기본적으로 비트랜짓(Non-transitive)입니다. 즉, A↔B, B↔C 피어링이 있어도 A와 C는 직접 피어링하지 않으면 통신 불가합니다. 단, 게이트웨이 트랜짓 등 일부 예외 상황 존재.
  • NSG, UDR(사용자 정의 라우팅) 등 네트워크 정책은 각 VNet에 독립적으로 적용됨
  • 일부 기능(예: Global Peering)은 Azure Stack Hub 등 일부 환경에서는 제한될 수 있음

요약 표

항목 설명
연결 대상 동일/다른 지역, 구독, 테넌트, 배포 모델의 VNet
연결 방식 Microsoft 백본망을 통한 프라이빗 네트워크 연결
피어링 유형 Local, Global, Subnet Peering
최대 피어링 수 기본 500개, Virtual Network Manager 사용 시 1,000개
네트워크 성능 단일 VNet 내 통신과 동일(저지연, 고대역폭)
보안 NSG, UDR 등 별도 적용 가능, 트래픽은 Azure 내부에만 존재
게이트웨이 트랜짓 지원(한쪽의 게이트웨이를 피어링된 VNet에서 공유 사용 가능)
트랜짓 라우팅 비트랜짓(Non-transitive), 직접 피어링 필요
다운타임 없음
주소 공간 확장 다운타임 없이 지원, 변경 후 동기화 필요
 

참고:

  • VNet 피어링은 네트워크 아키텍처를 단순화하고, 비용 효율적이며, 고성능의 Azure 내 네트워크 통합을 가능하게 하는 핵심 기능입니다.

 

 


 

문제 212

문제: 귀사의 조직은 웹 서버로 작동하도록 구성된 여러 Azure 가상 머신과 TD1이라는 Azure 공용 부하 분산 장치를 배포했습니다. 사용자가 매번 동일한 서버에 접속하도록 TD1이 일관되게 요청을 라우팅해야 합니다. 무엇을 구성해야 할까요?

보기:

A. 해시 기반(Hash based)

B. 세션 지속성(Session persistence) - 없음(None)

C. 세션 지속성(Session persistence) - 클라이언트 IP(Client IP)

D. 상태 프로브(Health probe)

 

 

 

 

 

답: C. 세션 지속성(Session persistence) - 클라이언트 IP(Client IP)

해설:

  • 문제는 공용 부하 분산 장치를 통해 들어오는 사용자 요청을 항상 동일한 웹 서버로 연결해야 하는 상황입니다.
  • 이러한 요구 사항을 세션 지속성(Session Persistence) 또는 **세션 어피니티(Session Affinity)**라고 부릅니다. 이는 특정 사용자의 모든 요청을 특정 백엔드 서버로 유지하는 기능입니다.
  • 보기 A의 해시 기반은 트래픽을 분산하는 방식 중 하나이지만, 항상 같은 클라이언트를 같은 서버로 보내는 것을 보장하지는 않습니다.
  • 보기 B의 세션 지속성 - 없음은 세션을 유지하지 않고 요청이 들어올 때마다 부하 분산 장치가 서버를 선택하므로 적절하지 않습니다.
  • 보기 C의 세션 지속성 - 클라이언트 IP요청을 보내는 클라이언트의 IP 주소를 기반으로 동일한 백엔드 서버로 라우팅합니다. 따라서 한 사용자가 보내는 모든 요청은 동일한 서버로 전달됩니다.
  • 보기 D의 **상태 프로브(Health Probe)**는 백엔드 서버의 헬스 체크를 하는 기능으로, 트래픽 라우팅과는 직접적인 관련이 없습니다. 서버가 정상인지 확인하고 비정상적인 서버로는 트래픽을 보내지 않도록 하는 역할입니다.
  • 따라서, 사용자의 요청을 매번 동일한 서버로 라우팅하기 위해서는 세션 지속성을 클라이언트 IP 기반으로 설정해야 합니다.

 

 


문제 213

문제: 다음과 같은 리소스를 포함하는 Azure 구독이 있습니다. App1 이 키 자격 증명 모음에 대한 비밀에 접근할 수 있도록 무엇을 생성해야 하며, 어떤 키 자격 증명 모음에서 비밀을 사용할 수 있을까요? 답 영역에서 적절한 옵션을 선택해야 합니다.

이름 (Name) 리소스 그룹 (Resource Group) 유형 (Type) 위치 (Location)
App1 RG1 컨테이너 앱 (Container App) East US
Vault1 RG1 Azure Key Vault East US
 Vault2 RG1 Azure Key Vault West US
 Vault3 RG2 Azure Key Vault East US

 

 

답:

  • 생성 (Create a): 관리 ID (Managed Identity)
  • 비밀 사용 (Use secret from): Vault1 , Vault2 , Vault3

해설:

  • 문제는 컨테이너 앱(app-one)이 Azure Key Vault에 저장된 비밀에 안전하게 접근하는 방법을 묻고 있습니다. 또한, 어떤 Key Vault에서 비밀을 사용할 수 있는지도 질문합니다.
  • **관리 ID(Managed Identity)**는 Azure 서비스가 다른 Azure 서비스에 안전하게 접근할 수 있도록 자격 증명을 관리할 필요 없이 Azure AD(Azure Active Directory)에서 자동으로 프로비저닝하고 관리하는 ID입니다. 컨테이너 앱과 같은 Azure 리소스에 권한을 부여하여 Key Vault와 같은 다른 서비스에 안전하게 접근할 수 있도록 해줍니다. 따라서 관리 ID를 생성하는 것이 가장 적절한 방법입니다. 다른 옵션(프라이빗 엔드포인트, 서비스 주체, 사용자 계정)도 접근을 설정할 수 있지만, 관리 ID는 자격 증명 관리를 단순화하고 보안을 강화합니다.
  • Key Vault 접근 가능 범위에 대해서는, 원칙적으로 Key Vault는 적절하게 구성되어 있다면 리소스 그룹이나 지역에 상관없이 접근이 가능합니다. 따라서 app-one이 있는 East US 지역의 vault-one과 vault-three는 물론이고, 다른 리소스 그룹과 West US 지역에 있는 vault-two에서도 비밀을 사용할 수 있습니다.
  • Microsoft는 격리 수준을 높이고 보안 위협을 줄이기 위해 애플리케이션, 환경, 지역별로 별도의 Key Vault를 사용하는 것을 권장하지만, 기술적으로는 여러 Key Vault에 접근하는 것이 가능합니다. 따라서 문제의 상황에서는 vault-one, vault-two, vault-three 모두에서 비밀을 사용할 수 있습니다.

 

 


 

문제 214

문제: Storage1이라는 Azure 구독에 스토리지 계정이 있습니다. Storage1 의 액세스 키가 자동으로 로테이션되도록 해야 합니다. 무엇을 구성해야 할까요?

보기:

A. 백업 볼트(Backup vault)

B. storage-one에 대한 중복성(Redundancy)

C. storage-one에 대한 수명 주기 관리(Lifecycle Management)

D. Azure Key Vault E. Recovery Services 볼트(Recovery Services vault)

 

 

 

 

답: D. Azure Key Vault

해설:

  • 문제는 **Azure Storage 계정의 액세스 키를 자동으로 교체(로테이션)**하는 방법을 묻고 있습니다.
  • Azure Key Vault비밀, 키, 인증서를 안전하게 저장하고 관리하는 서비스입니다. Key Vault를 사용하면 스토리지 계정 키를 저장하고, Key Vault의 기능을 통해 정기적으로 자동으로 키를 로테이션하도록 구성할 수 있습니다.
  • 보기 A의 백업 볼트는 데이터를 백업하는 데 사용됩니다.
  • 보기 B의 중복성은 데이터의 가용성과 내구성을 높이는 설정입니다.
  • 보기 C의 수명 주기 관리는 스토리지 내 객체의 보관 기간을 관리하는 기능입니다.
  • 보기 E의 Recovery Services 볼트는 Azure Backup 및 Azure Site Recovery와 관련된 데이터 보호를 관리하는 데 사용됩니다.
  • 따라서, 스토리지 계정 액세스 키의 자동 로테이션을 위해서는 Azure Key Vault를 구성해야 합니다.

 

 

 


 

 

문제 215

문제: Storage1이라는 범용 v1 Azure Storage 계정이 LRS(로컬 중복 스토리지)를 사용하고 있습니다. 영역(Zone) 실패 시 스토리지 계정의 데이터를 보호해야 합니다. 이 솔루션은 비용과 관리 노력을 최소화해야 합니다. 가장 먼저 무엇을 해야 할까요?

보기:

A. 새 스토리지 계정을 만듭니다.

B. 개체 복제 규칙(Object replication rules)을 구성합니다.

C. 계정을 범용 v2로 업그레이드합니다.

D. storage-one의 복제 설정을 수정합니다.

 

 

 

 

 

답: C. 계정을 범용 v2로 업그레이드합니다.

해설:

  • 문제는 영역(Zone) 실패로부터 Azure Storage 계정의 데이터를 보호하면서 비용과 관리 노력을 최소화하는 방법을 묻고 있습니다. 현재 스토리지 계정은 **LRS(로컬 중복 스토리지)**를 사용하고 있어 단일 데이터 센터 내에서만 데이터가 복제되므로 영역 실패 시 데이터 손실 위험이 있습니다.
  • 영역 실패를 보호하기 위해서는 **ZRS(영역 중복 스토리지)**를 사용해야 합니다. ZRS는 가용성 영역이라고 하는 동일한 Azure 지역 내의 여러 물리적으로 분리된 위치에 데이터를 복제하여 데이터의 내구성과 가용성을 높입니다.
  • 문제에서 현재 사용 중인 스토리지 계정은 범용 v1이며, ZRS는 범용 v1 스토리지 계정에서 지원되지 않습니다.
  • 보기 A처럼 새 스토리지 계정을 만들고 ZRS를 선택할 수도 있지만, 기존 데이터를 옮기는 등의 관리 노력이 필요할 수 있습니다.
  • 보기 B의 개체 복제 규칙은 다른 스토리지 계정으로 데이터를 복제하는 것으로, 주 목적이 영역 실패 보호는 아닙니다.
  • 보기 D의 복제 설정 수정은 v1 계정에서는 ZRS를 선택할 수 없으므로 불가능합니다. GRS(지리적 중복 스토리지) 또는 RA-GRS(읽기 액세스 지리적 중복 스토리지)로 변경할 수는 있지만, 이는 비용이 더 많이 들고 영역 수준의 가용성을 제공하지 않습니다.
  • 따라서, **비용과 관리 노력을 최소화하면서 영역 실패로부터 데이터를 보호하기 위한 가장 먼저 해야 할 일은 기존의 범용 v1 스토리지 계정을 ZRS를 지원하는 범용 v2로 업그레이드하는 것입니다. 업그레이드 후 복제 설정을 ZRS로 변경할 수 있습니다.

Azure 관련 용어 해설

  • Microsoft Entra ID (이전 Azure AD): 사용자와 그룹을 관리하고, 클라우드 애플리케이션에 대한 접근 권한을 제어하는 Microsoft의 클라우드 기반 ID 및 접근 관리 서비스입니다.
  • 테넌트 (Tenant): Microsoft 클라우드 서비스(Azure, Microsoft 365 등)를 사용하는 조직을 나타내는 용어입니다. 각 테넌트는 고유한 Azure AD 인스턴스를 가집니다.
  • 구독 (Subscription): Azure 리소스를 사용하기 위한 논리적 컨테이너입니다. 비용 청구 및 접근 제어의 단위가 됩니다.
  • 리소스 그룹 (Resource Group): Azure 리소스를 논리적으로 그룹화하여 관리하는 단위입니다.
  • 가상 네트워크 (Virtual Network, VNet): Azure에서 생성하는 사설 네트워크입니다. 가상 머신, 애플리케이션 등이 이 네트워크 내에서 통신할 수 있습니다.
  • 주소 범위 (Address Range): 가상 네트워크에 할당된 IP 주소의 범위입니다.
  • 가상 머신 (Virtual Machine, VM): 클라우드에서 실행되는 가상의 컴퓨터입니다.
  • 가상 네트워크 피어링 (Virtual Network Peering, VNet Peering): 서로 다른 Azure 가상 네트워크를 연결하여 통신할 수 있도록 하는 기능입니다.
  • 부하 분산 장치 (Load Balancer): 들어오는 네트워크 트래픽을 여러 서버에 분산시켜 애플리케이션의 가용성과 성능을 향상시키는 서비스입니다.
  • 공용 부하 분산 장치 (Public Load Balancer): 인터넷으로부터 들어오는 트래픽을 분산시키는 부하 분산 장치입니다.
  • 세션 지속성 (Session Persistence / Session Affinity): 특정 사용자의 모든 요청을 동일한 백엔드 서버로 라우팅하는 기능입니다.
  • 상태 프로브 (Health Probe): 부하 분산 장치가 백엔드 서버의 상태를 주기적으로 확인하는 기능입니다.
  • Azure Key Vault: 비밀, 키, 인증서를 안전하게 저장하고 관리하는 서비스입니다.
  • 비밀 (Secret): 암호, 연결 문자열 등 민감한 정보를 안전하게 관리하는 데 사용됩니다.
  • 관리 ID (Managed Identity): Azure 서비스가 Azure AD를 통해 다른 Azure 서비스에 안전하게 접근할 수 있도록 하는 기능입니다.
  • 컨테이너 앱 (Container App): 컨테이너화된 애플리케이션을 서버리스 환경에서 실행하고 관리하는 Azure 서비스입니다.
  • 액세스 키 (Access Key): Azure Storage 계정에 접근하기 위한 인증 정보입니다.
  • 로테이션 (Rotation): 보안을 강화하기 위해 비밀번호나 키 등의 정보를 주기적으로 변경하는 것을 의미합니다.
  • 스토리지 계정 (Storage Account): Azure에서 데이터를 저장하기 위한 계정입니다.
  • LRS (Local Redundant Storage, 로컬 중복 스토리지): 단일 데이터 센터 내에서 데이터를 여러 번 복제하여 데이터 손실을 방지하는 스토리지 복제 옵션입니다.
  • 영역 (Zone): Azure 지역 내의 물리적으로 분리된 데이터 센터입니다. 영역 중복성을 통해 특정 영역의 장애가 다른 영역에 영향을 미치지 않도록 할 수 있습니다.
  • ZRS (Zone Redundant Storage, 영역 중복 스토리지): 동일한 Azure 지역 내의 여러 가용성 영역에 데이터를 복제하여 데이터의 내구성과 가용성을 높이는 스토리지 복제 옵션입니다.
  • 범용 v1 (General Purpose v1): 초기 버전의 Azure Storage 계정 유형입니다.
  • 범용 v2 (General Purpose v2): 최신 버전의 Azure Storage 계정 유형으로, 더 많은 기능과 향상된 성능을 제공합니다.
  • 개체 복제 규칙 (Object Replication Rules): 한 스토리지 계정의 블록 블롭을 다른 스토리지 계정으로 비동기적으로 복사하는 규칙입니다.
  • GRS (Geo-Redundant Storage, 지리적 중복 스토리지): 주 지역과 보조 지역으로 데이터를 복제하여 지역 전체의 장애로부터 데이터를 보호하는 스토리지 복제 옵션입니다.
  • RA-GRS (Read-Access Geo-Redundant Storage, 읽기 액세스 지리적 중복 스토리지): GRS와 동일하게 데이터를 복제하지만, 보조 지역에서 읽기 접근이 가능한 스토리지 복제 옵션입니다.

'인공지능,프로그래밍 > MS Azure' 카테고리의 다른 글

Azure 104 연습 문제 38  (0) 2025.04.18
Azure 104 연습 문제 37  (1) 2025.04.18
Azure 104 연습 문제 35  (1) 2025.04.17
Azure 104 연습 문제 34  (2) 2025.04.17
Azure 104 연습 문제 33  (2) 2025.04.17