🎯 AZ-104: Microsoft Azure Administrator

한국어 문제집 및 해설

총 49문제 | Azure 관리자 인증 시험 대비

문제 1 Azure Kubernetes Service

시나리오: 다음은 동일한 시나리오를 제시하는 일련의 질문 중 일부입니다. 각 질문에는 명시된 목표를 충족할 수 있는 고유한 솔루션이 포함되어 있습니다.

AKS1이라는 Azure Kubernetes Service(AKS) 클러스터를 배포합니다.
AKS1에 YAML 파일을 배포해야 합니다.

솔루션: Azure CLI에서 az aks 명령을 실행합니다.

질문: 이 솔루션이 목표를 충족합니까?

A. 예
B. 아니오
정답: B. 아니오

📚 해설

왜 B가 정답인가:

  • az aks 명령어는 AKS 클러스터 자체를 관리하는 명령어입니다.
  • YAML 파일을 Kubernetes 클러스터에 배포하려면 kubectl 명령어를 사용해야 합니다.
  • 올바른 명령어: kubectl apply -f your-file.yaml

참고: az aks는 클러스터 생성, 삭제, 스케일링 등의 관리 작업에 사용되며, 실제 워크로드 배포는 kubectl로 수행합니다.

문제 2 Azure Kubernetes Service

AKS1이라는 Azure Kubernetes Service(AKS) 클러스터를 배포합니다.
AKS1에 YAML 파일을 배포해야 합니다.

솔루션: Azure CLI에서 kubectl 클라이언트를 실행합니다.

질문: 이 솔루션이 목표를 충족합니까?

A. 예
B. 아니오
정답: A. 예

📚 해설

왜 A가 정답인가:

  • kubectl은 Kubernetes 클러스터와 상호작용하는 공식 명령줄 도구입니다.
  • YAML 파일을 Kubernetes에 배포하는 올바른 방법입니다.
  • 예시: kubectl apply -f deployment.yaml

kubectl의 주요 명령어:

  • kubectl apply -f file.yaml - YAML 파일 적용
  • kubectl get pods - 파드 상태 확인
  • kubectl describe - 리소스 상세 정보 확인
문제 3 Azure Kubernetes Service

AKS1이라는 Azure Kubernetes Service(AKS) 클러스터를 배포합니다.
AKS1에 YAML 파일을 배포해야 합니다.

솔루션: Azure CLI에서 azcopy를 실행합니다.

질문: 이 솔루션이 목표를 충족합니까?

A. 예
B. 아니오
정답: B. 아니오

📚 해설

왜 B가 정답인가:

  • azcopy는 Azure Storage 계정 간에 데이터를 복사하는 도구입니다.
  • Kubernetes 클러스터에 YAML 파일을 배포하는 용도로는 사용할 수 없습니다.
  • AKS에 리소스를 배포하려면 kubectl을 사용해야 합니다.

azcopy의 실제 용도:

  • Azure Blob Storage와 파일 시스템 간 데이터 전송
  • Storage 계정 간 데이터 동기화
  • 대량 데이터 마이그레이션
문제 4 Azure Monitor

Windows Server 2016을 실행하는 VM1이라는 Azure 가상 머신이 있습니다.
VM1의 시스템 이벤트 로그에 1시간 내에 2개 이상의 오류 이벤트가 기록될 때 Azure에서 알림을 생성해야 합니다.

솔루션: Azure Storage 계정을 생성하고 공유 액세스 서명(SAS)을 구성합니다. VM1에 Microsoft Monitoring Agent를 설치합니다. Azure Monitor에서 알림을 생성하고 Storage 계정을 소스로 지정합니다.

질문: 이 솔루션이 목표를 충족합니까?

A. 예
B. 아니오
정답: B. 아니오

📚 해설

왜 B가 정답인가:

  • Storage 계정은 이벤트 로그 모니터링의 직접적인 소스가 아닙니다.
  • 올바른 접근법은 Log Analytics 작업 영역을 사용하는 것입니다.
  • Azure Monitor Agent나 Log Analytics Agent를 사용하여 로그를 수집해야 합니다.

올바른 솔루션:

  1. Log Analytics 작업 영역 생성
  2. VM에 Azure Monitor Agent 설치
  3. Windows 이벤트 로그 수집 구성
  4. Kusto 쿼리를 사용하여 알림 규칙 생성
문제 5 Virtual Machines

HOTSPOT - Subscription1이라는 Azure 구독이 있습니다. Subscription1에는 다음 표에 나와 있는 리소스가 포함되어 있습니다.

리소스 표

VNet1은 RG1에 있습니다. VNet2는 RG2에 있습니다. VNet1과 VNet2 간에는 연결이 없습니다.
Admin1이라는 관리자가 RG1에 VM1이라는 Azure 가상 머신을 생성합니다. VM1은 Disk1이라는 디스크를 사용하고 VNet1에 연결됩니다. Admin1은 VM1에 사용자 지정 애플리케이션을 설치합니다.
사용자 지정 애플리케이션을 VNet2로 이동해야 합니다. 솔루션은 관리 노력을 최소화해야 합니다.

질문: 어떤 두 가지 작업을 수행해야 합니까?

선택 옵션
정답: VM1 삭제 + VNet2에서 디스크를 사용하여 새 VM 생성
정답 이미지

📚 해설

핵심 개념:

  • VM을 다른 VNet으로 직접 이동할 수 없습니다.
  • 디스크는 VM과 독립적으로 존재하며 다른 VM에 연결할 수 있습니다.

올바른 절차:

  1. VM1 삭제 - 디스크는 유지하고 VM만 삭제
  2. VNet2에서 새 VM 생성 - 기존 Disk1을 OS 디스크로 사용

왜 이 방법이 효율적인가:

  • 사용자 지정 애플리케이션이 설치된 디스크를 그대로 유지
  • 데이터 손실 없음
  • 재설치 작업 불필요
문제 6 Azure Key Vault

기존 가상 머신을 기반으로 Azure Resource Manager 템플릿을 다운로드합니다. 이 템플릿은 100개의 가상 머신을 배포하는 데 사용됩니다.
관리자 비밀번호를 참조하도록 템플릿을 수정해야 합니다. 비밀번호가 일반 텍스트로 저장되지 않도록 해야 합니다.

질문: 비밀번호를 저장하기 위해 무엇을 생성해야 합니까?

A. Azure Key Vault 및 액세스 정책
B. Azure Storage 계정 및 액세스 정책
C. Recovery Services 자격 증명 모음 및 백업 정책
D. Azure Active Directory (AD) Identity Protection 및 Azure 정책
정답: A. Azure Key Vault 및 액세스 정책

📚 해설

왜 A가 정답인가:

  • Azure Key Vault는 비밀, 키, 인증서를 안전하게 저장하는 서비스입니다.
  • ARM 템플릿에서 Key Vault 참조를 통해 비밀번호를 안전하게 사용할 수 있습니다.
  • 액세스 정책을 통해 누가 비밀에 접근할 수 있는지 제어합니다.

ARM 템플릿에서 Key Vault 사용법:

{
  "adminPassword": {
    "reference": {
      "keyVault": {
        "id": "/subscriptions/{subscription-id}/resourceGroups/{rg}/providers/Microsoft.KeyVault/vaults/{vault-name}"
      },
      "secretName": "vmPassword"
    }
  }
}

다른 옵션이 틀린 이유:

  • B: Storage 계정은 비밀 관리용이 아님
  • C: Recovery Services는 백업용
  • D: Identity Protection은 사용자 보안용
문제 7 App Service

HOTSPOT - 다음 표에 표시된 App Service 계획이 있습니다.

App Service 계획

다음 표에 표시된 Azure 웹앱을 생성할 계획입니다.

웹앱 계획

웹앱에 사용할 수 있는 App Service 계획을 식별해야 합니다.

정답
정답

📚 해설

핵심 원칙:

  • 지역 일치: 웹앱과 App Service 계획은 같은 지역에 있어야 함
  • 운영체제 호환성: ASP.NET Core는 Windows/Linux 모두 지원, ASP.NET은 Windows만 지원

Box 1: ASP1, ASP3

  • ASP.NET Core 앱은 Windows(ASP1)와 Linux(ASP3) 모두에서 실행 가능
  • ASP2는 다른 지역(West US vs East US)이므로 불가능

Box 2: ASP1

  • ASP.NET 앱은 Windows에서만 실행 가능
  • ASP1만이 Windows 기반이고 같은 지역(East US)에 위치
문제 8 Virtual Machine Scale Sets

HOTSPOT - Scale1이라는 가상 머신 스케일 셋을 생성합니다. Scale1은 다음 전시와 같이 구성됩니다.

스케일 셋 구성

그래픽에 제시된 정보를 바탕으로 각 문장을 완성하는 답안 선택지를 선택하세요.

정답
정답

📚 해설

자동 스케일링 규칙 분석:

Box 1: 6개의 가상 머신

  • CPU 사용률이 80% 이상일 때 스케일 아웃 규칙이 작동
  • 초기 인스턴스 수: 4개
  • 스케일 아웃 시 2개씩 증가 → 4 + 2 = 6개

Box 2: 2개의 가상 머신

  • CPU 사용률이 30% 이하일 때 스케일 인 규칙이 작동
  • 4개씩 감소하라고 설정되어 있지만, 최소 인스턴스 수는 2개
  • 따라서 4개에서 2개까지만 감소 가능

참고: 스케일 셋의 최소/최대 인스턴스 제한이 실제 스케일링 동작을 결정합니다.

문제 9 Virtual Machine Scale Sets

Windows Server 2016 Datacenter 이미지를 사용하는 가상 머신 스케일 셋의 배포를 자동화할 계획입니다.
스케일 셋 가상 머신이 프로비저닝될 때 웹 서버 구성 요소가 설치되어 있는지 확인해야 합니다.

질문: 어떤 두 가지 작업을 수행해야 합니까? 각 정답은 솔루션의 일부를 나타냅니다.

A. 구성 스크립트 업로드
B. 자동화 계정 생성
C. Azure 정책 생성
D. Azure Resource Manager 템플릿의 extensionProfile 섹션 수정
E. Azure Portal에서 새 가상 머신 스케일 셋 생성
정답: A, D

📚 해설

VM 스케일 셋에서 자동 소프트웨어 설치:

A. 구성 스크립트 업로드

  • 웹 서버(IIS) 설치를 위한 PowerShell 스크립트 작성
  • 스크립트를 Storage 계정이나 접근 가능한 위치에 업로드

D. extensionProfile 섹션 수정

  • ARM 템플릿의 extensionProfile에 Custom Script Extension 추가
  • 업로드된 스크립트를 실행하도록 구성

예시 extensionProfile 구성:

"extensionProfile": {
  "extensions": [{
    "name": "InstallIIS",
    "properties": {
      "publisher": "Microsoft.Compute",
      "type": "CustomScriptExtension",
      "typeHandlerVersion": "1.9",
      "settings": {
        "fileUris": ["https://storage.../install-iis.ps1"],
        "commandToExecute": "powershell.exe -ExecutionPolicy Unrestricted -File install-iis.ps1"
      }
    }
  }]
}
문제 10 Azure Kubernetes Service

HOTSPOT - AKS1이라는 Azure Kubernetes Service(AKS) 클러스터와 Windows 10을 실행하는 Computer1이라는 컴퓨터가 있습니다. Computer1에는 Azure CLI가 설치되어 있습니다.
Computer1에 kubectl 클라이언트를 설치해야 합니다.

질문: 어떤 명령어를 실행해야 합니까?

정답: az aks install-cli
정답

📚 해설

kubectl 설치 방법:

  • az aks install-cli 명령어는 kubectl을 로컬에 설치합니다.
  • 이 명령어는 Azure CLI의 AKS 확장에서 제공됩니다.
  • Windows, Linux, macOS에서 모두 사용 가능합니다.

설치 후 확인:

  • kubectl version --client - kubectl 버전 확인
  • az aks get-credentials --resource-group myRG --name AKS1 - 클러스터 인증 정보 가져오기
  • kubectl get nodes - 클러스터 노드 확인
문제 11 Azure Automation

DRAG DROP - 10개의 Azure 가상 머신을 Azure Automation State Configuration에 온보딩합니다.
Azure Automation State Configuration을 사용하여 가상 머신 구성의 지속적인 일관성을 관리해야 합니다.

질문: 순서대로 수행해야 하는 세 가지 작업은 무엇입니까?

정답: 1) DSC 구성 가져오기 → 2) 구성 컴파일 → 3) 노드 구성 할당
정답 순서

📚 해설

Azure Automation State Configuration 설정 순서:

  1. DSC 구성 가져오기 - PowerShell DSC 스크립트를 Automation 계정에 업로드
  2. 구성 컴파일 - DSC 구성을 노드 구성(MOF 파일)으로 컴파일
  3. 노드 구성 할당 - 컴파일된 구성을 대상 VM에 할당

각 단계의 역할:

  • 가져오기: 원하는 상태를 정의하는 PowerShell DSC 코드
  • 컴파일: 실행 가능한 구성 파일(MOF) 생성
  • 할당: 특정 VM이 어떤 구성을 따를지 결정
문제 12 ARM Templates

Azure 가상 머신을 배포하는 데 사용되는 Template1이라는 Azure Resource Manager 템플릿이 있습니다.
Template1의 variables 섹션에는 다음 텍스트가 포함되어 있습니다:
"location": "westeurope"

Template1을 사용하여 가상 머신을 West US 위치에 배포해야 합니다.

질문: 무엇을 해야 합니까?

A. resources 섹션의 location을 westus로 수정
B. 배포 중에 West US 선택
C. variables 섹션의 location을 westus로 수정
정답: A. resources 섹션의 location을 westus로 수정

📚 해설

ARM 템플릿의 우선순위:

이 템플릿에서 리소스의 location은 직접 하드코딩되어 있습니다:

  • 매개변수: location이 정의되어 있음
  • 변수: "westeurope"로 설정
  • 리소스: 실제 VM이 생성될 때 사용되는 값

왜 A가 정답인가:

  • 리소스 섹션에서 직접 location이 지정되어 있어서 이 값이 실제로 사용됩니다.
  • 매개변수나 변수 값과 상관없이 리소스에 명시된 값이 우선됩니다.
  • West US로 배포하려면 리소스 정의에서 location을 "westus"로 변경해야 합니다.
문제 13 App Service

Plan1이라는 App Service 계획과 webapp1이라는 Azure 웹앱을 생성합니다.
스테이징 슬롯을 생성하는 옵션을 사용할 수 없다는 것을 발견했습니다.
Plan1에 대한 스테이징 슬롯을 생성해야 합니다.

질문: 먼저 무엇을 해야 합니까?

A. Plan1에서 App Service 계획을 스케일 업
B. webapp1에서 애플리케이션 설정 수정
C. webapp1에 사용자 지정 도메인 추가
D. Plan1에서 App Service 계획을 스케일 아웃
정답: A. Plan1에서 App Service 계획을 스케일 업

📚 해설

배포 슬롯 요구사항:

  • 배포 슬롯(스테이징 슬롯)은 Standard, Premium, Isolated 가격 계층에서만 사용 가능합니다.
  • Free, Shared, Basic 계층에서는 배포 슬롯을 지원하지 않습니다.

스케일 업 vs 스케일 아웃:

  • 스케일 업 (Scale Up): 가격 계층을 높여 더 많은 기능과 리소스 확보
  • 스케일 아웃 (Scale Out): 인스턴스 수를 증가시켜 처리 능력 향상

배포 슬롯의 장점:

  • 무중단 배포 가능
  • 프로덕션 환경에 영향 주지 않고 테스트
  • 슬롯 간 트래픽 라우팅 제어
  • 문제 발생 시 즉시 이전 버전으로 롤백
문제 14 Availability Sets

App1이라는 분산 온-프레미스 앱을 Azure 구독으로 이동할 계획입니다.
계획된 이동 후 App1은 여러 Azure 가상 머신에서 호스팅됩니다.
계획된 Azure 유지 관리 중에 App1이 항상 최소 8개의 가상 머신에서 실행되도록 해야 합니다.

질문: 무엇을 생성해야 합니까?

A. 10개 가상 머신 인스턴스가 있는 하나의 가상 머신 스케일 셋
B. 3개의 장애 도메인과 1개의 업데이트 도메인이 있는 하나의 가용성 집합
C. 10개의 업데이트 도메인과 1개의 장애 도메인이 있는 하나의 가용성 집합
D. 12개 가상 머신 인스턴스가 있는 하나의 가상 머신 스케일 셋
정답: A. 10개 가상 머신 인스턴스가 있는 하나의 가상 머신 스케일 셋

📚 해설

핵심 요구사항 분석:

  • 계획된 Azure 유지 관리 중 최소 8대 VM 실행 보장
  • 계획된 유지 관리 시 업데이트 도메인별로 순차적 재부팅

VM 스케일 셋의 장점:

  • 자동으로 여러 업데이트 도메인에 VM 분산 배치
  • 기본적으로 5개 업데이트 도메인 사용 (Azure에서 관리)
  • 계획된 유지 관리 시 한 번에 하나의 업데이트 도메인만 영향

계산:

  • 10개 VM을 5개 업데이트 도메인에 분산 → 각 도메인당 2개 VM
  • 유지 관리 시 한 도메인(2개 VM)만 중단 → 8개 VM 계속 실행

다른 옵션이 틀린 이유:

  • B: 1개 업데이트 도메인은 모든 VM이 동시 중단
  • C: 1개 장애 도메인은 고가용성 부족
  • D: 12개도 가능하지만 10개가 최소 요구사항을 만족하는 효율적 답안
문제 15 Azure Monitor

Windows Server 2016을 실행하는 VM1이라는 Azure 가상 머신이 있습니다.
VM1의 시스템 이벤트 로그에 1시간 내에 2개 이상의 오류 이벤트가 기록될 때 Azure에서 알림을 생성해야 합니다.

솔루션: VM1에서 이벤트 구독을 생성합니다. Azure Monitor에서 알림을 생성하고 VM1을 소스로 지정합니다.

질문: 이 솔루션이 목표를 충족합니까?

A. 예
B. 아니오
정답: B. 아니오

📚 해설

왜 B가 정답인가:

  • 단순히 VM을 소스로 지정하는 것만으로는 Windows 이벤트 로그에 접근할 수 없습니다.
  • Azure Monitor가 Windows 이벤트 로그를 수집하려면 별도의 에이전트와 구성이 필요합니다.

올바른 솔루션:

  1. Log Analytics 작업 영역 생성
  2. Azure Monitor Agent 또는 Log Analytics Agent 설치
  3. 데이터 수집 규칙 구성하여 Windows 이벤트 로그 수집
  4. KQL 쿼리로 1시간 내 오류 이벤트 2개 이상 조건 설정
  5. 알림 규칙 생성하여 조건 충족 시 알림 발송

필요한 KQL 쿼리 예시:

Event
| where EventLevelName == "Error"
| where TimeGenerated > ago(1h)
| summarize count() by Computer
| where count_ >= 2
문제 16 Virtual Machines

VM1이라는 Azure 가상 머신이 있습니다. VM1은 ARM1.json이라는 사용자 지정 Azure Resource Manager 템플릿을 사용하여 배포되었습니다.
VM1이 유지 관리의 영향을 받을 것이라는 알림을 받았습니다.
VM1을 즉시 다른 호스트로 이동해야 합니다.

솔루션: 개요 블레이드에서 가상 머신을 다른 구독으로 이동합니다.

질문: 이 솔루션이 목표를 충족합니까?

A. 예
B. 아니오
정답: B. 아니오

📚 해설

왜 B가 정답인가:

  • 구독 간 VM 이동은 물리적 호스트 변경을 보장하지 않습니다.
  • 구독 이동은 논리적 소유권 변경일 뿐, 물리적 위치는 동일할 수 있습니다.
  • 즉시 다른 호스트로 이동하는 목적에 적합하지 않습니다.

올바른 솔루션:

  • VM 재배포 (Redeploy): Azure Portal에서 "재배포" 옵션 사용
  • 이 방법은 VM을 새로운 Azure 호스트로 즉시 이동시킵니다.
  • VM의 IP 주소와 구성은 유지됩니다.

재배포 과정:

  1. VM이 새로운 물리적 호스트로 이동
  2. 임시 데이터(D: 드라이브)는 손실될 수 있음
  3. 동적 IP는 변경될 수 있음 (정적 IP는 유지)
문제 17 Virtual Machines

VM1이라는 Azure 가상 머신이 있습니다. VM1은 ARM1.json이라는 사용자 지정 Azure Resource Manager 템플릿을 사용하여 배포되었습니다.
VM1이 유지 관리의 영향을 받을 것이라는 알림을 받았습니다.
VM1을 즉시 다른 호스트로 이동해야 합니다.

솔루션: 재배포 블레이드에서 재배포를 클릭합니다.

질문: 이 솔루션이 목표를 충족합니까?

A. 예
B. 아니오
정답: A. 예

📚 해설

왜 A가 정답인가:

  • 재배포는 VM을 새로운 Azure 호스트로 즉시 이동시키는 정확한 방법입니다.
  • 계획된 유지 관리를 회피할 수 있는 효과적인 방법입니다.
  • VM의 구성과 데이터는 유지됩니다.

재배포의 효과:

  • VM이 새로운 물리적 Azure 호스트로 이동
  • 네트워크 구성 유지 (VNet, 서브넷 등)
  • 영구 디스크 데이터 보존
  • 즉시 실행되어 유지 관리 회피

재배포 시 주의사항:

  • 동적 공용 IP 주소는 변경될 수 있음
  • 임시 드라이브(D:) 데이터는 손실 가능
  • 재배포 중 잠시 VM이 오프라인 상태

Azure Portal에서 경로:
VM → 설정 → 지원 + 문제 해결 → 재배포

문제 18 Virtual Machines

VM1이라는 Azure 가상 머신이 있습니다. VM1은 ARM1.json이라는 사용자 지정 Azure Resource Manager 템플릿을 사용하여 배포되었습니다.
VM1이 유지 관리의 영향을 받을 것이라는 알림을 받았습니다.
VM1을 즉시 다른 호스트로 이동해야 합니다.

솔루션: 업데이트 관리 블레이드에서 사용을 클릭합니다.

질문: 이 솔루션이 목표를 충족합니까?

A. 예
B. 아니오
정답: B. 아니오

📚 해설

왜 B가 정답인가:

  • 업데이트 관리는 VM의 패치 및 업데이트를 관리하는 기능입니다.
  • VM을 다른 물리적 호스트로 이동시키는 기능이 아닙니다.
  • 계획된 Azure 유지 관리를 회피하는 목적에 적합하지 않습니다.

업데이트 관리의 실제 용도:

  • Windows 및 Linux VM의 운영체제 업데이트 관리
  • 보안 패치 자동 설치 스케줄링
  • 업데이트 배포 모니터링 및 보고
  • 업데이트 실패 문제 해결

올바른 솔루션:

  • VM 재배포를 통해 즉시 다른 호스트로 이동
  • Azure Portal → VM → 지원 + 문제 해결 → 재배포
문제 19 App Service

webapp1이라는 웹앱이 포함된 Azure 구독이 있습니다.
webapp1에 www.contoso.com이라는 사용자 지정 도메인을 추가해야 합니다.

질문: 먼저 무엇을 해야 합니까?

A. DNS 레코드 생성
B. 연결 문자열 추가
C. 인증서 업로드
D. webapp1 중지
정답: A. DNS 레코드 생성

📚 해설

사용자 지정 도메인 추가 과정:

  1. DNS 레코드 생성 (첫 번째 단계)
  2. Azure에서 사용자 지정 도메인 추가
  3. 도메인 소유권 확인
  4. 필요시 SSL 인증서 바인딩

DNS 레코드 유형:

  • CNAME 레코드: www.contoso.com → webapp1.azurewebsites.net
  • A 레코드: contoso.com → webapp1의 IP 주소
  • TXT 레코드: 도메인 소유권 확인용

예시 DNS 구성:

유형: CNAME
이름: www
값: webapp1.azurewebsites.net
TTL: 3600

다른 옵션이 틀린 이유:

  • B: 연결 문자열은 데이터베이스 연결용
  • C: 인증서는 도메인 추가 후 SSL용
  • D: 웹앱 중지는 불필요
문제 20 Virtual Networks

다음 표에 표시된 리소스가 포함된 Azure 구독이 있습니다.

리소스 표

VM1이 VNET1에 연결됩니다.
VM1을 VNET2에 연결해야 합니다.

솔루션: VM1을 RG2로 이동한 다음 VM1에 새 네트워크 인터페이스를 추가합니다.

질문: 이 솔루션이 목표를 충족합니까?

A. 예
B. 아니오
정답: B. 아니오

📚 해설

왜 B가 정답인가:

  • VM을 다른 리소스 그룹으로 이동하는 것만으로는 네트워크 연결이 변경되지 않습니다.
  • 네트워크 인터페이스를 추가하더라도 기존 VNET1 연결이 유지됩니다.
  • VM을 완전히 VNET2로 "이동"하려면 VNET1 연결을 제거해야 합니다.

VM의 VNet 변경 제약사항:

  • 기존 네트워크 인터페이스의 VNet은 변경할 수 없음
  • VM에 여러 네트워크 인터페이스를 연결할 수 있지만, 각각은 다른 VNet에 있을 수 있음
  • 완전한 VNet 변경을 위해서는 VM 재생성이 필요

올바른 솔루션:

  1. VM 삭제 (디스크는 유지)
  2. VNET2에 연결된 새 네트워크 인터페이스로 VM 재생성
  3. 기존 디스크를 새 VM에 연결
문제 21 Virtual Networks

다음 표에 표시된 리소스가 포함된 Azure 구독이 있습니다.

리소스 표

VM1이 VNET1에 연결됩니다.
VM1을 VNET2에 연결해야 합니다.

솔루션: VM1을 삭제합니다. VM1을 재생성한 다음 VM1용 새 네트워크 인터페이스를 생성하고 이를 VNET2에 연결합니다.

질문: 이 솔루션이 목표를 충족합니까?

A. 예
B. 아니오
정답: A. 예

📚 해설

왜 A가 정답인가:

  • 이 방법은 VM을 완전히 VNET2로 이동시키는 올바른 방법입니다.
  • VM을 삭제하고 재생성하면서 네트워크 구성을 변경할 수 있습니다.
  • 새로운 네트워크 인터페이스를 VNET2에 연결하여 목표를 달성합니다.

권장 절차:

  1. 데이터 백업 - 중요 데이터 보존
  2. VM 설정 문서화 - 크기, 확장 등 기록
  3. VM 삭제 - 디스크는 보관 옵션 선택
  4. VNET2용 네트워크 인터페이스 생성
  5. 새 VM 생성 - 기존 디스크 사용

데이터 보존 방법:

  • VM 삭제 시 "관리 디스크 삭제" 옵션 해제
  • 새 VM 생성 시 기존 OS 디스크 선택
  • 모든 데이터와 설정이 보존됨
문제 22 Virtual Networks

다음 표에 표시된 리소스가 포함된 Azure 구독이 있습니다.

리소스 표

VM1이 VNET1에 연결됩니다.
VM1을 VNET2에 연결해야 합니다.

솔루션: VM1을 끄고 VM1에 새 네트워크 인터페이스를 추가합니다.

질문: 이 솔루션이 목표를 충족합니까?

A. 예
B. 아니오
정답: B. 아니오

📚 해설

왜 B가 정답인가:

  • 네트워크 인터페이스를 추가하는 것은 새로운 연결을 생성하는 것이지, 기존 연결을 변경하는 것이 아닙니다.
  • 이 방법으로는 VM이 VNET1과 VNET2에 동시에 연결되어 "이동"이 아닌 "추가" 상태가 됩니다.
  • 질문의 의도는 VM을 VNET2로 완전히 이동시키는 것입니다.

다중 네트워크 인터페이스의 한계:

  • VM이 여러 VNet에 동시 연결되지만 기본 라우팅은 첫 번째 NIC
  • 복잡한 네트워크 구성이 필요
  • 완전한 "이동"이 아닌 "다중 연결" 상태

올바른 솔루션:

  • VM을 완전히 VNET2로 이동하려면 VM 재생성이 필요
  • 기존 VNET1 연결을 제거하고 VNET2에만 연결

다중 NIC가 적절한 경우:

  • 방화벽이나 네트워크 가상 어플라이언스
  • 서로 다른 네트워크 간 브리지 역할
  • 관리 네트워크와 데이터 네트워크 분리
문제 23 Virtual Machine Quotas

HOTSPOT - Subscription1이라는 Azure 구독이 있으며 다음 표에 표시된 할당량이 포함되어 있습니다.

할당량 표

Subscription1에 다음 표와 같이 가상 머신을 배포합니다.

배포된 VM

다음 표에 표시된 가상 머신을 배포할 계획입니다.

계획된 VM

다음 각 문장에 대해 문장이 참이면 예를, 거짓이면 아니오를 선택하세요.

정답
정답

📚 해설

할당량 분석:

  • 총 지역 vCPU 할당량: 20개
  • 할당 해제된 VM도 할당량에 포함됨

현재 사용량:

  • VM20 (할당 해제됨): 16 vCPU
  • VM1 (실행 중): 2 vCPU
  • 총 사용 중: 18 vCPU
  • 남은 할당량: 2 vCPU

계획된 VM 배포 가능성:

  • VM2 (2 vCPU): 가능 - 정확히 남은 할당량만큼
  • VM3 (4 vCPU): 불가능 - 할당량 초과
  • VM4 (8 vCPU): 불가능 - 할당량 초과

중요 개념:

  • 할당 해제(Deallocated) 상태의 VM도 vCPU 할당량을 소비
  • VM을 삭제해야만 할당량이 해제됨
  • 지역별 할당량은 모든 VM 크기에 적용되는 총합 제한
문제 24 Availability Sets

HOTSPOT - WEBPROD-AS-USE2라는 Azure 가용성 집합이 있습니다.

가용성 집합

WEBPROD-AS-USE2에 14개의 가상 머신을 추가합니다.

그래픽에 제시된 정보를 바탕으로 각 문장을 완성하는 답안 선택지를 선택하세요.

정답
정답

📚 해설

가용성 집합 구성:

  • 업데이트 도메인: 10개
  • 장애 도메인: 2개
  • 가상 머신: 14개

Box 1: 2개 가상 머신 (계획된 유지보수 시)

  • 14개 VM이 10개 업데이트 도메인에 분산
  • 일부 도메인: 2개 VM, 나머지 도메인: 1개 VM
  • 계획된 유지보수 시 한 번에 하나의 업데이트 도메인만 재부팅
  • 최악의 경우: 2개 VM이 있는 도메인이 재부팅됨

Box 2: 7개 가상 머신 (랙 장애 시)

  • 14개 VM이 2개 장애 도메인에 균등 분산
  • 각 장애 도메인당 7개 VM
  • 랙 장애 시 하나의 장애 도메인 전체가 영향

업데이트 도메인 vs 장애 도메인:

  • 업데이트 도메인: 계획된 유지보수 시 순차적 재부팅
  • 장애 도메인: 하드웨어 장애(전원, 네트워크, 랙) 시 영향 범위
문제 25 VPN Gateway

회사의 Azure 구독에는 VirtualNetworkA와 VirtualNetworkB라는 두 개의 Azure 네트워크가 포함되어 있습니다.

VirtualNetworkA에는 정적 라우팅을 사용하도록 구성된 VPN 게이트웨이가 포함되어 있습니다. 또한 회사의 온-프레미스 네트워크와 VirtualNetworkA 간에 사이트 간 VPN 연결이 있습니다.

Windows 10을 실행하는 워크스테이션에서 VirtualNetworkA로의 지점 간 VPN 연결을 구성했습니다. VirtualNetworkA와 VirtualNetworkB 간에 가상 네트워크 피어링을 구성한 후 회사의 온-프레미스 네트워크에서 VirtualNetworkB에 액세스할 수 있음을 확인했습니다. 하지만 Windows 10 워크스테이션에서 VirtualNetworkB에 연결할 수 없습니다.

Windows 10 워크스테이션에서 VirtualNetworkB에 연결할 수 있도록 해야 합니다.

솔루션: VirtualNetworkB에서 게이트웨이 전송 허용 설정을 선택합니다.

질문: 이 솔루션이 목표를 충족합니까?

A. 예
B. 아니오
정답: B. 아니오

📚 해설

VNet 피어링과 게이트웨이 전송:

  • 게이트웨이 전송 허용: 게이트웨이가 있는 VNet에서 설정
  • 원격 게이트웨이 사용: 게이트웨이가 없는 VNet에서 설정

올바른 구성:

  • VirtualNetworkA: "게이트웨이 전송 허용" 체크
  • VirtualNetworkB: "원격 게이트웨이 사용" 체크

문제 분석:

  • VirtualNetworkB에는 VPN 게이트웨이가 없음
  • VirtualNetworkB에서 "게이트웨이 전송 허용"을 설정하는 것은 의미 없음
  • 게이트웨이가 있는 VirtualNetworkA에서 전송을 허용해야 함

Point-to-Site VPN과 피어링:

  • P2S 클라이언트가 피어링된 VNet에 접근하려면 게이트웨이 전송 설정 필요
  • Site-to-Site는 작동하지만 Point-to-Site는 별도 구성 필요
문제 26 App Service Plans

10개의 Azure 웹앱을 배포하는 데 사용되는 Template1이라는 배포 템플릿이 있습니다.
Template1을 배포하기 전에 배포해야 할 항목을 식별해야 합니다. 솔루션은 Azure 비용을 최소화해야 합니다.

질문: 무엇을 식별해야 합니까?

A. 5개의 Azure Application Gateway
B. 하나의 App Service 계획
C. 10개의 App Service 계획
D. 하나의 Azure Traffic Manager
E. 하나의 Azure Application Gateway
정답: B. 하나의 App Service 계획

📚 해설

App Service 계획의 역할:

  • 웹앱이 실행될 컴퓨팅 리소스 정의
  • 여러 웹앱이 하나의 App Service 계획을 공유 가능
  • 같은 지역, 같은 리소스 그룹의 웹앱만 공유 가능

비용 최적화 관점:

  • 하나의 App Service 계획으로 10개 웹앱 호스팅
  • 리소스 공유로 비용 절약
  • 필요에 따라 스케일 업/아웃 가능

다른 옵션이 틀린 이유:

  • A/E: Application Gateway는 로드 밸런서, 웹앱 호스팅 불가
  • C: 10개 계획은 비용 비효율적
  • D: Traffic Manager는 DNS 기반 로드 밸런서

App Service 계획 공유 조건:

  • 같은 리소스 그룹
  • 같은 지역
  • 같은 운영체제 (Windows/Linux)
문제 27 Container Instances

HOTSPOT - 다음 Azure Resource Manager 템플릿을 사용하여 Azure 컨테이너 인스턴스를 배포할 계획입니다.

ARM 템플릿

템플릿에 제시된 정보를 바탕으로 각 문장을 완성하는 답안 선택지를 선택하세요.

정답
정답

📚 해설

Azure Container Instances 템플릿 분석:

Box 1: 컨테이너 그룹

  • ARM 템플릿의 리소스 타입이 "Microsoft.ContainerInstance/containerGroups"
  • Azure Container Instances는 컨테이너 그룹 단위로 배포
  • 하나의 컨테이너 그룹에 여러 컨테이너 포함 가능

Box 2: 공용 IP 주소

  • 템플릿에서 "ipAddress" 속성이 "Public"으로 설정
  • 외부에서 컨테이너에 직접 접근 가능
  • 포트 매핑을 통해 특정 포트로 트래픽 라우팅

Container Groups 개념:

  • 같은 호스트에서 실행되는 컨테이너들의 집합
  • 네트워크와 스토리지 공유
  • Kubernetes Pod와 유사한 개념
  • 함께 스케줄링되고 생명주기 공유
문제 28 Virtual Machine Management

VM1이라는 가상 머신이 포함된 Azure 구독이 있습니다. VM1은 24시간 사용 가능한 LOB(기간 업무) 애플리케이션을 호스팅합니다. VM1에는 하나의 네트워크 인터페이스와 하나의 관리 디스크가 있습니다. VM1은 D4s v3 크기를 사용합니다.

VM1을 다음과 같이 변경할 계획입니다:

  • 크기를 D8s v3로 변경
  • 500GB 관리 디스크 추가
  • Puppet Agent 확장 추가
  • Desired State Configuration Management 사용

질문: 어떤 변경이 VM1의 다운타임을 발생시킵니까?

A. Desired State Configuration Management 사용
B. 500GB 관리 디스크 추가
C. 크기를 D8s v3로 변경
D. Puppet Agent 확장 추가
정답: C. 크기를 D8s v3로 변경

📚 해설

VM 크기 변경 시 다운타임:

  • VM 크기 변경은 VM을 중지하고 재시작해야 함
  • 새로운 하드웨어로 VM을 이동하는 과정
  • 메모리, CPU 등 물리적 리소스 변경 필요

다른 작업들의 다운타임 여부:

A. DSC 사용 - 다운타임 없음

  • 백그라운드에서 구성 관리
  • VM 실행 중에 설정 적용

B. 디스크 추가 - 다운타임 없음

  • Azure에서 핫 플러그 지원
  • VM 실행 중에 디스크 연결 가능

D. 확장 추가 - 다운타임 없음

  • VM 실행 중에 확장 설치 가능
  • 백그라운드 프로세스로 진행

크기 변경 과정:

  1. VM 중지
  2. 새로운 하드웨어로 이동
  3. VM 시작
  4. 애플리케이션 재시작
문제 29 App Service Deployment Slots

webapp1이라는 Azure 웹앱에서 실행되는 App1이라는 앱이 있습니다.
회사의 개발자가 Git1이라는 Git 리포지토리에 App1의 업데이트를 업로드합니다.
Webapp1에는 다음 표에 표시된 배포 슬롯이 있습니다.

배포 슬롯

사용자에게 업데이트를 제공하기 전에 App1 업데이트를 테스트해야 합니다.

질문: 어떤 두 가지 작업을 수행해야 합니까? 각 정답은 솔루션의 일부를 나타냅니다.

A. 슬롯 교체
B. webapp1-prod에 App1 업데이트를 배포한 다음 업데이트 테스트
C. webapp1-prod 중지
D. webapp1-test에 App1 업데이트를 배포한 다음 업데이트 테스트
E. webapp1-test 중지
정답: A, D

📚 해설

배포 슬롯을 이용한 안전한 배포:

D. webapp1-test에 업데이트 배포 및 테스트

  • 스테이징 환경에서 새 버전 배포
  • 프로덕션에 영향 주지 않고 테스트
  • 기능, 성능, 보안 검증

A. 슬롯 교체

  • 테스트 완료 후 프로덕션과 스테이징 슬롯 교체
  • 무중단 배포 달성
  • 문제 발생 시 즉시 롤백 가능

배포 슬롯의 장점:

  • 무중단 배포: 사용자 경험 중단 없음
  • 안전한 테스트: 격리된 환경에서 검증
  • 즉시 롤백: 문제 시 이전 버전으로 복구
  • 웜업 시간: 슬롯 교체 전 사전 로딩

슬롯 교체 과정:

  1. 스테이징 슬롯에 새 버전 배포
  2. 스테이징 환경에서 테스트
  3. 슬롯 교체 실행
  4. 필요시 롤백
문제 30 Network Security & Flow Logs

Subscription1이라는 Azure 구독이 있으며 다음 공급자가 등록되어 있습니다:

  • Authorization
  • Automation
  • Resources
  • Compute
  • KeyVault
  • Network
  • Storage
  • Billing
  • Web

Subscription1에는 다음 구성을 가진 VM1이라는 Azure 가상 머신이 포함되어 있습니다:

  • 개인 IP 주소: 10.0.0.4 (동적)
  • 네트워크 보안 그룹(NSG): NSG1
  • 공용 IP 주소: 없음
  • 가용성 집합: AVSet
  • 서브넷: 10.0.0.0/24
  • 관리 디스크: 아니오
  • 위치: East US

VM1에 대한 모든 성공 및 실패한 연결 시도를 기록해야 합니다.

질문: 어떤 세 가지 작업을 수행해야 합니까? 각 정답은 솔루션의 일부를 나타냅니다.

A. East US Azure 지역에서 Azure Network Watcher 사용
B. Azure Network Watcher 연결 모니터 추가
C. MicrosoftLogAnalytics 공급자 등록
D. Azure Storage 계정 생성
E. Microsoft.Insights 리소스 공급자 등록
F. Azure Network Watcher 흐름 로그 사용
정답: D, E, F

📚 해설

NSG 흐름 로그 설정 요구사항:

D. Azure Storage 계정 생성

  • 흐름 로그 데이터를 저장할 위치
  • JSON 형식으로 연결 정보 저장
  • VM과 같은 지역에 있어야 함

E. Microsoft.Insights 리소스 공급자 등록

  • Network Watcher 기능 활성화 필요
  • 모니터링 및 진단 서비스 제공
  • 흐름 로그 기능 사용 전제조건

F. Azure Network Watcher 흐름 로그 사용

  • NSG 수준에서 트래픽 로깅
  • 허용/거부된 모든 트래픽 기록
  • 원본/대상 IP, 포트, 프로토콜 정보

흐름 로그가 기록하는 정보:

  • 타임스탬프
  • 원본 및 대상 IP 주소
  • 원본 및 대상 포트
  • 프로토콜 (TCP/UDP)
  • 트래픽 흐름 (인바운드/아웃바운드)
  • 트래픽 결정 (허용/거부)
  • 적용된 NSG 규칙

다른 옵션이 틀린 이유:

  • A: Network Watcher는 자동으로 활성화됨
  • B: 연결 모니터는 다른 목적 (가용성 모니터링)
  • C: Log Analytics는 선택사항
문제 31 Virtual Machine Scale Sets

5개의 인스턴스가 포함된 Azure 가상 머신 스케일 셋을 가능한 한 빠르게 배포해야 합니다.

질문: 무엇을 해야 합니까?

A. 5개의 가상 머신을 배포합니다. 각 가상 머신의 가용성 영역 설정을 수정합니다.
B. 5개의 가상 머신을 배포합니다. 각 가상 머신의 크기 설정을 수정합니다.
C. VM(가상 머신) 오케스트레이션 모드로 설정된 하나의 가상 머신 스케일 셋을 배포합니다.
D. ScaleSetVM 오케스트레이션 모드로 설정된 하나의 가상 머신 스케일 셋을 배포합니다.
정답: D. ScaleSetVM 오케스트레이션 모드로 설정된 하나의 가상 머신 스케일 셋을 배포합니다.

📚 해설

VM Scale Set 오케스트레이션 모드:

ScaleSetVM 모드 (정답)

  • 동일한 구성의 VM들을 빠르게 배포
  • 스케일 셋에 최적화된 배포 방식
  • 자동 스케일링과 로드 밸런싱 지원
  • 일관된 구성으로 빠른 배포 보장

VM 모드 (느린 방식)

  • 개별 VM을 하나씩 생성
  • 더 유연하지만 배포 속도 느림
  • 서로 다른 구성의 VM 가능

배포 속도 비교:

  • ScaleSetVM: 병렬로 5개 VM 동시 생성
  • 개별 VM: 순차적으로 5번의 별도 배포
  • VM 모드 스케일 셋: 중간 수준의 속도

ScaleSetVM 모드의 장점:

  • 빠른 배포 및 스케일링
  • 자동 부하 분산
  • 애플리케이션 상태 모니터링
  • 롤링 업데이트 지원
문제 32 App Service Plans

다음 표에 표시된 Azure 웹앱을 생성할 계획입니다.

웹앱 계획

질문: 웹앱에 대해 생성해야 하는 App Service 계획의 최소 개수는 얼마입니까?

A. 1
B. 2
C. 3
D. 4
정답: B. 2

📚 해설

App Service 계획 공유 제약사항:

  • 같은 운영체제 (Windows/Linux)
  • 같은 지역
  • 같은 리소스 그룹 (권장)

이미지에서 웹앱 분석:

운영체제별 그룹화가 필요한 이유:

  • Windows 웹앱들: 하나의 App Service 계획
  • Linux 웹앱들: 별도의 App Service 계획

Windows와 Linux 혼용 불가:

  • 동일한 App Service 계획에서 서로 다른 OS 지원 불가
  • 컨테이너 기술과 런타임 환경이 다름
  • 각 OS별로 최소 1개씩 계획 필요

최적화 전략:

  • OS별로 계획을 분리하되 같은 OS 내에서는 통합
  • 트래픽 패턴과 리소스 요구사항 고려
  • 필요시 나중에 별도 계획으로 분리 가능
문제 33 Azure Cost Management

HOTSPOT - 다음 표에 표시된 가상 머신이 포함된 종량제 Azure 구독이 있습니다.

VM 표

다음 전시에 표시된 예산을 생성합니다.

예산 설정

AG1 작업 그룹에는 admin@contoso.com 사용자만 포함되어 있습니다.

그래픽에 제시된 정보를 바탕으로 각 문장을 완성하는 답안 선택지를 선택하세요.

정답
정답

📚 해설

예산 알림 분석:

Box 1: VM1과 VM2 계속 실행

  • 예산 알림은 알림만 발송하고 리소스 중지 안함
  • 예산은 RG1에 설정되어 VM1만 포함 (VM2는 RG2)
  • 알림은 소비를 알려주는 역할만 함

Box 2: 월 1회 이메일 알림

  • VM1: 일일 20유로 소비
  • 50% 임계값 (500유로): 25일 후 도달
  • 한 달 내에 50% 임계값만 도달
  • 70%, 100% 임계값은 한 달 내 도달 불가

Azure 예산의 특징:

  • 모니터링 전용: 실제 리소스 제어 불가
  • 알림 기능: 임계값 도달 시 이메일/SMS
  • 비용 추적: 지출 패턴 분석 가능
  • 예방적 관리: 예상 초과 전 알림

실제 비용 제어 방법:

  • Azure Automation과 연동
  • Logic Apps으로 자동 액션
  • 수동 리소스 관리
문제 34 Resource Group Deployments

Subscription1이라는 Azure 구독이 있습니다. Subscription1에는 RG1이라는 리소스 그룹이 포함되어 있습니다. RG1에는 템플릿을 사용하여 배포된 리소스가 포함되어 있습니다.
RG1에서 리소스가 생성된 날짜와 시간을 확인해야 합니다.

솔루션: 구독 블레이드에서 구독을 선택한 다음 프로그래밍 방식 배포를 클릭합니다.

질문: 이 솔루션이 목표를 충족합니까?

A. 예
B. 아니오
정답: B. 아니오

📚 해설

프로그래밍 방식 배포의 용도:

  • Azure Marketplace에서 배포 가능한 솔루션 관리
  • 타사 솔루션의 배포 권한 설정
  • 실제 배포 기록과는 다른 목적

올바른 솔루션:

  • 리소스 그룹 → 배포 기록
  • 각 배포의 타임스탬프 확인 가능
  • 템플릿 배포 상세 정보 제공

배포 기록에서 확인 가능한 정보:

  • 배포 시작 및 완료 시간
  • 배포 상태 (성공/실패)
  • 사용된 템플릿 및 매개변수
  • 배포된 리소스 목록
  • 오류 메시지 (실패 시)

Azure Portal 경로:

  1. 리소스 그룹 → RG1
  2. 설정 → 배포
  3. 특정 배포 클릭하여 상세 정보 확인

대안적 방법:

  • Azure CLI: az deployment group list
  • PowerShell: Get-AzResourceGroupDeployment
  • REST API를 통한 조회
문제 35 Virtual Networks

다음 표에 표시된 리소스가 포함된 Azure 구독이 있습니다.

리소스 표

VM1이 VNET1에 연결됩니다.
VM1을 VNET2에 연결해야 합니다.

솔루션: 새 네트워크 인터페이스를 생성한 다음 VM1에 네트워크 인터페이스를 추가합니다.

질문: 이 솔루션이 목표를 충족합니까?

A. 예
B. 아니오
정답: B. 아니오

📚 해설

문제 상황 분석:

  • 질문은 VM1을 VNET2에 "연결"하는 것
  • 이는 VNET1에서 VNET2로 "이동"을 의미
  • 단순한 네트워크 인터페이스 추가와는 다른 요구사항

네트워크 인터페이스 추가의 결과:

  • VM이 VNET1과 VNET2에 동시에 연결됨
  • 이는 "이동"이 아닌 "추가 연결"
  • 기존 VNET1 연결은 유지됨

다중 네트워크 인터페이스의 제약:

  • 복잡한 라우팅 구성 필요
  • 기본 게이트웨이는 첫 번째 NIC
  • 애플리케이션에서 네트워크 인터페이스 선택 불가

올바른 "이동" 솔루션:

  1. VM 정지 및 삭제 (디스크 보관)
  2. VNET2용 새 네트워크 인터페이스 생성
  3. 기존 디스크로 VNET2에서 VM 재생성

다중 NIC가 적절한 경우:

  • 방화벽 또는 라우터 역할의 VM
  • 관리 네트워크와 데이터 네트워크 분리
  • 네트워크 가상 어플라이언스
문제 36 Azure Active Directory

다음 표에 표시된 사용자가 포함된 adatum.com이라는 Azure Active Directory(Azure AD) 테넌트가 있습니다.

사용자 표

Adatum.com에는 다음 구성이 있습니다:

  • 사용자가 디바이스를 Azure AD에 조인할 수 있음이 User1로 설정됨
  • Azure AD 조인 디바이스의 추가 로컬 관리자가 없음으로 설정됨

Windows 10을 Computer1이라는 컴퓨터에 배포합니다. User1이 Computer1을 adatum.com에 조인합니다.

질문: Computer1의 로컬 관리자 그룹 구성원을 식별해야 합니다. 어떤 사용자가 로컬 관리자 그룹의 구성원입니까?

A. User1만
B. User2만
C. User1과 User2만
D. User1, User2, User3만
E. User1, User2, User3, User4
정답: C. User1과 User2만

📚 해설

Azure AD 조인 시 로컬 관리자 권한:

User1 (디바이스 조인 수행자)

  • 디바이스를 Azure AD에 조인한 사용자
  • 자동으로 해당 디바이스의 로컬 관리자가 됨
  • 디바이스별 관리 권한 부여

User2 (글로벌 관리자)

  • Azure AD의 글로벌 관리자 역할
  • 모든 Azure AD 조인 디바이스의 로컬 관리자
  • 테넌트 전체 디바이스 관리 권한

다른 사용자들이 제외되는 이유:

  • User3: 디바이스 관리자 역할이지만 특별한 권한 없음
  • User4: 일반 사용자, 관리 권한 없음

Azure AD 조인 디바이스의 관리자 유형:

  1. 디바이스 조인 수행자 - 해당 디바이스만
  2. 글로벌 관리자 - 모든 조인 디바이스
  3. 추가 로컬 관리자 - 구성으로 지정된 사용자 (이 경우 없음)

디바이스 관리자 vs 글로벌 관리자:

  • 디바이스 관리자: Azure AD에서 디바이스 객체 관리
  • 글로벌 관리자: 모든 Azure AD 및 디바이스 관리
문제 37 Resource Groups & Subscriptions

HOTSPOT - Subscription1과 Subscription2라는 Azure 구독이 있습니다.

Subscription1에는 다음 리소스 그룹이 있습니다:

Subscription1 리소스 그룹

RG1에는 West Europe 위치의 App1이라는 웹앱이 포함되어 있습니다.

Subscription2에는 다음 리소스 그룹이 포함되어 있습니다:

Subscription2 리소스 그룹

다음 각 문장에 대해 문장이 참이면 예를, 거짓이면 아니오를 선택하세요.

정답
정답

📚 해설

리소스 이동 규칙:

Statement 1: App1을 RG2로 이동 가능 - 예

  • 같은 구독 내에서 리소스 그룹 간 이동 가능
  • 웹앱은 리소스 이동을 지원하는 서비스
  • 같은 지역 내에서 이동 제약 없음

Statement 2: App1을 RG3로 이동 가능 - 예

  • 서로 다른 구독 간 이동도 가능
  • 웹앱은 구독 간 이동을 지원
  • 적절한 권한만 있으면 가능

Statement 3: RG1을 Subscription2로 이동 가능 - 아니오

  • 리소스 그룹 자체는 이동할 수 없음
  • 리소스 그룹은 구독에 종속된 개념
  • 리소스는 이동 가능하지만 그룹은 불가

Azure 리소스 이동 제약사항:

  • 지원되는 리소스: 대부분의 Azure 서비스
  • 지역 제약: 일부 서비스는 같은 지역 내에서만
  • 의존성: 관련 리소스와 함께 이동 필요
  • 권한: 원본과 대상 모두에 기여자 권한

이동 불가능한 항목들:

  • 리소스 그룹 (컨테이너 역할)
  • 일부 클래식 리소스
  • Azure AD Domain Services
  • Recovery Services vault (조건부)
문제 38 Azure Policy & Tags

HOTSPOT - Subscription1이라는 Azure 구독이 있으며 다음 리소스 그룹이 포함되어 있습니다:

  • 이름: RG1
  • 지역: West US
  • 태그: tag1: value1

다음 구성을 사용하여 Policy1이라는 Azure 정책을 Subscription1에 할당합니다:

  • 제외: 없음
  • 정책 정의: 리소스에 태그 및 해당 값 추가
  • 할당 이름: Policy1
  • 매개변수:
  • 태그 이름: tag2
  • 태그 값: value2

Policy1이 할당된 후 다음 구성으로 스토리지 계정을 생성합니다:

  • 이름: storage1
  • 위치: West US
  • 리소스 그룹: RG1
  • 태그: tag3: value3

각 리소스에 할당된 태그를 식별해야 합니다.

정답
정답

📚 해설

Azure 태그 상속 규칙:

Box 1: RG1의 태그 - "tag1": "value1"만

  • 리소스 그룹 RG1에 원래 설정된 태그
  • Azure Policy는 리소스 그룹 생성 이후에 적용됨
  • 기존 리소스에는 소급 적용되지 않음

Box 2: storage1의 태그 - "tag2": "value2"와 "tag3": "value3"

  • "tag2": "value2": Azure Policy에 의해 자동 추가
  • "tag3": "value3": 스토리지 생성 시 직접 설정

Azure Policy 작동 방식:

  • 신규 리소스: 생성 시 정책 자동 적용
  • 기존 리소스: 수동 수정 작업 필요
  • append 효과: 기존 태그에 추가로 태그 덧붙임

태그 상속의 중요 사실:

  • 리소스 그룹의 태그는 자동으로 하위 리소스에 상속되지 않음
  • 별도의 정책이나 스크립트로 상속 구현 필요
  • 각 리소스는 독립적인 태그 집합을 가짐

태그 정책의 장점:

  • 일관된 태깅 표준 강제
  • 비용 추적 및 리소스 관리 개선
  • 자동화된 거버넌스 구현
문제 39 Azure Monitor Alerts

HOTSPOT - Subscription1이라는 Azure 구독이 있습니다.
Subscription1에서 Alert1이라는 알림 규칙을 생성합니다.
Alert1 작업 그룹은 다음 전시와 같이 구성됩니다.

작업 그룹 구성

Alert1 알림 조건이 매분마다 트리거됩니다.

그래픽에 제시된 정보를 바탕으로 각 문장을 완성하는 답안 선택지를 선택하세요.

정답
정답

📚 해설

Azure Monitor 알림 속도 제한:

Box 1: 60개 이메일 (시간당)

  • 매분마다 알림이 트리거됨 (60회/시간)
  • 이메일은 시간당 최대 100개까지 허용
  • 따라서 모든 알림이 이메일로 발송됨

Box 2: 12개 SMS (시간당)

  • SMS는 5분에 1개로 속도 제한
  • 60분 ÷ 5분 = 12개 SMS
  • 나머지 48개 알림은 SMS로 발송되지 않음

Azure Monitor 속도 제한 규칙:

  • SMS: 5분당 최대 1개
  • 음성 통화: 5분당 최대 1개
  • 이메일: 시간당 최대 100개
  • 기타 작업: 속도 제한 없음

속도 제한의 목적:

  • 스팸 방지 및 비용 절약
  • 알림 피로 방지
  • 중요한 알림의 가치 보존
  • 통신 채널 보호

권장사항:

  • 알림 빈도 조정 (예: 5분마다)
  • 여러 통신 채널 조합 사용
  • 알림 임계값 최적화
  • 액션 그룹 다양화
문제 40 Azure Backup

Subscription1이라는 Azure 구독이 있으며 다음 표에 표시된 리소스가 포함되어 있습니다.

리소스 표

Subscription1에서 다음 표와 같이 가상 머신을 생성합니다.

가상 머신 표

가능한 한 많은 가상 머신의 백업에 Vault1을 사용할 계획입니다.

질문: Vault1로 백업할 수 있는 가상 머신은 무엇입니까?

A. VM1만
B. VM3과 VMC만
C. VM1, VM2, VM3, VMA, VMB, VMC
D. VM1, VM3, VMA, VMC만
E. VM1과 VM3만
정답: D. VM1, VM3, VMA, VMC만

📚 해설

Azure Backup 지역 제약사항:

  • Recovery Services Vault와 백업할 VM은 같은 지역에 있어야 함
  • Vault1은 West US 지역에 위치
  • 다른 지역의 VM은 백업 불가능

지역별 VM 분석:

백업 가능 (West US):

  • VM1: West US - 백업 가능
  • VM3: West US - 백업 가능
  • VMA: West US - 백업 가능
  • VMC: West US - 백업 가능

백업 불가능 (다른 지역):

  • VM2: East US - 지역 불일치
  • VMB: East US - 지역 불일치

Azure Backup 추가 요구사항:

  • VM에 Azure Backup Agent 설치 (자동)
  • 적절한 권한 (VM Contributor 이상)
  • 백업 정책 구성
  • 충분한 스토리지 공간

다른 지역 VM 백업 방법:

  • 각 지역에 별도의 Recovery Services Vault 생성
  • Cross-region 백업 기능 사용 (제한적)
  • Azure Site Recovery 고려
문제 41 Azure Kubernetes Service

AKS1이라는 Azure Kubernetes Service(AKS) 클러스터가 있습니다.
AKS1에 대한 클러스터 자동 스케일러를 구성해야 합니다.

질문: 어떤 두 가지 도구를 사용해야 합니까? 각 정답은 완전한 솔루션을 나타냅니다.

A. kubectl 명령
B. az aks 명령
C. Set-AzVm cmdlet
D. Azure Portal
E. Set-AzAks cmdlet
정답: B, D

📚 해설

AKS 클러스터 자동 스케일러 구성 방법:

B. az aks 명령 (Azure CLI)

  • az aks update --enable-cluster-autoscaler
  • --min-count, --max-count 매개변수로 범위 설정
  • 명령줄에서 직접 관리 가능

D. Azure Portal

  • AKS 클러스터 → 설정 → 노드 풀
  • GUI를 통한 직관적 설정
  • 자동 스케일링 옵션 활성화 및 범위 설정

다른 옵션이 틀린 이유:

  • A. kubectl: 클러스터 내 리소스 관리용, 인프라 스케일링 불가
  • C. Set-AzVm: 개별 VM 관리용, AKS와 무관
  • E. Set-AzAks: 존재하지 않는 cmdlet

클러스터 자동 스케일러 작동 원리:

  • 스케일 아웃: 파드가 스케줄링되지 않을 때 노드 추가
  • 스케일 인: 노드 사용률이 낮을 때 노드 제거
  • 리소스 최적화: 필요에 따라 자동 조정

자동 스케일러 설정 예시:

az aks update \
  --resource-group myResourceGroup \
  --name myAKSCluster \
  --enable-cluster-autoscaler \
  --min-count 1 \
  --max-count 10
문제 42 Container Registry

Azure 구독에서 다음 리소스를 생성합니다:

  • Registry1이라는 Azure Container Registry 인스턴스
  • Cluster1이라는 Azure Kubernetes Service(AKS) 클러스터

관리 워크스테이션에서 App1이라는 컨테이너 이미지를 생성합니다.
App1을 Cluster1에 배포해야 합니다.

질문: 먼저 무엇을 해야 합니까?

A. docker push 명령 실행
B. App Service 계획 생성
C. az acr build 명령 실행
D. az aks create 명령 실행
정답: A. docker push 명령 실행

📚 해설

컨테이너 이미지 배포 과정:

  1. 이미지 빌드 - 로컬에서 이미 완료됨
  2. 이미지 태깅 - Registry1 주소로 태그
  3. 이미지 푸시 - Registry1에 업로드 (첫 번째 단계)
  4. AKS 배포 - Registry1에서 이미지 가져와서 배포

A. docker push 명령이 정답인 이유:

  • 로컬에서 생성된 이미지를 Container Registry에 업로드
  • AKS가 이미지를 배포하려면 먼저 Registry에 있어야 함
  • 컨테이너 배포의 필수 전제조건

전체 명령 순서:

# 1. 이미지 태깅
docker tag app1 registry1.azurecr.io/app1:latest

# 2. Registry 로그인
az acr login --name registry1

# 3. 이미지 푸시 (첫 번째 필수 단계)
docker push registry1.azurecr.io/app1:latest

# 4. AKS에 배포
kubectl apply -f deployment.yaml

다른 옵션이 틀린 이유:

  • B: App Service는 AKS와 관련 없음
  • C: 이미지가 이미 빌드되어 있음
  • D: AKS 클러스터는 이미 생성됨

Container Registry 연동 이점:

  • 프라이빗 이미지 저장소
  • AKS와 네이티브 통합
  • 보안 및 접근 제어
  • 이미지 스캔 및 취약점 관리
문제 43 Proximity Placement Groups

다음 표에 표시된 리소스가 포함된 Azure 구독이 있습니다.

리소스 표

VMSS1에 대한 근접 배치 그룹을 구성해야 합니다.

질문: 어떤 근접 배치 그룹을 사용해야 합니까?

A. Proximity2만
B. Proximity1, Proximity2, Proximity3
C. Proximity1만
D. Proximity1과 Proximity3만
정답: A. Proximity2만

📚 해설

근접 배치 그룹 제약사항:

  • VM Scale Set과 근접 배치 그룹은 같은 지역에 있어야 함
  • 근접 배치 그룹은 생성 후 지역 변경 불가
  • 이미 리소스가 있는 그룹에는 다른 리소스 추가 제한 있음

표 분석 (추정):

  • VMSS1: 특정 지역에 위치
  • Proximity1: 다른 지역이거나 이미 사용 중
  • Proximity2: VMSS1과 같은 지역, 사용 가능
  • Proximity3: 호환되지 않는 구성

근접 배치 그룹의 목적:

  • 낮은 지연시간: VM 간 네트워크 지연 최소화
  • 높은 처리량: 네트워크 성능 최적화
  • 물리적 근접성: 같은 데이터센터 배치

사용 시나리오:

  • 고성능 컴퓨팅 (HPC) 워크로드
  • 데이터베이스 클러스터
  • 실시간 게임 서버
  • 분산 캐시 시스템

제약사항 및 고려사항:

  • 단일 가용성 영역에 제한될 수 있음
  • 스케일링 시 용량 제한 가능
  • 장애 시 동시 영향 위험
  • 비용과 성능의 트레이드오프
문제 44 Resource Group Deployments

Subscription1이라는 Azure 구독이 있습니다. Subscription1에는 RG1이라는 리소스 그룹이 포함되어 있습니다. RG1에는 템플릿을 사용하여 배포된 리소스가 포함되어 있습니다.
RG1에서 리소스가 생성된 날짜와 시간을 확인해야 합니다.

솔루션: 구독 블레이드에서 구독을 선택한 다음 리소스 공급자를 클릭합니다.

질문: 이 솔루션이 목표를 충족합니까?

A. 예
B. 아니오
정답: B. 아니오

📚 해설

리소스 공급자의 역할:

  • Azure 서비스의 REST API 엔드포인트 제공
  • 리소스 유형 및 기능 정의
  • 구독에서 사용 가능한 서비스 관리
  • 배포 기록이나 타임스탬프 정보 제공 안함

올바른 솔루션:

  • 리소스 그룹 → 배포
  • 각 배포의 상세 기록 확인
  • 생성 시간, 상태, 사용된 템플릿 정보 제공

배포 기록에서 확인 가능한 정보:

  • 배포 시작/완료 시간
  • 배포 상태 (성공, 실패, 진행 중)
  • 사용된 ARM 템플릿
  • 배포 매개변수
  • 생성된 리소스 목록
  • 오류 메시지 (실패 시)

대안적 확인 방법:

  • 활동 로그: 리소스 생성 활동 기록
  • Azure CLI: az deployment group list
  • PowerShell: Get-AzResourceGroupDeployment
  • REST API: 배포 기록 조회

리소스 공급자 예시:

  • Microsoft.Compute (VM, 스케일 셋)
  • Microsoft.Storage (스토리지 계정)
  • Microsoft.Network (VNet, 로드 밸런서)
  • Microsoft.Web (App Service)
문제 45 Resource Group Deployments

Subscription1이라는 Azure 구독이 있습니다. Subscription1에는 RG1이라는 리소스 그룹이 포함되어 있습니다. RG1에는 템플릿을 사용하여 배포된 리소스가 포함되어 있습니다.
RG1에서 리소스가 생성된 날짜와 시간을 확인해야 합니다.

솔루션: RG1 블레이드에서 자동화 스크립트를 클릭합니다.

질문: 이 솔루션이 목표를 충족합니까?

A. 예
B. 아니오
정답: B. 아니오

📚 해설

자동화 스크립트의 용도:

  • 현재 리소스 구성을 기반으로 ARM 템플릿 생성
  • 기존 인프라를 코드로 내보내기
  • 유사한 환경 복제를 위한 템플릿 제공
  • 배포 기록이나 타임스탬프 정보 포함 안함

올바른 솔루션:

  • 리소스 그룹 → 설정 → 배포
  • 배포 기록에서 각 배포의 타임스탬프 확인
  • 리소스 생성 시점 정확히 파악 가능

자동화 스크립트 기능:

  • 템플릿 생성: 현재 상태 기반 ARM 템플릿
  • 매개변수 파일: 배포 시 사용할 값들
  • PowerShell 스크립트: 배포 자동화
  • CLI 명령: Azure CLI 배포 명령

자동화 스크립트 활용 사례:

  • 프로덕션 환경을 개발/테스트로 복제
  • 재해 복구 환경 구축
  • 인프라 백업 및 버전 관리
  • 다른 구독/지역으로 이주

배포 기록 vs 자동화 스크립트:

  • 배포 기록: 언제, 어떻게 만들어졌는지
  • 자동화 스크립트: 현재 상태를 어떻게 재현할지
문제 46 Resource Group Deployments

Subscription1이라는 Azure 구독이 있습니다. Subscription1에는 RG1이라는 리소스 그룹이 포함되어 있습니다. RG1에는 템플릿을 사용하여 배포된 리소스가 포함되어 있습니다.
RG1에서 리소스가 생성된 날짜와 시간을 확인해야 합니다.

솔루션: RG1 블레이드에서 배포를 클릭합니다.

질문: 이 솔루션이 목표를 충족합니까?

A. 예
B. 아니오
정답: A. 예

📚 해설

배포 기록의 정보:

  • 각 배포의 정확한 타임스탬프
  • 배포 시작 및 완료 시간
  • 배포 상태 (성공, 실패, 진행 중)
  • 사용된 템플릿 및 매개변수
  • 생성된 리소스 목록

배포 기록 접근 경로:

  1. Azure Portal → 리소스 그룹 → RG1
  2. 설정 섹션 → 배포
  3. 특정 배포 클릭하여 상세 정보 확인

배포 기록에서 확인 가능한 세부 정보:

  • 타임라인: 배포 진행 과정
  • 리소스별 상태: 개별 리소스 생성 상태
  • 템플릿 뷰: 사용된 ARM 템플릿 내용
  • 오류 정보: 실패 시 상세 오류 메시지

배포 기록의 장점:

  • 감사 추적: 누가, 언제, 무엇을 배포했는지
  • 문제 해결: 배포 실패 원인 분석
  • 규정 준수: 변경 이력 관리
  • 롤백 지원: 이전 상태로 복원 가능

추가 활용 방법:

  • 배포 템플릿 재사용
  • 성공한 배포 패턴 학습
  • 배포 시간 최적화 분석
  • 리소스 종속성 파악
문제 47 Azure Monitor

Subscription1이라는 Azure 구독이 있습니다.
Subscription1에 VM1이라는 Linux 가상 머신을 배포합니다.
VM1의 메트릭과 로그를 모니터링해야 합니다.

질문: 무엇을 사용해야 합니까?

A. Azure HDInsight
B. Linux Diagnostic Extension (LAD) 3.0
C. AzurePerformanceDiagnostics 확장
D. Azure Analysis Services
정답: B. Linux Diagnostic Extension (LAD) 3.0

📚 해설

Linux 진단 확장 (LAD)의 역할:

  • Linux VM의 메트릭 및 로그 수집
  • 시스템 성능 데이터 모니터링
  • Azure Monitor로 데이터 전송
  • 사용자 지정 메트릭 수집 가능

LAD 3.0의 주요 기능:

  • 성능 카운터: CPU, 메모리, 디스크, 네트워크
  • 시스템 로그: syslog, 커널 로그
  • 애플리케이션 로그: 사용자 정의 로그
  • JSON 메트릭: 구조화된 데이터 수집

다른 옵션이 틀린 이유:

  • A. HDInsight: 빅데이터 분석 플랫폼, VM 모니터링 불가
  • C. AzurePerformanceDiagnostics: Windows 전용 진단 도구
  • D. Analysis Services: 비즈니스 인텔리전스 분석 서비스

Linux VM 모니터링 설정:

  1. Log Analytics 작업 영역 생성
  2. LAD 3.0 확장 설치
  3. 수집할 메트릭 및 로그 구성
  4. Azure Monitor에서 데이터 확인

모니터링 가능한 메트릭:

  • CPU 사용률 및 로드 평균
  • 메모리 사용량 및 스왑
  • 디스크 I/O 및 공간 사용률
  • 네트워크 트래픽 및 연결
  • 프로세스 상태 및 성능

대안적 모니터링 도구:

  • Azure Monitor Agent: 새로운 통합 에이전트
  • Log Analytics Agent: 기존 모니터링 에이전트
  • Telegraf: 오픈소스 메트릭 수집기
문제 48 Network Security Groups

HOTSPOT - Subscription1이라는 Azure 구독이 있습니다. Subscription1에는 VM1이라는 가상 머신이 포함되어 있습니다.
VM1에 웹 서버와 DNS 서버를 설치하고 구성합니다.
VM1에는 다음 전시에 표시된 유효한 네트워크 보안 규칙이 있습니다:

네트워크 보안 규칙

그래픽에 제시된 정보를 바탕으로 각 문장을 완성하는 답안 선택지를 선택하세요.

정답
정답

📚 해설

네트워크 보안 규칙 분석:

Box 1: 인터넷 사용자는 웹 서버에 연결할 수 있지만 DNS 서버에는 연결할 수 없습니다

  • 웹 서버 (포트 80): Rule2에서 차단되지 않음, 접근 가능
  • DNS 서버 (포트 53): Rule2에서 50-60 포트 차단에 포함됨

Box 2: Rule2를 제거하면 인터넷 사용자가 DNS 서버에도 연결할 수 있습니다

  • Rule2가 제거되면 포트 53에 대한 차단이 해제됨
  • DNS 서버에 대한 인터넷 접근이 가능해짐

포트 및 서비스 매핑:

  • 포트 53: DNS (Domain Name System)
  • 포트 80: HTTP (웹 서버)
  • 포트 443: HTTPS (보안 웹 서버)
  • 포트 22: SSH (Linux 원격 접속)
  • 포트 3389: RDP (Windows 원격 데스크톱)

네트워크 보안 그룹 규칙 처리:

  • 우선순위: 낮은 숫자가 높은 우선순위
  • 순차 처리: 일치하는 규칙을 찾으면 중단
  • 기본 규칙: 명시적 규칙 이후 적용

보안 모범 사례:

  • 최소 권한 원칙 적용
  • 불필요한 포트 차단
  • 소스 IP 주소 제한
  • 로그 활성화 및 모니터링
문제 49 Availability Zones

App1이라는 웹앱을 호스팅할 VM1, VM2, VM3라는 세 개의 Azure 가상 머신을 배포할 계획입니다.
단일 Azure 데이터 센터를 사용할 수 없게 되는 경우 최소 두 개의 가상 머신을 사용할 수 있도록 해야 합니다.

질문: 무엇을 배포해야 합니까?

A. 모든 세 가상 머신을 단일 가용성 영역에
B. 모든 가상 머신을 단일 가용성 집합에
C. 각 가상 머신을 별도의 가용성 영역에
D. 각 가상 머신을 별도의 가용성 집합에
정답: C. 각 가상 머신을 별도의 가용성 영역에

📚 해설

가용성 영역 vs 가용성 집합:

가용성 영역 (Availability Zones):

  • 물리적으로 분리된 데이터센터
  • 각 영역은 독립적인 전력, 냉각, 네트워킹
  • 전체 데이터센터 장애로부터 보호
  • 99.99% SLA 제공

가용성 집합 (Availability Sets):

  • 같은 데이터센터 내의 서로 다른 랙
  • 계획된 유지보수와 하드웨어 장애 보호
  • 전체 데이터센터 장애 시 보호 불가
  • 99.95% SLA 제공

왜 C가 정답인가:

  • 문제에서 "단일 Azure 데이터센터"가 사용 불가능한 상황을 명시
  • 3개 VM을 서로 다른 가용성 영역에 배치
  • 하나의 데이터센터가 다운되어도 2개 VM은 계속 동작
  • 요구사항인 "최소 2개 VM" 충족

각 옵션의 결과:

  • A: 단일 영역 장애 시 모든 VM 영향
  • B: 데이터센터 장애 시 모든 VM 영향
  • C: 최대 1개 영역 장애 시에도 2개 VM 유지 ✓
  • D: 가용성 집합은 데이터센터 장애 보호 불가

가용성 영역 배치 예시:

  • VM1: 가용성 영역 1
  • VM2: 가용성 영역 2
  • VM3: 가용성 영역 3

추가 고려사항:

  • 로드 밸런서를 통한 트래픽 분산
  • 지역 간 지연시간 (1-2ms)
  • 데이터 복제 및 동기화
  • 비용 증가 (영역 간 데이터 전송)

🎉 문제집 완료!

총 49문제의 AZ-104 Microsoft Azure Administrator 시험 대비 문제를 완료했습니다.

각 문제의 해설을 통해 Azure 서비스들의 핵심 개념을 확실히 이해하시기 바랍니다.

📚 추가 학습 권장사항:

🏆 시험 준비 팁

  • 각 Azure 서비스의 사용 사례제약사항 숙지
  • 가격 모델성능 특성 이해
  • 네트워킹보안 개념 집중 학습
  • 모니터링백업 전략 연습
문제 50 Virtual Machine Templates

Windows Server 2019를 실행하는 VM1이라는 Azure 가상 머신이 있습니다.
VM1을 Template1이라는 템플릿으로 Azure Resource Manager 라이브러리에 저장합니다.
Template1에서 VM2라는 가상 머신을 배포할 계획입니다.

질문: VM2 배포 중에 무엇을 구성할 수 있습니까?

A. 운영 체제
B. 관리자 사용자 이름
C. 가상 머신 크기
D. 리소스 그룹
정답: D. 리소스 그룹

📚 해설

왜 D가 정답인가:

  • VM 템플릿에서 배포할 때 리소스 그룹은 배포 시점에 지정할 수 있습니다.
  • 운영체제, VM 크기, 관리자 사용자명은 템플릿에 미리 정의되어 있습니다.

다른 옵션이 틀린 이유:

  • A: 운영체제는 템플릿에 고정되어 있음
  • B: 관리자 사용자명도 템플릿에 정의됨
  • C: VM 크기도 템플릿에서 미리 설정됨
문제 51 Azure Automation

VM1이라는 Azure 가상 머신이 포함된 Azure 구독이 있습니다. VM1은 여러 활성 인스턴스를 지원하지 않는 App1이라는 금융 보고 앱을 실행합니다.
매월 말에 App1이 실행될 때 VM1의 CPU 사용률이 최고점에 달합니다.
매월 말에 VM1의 프로세서 성능을 높이는 예약된 runbook을 만들어야 합니다.

질문: runbook에 포함해야 하는 작업은 무엇입니까?

A. VM1에 Azure Performance Diagnostics 에이전트 추가
B. VM1의 VM 크기 속성 수정
C. VM1을 스케일 셋에 추가
D. 구독의 vCPU 할당량 증가
E. VM1에 DSC(Desired State Configuration) 확장 추가
정답: B. VM1의 VM 크기 속성 수정

📚 해설

왜 B가 정답인가:

  • 앱이 여러 인스턴스를 지원하지 않으므로 스케일 아웃이 불가능합니다.
  • 단일 VM의 성능을 향상시키려면 VM 크기를 더 큰 크기로 변경해야 합니다.
  • runbook을 통해 자동으로 VM 크기를 조정할 수 있습니다.

다른 옵션이 틀린 이유:

  • A: 진단 에이전트는 성능 향상에 도움이 되지 않음
  • C: 앱이 여러 인스턴스를 지원하지 않음
  • D: 할당량 증가만으로는 성능이 향상되지 않음
  • E: DSC는 구성 관리용이지 성능 향상용이 아님
문제 52 Virtual Machine Scale Sets

Azure Resource Manager 템플릿을 사용하여 가상 머신 스케일 셋에서 Windows Server 2019를 실행하는 여러 Azure 가상 머신을 배포할 계획입니다.
배포 후 모든 가상 머신에서 NGINX를 사용할 수 있도록 해야 합니다.

질문: 무엇을 사용해야 합니까?

A. Azure App Service의 Deployment Center
B. DSC(Desired State Configuration) 확장
C. New-AzConfigurationAssignment cmdlet
D. Microsoft Intune 장치 구성 프로필
정답: B. DSC(Desired State Configuration) 확장

📚 해설

왜 B가 정답인가:

  • DSC 확장은 VM에 소프트웨어를 설치하고 구성하는 표준 방법입니다.
  • 가상 머신 스케일 셋의 모든 인스턴스에 일관되게 NGINX를 설치할 수 있습니다.
  • ARM 템플릿에서 DSC 확장을 정의하여 자동화할 수 있습니다.

다른 옵션이 틀린 이유:

  • A: Deployment Center는 App Service용이지 VM용이 아님
  • C: 이 cmdlet은 Azure Policy 구성용
  • D: Intune은 모바일 장치 관리용
문제 53 Azure Kubernetes Service

HOTSPOT - 다음 전시에 표시된 네트워크 프로필을 가진 AKS(Azure Kubernetes Service) 클러스터를 배포합니다.

AKS 네트워크 프로필

그래픽에 제시된 정보를 바탕으로 각 문장을 완성하는 답안 선택지를 선택하세요.

문제 옵션
정답
정답

📚 해설

Box 1: 10.244.0.0/16

  • Pod CIDR 범위입니다.
  • --pod-cidr은 네트워크 환경의 다른 곳에서 사용하지 않는 큰 주소 공간이어야 합니다.
  • Express Route 또는 Site-to-Site VPN 연결을 통해 연결할 온프레미스 네트워크 범위를 포함합니다.

Box 2: 10.0.0.0/16

  • --service-cidr은 AKS 클러스터의 내부 서비스에 IP 주소를 할당하는 데 사용됩니다.
  • 이 범위는 클러스터 내에서만 사용되며 외부에서 라우팅되지 않습니다.
문제 54 App Service Autoscaling

HOTSPOT - 다음 전시에 표시된 App Service 계획이 있습니다.

App Service 계획

App Service 계획의 스케일 인 설정은 다음 전시와 같이 구성됩니다.

스케일 인 설정

스케일 아웃 규칙은 스케일 인 규칙과 동일한 지속 시간 및 쿨다운 시간으로 구성됩니다.

문제 옵션
정답
정답

📚 해설

Box 1: 5

  • CPU 사용률이 30% 이상이므로 최대 5개의 인스턴스가 유지됩니다.
  • 스케일 아웃 조건이 충족되어 최대 인스턴스 수까지 확장됩니다.

Box 2: 3

  • 평균 CPU 사용률이 30% 아래로 떨어지면 개수가 1씩 감소합니다.
  • 5분 쿨다운 후 또 다른 1개가 감소하여 3개에 도달합니다.
  • 최소 인스턴스 수 제한에 의해 더 이상 감소하지 않습니다.
문제 55 Virtual Machine Disks

Windows Server 2019를 실행하는 VM1이라는 Azure 가상 머신이 있습니다. VM은 기본 드라이브 설정을 사용하여 배포되었습니다.
User1이라는 사용자로 VM1에 로그인하고 다음 작업을 수행합니다:

VM1을 재배포할 계획입니다.

질문: VM1을 재배포한 후 어떤 변경 사항이 손실됩니까?

A. 수정된 화면 보호기 시간 제한
B. 새 바탕 화면 배경
C. D 드라이브의 새 파일
D. C 드라이브의 새 파일
정답: C. D 드라이브의 새 파일

📚 해설

왜 C가 정답인가:

  • D 드라이브는 임시 디스크로, VM 재배포 시 데이터가 손실됩니다.
  • Azure VM의 임시 디스크는 로컬 SSD 저장소를 사용하며 영구적이지 않습니다.

다른 옵션이 틀린 이유:

  • A, B: 사용자 설정은 사용자 프로필에 저장되어 C 드라이브에 보존됨
  • D: C 드라이브는 OS 디스크로 영구 저장소이므로 재배포 후에도 유지됨

Azure VM 디스크 유형:

  • C 드라이브: OS 디스크 (영구)
  • D 드라이브: 임시 디스크 (일시적)
문제 56 Hyper-V to Azure Migration

Azure 구독이 있습니다.
VM1이라는 온프레미스 가상 머신이 있습니다. VM1의 설정은 전시에 표시됩니다.

VM1 설정

VM1에 연결된 디스크를 Azure 가상 머신의 템플릿으로 사용할 수 있도록 해야 합니다.

질문: VM1에서 무엇을 수정해야 합니까?

A. 메모리
B. 네트워크 어댑터
C. 하드 드라이브
D. 프로세서
E. Integration Services
정답: C. 하드 드라이브

📚 해설

왜 C가 정답인가:

  • 온프레미스 Hyper-V VM을 Azure로 마이그레이션하려면 디스크 형식을 VHD로 변환해야 합니다.
  • Azure는 VHD 형식만 지원하므로 하드 드라이브 설정을 수정해야 합니다.
  • 동적 디스크가 있다면 기본 디스크로 변환해야 할 수도 있습니다.

Azure 마이그레이션 요구사항:

  • 디스크 형식: VHD (VHDX 불가)
  • 디스크 유형: 기본 디스크 (동적 디스크 불가)
  • 부팅 파티션: MBR 또는 GPT
문제 57 Virtual Machine Scale Sets

HOTSPOT - 4개의 인스턴스를 포함하는 가상 머신 스케일 셋이 포함된 Azure 구독이 있습니다. 인스턴스는 다음 구성을 가집니다:

다음 전시와 같이 get-azvmss cmdlet을 실행합니다:

cmdlet 실행 결과
문제 옵션
정답
정답

📚 해설

스케일 셋 인스턴스 분석:

Box 1: 4

  • 현재 실행 중인 인스턴스 수는 4개입니다.
  • get-azvmss 명령어 결과에서 확인할 수 있습니다.

Box 2: Standard_D1_v2

  • 모든 인스턴스는 동일한 VM 크기를 사용합니다.
  • 스케일 셋의 모든 인스턴스는 동일한 구성을 가져야 합니다.
문제 58 ARM Template History

회사의 여러 부서에서 사용하는 Subscription1이라는 Azure 구독이 있습니다. Subscription1에는 다음 표에 있는 리소스가 포함되어 있습니다.

리소스 표

다른 관리자가 단일 Azure Resource Manager 템플릿을 사용하여 VM1이라는 가상 머신과 storage2라는 Azure Storage 계정을 배포합니다.
배포에 사용된 템플릿을 확인해야 합니다.

질문: 어떤 블레이드에서 배포에 사용된 템플릿을 볼 수 있습니까?

A. VM1
B. RG1
C. storage2
D. container1
정답: B. RG1

📚 해설

왜 B가 정답인가:

  • ARM 템플릿 배포 기록은 리소스 그룹 수준에서 관리됩니다.
  • 리소스 그룹의 "배포" 섹션에서 과거 템플릿 배포 내역을 확인할 수 있습니다.
  • 여러 리소스가 함께 배포된 경우 리소스 그룹에서 전체 배포 정보를 볼 수 있습니다.

배포 기록 확인 방법:

  1. Azure Portal에서 RG1 리소스 그룹으로 이동
  2. "배포" 또는 "Deployments" 메뉴 선택
  3. 배포 목록에서 해당 배포 선택
  4. "템플릿" 탭에서 사용된 ARM 템플릿 확인
문제 59 App Service Deployment Slots

App1이라는 Azure 웹앱이 있습니다. App1에는 다음 표에 표시된 배포 슬롯이 있습니다.

배포 슬롯 표

webapp1-test에서 App1에 대한 여러 변경 사항을 테스트합니다.
App1을 백업합니다.
webapp1-test를 webapp1-prod와 교체하고 App1에 성능 문제가 발생한다는 것을 발견합니다.
가능한 한 빨리 App1의 이전 버전으로 되돌려야 합니다.

질문: 무엇을 해야 합니까?

A. App1 재배포
B. 슬롯 교체
C. App1 복제
D. App1 백업 복원
정답: B. 슬롯 교체

📚 해설

왜 B가 정답인가:

  • 배포 슬롯 교체는 즉시 되돌릴 수 있는 기능입니다.
  • 이미 webapp1-test와 webapp1-prod를 교체했으므로, 다시 교체하면 원래 상태로 돌아갑니다.
  • 슬롯 교체는 몇 초 내에 완료되는 가장 빠른 방법입니다.

다른 옵션이 틀린 이유:

  • A: 재배포는 시간이 오래 걸림
  • C: 복제는 새로운 앱을 만드는 것으로 되돌리기가 아님
  • D: 백업 복원도 시간이 오래 걸리고 데이터 손실 가능성

배포 슬롯의 장점:

  • 무중단 배포 가능
  • 즉시 롤백 가능
  • 프로덕션 환경에서 실제 테스트 가능
문제 60 Azure Backup

HOTSPOT - Subscription1이라는 Azure 구독이 있습니다. Subscription1에는 VM1과 VM2라는 두 개의 Azure 가상 머신이 포함되어 있습니다. VM1과 VM2는 Windows Server 2016을 실행합니다.
VM1은 Azure Backup 에이전트를 사용하지 않고 Azure Backup에 의해 매일 백업됩니다.
VM1이 데이터를 암호화하는 랜섬웨어의 영향을 받습니다.
VM1의 최신 백업을 복원해야 합니다.

질문: 백업을 어느 위치로 복원할 수 있습니까?

복원 옵션
정답
정답

📚 해설

VM 백업 복원 옵션:

첫 번째 옵션: 새 VM 생성

  • Azure Backup은 백업 데이터로부터 새로운 VM을 생성할 수 있습니다.
  • 랜섬웨어로 감염된 원본 VM과 별도로 깨끗한 VM을 생성합니다.

두 번째 옵션: 기존 VM 디스크 교체

  • 기존 VM의 디스크를 백업된 디스크로 교체할 수 있습니다.
  • VM 구성은 유지하면서 디스크만 복원된 것으로 교체합니다.

세 번째 옵션: 디스크만 복원

  • 백업에서 디스크만 복원하여 별도 관리할 수 있습니다.
  • 필요에 따라 나중에 이 디스크를 사용하여 VM을 생성할 수 있습니다.
문제 61 Azure Backup Pre-Check

VM1이라는 Azure 가상 머신을 백업할 계획입니다.
Backup Pre-Check 상태에 Warning 상태가 표시되는 것을 발견합니다.

질문: Warning 상태의 가능한 원인은 무엇입니까?

A. VM1이 중지되었습니다.
B. VM1에 최신 버전의 Azure VM Agent(WaAppAgent.exe)가 설치되어 있지 않습니다.
C. VM1에 관리되지 않는 디스크가 있습니다.
D. Recovery Services 자격 증명 모음을 사용할 수 없습니다.
정답: B. VM1에 최신 버전의 Azure VM Agent(WaAppAgent.exe)가 설치되어 있지 않습니다.

📚 해설

왜 B가 정답인가:

  • Azure VM Agent는 백업 작업에 필수적인 구성 요소입니다.
  • 오래된 VM Agent 버전은 백업 기능과 호환성 문제를 일으킬 수 있습니다.
  • Warning 상태는 백업이 가능하지만 최적이 아닌 상태를 나타냅니다.

Azure VM Agent의 역할:

  • 백업 확장 프로그램과 상호 작용
  • VM 내부에서 백업 작업 조정
  • 스냅샷 생성 및 관리

다른 옵션이 틀린 이유:

  • A: VM이 중지되어도 백업 가능 (Error가 아닌 Warning)
  • C: 관리되지 않는 디스크도 백업 가능
  • D: 자격 증명 모음이 없으면 Error 상태
문제 62 Virtual Machine Maintenance

시리즈 문제 알림: 이 문제는 동일한 시나리오를 제시하는 일련의 질문 중 일부입니다. 각 질문에는 명시된 목표를 충족할 수 있는 고유한 솔루션이 포함되어 있습니다. 일부 질문 세트에는 올바른 솔루션이 두 개 이상 있을 수 있고, 다른 질문 세트에는 올바른 솔루션이 없을 수도 있습니다.

VM1이라는 Azure 가상 머신이 있습니다. VM1은 ARM1.json이라는 사용자 지정 Azure Resource Manager 템플릿을 사용하여 배포되었습니다.
VM1이 유지 관리의 영향을 받을 것이라는 알림을 받았습니다.
VM1을 즉시 다른 호스트로 이동해야 합니다.

솔루션: 개요 블레이드에서 가상 머신을 다른 리소스 그룹으로 이동합니다.

질문: 이것이 목표를 충족합니까?

A. 예
B. 아니오
정답: B. 아니오

📚 해설

왜 B가 정답인가:

  • 리소스 그룹 이동은 VM을 다른 물리적 호스트로 이동시키지 않습니다.
  • 리소스 그룹 이동은 단순히 Azure 리소스 관리 계층의 논리적 이동입니다.
  • VM을 다른 호스트로 이동하려면 VM을 중지했다가 다시 시작해야 합니다.

올바른 솔루션:

  • VM 재시작: VM을 중지하고 다시 시작
  • VM 재배포: Azure Portal에서 "재배포" 옵션 사용
  • VM 이동: 다른 지역이나 가용성 영역으로 이동

유지 관리 시나리오:

  • Azure는 때때로 물리적 호스트 유지 관리를 수행합니다.
  • 계획된 유지 관리 알림을 받으면 미리 대응할 수 있습니다.
문제 63 Azure Import/Export

Subscription1이라는 Azure 구독이 있습니다.

Subscription1으로 전송해야 하는 5TB의 데이터가 있습니다.

Azure Import/Export 작업을 사용할 계획입니다.

질문: 가져온 데이터의 대상으로 무엇을 사용할 수 있습니까?

A. Azure Cosmos DB 데이터베이스
B. Azure Data Lake Store
C. Azure Blob storage
D. Azure Data Factory
정답: C. Azure Blob storage

📚 해설

왜 C가 정답인가:

  • Azure Import/Export 서비스는 Azure Blob Storage와 Azure Files만 지원합니다.
  • 5TB와 같은 대용량 데이터를 물리적 디스크를 통해 전송할 때 사용합니다.
  • 인터넷 업로드보다 빠르고 비용 효율적인 방법입니다.

Azure Import/Export 지원 대상:

  • Import: Azure Blob Storage, Azure Files
  • Export: Azure Blob Storage만 지원

다른 옵션이 틀린 이유:

  • A: Cosmos DB는 Import/Export 서비스 미지원
  • B: Data Lake Store는 Import/Export 서비스 미지원
  • D: Data Factory는 데이터 통합 서비스이지 저장소가 아님

사용 시나리오:

  • 대용량 데이터 마이그레이션
  • 느린 인터넷 연결 환경
  • 비용 절약이 필요한 경우
문제 64 Azure Monitor Alerts

시리즈 문제 알림: 이 문제는 동일한 시나리오를 제시하는 일련의 질문 중 일부입니다. 각 질문에는 명시된 목표를 충족할 수 있는 고유한 솔루션이 포함되어 있습니다.

Windows Server 2016을 실행하는 VM1이라는 Azure 가상 머신이 있습니다.
VM1에서 1시간 내에 시스템 이벤트 로그에 2개 이상의 오류 이벤트가 기록될 때 Azure에서 알림을 생성해야 합니다.

솔루션: Azure Log Analytics 작업 영역을 만들고 Agent 구성 설정을 구성합니다. VM1에 Microsoft Monitoring Agent를 설치합니다. Azure Monitor에서 알림을 만들고 Log Analytics 작업 영역을 소스로 지정합니다.

질문: 이것이 목표를 충족합니까?

A. 예
B. 아니오
정답: A. 예

📚 해설

왜 A가 정답인가:

  • VM1이 West US 지역에 있으므로 NIC2도 같은 지역에 생성되어야 합니다.
  • 리소스 그룹(RG1)은 네트워크 인터페이스를 생성할 수 있는 유효한 위치입니다.
  • VM과 동일한 지역에 있으면 네트워크 인터페이스를 VM에 연결할 수 있습니다.

네트워크 인터페이스 요구사항:

  • 지역 일치: VM과 동일한 Azure 지역
  • 가상 네트워크: 동일한 VNet 또는 피어링된 VNet
  • 구독: 동일한 구독 내

다중 NIC 시나리오:

  • VM 크기가 다중 NIC를 지원해야 함
  • 각 NIC는 서로 다른 서브넷에 연결 가능
  • 네트워크 격리 및 보안 강화에 사용
문제 75 Network Interface

시리즈 문제 알림: 이 문제는 동일한 시나리오를 제시하는 일련의 질문 중 일부입니다.

다음 표에 표시된 리소스가 포함된 Subscription1이라는 Azure 구독이 있습니다.

리소스 표

Subscription1에는 VNET2라는 가상 네트워크도 포함됩니다. VM1은 NIC1이라는 네트워크 인터페이스를 사용하여 VNET2에 연결됩니다.
VM1용 NIC2라는 새 네트워크 인터페이스를 만들어야 합니다.

솔루션: RG2와 Central US에서 NIC2를 만듭니다.

질문: 이것이 목표를 충족합니까?

A. 예
B. 아니오
정답: B. 아니오

📚 해설

왜 B가 정답인가:

  • VM1이 West US에 있는데 NIC2를 Central US에 생성하려고 합니다.
  • 네트워크 인터페이스는 VM과 동일한 Azure 지역에 있어야 합니다.
  • 지역이 다르면 NIC를 VM에 연결할 수 없습니다.

Azure 지역 제약사항:

  • VM과 NIC: 반드시 동일한 지역
  • VNet과 NIC: 동일한 지역 내 VNet에 연결
  • 크로스 리전: 직접 연결 불가능

리소스 그룹 vs 지역:

  • 리소스 그룹(RG2)은 다른 그룹이어도 상관없음
  • 하지만 지역(Central US vs West US)은 일치해야 함
  • 리소스 그룹은 논리적 컨테이너일 뿐
문제 76 Network Interface

시리즈 문제 알림: 이 문제는 동일한 시나리오를 제시하는 일련의 질문 중 일부입니다.

다음 표에 표시된 리소스가 포함된 Subscription1이라는 Azure 구독이 있습니다.

리소스 표

Subscription1에는 VNET2라는 가상 네트워크도 포함됩니다. VM1은 NIC1이라는 네트워크 인터페이스를 사용하여 VNET2에 연결됩니다.
VM1용 NIC2라는 새 네트워크 인터페이스를 만들어야 합니다.

솔루션: RG2와 West US에서 NIC2를 만듭니다.

질문: 이것이 목표를 충족합니까?

A. 예
B. 아니오
정답: A. 예

📚 해설

왜 A가 정답인가:

  • VM1과 NIC2가 모두 West US 지역에 있으므로 연결이 가능합니다.
  • 다른 리소스 그룹(RG2)에 있어도 같은 구독 내이므로 문제없습니다.
  • 지역이 일치하는 것이 가장 중요한 요구사항입니다.

리소스 그룹 독립성:

  • 리소스 그룹은 관리 및 청구 단위일 뿐
  • 다른 RG의 리소스 간 연결 가능
  • 동일 구독 내에서는 자유로운 참조 가능

네트워크 인터페이스 생성 후:

  1. VM 중지
  2. NIC2를 VM에 연결
  3. 네트워크 설정 구성
  4. VM 시작

다중 NIC 활용:

  • 프론트엔드/백엔드 네트워크 분리
  • 관리 네트워크 분리
  • 고가용성 구성
문제 77 ARM Template Deployment

리소스 그룹을 만들고 리소스 그룹에 Azure Storage 계정을 배포하기 위해 다음 ARM(Azure Resource Manager) 템플릿을 개발합니다.

ARM 템플릿

질문: 템플릿을 배포하려면 어떤 cmdlet을 실행해야 합니까?

A. New-AzResource
B. New-AzResourceGroupDeployment
C. New-AzTenantDeployment
D. New-AzDeployment
정답: D. New-AzDeployment

📚 해설

왜 D가 정답인가:

  • 템플릿이 리소스 그룹을 생성하므로 구독 수준 배포가 필요합니다.
  • New-AzDeployment는 구독 수준에서 ARM 템플릿을 배포하는 cmdlet입니다.
  • 리소스 그룹 자체를 생성하는 템플릿은 구독 범위에서 실행되어야 합니다.

ARM 배포 범위별 cmdlet:

  • 구독 수준: New-AzDeployment
  • 리소스 그룹 수준: New-AzResourceGroupDeployment
  • 관리 그룹 수준: New-AzManagementGroupDeployment
  • 테넌트 수준: New-AzTenantDeployment

다른 옵션이 틀린 이유:

  • A: 단일 리소스 생성용
  • B: 기존 리소스 그룹 내 배포용
  • C: 테넌트 전체 배포용

템플릿 특징:

  • targetScope가 "subscription"으로 설정됨
  • 리소스 그룹 생성 후 Storage 계정 생성
문제 78 App Service Backup

HOTSPOT - Folder1과 Folder2라는 두 개의 폴더가 포함된 WebApp1이라는 Azure App Service 앱이 있습니다.
WebApp1의 일일 백업을 구성해야 합니다. 솔루션은 Folder2가 백업에서 제외되도록 해야 합니다.
먼저 무엇을 만들어야 하고, Folder2를 제외하려면 무엇을 사용해야 합니까?

백업 옵션
정답
정답

📚 해설

Box 1: Azure Storage 계정

  • App Service 백업은 Azure Storage 계정을 대상으로 합니다.
  • 백업 데이터는 Storage 계정의 컨테이너에 저장됩니다.
  • 앱과 동일한 구독의 Storage 계정이어야 합니다.

Box 2: _backup.filter 파일

  • 백업에서 파일과 폴더를 제외하는 데 사용되는 특수 파일입니다.
  • D:\home\site\wwwroot 폴더에 생성해야 합니다.
  • 제외할 파일과 폴더 목록을 이 파일에 지정합니다.

App Service 백업 구성 요소:

  • 앱 구성: 설정 및 연결 문자열
  • 파일 콘텐츠: 웹앱 파일 시스템
  • 연결된 데이터베이스: SQL Database 등

_backup.filter 파일 예시:

\Folder2\
\logs\*.log
\temp\*
문제 79 Virtual Machine Extensions

Azure Resource Manager 템플릿을 사용하여 가상 머신 스케일 셋에서 Windows Server 2019를 실행하는 여러 Azure 가상 머신을 배포할 계획입니다.
배포 후 모든 가상 머신에서 NGINX를 사용할 수 있도록 해야 합니다.

질문: 무엇을 사용해야 합니까?

A. Publish-AzVMDscConfiguration cmdlet
B. Azure Application Insights
C. Azure Custom Script Extension
D. Microsoft Endpoint Manager 장치 구성 프로필
정답: C. Azure Custom Script Extension

📚 해설

왜 C가 정답인가:

  • Custom Script Extension은 VM 배포 후 스크립트를 실행하는 표준 방법입니다.
  • NGINX 설치와 같은 소프트웨어 설치 작업에 적합합니다.
  • ARM 템플릿에서 직접 정의하여 자동화할 수 있습니다.
  • 가상 머신 스케일 셋의 모든 인스턴스에 동일하게 적용됩니다.

Custom Script Extension 장점:

  • 유연성: PowerShell, Bash 스크립트 실행 가능
  • 자동화: VM 생성과 동시에 실행
  • 확장성: 스케일 셋의 모든 인스턴스에 적용
  • 통합성: ARM 템플릿에 포함 가능

다른 옵션이 틀린 이유:

  • A: DSC 구성 게시용 cmdlet이지 직접 설치용이 아님
  • B: 애플리케이션 모니터링 서비스
  • D: 모바일 장치 관리 솔루션

ARM 템플릿 예시:

{
  "type": "Microsoft.Compute/virtualMachineScaleSets/extensions",
  "properties": {
    "publisher": "Microsoft.Compute",
    "type": "CustomScriptExtension",
    "settings": {
      "commandToExecute": "powershell.exe Install-NGINX.ps1"
    }
  }
}
문제 80 Domain Join Extension

HOTSPOT - Azure 구독이 있습니다. 구독에는 Windows 10을 실행하는 가상 머신이 포함되어 있습니다.
가상 머신을 Active Directory 도메인에 가입시켜야 합니다.
ARM(Azure Resource Manager) 템플릿을 어떻게 완성해야 합니까?

ARM 템플릿
정답
정답

📚 해설

Box 1: "Microsoft.Compute/VirtualMachines/extensions"

  • VM 확장을 정의하는 ARM 리소스 유형입니다.
  • 도메인 가입 확장을 VM에 추가하는 데 사용됩니다.

Box 2: "ProtectedSettings"

  • 민감한 정보(비밀번호 등)를 안전하게 전달하는 섹션입니다.
  • 도메인 가입에 필요한 계정 비밀번호를 포함합니다.
  • 암호화되어 저장되고 전송됩니다.

도메인 가입 확장 구성:

{
  "type": "Microsoft.Compute/virtualMachines/extensions",
  "properties": {
    "publisher": "Microsoft.Compute",
    "type": "JsonADDomainExtension",
    "settings": {
      "Name": "contoso.com",
      "User": "contoso\\admin",
      "Restart": "true"
    },
    "protectedSettings": {
      "Password": "AdminPassword123"
    }
  }
}

보안 고려사항:

  • 비밀번호는 반드시 protectedSettings에 배치
  • Key Vault 참조를 통한 보안 강화 권장
  • 최소 권한 원칙에 따른 도메인 계정 사용
문제 81 Availability Set Scaling

AVSet1이라는 가용성 집합에 있는 VM1, VM2, VM3라는 세 개의 가상 머신이 포함된 Azure 구독이 있습니다.

VM1을 새 가상 머신 크기로 확장해야 하지만 의도한 크기를 사용할 수 없습니다.

질문: 먼저 무엇을 해야 합니까?

A. 근접 배치 그룹을 만듭니다.
B. VM1을 할당 해제합니다.
C. AvSet1을 관리되는 가용성 집합으로 변환합니다.
D. VM2와 VM3를 종료합니다.
정답: B. VM1을 할당 해제합니다.

📚 해설

왜 B가 정답인가:

  • 가용성 집합 내에서 VM 크기를 변경하려면 VM을 할당 해제해야 합니다.
  • 할당 해제하면 VM이 다른 물리적 호스트로 이동할 수 있어 더 많은 크기 옵션이 제공됩니다.
  • VM이 실행 중일 때는 현재 호스트에서 지원하는 크기로만 제한됩니다.

가용성 집합 VM 크기 조정 과정:

  1. VM 할당 해제: Stop-AzVM -Deallocate
  2. VM 크기 변경: 사용 가능한 크기 중 선택
  3. VM 시작: 새로운 크기로 부팅

다른 옵션이 틀린 이유:

  • A: 근접 배치 그룹은 크기 제한과 관련 없음
  • C: 관리되는 가용성 집합 변환은 크기 문제 해결과 무관
  • D: 다른 VM 종료는 필요 없음

가용성 집합 특징:

  • 동일한 하드웨어 클러스터 내 배치
  • 장애 도메인과 업데이트 도메인으로 분산
  • 하드웨어 제약으로 인한 크기 제한 존재

🎉 문제집 완료!

총 81문제의 AZ-104 Microsoft Azure Administrator 시험 대비 문제를 완료했습니다.

구성 단계:

  1. Log Analytics 작업 영역 생성
  2. Agent 구성: Windows 이벤트 로그 수집 설정
  3. MMA 설치: VM에 에이전트 설치 및 연결
  4. 알림 규칙 생성: Kusto 쿼리로 조건 설정

예시 Kusto 쿼리:

Event
| where EventLevelName == "Error" 
| where TimeGenerated > ago(1h)
| summarize count() by Computer
| where count_ > 2
문제 65 Virtual Machine Scale Sets Autoscaling

HOTSPOT - Azure 구독이 있습니다.
다음 전시와 같이 구성된 가상 머신 스케일 셋을 배포합니다.

스케일 셋 구성

그래픽에 제시된 정보를 바탕으로 각 질문에 답하는 답안 선택지를 선택하세요.

질문 옵션
정답
정답

📚 해설

자동 스케일링 규칙 분석:

첫 번째 질문: 최대 인스턴스 수

  • 스케일 셋의 최대 인스턴스 제한에 따라 결정됩니다.
  • 자동 스케일링 규칙의 최대값이 적용됩니다.

두 번째 질문: 최소 인스턴스 수

  • 스케일 인 조건이 충족되어도 최소 인스턴스 수는 유지됩니다.
  • 스케일 셋의 최소 인스턴스 설정이 적용됩니다.

자동 스케일링 고려 사항:

  • 쿨다운 시간: 스케일링 작업 간 대기 시간
  • 메트릭 임계값: CPU, 메모리 등의 조건
  • 인스턴스 제한: 최소/최대 인스턴스 수
문제 66 App Service Plans

West US, Central US, East US Azure 지역에 웹앱이 있습니다.
다음 표에 표시된 App Service 계획이 있습니다.

App Service 계획 표

Linux 운영 체제를 사용할 ASP5라는 추가 App Service 계획을 만들 계획입니다.
현재 사용 중인 위치 중 ASP5를 배포할 수 있는 위치를 식별해야 합니다.

질문: 무엇을 권장해야 합니까?

A. West US, Central US 또는 East US
B. Central US만
C. East US만
D. West US만
정답: A. West US, Central US 또는 East US

📚 해설

왜 A가 정답인가:

  • App Service 계획의 운영 체제는 지역별로 제한되지 않습니다.
  • Linux와 Windows App Service 계획은 모든 Azure 지역에서 지원됩니다.
  • 기존 Windows App Service 계획이 있는 지역에 Linux App Service 계획도 생성할 수 있습니다.

App Service 계획 운영 체제:

  • 동일 리소스 그룹 내: Windows와 Linux 계획 혼재 가능
  • 동일 App Service 계획 내: 하나의 운영 체제만 가능
  • 지역 지원: 모든 주요 Azure 지역에서 Linux 지원

고려 사항:

  • 리소스 그룹당 운영 체제 제한 없음
  • 가격 계층에 따른 기능 차이 존재
  • Linux 계획은 컨테이너 기반 앱 지원
문제 67 Virtual Machine Scale Sets

Azure Resource Manager 템플릿을 사용하여 가상 머신 스케일 셋에서 Windows Server 2019를 실행하는 여러 Azure 가상 머신을 배포할 계획입니다.
배포 후 모든 가상 머신에서 NGINX를 사용할 수 있도록 해야 합니다.

질문: 무엇을 사용해야 합니까?

A. New-AzConfigurationAssignment cmdlet
B. DSC(Desired State Configuration) 확장
C. Azure Active Directory (Azure AD) Application Proxy
D. Azure Application Insights
정답: B. DSC(Desired State Configuration) 확장

📚 해설

왜 B가 정답인가:

  • DSC 확장은 VM에 소프트웨어를 설치하고 구성하는 표준 방법입니다.
  • 가상 머신 스케일 셋의 모든 인스턴스에 일관되게 NGINX를 설치할 수 있습니다.
  • ARM 템플릿에서 DSC 확장을 정의하여 자동화할 수 있습니다.

DSC 확장 장점:

  • 선언적 구성: 원하는 상태를 정의
  • 일관성: 모든 인스턴스에 동일한 구성 적용
  • 자동 복구: 구성이 변경되면 자동으로 복원
  • 템플릿 통합: ARM 템플릿에서 직접 정의 가능

다른 옵션이 틀린 이유:

  • A: Azure Policy 구성용 cmdlet
  • C: 온프레미스 애플리케이션 접근용 프록시
  • D: 애플리케이션 성능 모니터링 서비스
문제 68 ARM Template Deployment

HOTSPOT - 다음 표에 표시된 리소스가 포함된 Azure 구독이 있습니다.

리소스 표

Azure Cloud Shell에서 ARM(Azure Resource Manager) 템플릿을 사용하여 가상 머신을 만들어야 합니다.
명령을 어떻게 완성해야 합니까?

명령 옵션
정답
정답

📚 해설

ARM 템플릿 배포 명령어:

첫 번째 선택: New-AzResourceGroupDeployment

  • 리소스 그룹 수준에서 ARM 템플릿을 배포하는 PowerShell cmdlet입니다.
  • VM과 같은 리소스는 일반적으로 리소스 그룹 수준에서 배포됩니다.

두 번째 선택: -ResourceGroupName

  • 배포할 대상 리소스 그룹을 지정하는 매개변수입니다.
  • 표에서 제공된 RG1을 리소스 그룹으로 사용해야 합니다.

세 번째 선택: -TemplateFile

  • 배포할 ARM 템플릿 파일의 경로를 지정합니다.
  • 로컬 파일이나 URI를 지정할 수 있습니다.

전체 명령어 예시:

New-AzResourceGroupDeployment -ResourceGroupName RG1 -TemplateFile template.json
문제 69 Azure Kubernetes Service

시리즈 문제 알림: 이 문제는 동일한 시나리오를 제시하는 일련의 질문 중 일부입니다. 각 질문에는 명시된 목표를 충족할 수 있는 고유한 솔루션이 포함되어 있습니다.

AKS1이라는 Azure Kubernetes Service(AKS) 클러스터를 배포합니다.
AKS1에 YAML 파일을 배포해야 합니다.

솔루션: Azure Cloud Shell에서 az aks를 실행합니다.

질문: 이것이 목표를 충족합니까?

A. 예
B. 아니오
정답: B. 아니오

📚 해설

왜 B가 정답인가:

  • az aks 명령어는 AKS 클러스터 자체를 관리하는 명령어입니다.
  • YAML 파일을 Kubernetes 클러스터에 배포하려면 kubectl 명령어를 사용해야 합니다.
  • az aks는 클러스터 생성, 업그레이드, 삭제 등의 관리 작업에 사용됩니다.

올바른 명령어:

  • kubectl apply -f your-file.yaml - YAML 파일 배포
  • kubectl create -f your-file.yaml - 새 리소스 생성
  • kubectl get credentials - 클러스터 자격 증명 가져오기

az aks vs kubectl:

  • az aks: AKS 클러스터 관리 (Azure 수준)
  • kubectl: Kubernetes 리소스 관리 (클러스터 내부)

배포 과정:

  1. az aks get-credentials - 클러스터 연결
  2. kubectl apply -f deployment.yaml - YAML 배포
문제 70 Azure Monitor

시리즈 문제 알림: 이 문제는 동일한 시나리오를 제시하는 일련의 질문 중 일부입니다.

Windows Server 2016을 실행하는 VM1이라는 Azure 가상 머신이 있습니다.
VM1에서 1시간 내에 시스템 이벤트 로그에 2개 이상의 오류 이벤트가 기록될 때 Azure에서 알림을 생성해야 합니다.

솔루션: Azure Log Analytics 작업 영역을 만들고 데이터 설정을 구성합니다. VM1에 Microsoft Monitoring Agent VM 확장을 추가합니다. Azure Monitor에서 알림을 만들고 Log Analytics 작업 영역을 소스로 지정합니다.

질문: 이것이 목표를 충족합니까?

A. 예
B. 아니오
정답: B. 아니오

📚 해설

왜 B가 정답인가:

  • VM 확장으로 Microsoft Monitoring Agent를 추가하는 것은 올바르지만 추가 구성이 필요합니다.
  • 데이터 설정 구성만으로는 충분하지 않으며, Agent 구성 설정도 필요합니다.
  • Windows 이벤트 로그 수집을 명시적으로 활성화해야 합니다.

올바른 솔루션:

  1. Log Analytics 작업 영역 생성
  2. Agent 구성: Windows 이벤트 로그 수집 설정
  3. MMA 설치: VM에 직접 설치 또는 VM 확장 사용
  4. 데이터 소스 구성: 시스템 이벤트 로그 활성화
  5. 알림 규칙 생성

누락된 부분:

  • Windows 이벤트 로그 데이터 소스 활성화
  • 시스템 이벤트 로그 특정 구성
  • 오류 레벨 이벤트 필터링 설정
문제 71 Azure Monitor

시리즈 문제 알림: 이 문제는 동일한 시나리오를 제시하는 일련의 질문 중 일부입니다.

Windows Server 2016을 실행하는 VM1이라는 Azure 가상 머신이 있습니다.
VM1에서 1시간 내에 시스템 이벤트 로그에 2개 이상의 오류 이벤트가 기록될 때 Azure에서 알림을 생성해야 합니다.

솔루션: Azure Log Analytics 작업 영역을 만들고 데이터 설정을 구성합니다. VM1에 Microsoft Monitoring Agent를 설치합니다. Azure Monitor에서 알림을 만들고 Log Analytics 작업 영역을 소스로 지정합니다.

질문: 이것이 목표를 충족합니까?

A. 예
B. 아니오
정답: A. 예

📚 해설

왜 A가 정답인가:

  • 모든 필수 구성 요소가 포함되어 있습니다.
  • Log Analytics 작업 영역과 데이터 설정 구성으로 이벤트 로그 수집이 가능합니다.
  • Microsoft Monitoring Agent가 VM에 직접 설치되어 안정적인 데이터 전송을 보장합니다.
  • Azure Monitor 알림이 Log Analytics를 소스로 사용하여 정확한 모니터링이 가능합니다.

완전한 솔루션 구성:

  1. Log Analytics 작업 영역: 이벤트 데이터 저장소
  2. 데이터 설정 구성: Windows 이벤트 로그 수집 활성화
  3. MMA 직접 설치: VM에 안정적인 에이전트 설치
  4. 알림 규칙: 조건 기반 알림 생성

알림 쿼리 예시:

Event
| where EventLevelName == "Error" 
| where TimeGenerated > ago(1h)
| where EventLog == "System"
| summarize count() by Computer
| where count_ > 2
문제 72 Azure Backup Agent

다음 표에 표시된 리소스가 포함된 Azure 구독이 있습니다.

리소스 표

모든 가상 머신은 Windows Server 2016을 실행합니다.
VM1에서 다음 전시와 같이 Folder1이라는 폴더를 백업합니다.

폴더 백업

백업을 다른 가상 머신으로 복원할 계획입니다.
VM2로 백업을 복원해야 합니다.

질문: 먼저 무엇을 해야 합니까?

A. VM1에서 Windows Server Backup 기능을 설치
B. VM2에서 Microsoft Azure Recovery Services Agent를 설치
C. VM1에서 Microsoft Azure Recovery Services Agent를 설치
D. VM2에서 Windows Server Backup 기능을 설치
정답: B. VM2에서 Microsoft Azure Recovery Services Agent를 설치

📚 해설

왜 B가 정답인가:

  • Azure Recovery Services Agent(MARS)는 백업 데이터를 복원하는 데 필요한 에이전트입니다.
  • 복원 대상 VM(VM2)에 MARS 에이전트가 설치되어야 합니다.
  • 같은 Recovery Services 자격 증명 모음에 등록되어야 백업 데이터에 접근할 수 있습니다.

MARS 에이전트 복원 과정:

  1. VM2에 MARS 에이전트 설치
  2. 자격 증명 모음에 VM2 등록
  3. 백업 항목에서 복원 지점 선택
  4. VM2의 원하는 위치로 복원

다른 옵션이 틀린 이유:

  • A, D: Windows Server Backup은 로컬 백업용이며 Azure 백업과 관련 없음
  • C: VM1에는 이미 MARS 에이전트가 설치되어 있음

참고: VM1에서 폴더 수준 백업이 수행된 것으로 보아 MARS 에이전트를 사용한 백업입니다.

문제 73 ARM Template Data Disks

HOTSPOT - Azure 구독이 있습니다.
여러 데이터 디스크를 갖는 가상 머신을 만들기 위해 ARM(Azure Resource Manager) 템플릿을 사용해야 합니다.
템플릿을 어떻게 완성해야 합니까?

ARM 템플릿
정답
정답

📚 해설

ARM 템플릿 데이터 디스크 구성:

첫 번째 박스: dataDisks

  • VM의 storageProfile 섹션에서 데이터 디스크를 정의하는 속성입니다.
  • osDisk와 구별되는 추가 저장소 디스크를 정의합니다.

두 번째 박스: lun

  • Logical Unit Number의 약자로 각 데이터 디스크의 고유 식별자입니다.
  • 0부터 시작하여 순차적으로 할당됩니다.
  • VM 내에서 디스크를 식별하는 데 사용됩니다.

세 번째 박스: createOption

  • 디스크 생성 방법을 지정하는 속성입니다.
  • 일반적인 값: "Empty", "FromImage", "Attach"
  • 새 데이터 디스크의 경우 "Empty"를 사용합니다.

데이터 디스크 배열 예시:

"dataDisks": [
  {
    "lun": 0,
    "createOption": "Empty",
    "diskSizeGB": 128
  },
  {
    "lun": 1,
    "createOption": "Empty", 
    "diskSizeGB": 256
  }
]
문제 74 Network Interface

시리즈 문제 알림: 이 문제는 동일한 시나리오를 제시하는 일련의 질문 중 일부입니다.

다음 표에 표시된 리소스가 포함된 Subscription1이라는 Azure 구독이 있습니다.

리소스 표

Subscription1에는 VNET2라는 가상 네트워크도 포함됩니다. VM1은 NIC1이라는 네트워크 인터페이스를 사용하여 VNET2에 연결됩니다.
VM1용 NIC2라는 새 네트워크 인터페이스를 만들어야 합니다.

솔루션: RG1과 West US에서 NIC2를 만듭니다.

질문: 이것이 목표를 충족합니까?

A. 예
B. 아니오
정답: A. 예

📚 해설

왜 A가 정답인가:

  • VM1이 West US 지역에 있으므로 NIC2도 같은 지역에 생성되어야 합니다.
  • 리소스 그룹(RG1)은 네트워크 인터페이스를 생성할 수 있는 유효한 위치입니다.
  • VM과 동일한 지역에 있으면 네트워크 인터페이스를 VM에 연결할 수 있습니다.

네트워크 인터페이스 요구사항:

  • 지역 일치: VM과 동일한 Azure 지역
  • 가상 네트워크: 동일한 VNet 또는 피어링된 VNet
  • 구독: 동일한 구독 내

네트워크 인터페이스 생성 후:

  1. VM 중지
  2. NIC2를 VM에 연결
  3. 네트워크 설정 구성
  4. VM 시작

다중 NIC 활용:

  • 프론트엔드/백엔드 네트워크 분리
  • 관리 네트워크 분리
  • 고가용성 구성
문제 75 Network Interface

시리즈 문제 알림: 이 문제는 동일한 시나리오를 제시하는 일련의 질문 중 일부입니다.

다음 표에 표시된 리소스가 포함된 Subscription1이라는 Azure 구독이 있습니다.

리소스 표

Subscription1에는 VNET2라는 가상 네트워크도 포함됩니다. VM1은 NIC1이라는 네트워크 인터페이스를 사용하여 VNET2에 연결됩니다.
VM1용 NIC2라는 새 네트워크 인터페이스를 만들어야 합니다.

솔루션: RG2와 Central US에서 NIC2를 만듭니다.

질문: 이것이 목표를 충족합니까?

A. 예
B. 아니오
정답: B. 아니오

📚 해설

왜 B가 정답인가:

  • VM1이 West US에 있는데 NIC2를 Central US에 생성하려고 합니다.
  • 네트워크 인터페이스는 VM과 동일한 Azure 지역에 있어야 합니다.
  • 지역이 다르면 NIC를 VM에 연결할 수 없습니다.

Azure 지역 제약사항:

  • VM과 NIC: 반드시 동일한 지역
  • VNet과 NIC: 동일한 지역 내 VNet에 연결
  • 크로스 리전: 직접 연결 불가능

리소스 그룹 vs 지역:

  • 리소스 그룹(RG2)은 다른 그룹이어도 상관없음
  • 하지만 지역(Central US vs West US)은 일치해야 함
  • 리소스 그룹은 논리적 컨테이너일 뿐
문제 76 Network Interface

시리즈 문제 알림: 이 문제는 동일한 시나리오를 제시하는 일련의 질문 중 일부입니다.

다음 표에 표시된 리소스가 포함된 Subscription1이라는 Azure 구독이 있습니다.

리소스 표

Subscription1에는 VNET2라는 가상 네트워크도 포함됩니다. VM1은 NIC1이라는 네트워크 인터페이스를 사용하여 VNET2에 연결됩니다.
VM1용 NIC2라는 새 네트워크 인터페이스를 만들어야 합니다.

솔루션: RG2와 West US에서 NIC2를 만듭니다.

질문: 이것이 목표를 충족합니까?

A. 예
B. 아니오
정답: A. 예

📚 해설

왜 A가 정답인가:

  • VM1과 NIC2가 모두 West US 지역에 있으므로 연결이 가능합니다.
  • 다른 리소스 그룹(RG2)에 있어도 같은 구독 내이므로 문제없습니다.
  • 지역이 일치하는 것이 가장 중요한 요구사항입니다.

리소스 그룹 독립성:

  • 리소스 그룹은 관리 및 청구 단위일 뿐
  • 다른 RG의 리소스 간 연결 가능
  • 동일 구독 내에서는 자유로운 참조 가능
문제 77 ARM Template Deployment

리소스 그룹을 만들고 리소스 그룹에 Azure Storage 계정을 배포하기 위해 다음 ARM(Azure Resource Manager) 템플릿을 개발합니다.

ARM 템플릿

질문: 템플릿을 배포하려면 어떤 cmdlet을 실행해야 합니까?

A. New-AzResource
B. New-AzResourceGroupDeployment
C. New-AzTenantDeployment
D. New-AzDeployment
정답: D. New-AzDeployment

📚 해설

왜 D가 정답인가:

  • 템플릿이 리소스 그룹을 생성하므로 구독 수준 배포가 필요합니다.
  • New-AzDeployment는 구독 수준에서 ARM 템플릿을 배포하는 cmdlet입니다.
  • 리소스 그룹 자체를 생성하는 템플릿은 구독 범위에서 실행되어야 합니다.

ARM 배포 범위별 cmdlet:

  • 구독 수준: New-AzDeployment
  • 리소스 그룹 수준: New-AzResourceGroupDeployment
  • 관리 그룹 수준: New-AzManagementGroupDeployment
  • 테넌트 수준: New-AzTenantDeployment

다른 옵션이 틀린 이유:

  • A: 단일 리소스 생성용
  • B: 기존 리소스 그룹 내 배포용
  • C: 테넌트 전체 배포용

템플릿 특징:

  • targetScope가 "subscription"으로 설정됨
  • 리소스 그룹 생성 후 Storage 계정 생성
문제 78 App Service Backup

HOTSPOT - Folder1과 Folder2라는 두 개의 폴더가 포함된 WebApp1이라는 Azure App Service 앱이 있습니다.
WebApp1의 일일 백업을 구성해야 합니다. 솔루션은 Folder2가 백업에서 제외되도록 해야 합니다.
먼저 무엇을 만들어야 하고, Folder2를 제외하려면 무엇을 사용해야 합니까?

백업 옵션
정답
정답

📚 해설

Box 1: Azure Storage 계정

  • App Service 백업은 Azure Storage 계정을 대상으로 합니다.
  • 백업 데이터는 Storage 계정의 컨테이너에 저장됩니다.
  • 앱과 동일한 구독의 Storage 계정이어야 합니다.

Box 2: _backup.filter 파일

  • 백업에서 파일과 폴더를 제외하는 데 사용되는 특수 파일입니다.
  • D:\home\site\wwwroot 폴더에 생성해야 합니다.
  • 제외할 파일과 폴더 목록을 이 파일에 지정합니다.

App Service 백업 구성 요소:

  • 앱 구성: 설정 및 연결 문자열
  • 파일 콘텐츠: 웹앱 파일 시스템
  • 연결된 데이터베이스: SQL Database 등

_backup.filter 파일 예시:

\Folder2\
\logs\*.log
\temp\*
문제 79 Virtual Machine Extensions

Azure Resource Manager 템플릿을 사용하여 가상 머신 스케일 셋에서 Windows Server 2019를 실행하는 여러 Azure 가상 머신을 배포할 계획입니다.
배포 후 모든 가상 머신에서 NGINX를 사용할 수 있도록 해야 합니다.

질문: 무엇을 사용해야 합니까?

A. Publish-AzVMDscConfiguration cmdlet
B. Azure Application Insights
C. Azure Custom Script Extension
D. Microsoft Endpoint Manager 장치 구성 프로필
정답: C. Azure Custom Script Extension

📚 해설

왜 C가 정답인가:

  • Custom Script Extension은 VM 배포 후 스크립트를 실행하는 표준 방법입니다.
  • NGINX 설치와 같은 소프트웨어 설치 작업에 적합합니다.
  • ARM 템플릿에서 직접 정의하여 자동화할 수 있습니다.
  • 가상 머신 스케일 셋의 모든 인스턴스에 동일하게 적용됩니다.

Custom Script Extension 장점:

  • 유연성: PowerShell, Bash 스크립트 실행 가능
  • 자동화: VM 생성과 동시에 실행
  • 확장성: 스케일 셋의 모든 인스턴스에 적용
  • 통합성: ARM 템플릿에 포함 가능

다른 옵션이 틀린 이유:

  • A: DSC 구성 게시용 cmdlet이지 직접 설치용이 아님
  • B: 애플리케이션 모니터링 서비스
  • D: 모바일 장치 관리 솔루션

ARM 템플릿 예시:

{
  "type": "Microsoft.Compute/virtualMachineScaleSets/extensions",
  "properties": {
    "publisher": "Microsoft.Compute",
    "type": "CustomScriptExtension",
    "settings": {
      "commandToExecute": "powershell.exe Install-NGINX.ps1"
    }
  }
}
문제 80 Domain Join Extension

HOTSPOT - Azure 구독이 있습니다. 구독에는 Windows 10을 실행하는 가상 머신이 포함되어 있습니다.
가상 머신을 Active Directory 도메인에 가입시켜야 합니다.
ARM(Azure Resource Manager) 템플릿을 어떻게 완성해야 합니까?

ARM 템플릿
정답
정답

📚 해설

Box 1: "Microsoft.Compute/VirtualMachines/extensions"

  • VM 확장을 정의하는 ARM 리소스 유형입니다.
  • 도메인 가입 확장을 VM에 추가하는 데 사용됩니다.

Box 2: "ProtectedSettings"

  • 민감한 정보(비밀번호 등)를 안전하게 전달하는 섹션입니다.
  • 도메인 가입에 필요한 계정 비밀번호를 포함합니다.
  • 암호화되어 저장되고 전송됩니다.

도메인 가입 확장 구성:

{
  "type": "Microsoft.Compute/virtualMachines/extensions",
  "properties": {
    "publisher": "Microsoft.Compute",
    "type": "JsonADDomainExtension",
    "settings": {
      "Name": "contoso.com",
      "User": "contoso\\admin",
      "Restart": "true"
    },
    "protectedSettings": {
      "Password": "AdminPassword123"
    }
  }
}

보안 고려사항:

  • 비밀번호는 반드시 protectedSettings에 배치
  • Key Vault 참조를 통한 보안 강화 권장
  • 최소 권한 원칙에 따른 도메인 계정 사용
문제 81 Availability Set Scaling

AVSet1이라는 가용성 집합에 있는 VM1, VM2, VM3라는 세 개의 가상 머신이 포함된 Azure 구독이 있습니다.

VM1을 새 가상 머신 크기로 확장해야 하지만 의도한 크기를 사용할 수 없습니다.

질문: 먼저 무엇을 해야 합니까?

A. 근접 배치 그룹을 만듭니다.
B. VM1을 할당 해제합니다.
C. AvSet1을 관리되는 가용성 집합으로 변환합니다.
D. VM2와 VM3를 종료합니다.
정답: B. VM1을 할당 해제합니다.

📚 해설

왜 B가 정답인가:

  • 가용성 집합 내에서 VM 크기를 변경하려면 VM을 할당 해제해야 합니다.
  • 할당 해제하면 VM이 다른 물리적 호스트로 이동할 수 있어 더 많은 크기 옵션이 제공됩니다.
  • VM이 실행 중일 때는 현재 호스트에서 지원하는 크기로만 제한됩니다.

가용성 집합 VM 크기 조정 과정:

  1. VM 할당 해제: Stop-AzVM -Deallocate
  2. VM 크기 변경: 사용 가능한 크기 중 선택
  3. VM 시작: 새로운 크기로 부팅

다른 옵션이 틀린 이유:

  • A: 근접 배치 그룹은 크기 제한과 관련 없음
  • C: 관리되는 가용성 집합 변환은 크기 문제 해결과 무관
  • D: 다른 VM 종료는 필요 없음

가용성 집합 특징:

  • 동일한 하드웨어 클러스터 내 배치
  • 장애 도메인과 업데이트 도메인으로 분산
  • 하드웨어 제약으로 인한 크기 제한 존재
문제 82 Azure Kubernetes Service

HOTSPOT - 다음 전시에 표시된 대로 AKS(Azure Kubernetes Services) 클러스터를 만들고 있습니다.

AKS 클러스터 생성

그래픽에 제시된 정보를 바탕으로 각 문장을 완성하는 답안 선택지를 선택하세요.

문제 옵션
정답
정답

📚 해설

AKS 클러스터 구성 분석:

첫 번째 질문: 노드 수

  • 클러스터 생성 시 설정된 초기 노드 수가 적용됩니다.
  • 자동 스케일링이 활성화된 경우 최소/최대 범위 내에서 조정됩니다.
  • 이미지에서 설정된 노드 수를 확인할 수 있습니다.

두 번째 질문: 네트워크 모델

  • Kubenet: 기본 네트워킹, 단순한 설정
  • Azure CNI: 고급 네트워킹, VNet 통합
  • 선택된 네트워킹 옵션에 따라 결정됩니다.

AKS 네트워킹 옵션:

  • Kubenet: 노드는 VNet 서브넷 IP, 파드는 별도 주소 공간
  • Azure CNI: 노드와 파드 모두 VNet IP 사용

클러스터 생성 시 고려사항:

  • 노드 수: 초기 워크로드에 적합한 수 선택
  • 자동 스케일링: 트래픽 변화에 대응
  • 네트워킹: 기존 인프라와의 통합 고려
  • 노드 풀: 다양한 워크로드 유형 지원
문제 83 AKS Cluster Upgrade

HOTSPOT - 4개의 노드가 있는 Pool1이라는 노드 풀을 호스팅하는 Cluster1이라는 AKS(Azure Kubernetes Service) 클러스터가 포함된 Azure 구독이 있습니다.

Cluster1의 조정된 업그레이드를 수행해야 합니다. 솔루션은 다음 요구 사항을 충족해야 합니다:

명령을 어떻게 완성해야 합니까?

명령 옵션
정답
정답

📚 해설

AKS 클러스터 업그레이드 명령어:

첫 번째 선택: az aks upgrade

  • AKS 클러스터를 업그레이드하는 Azure CLI 명령어입니다.
  • Kubernetes 버전을 최신 버전으로 업데이트합니다.

두 번째 선택: --max-surge

  • 업그레이드 중 추가로 생성할 노드 수를 지정합니다.
  • 값 2는 2개의 추가 노드를 생성하여 롤링 업그레이드를 수행합니다.
  • 비용 최소화를 위해 필요한 최소 개수만 지정합니다.

업그레이드 과정:

  1. 서지 노드 생성: 2개의 새 노드 추가
  2. 워크로드 이동: 기존 노드에서 새 노드로 파드 이동
  3. 기존 노드 업그레이드: 순차적으로 업그레이드
  4. 서지 노드 제거: 업그레이드 완료 후 추가 노드 삭제

비용 최적화:

  • max-surge 값을 최소화하여 추가 노드 수 제한
  • 업그레이드 시간과 비용 간의 균형 고려
문제 84 ARM Template Analysis

HOTSPOT - Azure 구독이 있습니다.
Deploy.json이라는 다음 파일을 만듭니다.

Deploy.json 파일

구독에 연결하고 다음 명령을 실행합니다.

실행 명령

다음 각 설명에 대해 설명이 맞으면 예를, 틀리면 아니오를 선택하세요.

질문 옵션
정답
정답

📚 해설

ARM 템플릿 배포 분석:

첫 번째 문장: 예

  • 템플릿이 성공적으로 배포됩니다.
  • 구독 수준 배포 명령어가 올바르게 사용되었습니다.
  • 템플릿 구문이 유효합니다.

두 번째 문장: 아니오

  • 템플릿에서 리소스 그룹이 생성됩니다.
  • 구독 수준에서 배포되므로 새 리소스 그룹이 만들어집니다.

세 번째 문장: 예

  • 템플릿에 Storage 계정 리소스가 정의되어 있습니다.
  • 생성된 리소스 그룹 내에 Storage 계정이 배포됩니다.

배포 결과:

  • 새 리소스 그룹 생성
  • 리소스 그룹 내 Storage 계정 생성
  • 구독 수준 리소스로 관리
문제 85 Azure Container Registry

시리즈 문제 알림: 이 문제는 동일한 시나리오를 제시하는 일련의 질문 중 일부입니다. 각 질문에는 명시된 목표를 충족할 수 있는 고유한 솔루션이 포함되어 있습니다.

image1이라는 이미지가 포함된 Registry1이라는 Azure 컨테이너 레지스트리가 있습니다.
image1을 사용하여 컨테이너 인스턴스를 배포하려고 할 때 오류 메시지를 받습니다.
image1을 사용하여 컨테이너 인스턴스를 배포할 수 있어야 합니다.

솔루션: Registry1에 대해 관리 사용자를 사용으로 설정합니다.

질문: 이것이 목표를 충족합니까?

A. 예
B. 아니오
정답: A. 예

📚 해설

왜 A가 정답인가:

  • Azure Container Instances가 Private 레지스트리에서 이미지를 가져오려면 인증이 필요합니다.
  • 관리 사용자를 활성화하면 사용자 이름과 비밀번호 기반 인증이 가능해집니다.
  • ACI가 ACR에서 이미지를 성공적으로 풀할 수 있게 됩니다.

ACR 인증 방법:

  • 관리 사용자: 사용자 이름/비밀번호 인증
  • 서비스 주체: Azure AD 기반 인증
  • 관리 ID: Azure 리소스의 관리 ID 사용
  • Azure AD 토큰: 개별 사용자 인증

관리 사용자 활성화 후:

  1. ACR에서 사용자 이름과 비밀번호 생성
  2. ACI 배포 시 이미지 레지스트리 자격 증명 제공
  3. 성공적인 이미지 풀 및 컨테이너 배포

보안 고려사항:

  • 프로덕션 환경에서는 서비스 주체 사용 권장
  • 관리 사용자는 개발/테스트 환경에 적합
문제 86 ARM Template Complete Mode

HOTSPOT - RG1이라는 리소스 그룹이 포함된 Azure 구독이 있습니다.

template1이라는 ARM(Azure Resource Manager) 템플릿을 사용하여 리소스를 배포할 계획입니다. 솔루션은 다음 요구 사항을 충족해야 합니다:

명령을 어떻게 완성해야 합니까?

명령 옵션
정답
정답

📚 해설

ARM 템플릿 배포 모드:

첫 번째 선택: New-AzResourceGroupDeployment

  • 리소스 그룹 수준에서 ARM 템플릿을 배포하는 PowerShell cmdlet입니다.
  • 기존 리소스 그룹에 리소스를 배포할 때 사용됩니다.

두 번째 선택: Complete

  • 배포 모드를 "Complete"로 설정하면 기존 리소스를 모두 제거합니다.
  • 템플릿에 정의되지 않은 모든 리소스는 삭제됩니다.
  • 템플릿에 정의된 리소스만 리소스 그룹에 남게 됩니다.

배포 모드 비교:

  • Incremental (기본값): 기존 리소스를 유지하고 새 리소스만 추가
  • Complete: 템플릿에 정의되지 않은 기존 리소스는 모두 삭제

Complete 모드 주의사항:

  • 리소스 그룹의 모든 기존 리소스가 삭제될 수 있음
  • 신중하게 사용해야 하는 강력한 기능
  • 백업 및 복구 계획 수립 필요
문제 87 App Service Autoscaling

HOTSPOT - app1이라는 Azure App Service 웹앱이 있습니다.
다음 전시와 같이 자동 스케일링을 구성합니다.

자동 스케일링 구성

다음 전시와 같이 자동 스케일 규칙 기준을 구성합니다.

자동 스케일 규칙

그래픽에 제시된 정보를 바탕으로 각 질문에 답하는 답안 선택지를 선택하세요.

질문 옵션
정답
정답

📚 해설

App Service 자동 스케일링 분석:

첫 번째 질문: 스케일 아웃 시나리오

  • CPU 사용률이 임계값을 초과하면 인스턴스가 추가됩니다.
  • 지속 시간과 쿨다운 시간에 따라 스케일링이 조정됩니다.
  • 최대 인스턴스 제한까지 확장 가능합니다.

두 번째 질문: 스케일 인 시나리오

  • CPU 사용률이 임계값 아래로 떨어지면 인스턴스가 제거됩니다.
  • 최소 인스턴스 수는 항상 유지됩니다.
  • 쿨다운 시간이 적용되어 급격한 변화를 방지합니다.

자동 스케일링 고려사항:

  • 메트릭: CPU, 메모리, 요청 수 등
  • 임계값: 스케일 작업을 트리거하는 값
  • 지속 시간: 임계값 유지 시간
  • 쿨다운: 연속 스케일링 방지 시간
문제 88 Container Groups

Azure 구독이 있습니다.

다음 표에 표시된 Azure 컨테이너 인스턴스를 배포할 계획입니다.

컨테이너 인스턴스 표

질문: 어떤 인스턴스를 컨테이너 그룹에 배포할 수 있습니까?

A. Instance1만
B. Instance2만
C. Instance1과 Instance2만
D. Instance3과 Instance4만
정답: D. Instance3과 Instance4만

📚 해설

왜 D가 정답인가:

  • 컨테이너 그룹의 모든 컨테이너는 동일한 운영 체제 유형이어야 합니다.
  • Instance1과 Instance2는 Windows 컨테이너이고, Instance3과 Instance4는 Linux 컨테이너입니다.
  • Windows와 Linux 컨테이너를 같은 컨테이너 그룹에 배치할 수 없습니다.

Azure Container Groups 제약사항:

  • 운영 체제: 그룹 내 모든 컨테이너는 동일한 OS
  • 지역: 모든 컨테이너는 동일한 Azure 지역
  • 네트워킹: 그룹 내 컨테이너는 IP와 포트 공유
  • 스토리지: 그룹 내 컨테이너는 볼륨 공유 가능

컨테이너 그룹 장점:

  • 사이드카 패턴 구현
  • 리소스 공유 및 통신
  • 동일한 생명주기 관리
  • 로컬 네트워크 통신

표에서 분석:

  • Instance1, Instance2: Windows - 별도 그룹 필요
  • Instance3, Instance4: Linux - 같은 그룹 가능
문제 89 Container Registry Data Endpoint

HOTSPOT - 다음 전시에 표시된 contoso2023이라는 Azure 컨테이너 레지스트리가 있습니다.

컨테이너 레지스트리

contoso2023이 전용 데이터 엔드포인트를 사용할 수 있도록 해야 합니다.
contoso2023에 대해 구성해야 하는 두 가지 설정은 무엇입니까?

설정 옵션
정답
정답

📚 해설

Azure Container Registry 전용 데이터 엔드포인트:

첫 번째 설정: Premium SKU

  • 전용 데이터 엔드포인트는 Premium SKU에서만 지원됩니다.
  • Basic이나 Standard SKU는 이 기능을 지원하지 않습니다.
  • SKU를 Premium으로 업그레이드해야 합니다.

두 번째 설정: 전용 데이터 엔드포인트 활성화

  • Premium SKU로 업그레이드 후 전용 데이터 엔드포인트를 명시적으로 활성화해야 합니다.
  • 네트워킹 섹션에서 설정을 변경할 수 있습니다.
  • 지역별로 별도의 데이터 엔드포인트가 생성됩니다.

전용 데이터 엔드포인트 장점:

  • 성능 향상: 지역별 최적화된 데이터 전송
  • 네트워크 최적화: 트래픽 라우팅 개선
  • 보안 강화: 프라이빗 엔드포인트와 함께 사용 가능
  • 대역폭 절약: 지역 내 데이터 전송

설정 순서:

  1. ACR SKU를 Premium으로 업그레이드
  2. 네트워킹 설정에서 전용 데이터 엔드포인트 활성화
  3. 필요한 지역별 엔드포인트 구성
문제 90 Azure Firewall

다음 표에 표시된 공용 IP 주소가 있는 Azure 구독이 있습니다.

공용 IP 주소 표

FW1이라는 Azure Firewall Premium 인스턴스를 배포할 계획입니다.

질문: 어떤 IP 주소를 사용할 수 있습니까?

A. IP2만
B. IP1과 IP2만
C. IP1, IP2, IP5만
D. IP1, IP2, IP4, IP5만
정답: B. IP1과 IP2만

📚 해설

왜 B가 정답인가:

  • Azure Firewall은 Standard SKU 공용 IP 주소만 지원합니다.
  • Basic SKU 공용 IP는 Azure Firewall과 호환되지 않습니다.
  • 표에서 IP1과 IP2만 Standard SKU입니다.
  • IPv6 주소는 Azure Firewall에서 지원되지 않습니다.

Azure Firewall IP 요구사항:

  • SKU: Standard 공용 IP만 지원
  • 할당: 정적 할당 필요
  • 버전: IPv4 지원 (IPv6는 미지원)
  • 지역: Firewall과 동일한 지역

Azure Firewall Premium 기능:

  • TLS 검사: 암호화된 트래픽 검사
  • IDPS: 침입 탐지 및 방지 시스템
  • URL 필터링: 웹 카테고리 기반 필터링
  • 웹 카테고리: 사이트 분류 및 차단

IP 주소 사용 패턴:

  • 관리 IP: 방화벽 관리 트래픽용
  • 데이터 IP: 사용자 데이터 트래픽용
  • 고가용성: 추가 IP로 이중화 구성
  • SNAT 포트: 아웃바운드 연결 확장

표 분석:

  • IP1, IP2: Standard SKU ✓
  • IP3, IP4, IP5: Basic SKU 또는 IPv6 ✗
문제 91 ARM Template VM Deployment

HOTSPOT - Azure 구독이 있습니다.
ARM(Azure Resource Manager) 템플릿을 사용하여 가상 머신을 배포해야 합니다.
템플릿을 어떻게 완성해야 합니까?

ARM 템플릿
정답
정답

📚 해설

ARM 템플릿 VM 리소스 구성:

첫 번째 박스: Microsoft.Compute/virtualMachines

  • Azure 가상 머신을 정의하는 ARM 리소스 유형입니다.
  • 가상 머신의 모든 구성을 포함합니다.

두 번째 박스: networkProfile

  • VM의 네트워크 구성을 정의하는 섹션입니다.
  • 네트워크 인터페이스 연결 정보를 포함합니다.

세 번째 박스: networkInterfaces

  • VM에 연결된 네트워크 인터페이스를 참조하는 배열입니다.
  • 하나 이상의 NIC를 VM에 연결할 수 있습니다.

VM ARM 템플릿 주요 섹션:

  • hardwareProfile: VM 크기 정의
  • storageProfile: OS 디스크 및 데이터 디스크
  • osProfile: 운영체제 및 인증 정보
  • networkProfile: 네트워크 인터페이스
문제 92 App Service Custom Domain

HOTSPOT - WebApp1이라는 새 Azure App Service 앱을 구성해야 합니다. 솔루션은 다음 요구 사항을 충족해야 합니다:

어떤 가격 계획을 선택해야 하고, 도메인을 확인하려면 어떤 유형의 레코드를 사용해야 합니까?

옵션
정답
정답

📚 해설

가격 계획: Standard

  • 사용자 지정 도메인 지원을 위해서는 최소 Basic 계층 필요
  • 자동 스케일링 기능은 Standard 계층부터 지원
  • 최대 8개 인스턴스 확장이 가능
  • 비용 최소화를 위해 Standard 계층 선택

도메인 확인 레코드: TXT

  • TXT 레코드는 도메인 소유권을 안전하게 확인하는 표준 방법
  • Azure에서 제공하는 확인 문자열을 TXT 레코드에 추가
  • CNAME보다 더 안전하고 표준적인 방법

App Service 가격 계층 비교:

  • Free/Shared: 사용자 지정 도메인 미지원
  • Basic: 사용자 지정 도메인 지원, 자동 스케일링 미지원
  • Standard: 사용자 지정 도메인, 자동 스케일링 지원
  • Premium: 고급 기능, 더 높은 성능

도메인 확인 과정:

  1. Azure에서 확인 문자열 생성
  2. DNS에 TXT 레코드 추가
  3. Azure에서 소유권 확인
  4. 사용자 지정 도메인 바인딩
문제 93 Azure Compute Gallery

HOTSPOT - 다음 표에 표시된 가상 머신이 포함된 Azure 구독이 있습니다.

가상 머신 표

ComputeGallery1이라는 Azure Compute Gallery를 만듭니다.

Compute Gallery

ComputeGallery1에서 Image1이라는 가상 머신 이미지 정의를 만듭니다.

이미지 정의

다음 각 설명에 대해 설명이 맞으면 예를, 틀리면 아니오를 선택하세요.

질문
정답
정답

📚 해설

Azure Compute Gallery 호환성 분석:

첫 번째 문장: 예

  • VM1은 Windows Server 2019를 실행하고 이미지 정의도 Windows Server 2019용입니다.
  • 운영체제가 일치하므로 VM1에서 이미지 버전을 생성할 수 있습니다.

두 번째 문장: 아니오

  • VM2는 Ubuntu 18.04를 실행하지만 이미지 정의는 Windows Server 2019용입니다.
  • 운영체제가 다르므로 VM2에서는 이미지 버전을 생성할 수 없습니다.

세 번째 문장: 아니오

  • VM3는 Windows Server 2016을 실행하지만 이미지 정의는 Windows Server 2019용입니다.
  • Windows 버전이 다르므로 VM3에서는 이미지 버전을 생성할 수 없습니다.

Azure Compute Gallery 요구사항:

  • 운영체제 일치: 소스 VM과 이미지 정의의 OS가 동일해야 함
  • 버전 일치: 정확한 OS 버전까지 일치해야 함
  • 아키텍처 일치: x64, ARM 등 아키텍처가 동일해야 함
문제 94 App Service Plans

다음 표에 표시된 Azure 웹앱을 만들 계획입니다.

웹앱 표

질문: 웹앱에 대해 만들어야 하는 App Service 계획의 최소 수는 얼마입니까?

A. 1
B. 2
C. 3
D. 4
정답: B. 2

📚 해설

왜 B가 정답인가:

  • App Service 계획은 운영체제별로 분리되어야 합니다.
  • 하나의 App Service 계획에는 Windows 또는 Linux 앱만 호스팅할 수 있습니다.
  • 표에서 Windows와 Linux 앱이 혼재되어 있으므로 최소 2개의 계획이 필요합니다.

App Service 계획 분리 기준:

  • 운영체제: Windows vs Linux (혼재 불가)
  • 지역: 동일한 Azure 지역 내에서만 공유 가능
  • 리소스 그룹: 다른 리소스 그룹의 앱도 공유 가능

효율적인 계획 구성:

  • 계획 1: 모든 Windows 웹앱
  • 계획 2: 모든 Linux 웹앱

비용 최적화:

  • 동일한 운영체제의 여러 앱을 하나의 계획에 배치
  • 리소스 공유로 비용 절감
  • 필요에 따라 스케일링 조정

표 분석 예시:

  • Windows 앱들 → App Service Plan 1
  • Linux 앱들 → App Service Plan 2
문제 95 ARM Template Resources

HOTSPOT - 다음 표에 표시된 리소스 그룹이 포함된 Azure 구독이 있습니다.

리소스 그룹 표

deploy.json이라는 다음 ARM(Azure Resource Manager) 템플릿을 만듭니다.

ARM 템플릿

다음 cmdlet을 실행하여 템플릿을 배포합니다.

배포 명령

다음 각 설명에 대해 설명이 맞으면 예를, 틀리면 아니오를 선택하세요.

질문
정답
정답

📚 해설

ARM 템플릿 배포 결과 분석:

첫 번째 문장: 아니오

  • 템플릿 배포 자체는 성공하지만 Storage 계정 생성은 실패합니다.
  • 네트워크 보안 그룹 생성은 성공할 수 있습니다.

두 번째 문장: 예

  • Storage 계정 이름은 전역적으로 고유해야 합니다.
  • 템플릿의 Storage 계정 이름이 이미 사용 중이면 배포가 실패합니다.
  • 이름 충돌로 인한 오류가 발생합니다.

세 번째 문장: 예

  • 네트워크 보안 그룹은 리소스 그룹 내에서만 고유하면 됩니다.
  • Storage 계정과 달리 전역 고유성이 필요하지 않습니다.
  • NSG는 성공적으로 생성될 가능성이 높습니다.

Azure 리소스 이름 지정 규칙:

  • 전역 고유: Storage 계정, Azure AD 테넌트
  • 리소스 그룹 내 고유: VM, NSG, VNet
  • 구독 내 고유: 리소스 그룹
문제 96 App Service Autoscaling

2개의 실행 중인 인스턴스가 포함된 App1이라는 Azure App Service 앱이 있습니다.
다음 전시와 같이 구성된 자동 스케일 규칙이 있습니다.

자동 스케일 규칙

인스턴스 제한 스케일 조건 설정에서 최대값을 5로 설정했습니다.
30분 동안 App1이 사용 가능한 메모리의 80%를 사용합니다.

질문: 30분 동안 App1의 최대 인스턴스 수는 얼마입니까?

A. 2
B. 3
C. 4
D. 5
정답: D. 5

📚 해설

왜 D가 정답인가:

  • 메모리 사용률이 80%로 스케일 아웃 임계값을 초과합니다.
  • 30분은 충분히 긴 시간으로 여러 번의 스케일 아웃이 가능합니다.
  • 최대 인스턴스 제한이 5로 설정되어 있으므로 5개까지 확장됩니다.
  • 스케일 아웃 조건이 지속적으로 충족되므로 최대치까지 확장됩니다.

자동 스케일링 동작:

  1. 초기 상태: 2개 인스턴스
  2. 첫 번째 스케일 아웃: 조건 충족 시 인스턴스 추가
  3. 쿨다운 대기: 설정된 쿨다운 시간 경과
  4. 추가 스케일 아웃: 조건이 계속 충족되면 반복
  5. 최대 도달: 5개 인스턴스까지 확장

스케일링 고려사항:

  • 지속 시간: 임계값을 넘는 시간
  • 쿨다운: 연속 스케일링 간 대기 시간
  • 증가 단위: 한 번에 추가되는 인스턴스 수
  • 최대 제한: 설정된 최대 인스턴스 수

30분 시나리오:

  • 충분한 시간으로 여러 차례 스케일 아웃 실행
  • 메모리 사용률 80% 지속으로 조건 계속 충족
  • 최대 제한인 5개 인스턴스까지 도달
문제 97 Container Platform Support

HOTSPOT - 다음 표에 표시된 컨테이너 이미지가 포함된 Azure 구독이 있습니다.

컨테이너 이미지 표

다음 서비스를 사용할 계획입니다:

어떤 서비스에서 이미지를 실행할 수 있습니까?

서비스 옵션
정답
정답

📚 해설

Azure 컨테이너 서비스 호환성:

Azure Container Instances (ACI):

  • Linux와 Windows 컨테이너 모두 지원
  • 정답
    정답

    📚 해설

    AKS 클러스터 구성 분석:

    첫 번째 질문: 노드 수

    • 클러스터 생성 시 설정된 초기 노드 수가 적용됩니다.
    • 자동 스케일링이 활성화된 경우 최소/최대 범위 내에서 조정됩니다.

    두 번째 질문: 네트워크 모델

    • Kubenet: 기본 네트워킹, 단순한 설정
    • Azure CNI: 고급 네트워킹, VNet 통합

    AKS 네트워킹 옵션:

    • Kubenet: 노드는 VNet 서브넷 IP, 파드는 별도 주소 공간
    • Azure CNI: 노드와 파드 모두 VNet IP 사용
문제 98 App Service Key Vault

contoso.com이라는 Azure AD 테넌트가 있습니다.

App1이라는 Azure App Service 웹앱과 KV1이라는 Azure Key Vault가 포함된 Azure 구독이 있습니다. KV1에는 contoso.com에 대한 와일드카드 인증서가 포함되어 있습니다.

App1과 KV1에 대해 소유자 역할이 할당된 user1@contoso.com이라는 사용자가 있습니다.

KV1의 와일드카드 인증서를 사용하도록 App1을 구성해야 합니다.

질문: 먼저 무엇을 해야 합니까?

A. KV1에 대한 액세스 정책을 만들고 Microsoft Azure App Service 주체를 정책에 할당합니다.
B. App1에 관리되는 사용자 ID를 할당합니다.
C. RBAC(역할 기반 액세스 제어) 권한 부여 시스템을 사용하도록 KV1을 구성합니다.
D. KV1에 대한 액세스 정책을 만들고 User1에게 정책을 할당합니다.
정답: B. App1에 관리되는 사용자 ID를 할당합니다.

📚 해설

왜 B가 정답인가:

  • App Service가 Key Vault에 액세스하려면 인증이 필요합니다.
  • 관리되는 사용자 ID는 App Service가 Key Vault에 안전하게 인증할 수 있는 방법입니다.
  • 관리되는 ID를 할당한 후 Key Vault 액세스 권한을 부여해야 합니다.

App Service에서 Key Vault 사용 과정:

  1. 관리되는 ID 할당: App Service에 시스템 또는 사용자 할당 ID 생성
  2. Key Vault 권한 부여: 관리되는 ID에 인증서 읽기 권한 부여
  3. 인증서 바인딩: App Service에서 Key Vault 인증서 참조

다른 옵션이 틀린 이유:

  • A: App Service 주체 직접 할당보다 관리되는 ID가 권장
  • C: RBAC 설정만으로는 App Service 인증 불가
  • D: 사용자 정책은 App Service 인증과 무관

관리되는 ID 장점:

  • 자격 증명 관리 불필요
  • 자동 인증서 갱신
  • 높은 보안 수준
문제 99 ARM Template Dependencies

Azure 구독이 있습니다.

다음 표에 표시된 리소스를 배포할 계획입니다.

리소스 표

리소스를 배포하는 데 사용할 단일 ARM(Azure Resource Manager) 템플릿을 만들어야 합니다.

질문: VM1의 dependsOn 섹션에 추가해야 하는 리소스는 무엇입니까?

A. VNET1
B. NIC1
C. IP1
D. NSG1
정답: B. NIC1

📚 해설

왜 B가 정답인가:

  • VM은 네트워크 인터페이스(NIC)에 직접 연결됩니다.
  • VM 생성 전에 NIC가 먼저 생성되어야 합니다.
  • NIC는 VM이 네트워크에 연결하기 위한 필수 구성 요소입니다.

ARM 템플릿 종속성 체인:

  1. VNET1 → 가상 네트워크 생성
  2. NSG1 → 네트워크 보안 그룹 생성
  3. IP1 → 공용 IP 주소 생성
  4. NIC1 → 네트워크 인터페이스 생성 (VNET1, IP1, NSG1 의존)
  5. VM1 → 가상 머신 생성 (NIC1 의존)

다른 옵션이 틀린 이유:

  • A: VNET1은 NIC1을 통해 간접적으로 참조됨
  • C: IP1도 NIC1을 통해 간접적으로 참조됨
  • D: NSG1도 NIC1을 통해 간접적으로 적용됨

dependsOn 최적화:

  • 직접적인 종속성만 명시
  • 간접적인 종속성은 자동으로 해결
  • 불필요한 종속성은 배포 시간 증가
문제 100 Subscription Level Deployment

Azure 구독이 있습니다.

Template.json이라는 다음 ARM(Azure Resource Manager) 템플릿을 만듭니다.

ARM 템플릿

Template.json을 배포해야 합니다.

질문: Azure Cloud Shell에서 실행해야 하는 PowerShell cmdlet은 무엇입니까?

A. New-AzSubscriptionDeployment
B. New-AzManagementGroupDeployment
C. New-AzResourceGroupDeployment
D. New-AzTenantDeployment
정답: A. New-AzSubscriptionDeployment

📚 해설

왜 A가 정답인가:

  • 템플릿의 targetScope가 "subscription"으로 설정되어 있습니다.
  • 구독 수준 배포는 리소스 그룹 생성, 정책 할당 등에 사용됩니다.
  • New-AzSubscriptionDeployment는 구독 범위 배포 전용 cmdlet입니다.

ARM 배포 범위별 cmdlet:

  • 구독 수준: New-AzSubscriptionDeployment
  • 리소스 그룹 수준: New-AzResourceGroupDeployment
  • 관리 그룹 수준: New-AzManagementGroupDeployment
  • 테넌트 수준: New-AzTenantDeployment

구독 수준 배포 용도:

  • 리소스 그룹 생성
  • Azure Policy 할당
  • 역할 할당
  • 구독 수준 리소스 관리

targetScope 확인:

{
  "$schema": "...",
  "contentVersion": "1.0.0.0",
  "metadata": {
    "_generator": {
      "name": "bicep",
      "version": "0.4.451.19169",
      "templateHash": "..."
    }
  },
  "parameters": {},
  "resources": [],
  "outputs": {}
}
문제 101 Bicep Template Scope

RG1이라는 리소스 그룹이 포함된 Azure 구독이 있습니다.

storage1이라는 스토리지 계정을 만들 계획입니다.

File1이라는 Bicep 파일이 있습니다.

storage1을 RG1에 자동 배포하는 데 사용할 수 있도록 File1을 수정해야 합니다.

질문: 어떤 속성을 수정해야 합니까?

A. kind
B. scope
C. sku
D. location
정답: B. scope

📚 해설

왜 B가 정답인가:

  • Bicep 파일의 scope 속성은 배포 대상 범위를 정의합니다.
  • 특정 리소스 그룹에 배포하려면 scope를 리소스 그룹으로 설정해야 합니다.
  • 기본적으로 구독 수준으로 설정될 수 있어 수정이 필요합니다.

Bicep scope 설정:

targetScope = 'resourceGroup'

param storageAccountName string = 'storage1'
param location string = resourceGroup().location

resource storageAccount 'Microsoft.Storage/storageAccounts@2021-04-01' = {
  name: storageAccountName
  location: location
  sku: {
    name: 'Standard_LRS'
  }
  kind: 'StorageV2'
}

Bicep 배포 범위:

  • resourceGroup: 리소스 그룹 수준 배포
  • subscription: 구독 수준 배포
  • managementGroup: 관리 그룹 수준 배포
  • tenant: 테넌트 수준 배포

다른 옵션이 틀린 이유:

  • A: kind는 스토리지 계정 유형 (배포 범위와 무관)
  • C: sku는 성능 계층 (배포 범위와 무관)
  • D: location은 지역 설정 (배포 범위와 무관)
문제 102 Subscription Deployment

HOTSPOT - 회사에서 새 Azure 구독을 구매했습니다.

다음 전시와 같이 Deploy.json이라는 파일을 만듭니다.

Deploy.json

구독에 연결하고 다음 cmdlet을 실행합니다.

New-AzDeployment -Location westus -TemplateFile "deploy.json"

다음 각 설명에 대해 설명이 맞으면 예를, 틀리면 아니오를 선택하세요.

질문
정답
정답

📚 해설

구독 수준 배포 결과 분석:

첫 번째 문장: 예

  • New-AzDeployment는 구독 수준 배포 cmdlet입니다.
  • 템플릿이 올바르게 구성되어 있으면 성공적으로 배포됩니다.
  • West US 지역에서 배포가 실행됩니다.

두 번째 문장: 예

  • 구독 수준 배포는 리소스 그룹을 생성할 수 있습니다.
  • 템플릿에 리소스 그룹 정의가 포함되어 있으면 생성됩니다.

세 번째 문장: 아니오

  • 구독 수준 배포에서는 기존 리소스 그룹을 지정할 필요가 없습니다.
  • 리소스 그룹은 템플릿 내에서 정의되고 생성됩니다.

구독 수준 배포 특징:

  • 리소스 그룹 생성 및 관리
  • 구독 전체 정책 적용
  • 역할 할당 및 권한 관리
  • 여러 리소스 그룹에 걸친 배포
문제 103 Proximity Placement Groups

다음 표에 표시된 리소스가 포함된 Azure 구독이 있습니다.

리소스 표

VMSS1에 대한 근접 배치 그룹을 구성해야 합니다.

질문: 어떤 근접 배치 그룹을 사용해야 합니까?

A. Proximity2만
B. Proximity1, Proximity2, Proximity3
C. Proximity1만
D. Proximity1과 Proximity3만
정답: C. Proximity1만

📚 해설

왜 C가 정답인가:

  • 근접 배치 그룹과 가상 머신 스케일 셋은 동일한 지역에 있어야 합니다.
  • VMSS1이 East US에 있으므로 동일한 지역의 근접 배치 그룹만 사용할 수 있습니다.
  • 표에서 Proximity1만 East US에 위치합니다.

근접 배치 그룹 요구사항:

  • 지역 일치: VMSS와 동일한 Azure 지역
  • 낮은 지연 시간: 리소스 간 네트워크 지연 시간 최소화
  • 물리적 근접성: 동일한 데이터센터 내 배치

근접 배치 그룹 장점:

  • 네트워크 지연 시간 최소화
  • 애플리케이션 성능 향상
  • 고성능 컴퓨팅 워크로드 최적화

표 분석:

  • VMSS1: East US 위치
  • Proximity1: East US (사용 가능 ✓)
  • Proximity2: West US (사용 불가 ✗)
  • Proximity3: Central US (사용 불가 ✗)

제한사항:

  • 크로스 리전 근접 배치 불가
  • 특정 VM 크기 제한 가능
  • 가용성 영역과 함께 사용 시 제약
문제 104 VNet Integration

HOTSPOT - 다음 표에 표시된 가상 네트워크가 포함된 Azure 구독이 있습니다.

가상 네트워크 표

구독에는 다음 표에 표시된 가상 머신이 포함되어 있습니다.

가상 머신 표

구독에는 다음 표에 표시된 Azure App Service 웹앱이 포함되어 있습니다.

웹앱 표

다음 각 설명에 대해 설명이 맞으면 예를, 틀리면 아니오를 선택하세요.

질문
정답
정답

📚 해설

VNet 통합 및 연결성 분석:

첫 번째 문장: 예/아니오

  • VM 간 통신 가능성은 VNet 구성과 네트워크 보안 그룹에 따라 결정됩니다.
  • 동일한 VNet 내의 VM들은 기본적으로 통신 가능합니다.
  • 다른 VNet의 VM들은 VNet 피어링이나 VPN 연결이 필요합니다.

두 번째 문장: 예/아니오

  • App Service의 VNet 통합 기능에 따라 결정됩니다.
  • Standard 이상의 App Service 계획에서 VNet 통합 지원합니다.
  • VNet 통합이 구성되어야 프라이빗 리소스 접근 가능합니다.

세 번째 문장: 예/아니오

  • App Service 간 통신은 기본적으로 인터넷을 통해 이루어집니다.
  • VNet 통합이 있어도 App Service 간 직접 통신은 제한적입니다.
  • Private Endpoint나 ASE(App Service Environment) 필요할 수 있습니다.

네트워크 연결 고려사항:

  • VM to VM: VNet, 서브넷, NSG 규칙
  • App Service to VM: VNet 통합, 프라이빗 엔드포인트
  • App Service to App Service: 퍼블릭 엔드포인트, Private Link
문제 105 Azure Backup Cross-Region

다음 표에 표시된 리소스가 포함된 Subscription1이라는 Azure 구독이 있습니다.

리소스 표

Subscription1에서 다음 표에 표시된 가상 머신을 만듭니다.

가상 머신 표

가능한 한 많은 가상 머신의 백업을 위해 Vault1을 사용할 계획입니다.

질문: 어떤 가상 머신을 Vault1에 백업할 수 있습니까?

A. VM1만
B. VM3과 VMC만
C. VM1, VM2, VM3, VMA, VMB, VMC
D. VM1, VM3, VMA, VMC만
E. VM1과 VM3만
정답: D. VM1, VM3, VMA, VMC만

📚 해설

왜 D가 정답인가:

  • Azure Backup은 Recovery Services Vault와 동일한 지역의 VM만 백업할 수 있습니다.
  • Vault1의 지역을 확인하고 동일한 지역의 VM들만 선택해야 합니다.
  • 크로스 리전 백업은 지원되지 않습니다.

Azure Backup 지역 제약사항:

  • 같은 지역: Vault와 VM이 동일한 Azure 지역에 위치
  • 같은 구독: 동일한 구독 내의 리소스
  • 지원되는 OS: Windows/Linux 지원

백업 가능 조건:

  • Recovery Services Vault와 동일 지역
  • VM이 실행 중이거나 중지된 상태
  • Azure VM Agent 설치됨
  • 지원되는 운영체제

표 분석 (예시):

  • Vault1: West Europe
  • VM1: West Europe ✓
  • VM2: East US ✗
  • VM3: West Europe ✓
  • VMA: West Europe ✓
  • VMB: Central US ✗
  • VMC: West Europe ✓

크로스 리전 백업 대안:

  • 각 지역별로 별도 Recovery Services Vault 생성
  • Azure Site Recovery를 통한 재해 복구
  • 스냅샷을 다른 지역으로 복사
문제 106 Azure Container Registry Admin

ContReg1이라는 Azure 컨테이너 레지스트리가 포함된 Azure 구독이 있습니다.

ContReg1에 대해 관리 사용자를 사용하도록 설정합니다.

질문: ContReg1에 로그인하는 데 사용할 수 있는 사용자 이름은 무엇입니까?

A. root
B. admin
C. administrator
D. ContReg1
정답: D. ContReg1

📚 해설

왜 D가 정답인가:

  • Azure Container Registry에서 관리 사용자를 활성화하면 레지스트리 이름이 사용자 이름이 됩니다.
  • ContReg1이 레지스트리 이름이므로 사용자 이름도 ContReg1입니다.
  • 별도의 비밀번호는 Azure Portal에서 생성됩니다.

ACR 관리 사용자 특징:

  • 사용자 이름: 레지스트리 이름과 동일
  • 비밀번호: Azure에서 자동 생성 (2개 제공)
  • 권한: 전체 레지스트리 액세스 권한
  • 용도: 개발/테스트 환경에 적합

관리 사용자 활성화 후:

  1. Azure Portal에서 ContReg1 이동
  2. 액세스 키 섹션에서 관리 사용자 활성화
  3. 사용자 이름: ContReg1
  4. 비밀번호: 자동 생성된 password 또는 password2

로그인 명령어 예시:

docker login contreg1.azurecr.io
Username: ContReg1
Password: [생성된 비밀번호]

# 또는 Azure CLI 사용
az acr login --name ContReg1

보안 권장사항:

  • 프로덕션 환경에서는 서비스 주체 사용
  • 관리 ID 활용으로 보안 강화
  • 정기적인 비밀번호 순환
문제 107 Container Registry Content Trust

Azure 구독이 있습니다.

ContReg1이라는 Azure 컨테이너 레지스트리를 만들 계획입니다.

ContReg1에 대해 서명된 이미지를 푸시하고 풀할 수 있도록 해야 합니다.

질문: ContReg1에 대해 무엇을 해야 합니까?

A. 고객 관리 키를 사용하여 암호화를 활성화합니다.
B. 연결된 레지스트리를 만듭니다.
C. 토큰을 추가합니다.
D. 콘텐츠 신뢰를 활성화합니다.
정답: D. 콘텐츠 신뢰를 활성화합니다.

📚 해설

왜 D가 정답인가:

  • 콘텐츠 신뢰(Content Trust)는 Docker의 이미지 서명 및 검증 메커니즘입니다.
  • 서명된 이미지를 푸시하고 풀하려면 반드시 콘텐츠 신뢰가 활성화되어야 합니다.
  • 이미지 무결성과 출처를 보장하는 보안 기능입니다.

콘텐츠 신뢰 기능:

  • 이미지 서명: 디지털 서명으로 이미지 무결성 보장
  • 검증: 풀 시 서명 검증으로 변조 방지
  • 신뢰 체인: 서명자와 이미지 간 신뢰 관계
  • 정책 적용: 서명된 이미지만 배포 허용

콘텐츠 신뢰 활성화 방법:

  1. Premium SKU ACR 생성 (필수 요구사항)
  2. Azure Portal에서 콘텐츠 신뢰 활성화
  3. Docker CLI에서 DOCKER_CONTENT_TRUST=1 설정
  4. 서명 키 생성 및 관리

다른 옵션이 틀린 이유:

  • A: 고객 관리 키는 저장 시 암호화용 (서명과 무관)
  • B: 연결된 레지스트리는 에지 시나리오용
  • C: 토큰은 인증용 (서명과 무관)

사용 예시:

# 콘텐츠 신뢰 활성화
export DOCKER_CONTENT_TRUST=1

# 서명된 이미지 푸시
docker push contreg1.azurecr.io/myapp:v1.0

# 서명된 이미지 풀
docker pull contreg1.azurecr.io/myapp:v1.0
문제 108 ACR Features by SKU

HOTSPOT - 다음 표에 표시된 Azure 컨테이너 레지스트리가 있는 Azure 구독이 있습니다.

컨테이너 레지스트리 표

ACR Tasks를 사용하고 프라이빗 엔드포인트 연결을 구성할 계획입니다.

어떤 컨테이너 레지스트리가 ACR Tasks와 프라이빗 엔드포인트를 지원합니까?

옵션
정답
정답

📚 해설

ACR SKU별 기능 지원:

ACR Tasks 지원:

  • Basic: 지원하지 않음
  • Standard: 지원함
  • Premium: 지원함

프라이빗 엔드포인트 지원:

  • Basic: 지원하지 않음
  • Standard: 지원하지 않음
  • Premium: 지원함

결론:

  • ACR Tasks만 필요: Standard 이상
  • 프라이빗 엔드포인트만 필요: Premium만
  • 둘 다 필요: Premium만

ACR Tasks 기능:

  • 소스 코드에서 자동 이미지 빌드
  • 다단계 빌드 지원
  • CI/CD 파이프라인 통합
  • 예약된 작업 실행

프라이빗 엔드포인트 장점:

  • VNet 내부에서만 접근 가능
  • 인터넷 트래픽 차단
  • 향상된 보안 및 규정 준수
  • 네트워크 세분화
문제 109 VM Extensions

Azure Resource Manager 템플릿을 사용하여 가상 머신 스케일 셋에서 Windows Server 2022를 실행하는 여러 Azure 가상 머신을 배포할 계획입니다.

배포 후 모든 가상 머신에서 NGINX를 사용할 수 있도록 해야 합니다.

질문: 무엇을 사용해야 합니까?

A. Azure Custom Script Extension
B. Azure App Service의 Deployment Center
C. Microsoft Entra Application Proxy
D. Publish-AzVMDscConfiguration cmdlet
정답: A. Azure Custom Script Extension

📚 해설

왜 A가 정답인가:

  • Custom Script Extension은 VM 배포 후 스크립트를 실행하는 가장 직접적인 방법입니다.
  • NGINX와 같은 소프트웨어 설치 작업에 적합합니다.
  • ARM 템플릿에서 직접 정의하여 자동화할 수 있습니다.
  • 가상 머신 스케일 셋의 모든 인스턴스에 동일하게 적용됩니다.

Custom Script Extension 장점:

  • 유연성: PowerShell, Bash, CMD 스크립트 실행 가능
  • 자동화: VM 생성과 동시에 실행
  • 확장성: 스케일 셋의 모든 인스턴스에 적용
  • 통합성: ARM 템플릿에 직접 포함 가능

ARM 템플릿 예시:

{
  "type": "Microsoft.Compute/virtualMachineScaleSets/extensions",
  "properties": {
    "publisher": "Microsoft.Compute",
    "type": "CustomScriptExtension",
    "typeHandlerVersion": "1.10",
    "settings": {
      "fileUris": ["https://example.com/install-nginx.ps1"],
      "commandToExecute": "powershell -ExecutionPolicy Unrestricted -File install-nginx.ps1"
    }
  }
}

다른 옵션이 틀린 이유:

  • B: Deployment Center는 App Service용 배포 도구
  • C: Entra Application Proxy는 애플리케이션 액세스용
  • D: DSC 구성 게시용 cmdlet (직접 설치용 아님)

NGINX 설치 스크립트 예시:

# PowerShell 스크립트 예시
# Download and install NGINX for Windows
$nginxUrl = "http://nginx.org/download/nginx-1.20.1.zip"
$installPath = "C:\nginx"

# Download NGINX
Invoke-WebRequest -Uri $nginxUrl -OutFile "nginx.zip"

# Extract and install
Expand-Archive -Path "nginx.zip" -DestinationPath $installPath

# Start NGINX service
& "$installPath\nginx\nginx.exe"