다음을 통해 공유


Windows Server 2019용 프라이빗 클라우드 시뮬레이터

소개

현재 업계 추세는 프라이빗 클라우드 솔루션에서 복원력 있는 고성능 프라이빗 클라우드를 제공하기 위해 긴밀하게 통합된 소프트웨어 및 하드웨어 구성 요소를 구성하는 것입니다. 구성 요소(소프트웨어, 하드웨어, 드라이버, 펌웨어 등)의 문제는 솔루션을 손상시키고 프라이빗 클라우드에 대한 SLA(서비스 수준 계약)과 관련된 약정을 훼손할 수 있습니다.

이러한 문제 중 일부는 스트레스가 높은 클라우드 규모 배포에서만 나타나며 기존의 독립형 구성 요소 중심 테스트를 사용하여 확인하기 어려울 수 있습니다. 프라이빗 클라우드 시뮬레이터는 클라우드 시나리오에서 구성 요소의 유효성을 검사하고 이러한 유형의 문제를 식별할 수 있는 클라우드 유효성 검사 테스트 도구 모음입니다.

대상 사용자

이 문서의 대상 그룹은 Windows Server 로고, Microsoft Azure Stack 솔루션 및 Microsoft Azure Stack HCI 솔루션에 대한 하드웨어의 유효성을 검사하기 위해 노력하는 관계자들입니다.

테스트 개요

PCS(프라이빗 클라우드 시뮬레이터)는 VM 워크로드를 만들고, 데이터 센터 작업(부하 분산, 소프트웨어/하드웨어 유지 관리)을 시뮬레이션하고, 컴퓨팅/스토리지 오류(계획되지 않은 하드웨어/소프트웨어 오류)를 주입하여 라이브 데이터 센터/프라이빗 클라우드를 시뮬레이션합니다. PCS는 Microsoft SQL Server 데이터베이스를 사용하여 실행 중에 테스트 및 솔루션 데이터를 기록합니다. 그런 다음, 통과/실패 비율 결정 및 실패 진단(해당하는 경우)을 위해 데이터를 상호 연결하는 기능을 제공하는 작업 통과/실패 비율 및 로그가 포함된 보고서를 제공합니다.

아래 표에는 PCS 테스트를 실행하기 위해 다운로드해야 하는 파일에 대한 링크가 나와 있습니다.

이름 위치
HLK 키트 HLK 버전 1809
HLK 업데이트 패키지 Microsoft Collaborate 사이트에서 최신 버전을 설치합니다.
파일 이름 형식: HlkUpdatePackage17763.buildnumber.datetime.zip
HLK 재생 목록 HLK 버전 1809 CompatPlaylist x64 Server.xml
PCSFiles.vhd PCSFiles.vhd
SHA256 해시 값은 5D801FE7627C539C2DA0E1719E3ECC96847BF08AFF2CBABC08133921E7EB08D1
Windows 10용 dotNet 3.5 Microsoft-Windows-NetFx3-OnDemand-Package.cab
Windows Server 2019 업데이트 Windows 업데이트 사이트의 최신 버전을 설치합니다.

Get-FileHash PowerShell cmdlet을 사용하여 파일에 대한 해시 값을 계산할 수 있습니다.

일반 랩 인프라 설정

토폴로지

PCS 랩 환경에 포함되는 요소는 다음과 같습니다.

  • 테스트 도메인에 대한 Active Directory 도메인 컨트롤러/DNS/DHCP 서버
  • 전용 HLK 컨트롤러 머신. OS는 Windows Server 2016이어야 합니다.
  • 전용 PCS 컨트롤러 머신. OS는 Windows Server 2019여야 합니다.
  • Hyper-V 가상 머신을 호스트하는 컴퓨팅 클러스터. 최소 노드 수는 PCS 작업의 유형에 따라 달라집니다.

지원 문서:

참고:

  • 위의 모든 머신은 동일한 테스트 도메인에 조인해야 합니다.
  • 모든 PCS 테스트는 테스트 도메인에 대한 ‘도메인 관리자’ 그룹에서 동일한 사용자로 실행해야 합니다.
  • 도메인 관리자 자격 증명이 있는 동일한 사용자를 사용하여 HLK 컨트롤러를 설치합니다.

HLK 컨트롤러 시스템 요구 사항

최소 시스템 요구 사항은 아래 표와 같습니다.

리소스 최소 요구 사항
CPU(또는 vCPU) 코어 4개
메모리 12GB RAM
사용 가능한 디스크 공간 200GB
운영 체제 Windows Server 2016 데이터 센터
Active Directory 도메인 테스트 도메인에 조인

HLK 컨트롤러 설정

IOMeter 파일 가져오기

  • IOMeter는 HLK 컨트롤러에 설치해야 하는 워크로드입니다.

  • IOMeter 웹 사이트에서 2006년 07월 27일에 릴리스된 IOMeter의 i386 Windows 버전을 다운로드합니다.

  • 설치 프로그램을 실행하거나 패키지의 압축을 풀어 파일의 압축을 풉니다.

  • IOMeter.exe, Dynamo.exe를 HLK 컨트롤러의 Tests\amd64\pcs\GuestScenarioManager\IOMeter 폴더에 복사합니다. HLK 설치의 기본 경로는 다음과 같습니다.

    C:\Program Files (x86)\Windows Kits\10\Hardware Lab Kit\Tests\amd64\pcs\GuestScenarioManager\IOMeter

PCS 컨트롤러 시스템 요구 사항

최소 시스템 요구 사항은 아래 표와 같습니다.

리소스 최소 요구 사항
CPU(또는 vCPU) 코어 4개
메모리 12GB RAM
부팅 드라이브의 사용 가능한 공간 200GB
운영 체제 Windows Server 2019 Datacenter
Active Directory 도메인 테스트 도메인에 조인

PCS 컨트롤러 설치

  • PCS 컨트롤러는 2세대 VM 또는 물리적 머신이어야 합니다.
  • 보안 부팅BitLocker를 사용하지 않도록 설정해야 합니다. PCS에서 TestSigning 부팅 구성을 사용하도록 설정하므로 이 작업이 필요합니다. 2세대 Hyper-V VM을 PCS 컨트롤러로 사용하는 경우 VM을 중지하여 VM 설정에서 보안 부팅을 사용하지 않도록 설정합니다.
  • Windows HLK 시작 가이드를 사용하여 HLK 클라이언트를 설치하고 필수 포트를 엽니다.
  • .NET Framework 3.5를 설치합니다(이 기능은 Windows Server 2019에 기본적으로 포함되지 않음).
    • 일반 설치 지침은 다음 위치에서 찾을 수 있습니다.
    • Microsoft 커넥트 통해 릴리스된 빌드의 경우 아래 세부 정보를 참조하세요.
      • 빌드와 함께 제공된 ISO를 탑재하고 MountedDriveLetter:\sources\sxs\microsoft-windows-netfx3-ondemand-package.cab에서 파일을 찾습니다.

      • 파일을 PCS 컨트롤러의 로컬 폴더에 복사합니다.

      • 관리자 권한으로 다음 명령줄을 실행하여 패키지를 설치합니다.

        Add-WindowsFeature Net-Framework-Features -source <Local Folder>
        

PCS 테스트

이 섹션에서는 디바이스/솔루션에 적합한 PCS 테스트를 찾고, 랩을 구성하고, PCS 실행을 시작하는 방법에 대해 설명합니다.

  • 랩을 설정하고 테스트를 실행하려면 동일한 도메인 관리자 계정을 사용해야 합니다.
  • 보안 부팅 상태는 모든 노드와 PCS 컨트롤러에서 OFF여야 합니다.
  • HLK 업데이트 패키지는 HLK 컨트롤러/클라이언트에 다운로드하여 설치해야 합니다. HLK 업데이트 패키지는 Microsoft Collaborate 사이트에서 다운로드할 수 있습니다.

PCS 테스트 선택

PCS 작업은 여러 범주의 디바이스 및 솔루션을 인증하는 데 사용됩니다. 아래 표에서는 이러한 항목을 적절한 PCS 작업에 매핑하고 있습니다.

대상 인증 프로그램 HLK의 작업 이름
NIC Windows Server 로고 PrivateCloudSimulator-Device.Network.LAN.10GbOrGreater
NIC SDDC Standard PrivateCloudSimulator-Device.Network.LAN.10GbOrGreater
NIC SDDC Premium PrivateCloudSimulator-Device.Network.LAN.AzureStack
NIC AZURESTACK PrivateCloudSimulator-Device.Network.LAN.AzureStack
SAS HBA SDDC Standard PCS 작업은 S2D BVT스트레스 테스트로 대체됨
SAS HBA SDDC Premium PCS 작업은 S2D BVT스트레스 테스트로 대체됨
SAS HBA AZURESTACK PCS 작업은 S2D BVT스트레스 테스트로 대체됨
디스크(HDD/SSD/NVMe) SDDC Standard PCS 작업은 S2D BVT스트레스 테스트로 대체됨
디스크(HDD/SSD/NVMe) SDDC Premium PCS 작업은 S2D BVT스트레스 테스트로 대체됨
디스크(HDD/SSD/NVMe) AZURESTACK PCS 작업은 S2D BVT스트레스 테스트로 대체됨
솔루션 SDDC Standard PrivateCloudSimulator-System.Solutions.StorageSpacesDirect(MIN) & (MAX)
솔루션 SDDC Premium PrivateCloudSimulator-System.Solutions.StorageSpacesDirect(MIN) & (MAX)
솔루션 AZURESTACK PrivateCloudSimulator-System.Solutions.AzureStack(MIN) & (MAX)

PCS 작업은 다음과 같이 요약됩니다.

  • PrivateCloudSimulator - Device.Network.LAN.10GbOrGreater
    이 테스트에는 VM 및 컴퓨팅 클러스터 작업과 함께 특히 네트워크 어댑터 디바이스를 대상으로 하는 일단의 작업이 포함됩니다.
  • PrivateCloudSimulator - Device.Network.LAN.AzureStack
    이 테스트에는 VM 및 컴퓨팅 클러스터 작업과 함께 Windows Server의 새 ‘소프트웨어 정의 네트워킹’ 기능에 대한 네트워크 어댑터 지원을 확인하는 확장된 작업 세트가 포함되어 있습니다.
  • PrivateCloudSimulator - System.Solutions.StorageSpacesDirect (MIN)/(MAX)
    이 테스트에는 하이퍼 수렴형 스토리지 공간 다이렉트 클러스터에 구축된 전체 솔루션을 대상으로 하는 확장된 작업 세트가 포함되어 있습니다. (MIN) 테스트는 솔루션에 지원되는 최소 노드 수가 있는 클러스터에서 실행해야 합니다. (MAX) 테스트는 솔루션에 지원되는 최대 노드 수가 있는 클러스터에서 실행해야 합니다.
  • PrivateCloudSimulator - System.Solutions.AzureStack (MIN)/(MAX)
    이 테스트에는 전체 AzureStack 솔루션을 대상으로 하는 확장된 작업 세트가 포함되어 있습니다. (MIN) 테스트는 솔루션에 지원되는 최소 노드 수가 있는 클러스터에서 실행해야 합니다. (MAX) 테스트는 솔루션에 지원되는 최대 노드 수가 있는 클러스터에서 실행해야 합니다.

PCS 작업 실행 흐름

각 PCS 작업에 포함되는 작업은 다음과 같습니다.

  • PCS 컨트롤러 초기화
    • 이 스테이지에서는 PCS 실행 엔진에서 PCS 컨트롤러 머신의 SQL 서버와 IIS를 설정합니다.
    • 또한 다음 스테이지에서 VM을 만들 수 있도록 콘텐츠(예: 평가 OS VHD 파일)를 복사합니다.
  • VM 만들기
    • 이 스테이지에서는 PCS 엔진이 클러스터의 각 노드에 VM을 만들기 시작합니다.
    • 목표로 하는 VM/노드 수에 도달하면 VM 만들기가 중지됩니다.
    • 이 단계는 PCS 설정 단계의 일부입니다. 테스트 실행 시간 타이머가 이 스테이지 이후에 시작됩니다.
  • PCS 작업 실행
    • 이제 PCS는 클러스터의 각 노드에서 다양한 유형의 작업(VM, 클러스터, 스토리지, 네트워크)을 시작합니다.
    • 프라이빗 클라우드/데이터 센터 수명 주기를 통해 디바이스(스토리지, 네트워크) 및 솔루션을 실행하기 위해 작업이 병렬로 실행되고 서로 조정됩니다.
    • 작업은 주기적으로 실행되고, 테스트의 목표 실행 시간(프로필/작업에서 정의됨)에 도달하면 중지됩니다.
    • 테스트 실행 시간은 프로필별로 정의되며, 실행되는 프로필에 따라 달라질 수 있습니다. 모든 VM이 만들어지면 테스트 실행 타이머가 시작됩니다.
    • 각 작업의 단계와 각 단계의 해당 결과는 SQL 서버에 저장됩니다.
  • 정리 실행
    • 이 스테이지에서는 스테이지 (4)에서 만든 VM이 정리되고 클러스터가 원래 상태로 복원됩니다(가능한 경우).
    • 테스트 로그가 포함된 보고서 파일(PcsReport.htm)과 ZIP 파일이 생성됩니다.
  • HLK Studio의 보고서 결과
    • 이 스테이지에서는 HLK Studio에서 PCS 실행 결과를 보고합니다.
    • 결과는 Microsoft에 제출하기 위해 HLKX 파일로 패키징할 수 있습니다.

PCS 테스트 실행

PrivateCloudSimulator - Device.Network.LAN.10GbOrGreater

시스템 요구 사항

요구 사항 설명
인증되는 구성 요소 NIC
설치 유형 S2D 스토리지가 있는 하이퍼 수렴형 설치. 참고: SDDC 인증 HBA가 필요합니다.
최소 서버 노드 수 동일한 머신 3개
서버 사양 CPU: 물리적 코어 16개(예: 8코어 소켓 2개), 메모리: 128GB, 부팅 드라이브의 64GB 여유 공간
전체 스토리지 HDD는 노드당 4TB 여유 공간, SSD는 노드당 800GB 여유 공간
디스크 캐시로 사용되는 드라이브가 있는 경우 서버당 2개 이상 있어야 합니다. 서버당 4개 이상의 용량 드라이브(캐시 드라이버가 아님)가 있어야 합니다. 자세한 내용은 S2D 하드웨어 요구 사항을 참조하세요.
네트워크 카드 인증되는 NIC
Switch 모든 NIC 기능을 지원하는 스위치

설정

  • Windows HLK 시작 가이드에 따라 HLK 클라이언트 소프트웨어를 모든 클러스터 노드에 설치합니다.
  • Windows Server 2016 스토리지 공간 다이렉트 클러스터 가이드에 따라 클러스터를 배포합니다.
  • 모든 노드를 동일한 물리적 스위치에 연결해야 합니다.
  • 10GbE 이상의 네트워킹 비트 전송률을 사용해야 합니다. 가상 스위치를 동일한 이름으로 각 노드에 만듭니다.
  • PCS에서 만든 가상 머신에서 가상 스위치에 연결하여 서로 네트워크 트래픽을 보냅니다. 이러한 VM은 DHCP를 통해 IP 주소를 가져옵니다. DHCP 서버에서 유효한 IP 주소를 이러한 VM에 할당하는지 확인합니다. DHCP 서버를 사용할 수 없거나 오류가 발생하면 VM에서 APIPA(자동 개인 IP 주소 지정)를 사용하여 IP 주소와 서브넷을 자체적으로 구성합니다. VM 간에 네트워크 트래픽을 보내려면 각 VM에 유효한 IP 주소가 있어야 합니다.

실행

  • Open HLK Studio

  • Windows HLK 시작 가이드에 따라 머신 풀을 만듭니다.

  • 프로젝트 탭으로 이동하여 프로젝트 만들기를 클릭합니다.

  • 프로젝트 이름을 입력하고 Enter 키를 누릅니다.

  • 선택 탭으로 이동합니다.

  • 네트워크 어댑터 디바이스가 포함된 머신 풀을 선택합니다.

  • 디바이스 관리자를 선택합니다.

  • 디바이스를 선택합니다. 인증 대상이 되는 컴퓨팅 노드에서 관련 NIC 디바이스(가상 스위치 팀의 멤버는 중요하지 않음)를 선택하는 것이 좋습니다.

    hlk showing 10gborgreater test with device selected

  • 선택한 디바이스를 마우스 오른쪽 단추로 클릭하고, 기능 추가/수정을 선택합니다.

  • 기능 대화 상자에서 Device.Network.LAN.10GbOrGreater를 선택한 다음, 확인을 클릭합니다. 대부분의 NIC 카드(속도가 10GbE 이상)는 이 기능이 자동으로 선택되어 있습니다.

  • 테스트 탭으로 이동합니다.

  • PrivateCloudSimulator - Device.Network.LAN.10GbOrGreater를 선택합니다.

  • 선택한 항목 실행을 클릭합니다.

  • [일정] 대화 상자에서

    • 필수 테스트 매개 변수의 값을 입력합니다.
      • DomainName: 테스트 사용자의 도메인 이름
      • UserName: 테스트 사용자의 사용자 이름
      • Password: 테스트 사용자의 암호
      • ComputeCluster: 컴퓨팅 클러스터 이름
      • StoragePath: 기본값은 ""입니다. 컴퓨팅 클러스터에서 사용 가능한 모든 CSV를 사용합니다. 쉼표로 구분된 경로를 입력하여 다른 경로를 사용할 수 있습니다. 예: "C:\ClusterStorage\Volume1,C:\ClusterStorage\Volume2"
      • VmSwitchName: 모든 노드의 가상 스위치 이름
      • FreeDriveLetter: 기본값은 R입니다. 설정 중에 PcsFiles.vhd 파일은 PCS 컨트롤러의 이 드라이브 문자에 탑재됩니다. 이 드라이브 문자를 사용할 수 있는지 확인합니다.
      • IsCreateCluster: 기본값 사용
      • IsRemoveCluster: 기본값 사용
      • IsConfigureHyperV: 기본값 사용
    • 역할에 컴퓨터 매핑
      • PrimaryNode: 선택한 디바이스가 있는 노드
      • 테스트 컨트롤러: PCS 테스트 컨트롤러 머신 선택
      • OtherNodes: 다른 클러스터 노드 선택
  • 확인을 클릭하여 테스트를 예약합니다.

  • 테스트 실행 결과를 실시간으로 보려면 SQL Server Reporting Services를 통해 실시간으로 PCS 보고서 보기를 참조하세요.

기간

  • PCS 작업(아래에 나열됨)은 약 24시간 동안 실행됩니다.
  • 전체 실행에는 24~36시간이 더 걸릴 수 있습니다(설정 및 정리 시간 포함).

PCS 작업

아래 표에는 이 테스트에 포함되는 작업이 나와 있습니다.

작업 이름 설명
VmCloneAction 새 VM을 만듭니다.
VmLiveMigrationAction VM을 다른 클러스터 노드로 실시간 마이그레이션합니다.
VmSnapshotAction VM의 스냅샷을 만듭니다.
VmStateChangeAction VM 상태를 변경합니다(예: 일시 중지됨으로 변경).
VmStorageMigrationAction 클러스터 노드 간에 VM 스토리지(VHD)를 마이그레이션합니다.
VmGuestRestartAction VM을 다시 시작합니다.
VmStartWorkloadAction 사용자 시뮬레이션 워크로드를 시작합니다.
VmGuestFullPowerCycleAction VM 전원 주기를 수행합니다.
ComputeNodeEvacuationAction 클러스터 노드를 다시 시작합니다.

PrivateCloudSimulator - Device.Network.LAN.AzureStack

시스템 요구 사항

요구 사항 설명
인증되는 구성 요소 NIC(RDMA 사용)
설치 유형 S2D 스토리지가 있는 하이퍼 수렴형 설치. 참고: SDDC 인증 HBA가 필요합니다.
최소 서버 노드 수 동일한 머신 3개
서버 사양 CPU: 물리적 코어 16개(예: 8코어 소켓 2개), 메모리: 128GB, 부팅 드라이브의 64GB 여유 공간
전체 스토리지 HDD는 노드당 4TB 여유 공간, SSD는 노드당 800GB 여유 공간
디스크 캐시로 사용되는 드라이브가 있는 경우 서버당 2개 이상 있어야 합니다. 서버당 4개 이상의 용량 드라이브(캐시 드라이버가 아님)가 있어야 합니다. 자세한 내용은 S2D 하드웨어 요구 사항을 참조하세요.
네트워크 카드 인증되는 NIC
Switch 모든 NIC 기능을 지원하는 스위치

설정

  • PCS 컨트롤러 VM이 포함된 Hyper-V 호스트는 Windows Server 2016 이상이어야 합니다.

  • Windows HLK 시작 가이드에 따라 HLK 클라이언트 소프트웨어를 모든 클러스터 노드에 설치합니다.

  • Windows Server 2016 스토리지 공간 다이렉트 클러스터 가이드에 따라 클러스터를 배포합니다.

  • 스토리지 공간 다이렉트에 대한 네트워킹을 설정하기 위한 지침은 Windows Server 2016 수렴형 NIC 및 게스트 RDMA 배포 가이드를 참조하세요.

  • PCS 컨트롤러 VM은 2세대 VM으로 빌드해야 하며 2개의 네트워크 인터페이스가 있어야 합니다. 하나는 관리 네트워크용이고 다른 하나는 SDN(PA 주소 공간) 토폴로지용입니다. SDN 토폴로지의 인터페이스에는 AddressPrefixes 매개 변수로 전달된 IP 주소 공간의 IP 주소가 할당됩니다.

    software-defined networking with s2d

  • 모든 노드는 항상 관리 인터페이스를 통해 PCS 컨트롤러 VM과 통신할 수 있어야 합니다. 이를 위해 각 서버에는 엄격한 비트 전송률 요구 사항을 충족할 필요가 없는 하나의 관리 인터페이스용 NIC가 추가로 있어야 합니다.

  • 모든 노드와 PCS 컨트롤러에는 동일한 최신 KB가 설치되어 있어야 합니다.

  • 테스트 대상 NIC에는 10GbE 이상의 네트워킹 비트 전송률이 필요합니다. 각 서버에는 두 개의 동일한 10GB 이상 NIC가 있어야 합니다.

  • RDMA 가능 NIC를 사용하는 경우 물리적 스위치는 관련 RDMA 요구 사항을 충족해야 합니다.

  • 인증되는 NIC에서 이러한 속성을 지원할 수 있도록 AzureStack 배포와 관련된 NIC의 속성을 설정합니다. NIC 속성은 Get-NetAdapterAdvancedProperty PowerShell cmdlet을 사용하여 확인할 수 있습니다.

    • VXLAN 캡슐화된 작업 오프로드 == 사용
    • 캡슐화 오버헤드 == 160
    • 점보 패킷 >= 1500
    • MtuSize == 1660
  • 모든 노드에 동일한 이름의 팀 구성 지원 가상 스위치가 포함되어 있는지 확인합니다.

    New-VMSwitch -Name SdnSwitch -NetAdapterName "Name 1,Name 2" -AllowManagementOS -EnableEmbeddedTeaming
    
  • 중첩된 가상화 구성: PCS 컨트롤러 VM에 대한 중첩된 가상화를 사용하도록 설정해야 합니다. PCS VM이 OFF 상태인 동안 Hyper-V 호스트에서 다음 명령을 실행합니다.

    Set-VMProcessor -VMName <VMName> -ExposeVirtualizationExtensions $true
    
  • RDMA가 모든 노드에서 설정되고 Get-SMBClientNetworkInterface 및 Get-SMBServerNetworkInterface를 통해 쿼리될 때 반영되는지 확인합니다.

  • 스토리지 네트워크를 실시간 마이그레이션에 사용하도록 실시간 마이그레이션 설정(장애 조치(Failover) 클러스터 관리자->네트워크->실시간 마이그레이션 설정)을 적절하게 설정해야 합니다.

  • 이 테스트는 만든 가상 스위치를 사용하여 가상 머신을 만들고 가상 머신 간에 트래픽을 보냅니다. PCS 가상 머신의 vNic(가상 NIC)에는 AddressPrefixes 매개 변수로 전달된 IP 주소 공간의 IP 주소가 할당됩니다.

실행

  • Open HLK Studio

  • 프로젝트 탭으로 이동하여 프로젝트 만들기를 클릭합니다.

  • 프로젝트 이름을 입력하고 Enter 키를 누릅니다.

  • 선택 탭으로 이동합니다.

  • 네트워크 어댑터 디바이스가 포함된 머신 풀을 선택합니다.

  • 디바이스 관리자를 선택합니다.

  • 디바이스를 선택합니다. 인증 대상이 되는 컴퓨팅 노드에서 관련 NIC 디바이스(가상 스위치 팀의 멤버는 중요하지 않음)를 선택하는 것이 좋습니다.

    hlk studio showing device.network.lan test with device selected

  • 선택한 디바이스를 마우스 오른쪽 단추로 클릭하고, 기능 추가/수정을 선택합니다.

  • 기능 대화 상자에서 Device.Network.LAN.AzureStack을 선택한 다음, 확인을 클릭합니다.

  • 테스트 탭으로 이동합니다.

  • PrivateCloudSimulator - Device.Network.LAN.AzureStack을 선택합니다.

  • 선택한 항목 실행을 클릭합니다.

  • [일정] 대화 상자에서

    • 필수 테스트 매개 변수의 값을 입력합니다.
      • DomainName: 테스트 사용자의 FQDN(정규화된 도메인 이름)
      • UserName: 테스트 사용자의 사용자 이름
      • Password: 테스트 사용자의 암호
      • ComputeCluster: 컴퓨팅 클러스터 이름
      • StoragePath: 기본값은 ''입니다. 컴퓨팅 클러스터에서 사용 가능한 모든 CSV를 사용합니다. 쉼표로 구분된 경로를 입력하여 다른 경로를 사용할 수 있습니다. 볼륨 이름에는 공백이 없어야 합니다. 예: 'C:\ClusterStorage\Volume1,C:\ClusterStorage\Volume2'(작은따옴표 필요)
      • VmSwitchName: SDN에 사용할 가상 스위치의 이름 예: SdnSwitch
      • FreeDriveLetter: 기본값은 R입니다. 설정 중에 PcsFiles.vhd 파일은 PCS 컨트롤러의 이 드라이브 문자에 탑재됩니다. 이 드라이브 문자를 사용할 수 있는지 확인합니다.
      • AdapterNames: vmSwitch의 일부인 어댑터 이름의 쉼표로 구분된 목록. 여러 어댑터에 대해 "'이름 1', '이름 2'" 형식(큰따옴표 및 작은따옴표 필요)을 사용합니다. 이름은 Get-NetAdapter cmdlet에서 파생되어야 합니다.
      • VLan: vmSwitch에 설정된 Vlan ID. 물리적 스위치가 Vlan에 대해 구성된 경우에만 필요합니다. Vlan 태그가 없음을 나타내려면 ‘0’을 입력합니다.
      • RDMAEnabled: NIC에서 RDMA를 지원하는 경우 $True를 입력합니다.
      • SetEnabled: NIC에서 스위치 포함 팀 구성을 지원하는 경우 $True를 입력합니다.
      • HnvEnabled: NIC에서 Hyper-V 네트워크 가상화를 지원하는 경우 $True를 입력합니다.
      • TaskOffloadEnabled: NIC에서 작업 오프로드 캡슐화를 지원하는 경우 $True를 입력합니다.
      • TestControllerNetAdapterName: SDN 네트워크 컨트롤러 가상 머신과 통신하기 위해 AddressPrefixes 범위의 고정 IP를 할당할 수 있는 PCS 컨트롤러의 어댑터 이름. 예: '이더넷 2'(이름에 공백이 있는 경우 작은따옴표 필요)
      • VHDSourcePath: Windows Server 2019 DataCenter용 VHDX 파일. 이 VHDX 파일은 네트워크 컨트롤러 VM을 만드는 데 사용됩니다. 기본값은 c:\pcs\BaseVHDX\17763.1.amd64fre.rs5_release.180914-1434_server_serverdatacentereval_en-us.vhdx입니다. 사용자 고유의 VHDX 파일을 사용해야 하는 경우를 제외하고 기본값을 변경하지 마세요. 복제된 vhdx 파일에는 동일한 디스크 서명이 있습니다. 디스크 서명 충돌을 방지하기 위해 이 VHDX 파일은 PCS 컨트롤러에서 사용하는 파일과 같으면 안 됩니다.
      • KBPackagePath: VHDSourcePath 매개 변수에 지정된 VHDX 파일에 적용해야 하는 Windows 업데이트 패키지의 쉼표로 구분된 목록. 이러한 업데이트 패키지는 모든 클러스터 노드 및 PCS 컨트롤러 머신에 설치된 패키지와 일치해야 합니다. 기본값은 ''입니다(작은따옴표 필요). 즉, VHDX 파일에 KB가 삽입되지 않습니다.
        • 최신 버전 또는 최근 버전의 Windows 업데이트 패키지를 설치해야 합니다. Get-Hotfix cmdlet을 사용하여 머신에 설치된 항목을 확인할 수 있습니다.
        • 대부분의 Windows 업데이트 패키지를 사용하려면 먼저 ‘SSU(서비스 스택 업데이트)’를 설치해야 합니다. 즉, 이 매개 변수에서 2KB 이상을 입력해야 합니다.
        • 예:
          • KB4501371(2019년 6월 18일)
          • “이 업데이트를 받는 방법” 섹션에는 ‘SSU(서비스 스택 업데이트)’ KB4504369가 필요하다고 나와 있습니다.
          • 이 매개 변수에서 'c:\KB\Windows-KB4504369-x64.msu,c:\KB\Windows-KB4501371-x64.msu'를 입력해야 합니다. (작은따옴표가 필요합니다. KB4504369가 설치된 후 KB4501371이 설치됩니다.)
          • Windows 업데이트 사이트에서 MSU 파일을 다운로드하고, PCS 컨트롤러 머신의 c:\KB 폴더에 복사해야 합니다.
          • 중요: 파일 이름 형식은 “Windows-KBNumber-x64.msu”이어야 합니다. KBNumber 앞뒤에 대시(-)가 필요합니다.
      • AddressPrefixes: 테넌트 VM 및 호스트에서 사용할 IP 주소 범위. 이러한 주소는 SDN 데이터 센터 관리에 사용됩니다.
      • VipPrefixes: VIP 부하 분산 시나리오의 SLB에 사용되는 두 개의 IP 주소 범위. “'192.160.2.0/23','192.160.3.0/23'” 형식을 사용합니다(큰따옴표 및 작은따옴표 필요).
      • ClientAddressPrefix: 클라이언트 VM에서 사용하는 IP 주소 범위
    • 역할에 컴퓨터 매핑
      • PrimaryNode: 선택한 디바이스가 있는 노드이며 HLK에서 자동으로 선택됩니다.
      • 테스트 컨트롤러: PCS 테스트 컨트롤러 머신 선택
      • OtherNodes: 다른 클러스터 노드 선택
  • 확인을 클릭하여 테스트를 예약합니다.

  • 테스트 실행 결과를 실시간으로 보려면 SQL Server Reporting Services를 통해 실시간으로 PCS 보고서 보기를 참조하세요.

정리

테스트가 갑자기 종료되는 경우 PCS 컨트롤러에서 C:\Pcs\ReRunPcsCleanup.cmd 스크립트를 사용하여 설정 상태를 정리합니다. 새 실행을 시작하기 전에 부실 VM 및 SDN 인프라를 클린 것이 매우 중요합니다.

새 실행을 시작하기 전에 다음 항목이 정리되었는지 확인하세요.

  • 클러스터된 VM 역할(FailoverClusterManager->Cluster->Roles)

    Get-ClusterGroup -Cluster $clusterName
    
  • PCS에서 만든 모든 VM

    Get-ClusterNode -Cluster $clusterName | % { Get-VM -ComputerName $_.Name }
    
  • PCS/SDN에서 만든 vNic

    Get-ClusterNode -Cluster $clusterName | % { Get-VMNetworkAdapter -ComputerName $_.Name -ManagementOS | Select-Object ComputerName,Name,SwitchName }
    

    powershell showing vnic that needs to be cleaned up

  • 클러스터의 스토리지/CSV 볼륨에는 PCS와 관련된 항목(C:\ClusterStorage\Volume1\PCS)이 없습니다.

기간

  • PCS 작업(아래에 나열됨)은 약 24시간 동안 실행됩니다.
  • 전체 실행에는 36~48시간이 더 걸릴 수 있습니다(설정 및 정리 시간 포함).

PCS 작업

아래 표에는 이 테스트에 포함되는 작업이 나와 있습니다.

작업 이름 설명
NetRunEastWestCrossSubnetTrafficAction VNetwork는 같지만 Vsubnet이 다른 두 테넌트 VM 간에 트래픽을 실행합니다.
NetRunEastWestSameSubnetTrafficAction 동일한 Vsubnet의 두 테넌트 VM 간에 트래픽을 실행합니다.
NetLoadBalancerEastWestInterTenantTrafficAction 부하 분산된 테넌트와 다른 앱 계층의 다른 VM 간에 트래픽을 실행합니다. 프런트 엔드 애플리케이션(웹 사이트) VM 간에 부하 분산 트래픽을 시뮬레이션합니다.
NetLoadBalancerEastWestIntraTenantTrafficAction 부하 분산된 테넌트와 동일한 앱 계층의 VM 간에 트래픽을 실행합니다. 백 엔드 애플리케이션(DB)에서 프런트 엔드 애플리케이션(웹 사이트)으로의 부하 분산 트래픽을 시뮬레이션합니다.
NetLoadBalancerInboundTrafficAction 테넌트 네트워크 외부에서 부하 분산된 VM(웹 사이트)으로 트래픽을 실행합니다.
NetLoadBalancerNorthSouthTrafficAction 테넌트 네트워크 내부에서 부하 분산된 VM으로 트래픽을 실행합니다.
NetLoadBalancerOutboundTrafficAction 테넌트 네트워크 내부의 부하 분산된 VM에서 외부 VM으로 트래픽을 실행합니다.
NetAddInboundVipToLoadBalancerAction 테넌트 VM의 가상 IP를 동적으로 만듭니다. 주로 사용할 다른 트래픽 작업을 위한 것입니다.
VmCloneAction 테넌트 VM의 가상 IP를 동적으로 만듭니다. 주로 사용할 다른 트래픽 작업을 위한 것입니다.
VmLiveMigrationAction VM을 다른 클러스터 노드로 실시간 마이그레이션합니다.
VmStateChangeAction VM 상태를 변경합니다(예: 일시 중지됨으로 변경).
VmStorageMigrationAction 클러스터 노드 간에 VM 스토리지(VHD)를 마이그레이션합니다.
VmGuestRestartAction VM을 다시 시작합니다.
VmGuestFullPowerCycleAction VM 전원 주기를 수행합니다.

PrivateCloudSimulator - System.Solutions.StorageSpacesDirect

설정

  • 하이퍼 수렴형 솔루션을 설정합니다. 예제는 여기를 참조하세요.
  • 볼륨 수를 클러스터에 있는 서버 수의 배수로 만드는 것이 좋습니다. 예를 들어 서버가 4개이면 볼륨도 3개나 5개보다는 4개를 사용할 때 보다 일관된 성능을 경험할 수 있습니다. 이렇게 하면 클러스터에서 서버 간에 볼륨 “소유권”(하나의 서버에서 각 볼륨에 대한 메타데이터 오케스트레이션을 처리함)을 균등하게 배포할 수 있습니다.
  • ReFS(복원 파일 시스템)를 스토리지 공간 다이렉트에 사용하는 것이 좋습니다.
  • 테스트는 기본적으로 클러스터 노드당 20개의 VM을 만듭니다. 예상 평균 VM의 VHD 파일 크기는 40GB일 수 있습니다. 이 테스트를 4노드 클러스터 환경에서 실행하려면 가상 디스크 크기가 20 * 40 * 4 = 3,200GB 이상이어야 합니다.
  • 최소 구성
    • 이 구성에는 솔루션 제품군에서 지원하는 최소 클러스터 노드 수, 가장 느린 지원 프로세서, 최소 메모리 용량 및 최소 스토리지 용량이 포함됩니다.
    • PrivateCloudSimulator - System.Solutions.StorageSpacesDirect(MIN) 작업을 사용하여 이 설정의 유효성을 검사하세요.
  • 최대 구성
    • 이 구성에는 솔루션 제품군에서 지원하는 최대 클러스터 노드 수와 최대 스토리지 용량이 포함됩니다.
    • 프로세서와 메모리는 솔루션에서 지원되는 최솟값보다 크거나 같아야 하지만 지원되는 최댓값일 필요는 없습니다. 프로세서 및 메모리 값은 솔루션에서 가장 일반적인 SKU를 나타내야 합니다.
    • PrivateCloudSimulator - System.Solutions.StorageSpacesDirect (MAX) 작업을 사용하여 이 설정의 유효성을 검사하세요.

실행

  • Open HLK Studio

  • Windows HLK 시작 가이드에 따라 머신 풀을 만듭니다.

  • 프로젝트 탭으로 이동하여 프로젝트 만들기를 클릭합니다.

  • 프로젝트 이름을 입력하고 Enter 키를 누릅니다.

  • 선택 탭으로 이동합니다.

  • 테스트 대상 시스템과 PCS 컨트롤러 머신이 포함된 머신 풀을 선택합니다.

  • 왼쪽 패널에서 시스템을 선택한 다음, PCS 테스트 컨트롤러를 선택합니다(참고: 인증해야 하는 머신이 아님).

    hlk studio showing systems tab with pcs test controller selected

  • 선택한 PCS 컨트롤러 머신을 마우스 오른쪽 단추로 클릭하고, 기능 추가/수정을 선택합니다.

  • 기능 대화 상자에서 System.Solution.StorageSpacesDirect를 선택한 다음, [확인]을 클릭합니다.

  • 테스트 탭으로 이동합니다.

  • PrivateCloudSimulator - System.Solutions.StorageSpacesDirect(MAX) 또는 PrivateCloudSimulator - System.Solutions.StorageSpacesDirect(MIN)(테스트 대상 솔루션 크기 기준)를 선택합니다.

  • 선택한 항목 실행을 클릭합니다.

  • [일정] 대화 상자에서

    • 필수 테스트 매개 변수의 값을 입력합니다.
      • DomainName: 테스트 사용자의 FQDN(정규화된 도메인 이름)
      • UserName: 테스트 사용자의 사용자 이름
      • Password: 테스트 사용자의 암호
      • ComputeCluster: 컴퓨팅 클러스터 이름
      • StoragePath: 기본값은 ""입니다. 컴퓨팅 클러스터에서 사용 가능한 모든 CSV를 사용합니다. 쉼표로 구분된 경로를 입력하여 다른 경로를 사용할 수 있습니다. 예: "C:\ClusterStorage\Volume1,C:\ClusterStorage\Volume2"(큰따옴표 필요)
      • VmSwitchName: 가상 스위치의 이름을 입력합니다. 이 이름은 모든 노드에서 동일해야 합니다.
      • FreeDriveLetter: 기본값은 R입니다. 설정 중에 PcsFiles.vhd 파일은 PCS 컨트롤러의 이 드라이브 문자에 탑재됩니다. 이 드라이브 문자를 사용할 수 있는지 확인합니다.
    • 역할에 컴퓨터 매핑
      • 테스트 컨트롤러: PCS 테스트 컨트롤러 머신 선택
  • 확인을 클릭하여 테스트를 예약합니다.

  • 테스트 실행 결과를 실시간으로 보려면 SQL Server Reporting Services를 통해 실시간으로 PCS 보고서 보기를 참조하세요.

기간

  • PCS 작업(아래에 나열됨)은 96시간 동안 실행됩니다.
  • 전체 실행에는 24~36시간이 더 걸릴 수 있습니다(설정 및 정리 시간 포함).

PCS 작업

프로필은 Microsoft AzureStack에 대한 디스크 드라이브의 유효성을 검사하기 위해 실행할 작업을 정의합니다. 아래 표에는 이 프로필에 포함되는 작업이 나와 있습니다.

작업 이름 설명
VmCloneAction 새 VM을 만듭니다.
VmLiveMigrationAction VM을 다른 클러스터 노드로 실시간 마이그레이션합니다.
VmSnapshotAction VM의 스냅샷을 만듭니다.
VmStateChangeAction VM 상태를 변경합니다(예: 일시 중지됨으로 변경).
VmStorageMigrationAction 클러스터 노드 간에 VM 스토리지(VHD)를 마이그레이션합니다.
VmGuestRestartAction VM을 다시 시작합니다.
VmStartWorkloadAction 사용자 시뮬레이션 워크로드를 시작합니다.
VmGuestFullPowerCycleAction VM 전원 주기를 수행합니다.
ComputeNodeEvacuation 하나의 클러스터 노드에서 모든 리소스를 드레이닝합니다.
ClusterCSVMoveAction CSV 디스크를 최상의 사용 가능한 노드로 이동합니다.
StorageNodePoolMove 스토리지 풀(스토리지 공간에서 만들어짐)을 스토리지 클러스터의 다른 소유자 노드로 이동합니다.
StorageNodeRestart 스토리지 클러스터에서 노드를 다시 시작합니다.
StorageNodeBugcheck 스토리지 클러스터에 있는 한 노드의 버그를 검사합니다.
StorageNodeUpdateStorageProviderCacheAction PowerShell에서 update-storageprovidercache 명령을 호출합니다.

PrivateCloudSimulator - System.Solutions.AzureStack

설정

  • 하이퍼 수렴형 솔루션을 설정합니다. 예제는 여기를 참조하세요.
  • 볼륨 수를 클러스터에 있는 서버 수의 배수로 만드는 것이 좋습니다. 예를 들어 서버가 4개이면 볼륨도 3개나 5개보다는 4개를 사용할 때 보다 일관된 성능을 경험할 수 있습니다. 이렇게 하면 클러스터에서 서버 간에 볼륨 “소유권”(하나의 서버에서 각 볼륨에 대한 메타데이터 오케스트레이션을 처리함)을 균등하게 배포할 수 있습니다.
  • ReFS(복원 파일 시스템)를 스토리지 공간 다이렉트에 사용해야 합니다. 그렇지 않으면 작업이 실패합니다.
  • 테스트는 기본적으로 클러스터 노드당 20개의 VM을 만듭니다. 예상 평균 VM의 VHD 파일 크기는 40GB일 수 있습니다. 이 테스트를 4노드 클러스터 환경에서 실행하려면 총 가상 디스크 크기가 20 * 40 * 4 = 3,200GB 이상이어야 합니다.
  • 최소 구성
    • 이 구성에는 솔루션 제품군에서 지원하는 최소 클러스터 노드 수, 가장 느린 프로세서, 최소 메모리 용량 및 최소 스토리지 용량이 포함됩니다.
    • PrivateCloudSimulator - System.Solutions.AzureStack (MIN) 작업을 사용하여 이 설정의 유효성을 검사하세요.
  • 최대 구성
    • 이 구성에는 솔루션 제품군에서 지원하는 최대 클러스터 노드 수와 최대 스토리지 용량이 포함됩니다.
    • 프로세서와 메모리는 솔루션에서 지원되는 최솟값보다 크거나 같아야 하지만 지원되는 최댓값일 필요는 없습니다. 프로세서 및 메모리 값은 솔루션에서 가장 일반적인 SKU를 나타내야 합니다.
    • PrivateCloudSimulator - System.Solutions. AzureStack (MAX) 작업을 사용하여 이 설정의 유효성을 검사하세요.

실행

  • Open HLK Studio

  • Windows HLK 시작 가이드에 따라 머신 풀을 만듭니다.

  • 프로젝트 탭으로 이동하여 프로젝트 만들기를 클릭합니다.

  • 프로젝트 이름을 입력하고 Enter 키를 누릅니다.

  • 선택 탭으로 이동합니다.

  • 테스트 대상 시스템이 포함된 머신 풀을 선택합니다.

  • 왼쪽 패널에서 시스템을 선택한 다음, PCS 테스트 컨트롤러를 선택합니다(참고: 인증해야 하는 머신이 아님).

    hlk studio with pcs test controller selected

  • 선택한 디바이스를 마우스 오른쪽 단추로 클릭하고, 기능 추가/수정을 선택합니다.

  • 기능 대화 상자에서 System.Solution.AzureStack를 선택한 다음, [확인]을 클릭합니다.

  • 테스트 탭으로 이동합니다.

  • PrivateCloudSimulator - System.Solutions.AzureStack을 선택합니다.

  • 선택한 항목 실행을 클릭합니다.

  • [일정] 대화 상자에서

    • 필수 테스트 매개 변수의 값을 입력합니다.
      • DomainName: 테스트 사용자의 FQDN(정규화된 도메인 이름)
      • UserName: 테스트 사용자의 사용자 이름
      • Password: 테스트 사용자의 암호
      • ComputeCluster: 컴퓨팅 클러스터 이름
      • StoragePath: 기본값은 ""입니다. 컴퓨팅 클러스터에서 사용 가능한 모든 CSV를 사용합니다. 쉼표로 구분된 경로를 입력하여 다른 경로를 사용할 수 있습니다. 예: "C:\ClusterStorage\Volume1,C:\ClusterStorage\Volume2"(큰따옴표 필요)
      • VmSwitchName: 가상 스위치의 이름을 입력합니다. 이 이름은 모든 노드에서 동일해야 합니다.
      • FreeDriveLetter: 기본값은 R입니다. 설정 중에 PcsFiles.vhd 파일은 PCS 컨트롤러의 이 드라이브 문자에 탑재됩니다. 이 드라이브 문자를 사용할 수 있는지 확인합니다.
    • 역할에 컴퓨터 매핑
      • 테스트 컨트롤러: PCS 테스트 컨트롤러 머신 선택
  • 확인을 클릭하여 테스트를 예약합니다.

  • 테스트 실행 결과를 실시간으로 보려면 SQL Server Reporting Services를 통해 실시간으로 PCS 보고서 보기를 참조하세요.

기간

  • PCS 작업(아래에 나열됨)은 96시간 동안 실행됩니다.
  • 전체 실행에는 24~36시간이 더 걸릴 수 있습니다(설정 및 정리 시간 포함).

actions

프로필은 Microsoft AzureStack에 대한 스토리지 엔클로저의 유효성을 검사하기 위해 실행할 작업을 정의합니다. 아래 표에는 이 프로필에 포함되는 작업이 나와 있습니다.

작업 이름 설명
VmCloneAction 새 VM을 만듭니다.
VmLiveMigrationAction VM을 다른 클러스터 노드로 실시간 마이그레이션합니다.
VmSnapshotAction VM의 스냅샷을 만듭니다.
VmStateChangeAction VM 상태를 변경합니다(예: 일시 중지됨으로 변경).
VmStorageMigrationAction 클러스터 노드 간에 VM 스토리지(VHD)를 마이그레이션합니다.
VmGuestRestartAction VM을 다시 시작합니다.
VmStartWorkloadAction 사용자 시뮬레이션 워크로드를 시작합니다.
VmGuestFullPowerCycleAction VM 전원 주기를 수행합니다.
ClusterCSVMoveAction CSV 디스크를 최상의 사용 가능한 노드로 이동합니다.
StorageNodePoolMove 스토리지 풀(스토리지 공간에서 만들어짐)을 스토리지 클러스터의 다른 소유자 노드로 이동합니다.
StorageNodeRestart 스토리지 클러스터에서 노드를 다시 시작합니다.
StorageNodeBugcheck 스토리지 클러스터에 있는 한 노드의 버그를 검사합니다.
StorageNodeUpdateStorageProviderCacheAction PowerShell에서 update-storageprovidercache 명령을 호출합니다.

SQL Server Reporting Services를 통해 실시간으로 PCS 보고서 보기

PCS 작업이 실행되는 동안 보고서는 PCS 컨트롤러의 SQL 데이터베이스에 저장됩니다. 각 보고서에는 수행된 모든 작업, 통과 비율, 테스트 중에 획득되고 해제된 모든 리소스가 나열됩니다. 언제든지 이전 테스트 실행의 데이터를 검토할 수 있도록 각 테스트 실행에 대해 새 데이터베이스가 만들어집니다.

보고서를 보려면 다음 단계를 수행합니다.

  • 기본적으로 Internet Explorer 보안 강화 구성은 Windows Server에서 사용하도록 설정됩니다. 보고서를 보려면 이 보안 강화 구성을 사용하지 않도록 설정해야 합니다.

    서버 관리자 => 로컬 서버=>를 열고, IE 보안 강화 구성을 클릭하여 관리자와 사용자에 대해 사용하지 않도록 설정합니다.

  • PCS 컨트롤러에서 IE를 열고 http://<PcsControllerMachineName>/Reports를 방문합니다.

    pcs reporting page in internet explorer

  • PCS 보고서 =>PCSRuns를 차례로 클릭합니다.

  • 각 PCS 실행은 고유한 통과 실행 ID로 식별됩니다.

    ie reporting showing pass run ids

  • 통과 실행 ID(예: f44b3f88-3dbf-476e-9294-9d479ca0a369)를 클릭하여 PCS 실행에서 보고서를 엽니다. 이 보고서의 데이터는 실시간 데이터입니다. 테스트가 실행되는 동안 테스트 실행의 진행률을 실시간으로 모니터링할 수 있습니다.

    • 테스트 실행에 참여한 모든 리소스(노드, 클러스터 및 VM)에 대한 개요
    • 각 리소스에 대해 수행된 모든 작업. 통과 및 실패 열은 통과한 작업과 실패한 작업의 수를 보고합니다.

    ie reporting showing run information

  • 전체 작업 정보 테이블에서 작업/통과/실패 열의 링크를 클릭하여 세부 정보 페이지를 열 수 있습니다. 여기서 작업 결과에 대한 자세한 정보가 제공됩니다. 예를 들어 VMLiveMigrationAction 항목에서 실패 번호 9를 클릭하면 다음 그림과 같은 요약이 표시됩니다.

    ie reporting showing vmlivemigrationaction

  • 위의 첫 번째 항목에서 제공하는 정보는 다음과 같습니다.

    • 실패 ID: PCS에서 실패가 발생하면 실패 메시지를 일반화하고 이에 대한 고유한 해시를 생성합니다. 위의 예에서 실패 ID는 97c12afd-23a8-3982-e304-a5dc6793950d입니다.

    • 실패 해시: 일반화된 실패 메시지입니다. 위의 예에서 실패 해시는 다음과 같습니다.

      가상 머신 <VIRTUAL MACHINE> 실시간 마이그레이션이 진행률 <PERCENTAGE>에서 실패했습니다(마이그레이션 상태: 마이그레이션 중).
      오류: ‘<VIRTUAL MACHINE>’에 대한 가상 머신 마이그레이션 작업이 마이그레이션 대상 ‘<COMPUTE NODE>’에서 실패했습니다. (가상 머신 ID <GUID>)
      Virtual Machine 마이그레이션에 대한 데이터를 받지 못했습니다. 시간 제한 기간이 만료되어 이 작업이 반환되었습니다. (0x800705B4).

    • 현재 실행 수: 이 실행 중에 이 특정 오류 메시지와 함께 실패한 특정 유형의 작업 수입니다. 위의 예에서 VMLiveMigrationAction이 3회 실행되었습니다.

    • 모든 실행 수: 모든 PCS 실행에서 이 특정 실패로 인해 실패한 작업의 수입니다. VMLiveMigrationAction의 경우 3개입니다.

    • 영향을 받은 PCS 실행 수: 이 실패의 영향을 받은 실행 수를 알려줍니다. VMLiveMigrationAction의 경우 1개의 PCS 실행만 영향을 받았습니다.

  • 오류를 자세히 살펴보려면 해당 화면에서 실패 ID를 클릭하여 모든 PCS 실행에서 실패 유형의 전체 기록으로 드릴다운할 수 있습니다. 예를 들어 97c12afd-23a8-3982-e304-a5dc6793950d를 클릭하면 다음과 같이 표시됩니다. 이 페이지에는 모든 실패한 작업이 실패 유형별로 그룹화되어 나열됩니다. 그러면 조사가 필요할 수도 있는 주요 기능을 강조하는 효과가 있습니다.

    ie reporting showing failing actions by cause

  • 작업 ID를 클릭하면 더 깊이 드릴다운하여 작업 로그 보고서를 볼 수 있습니다. 오류는 빨간색으로 표시되고, 경고는 노란색으로 표시됩니다.

    ie reporting showing action log report

HLK 컨트롤러의 PCS 실행 문제 해결

PCS 실행 흐름에는 여러 스테이지가 있습니다. 다음은 HLK 관리자 => 탐색기 => 작업 모니터 => 머신 풀 선택 => [작업 실행 상태]에서 작업 선택에서 결과를 살펴보는 예제입니다.

pcs controller showing task execution status

PCS가 설정, 실행 또는 정리 스테이지에서 실패한 경우 마우스 오른쪽 단추로 작업 이름(또는 자식 작업 이름)을 클릭하고 [작업 로그 찾아보기]를 클릭하여 작업 로그를 찾아볼 수 있습니다. 로그 파일 이름은 PCS-E2Elaunch_Setup.log, PCSE2Elaunch_Execute.log 및 PCS-E2Elaunch_Cleanup.log입니다. 로그 파일에는 실패에 대한 정보가 포함됩니다. 로그 파일의 끝부분에서 예기치 않은 예외를 검색해 보세요.

PCS 컨트롤러의 PCS 실행 문제 해결

설정/실행/정리 스테이지에서 PCS 작업이 실패하면 PCS 컨트롤러에서 직접 해당 스테이지를 다시 실행할 수 있습니다. 이 방법은 이러한 스테이지에서 문제를 해결하는 데 유용합니다.

  • 관리자 권한 명령 프롬프트를 엽니다.
  • ReRunPcsSetup.cmd, ReRunPcsExecute.cmd 또는 ReRunPcsCleanup.cmd 스크립트를 다시 실행합니다.

로그 및 진단

PCS에는 설정, 실행 및 정리의 세 가지 주요 스테이지가 있습니다. PCS 작업은 PCS-E2Elaunch.ps1 스크립트를 사용하여 이러한 세 가지 스테이지를 시작합니다. 로그 파일 이름은 PCS-E2ELaunch_Setup.log, PCS-E2ELaunch_Execute.log 및 PCSE2ELaunch_Cleanup.log입니다.

PCS 실행이 완료되면 PCS는 정리 스테이지 중에 로그를 분석합니다. PCSReport.htm으로 저장된 분석 보고서에서 다음 조건이 충족되면 실행이 성공한 것입니다.

  • 모든 PCS 작업의 통과 비율이 90% 이상입니다.
  • PCS에서 테스트를 위해 시작한 클러스터 노드를 제외한 나머지 클러스터 노드에서는 예기치 않은 충돌이 없습니다.

정리 스테이지 중에 PCS 컨트롤러에서 생성되는 파일은 다음과 같습니다.

  • PcsReport.htm: 실행에 대한 요약
  • ClusterName-PRE.mht.html: 실행 스테이지 전에 실행되는 클러스터 유효성 검사 테스트 보고서
  • ClusterName-POST.mht.html: 실행 스테이지 후에 실행되는 클러스터 유효성 검사 테스트 보고서
  • PcsLog-DateTime.zip: 로그를 포함하고 있으며 테스트가 완료되면 HLK 컨트롤러에 복사됩니다.
    • MHTML 폴더: PCS SQL 로그 포함
    • SDDCDiagnosticInfo 폴더: 클러스터 로그 및 이벤트 로그 포함

PCS 인증 실행에서 보거나 발생하는 문제는 PCS 자체와 관련이 없는 것으로 여러 번 확인되었습니다. 아래에는 일부 문제의 범위를 좁히는 데 도움이 되는 기본 지침이 나와 있습니다.

  • 클러스터 유효성 검사 테스트를 실행하고 오류 보고서를 확인합니다.
  • 장애 조치(failover) 클러스터 관리자에서 모든 노드, vDisk 및 풀이 정상 상태인지 확인합니다. 정상이 아니면 MSFT를 호출하기 전에 시간을 들여 로그/디버깅을 확인하는 것이 좋습니다.
  • Hyper-V 관리자를 열고 VM 및 vSwitch가 열거되는지 확인합니다(Get-VM 또는 Get-VMSwitch를 실행해도 가능함).
  • 하나 이상의 모든 컴퓨팅 노드에서 vSwitch를 PCS 테스트 외부에 만들 수 있는지 확인합니다.
  • 하나 이상의 모든 노드에서 VM을 만들고 vmNetworkAdapter를 vSwitch에 연결할 수 있는지 확인합니다.
  • 컴퓨팅 노드의 %systemdrive%에서 “dir /s *.dmp”를 실행하여 버그 확인으로 인해 생성된 덤프 파일을 찾습니다.
  • 커널 디버거가 연결되어 있지 않은 경우 LiveKD를 사용하여 중단된 커널 모듈/스레드를 확인할 수 있습니다.
  • 평가 버전 라이선스는 180일마다 다시 설정되므로 컴퓨팅 노드의 라이선스가 활성 상태인지 확인합니다.

PCS 로그가 포함된 ZIP 파일 생성

PCS 컨트롤러에서 다음 스크립트를 실행하여 필요한 로그가 포함된 ZIP 파일을 생성할 수 있습니다. 이 방법은 작업이 취소되거나 테스트가 실행되는 동안 유용합니다.

C:\pcs\PCS-E2ELaunch.ps1 -DomainName <string> -UserName <string> -Password <string> -ComputeCluster <string> [-StorageCluster <string>] -CollectLog [-CollectLogLevel <int>]

매개 변수

  • DomainName: 테스트 사용자의 FQDN(정규화된 도메인 이름)
  • UserName: 테스트 사용자의 사용자 이름
  • Password: 테스트 사용자의 암호
  • ComputeCluster: 컴퓨팅 클러스터 이름
  • StorageCluster: 선택 사항이며 스토리지 클러스터 이름입니다. 컴퓨터 클러스터와 스토리지 클러스터가 같으면 이 매개 변수를 지정하지 마세요.
  • CollectLog: 필수
  • CollectLogLevel: 선택 사항이며 기본값은 1입니다. 자세한 로그를 수집하려면 3을 입력합니다.

수동으로 PcsReport.htm 파일 생성

PCS가 실행되는 동안 PCS 컨트롤러에서 다음 cmdlet을 실행하여 모든 노드의 예기치 않은 버그 확인을 나열하는 HTML 보고서를 생성할 수 있습니다.

Import-Module C:\PCS\PrivateCloudSimulator-Manager.psm1
Get-PCSReport

PCS 작업 사용자 지정

  • 각 PCS 작업에는 해당 작업을 정의하는 고유한 xml 파일이 있습니다.

  • 각 작업에는 3개 이상의 xml 파일(예: PrivateCloudSimulator.xml, PrivateCloudSimulator_Create.xml, PrivateCloudSimulator_Storage.xml)이 포함될 수 있습니다.

  • 이러한 XML 파일은 HLK 컨트롤러에서 찾을 수 있습니다. 다음은 PrivateCloudSimulator - System.Solution.AzureStack 작업의 예제입니다. 강조 표시된 폴더 이름은 HLK 작업의 이름입니다.

    C:\Program Files (x86)\Windows Kits\10\Hardware Lab Kit\Tests\amd64\PCS\System.Solutions.AzureStack\PrivateCloudSimulator_Create.xml

예제 1: 작업 사용/사용 안 함

<ConfigurableType Type="Microsoft.PrivateCloudSimulator.VM.Actions.HyperV.VmCloneAction, Microsoft.PrivateCloudSimulator.VM.Actions.HyperV">
  <ConfigurableTypeField FieldName="Interval" ValueType="System.TimeSpan" Value="00:01:00" />
  <ConfigurableTypeField FieldName="StartupNumber" ValueType="System.Int32" Value="2" />
  <ConfigurableTypeField FieldName="InjectVMRTInGuest" ValueType="System.Boolean" Value="true" />
  <ConfigurableTypeField FieldName="BaseVHDPath" ValueType="System.String" Value="%BASEVHD%" />
</ConfigurableType>
  • 테스트 작업 이름은 VmCloneAction입니다.
  • Interval 필드는 작업이 실행되는 빈도를 설정합니다. hh:mm:ss 형식을 사용합니다. 예를 들어 값 02:00:00은 2시간마다 작업을 반복합니다.
  • StartUpNumber 필드는 컴퓨팅 클러스터의 각 노드에서 시작할 해당 작업의 인스턴스 수를 정의합니다. 작업을 사용하지 않도록 설정하려면 이 필드를 0으로 설정합니다.
  • 다른 필드는 수정하지 않습니다.

예제 2: VM에서 차이점 보관용 디스크를 사용하도록 변경

<ConfigurableType Type="Microsoft.PrivateCloudSimulator.VM.Actions.HyperV.VmCloneBase, Microsoft.PrivateCloudSimulator.VM.Actions.HyperV">
  <ConfigurableTypeField FieldName="VmClusteringPercentage" ValueType="System.Int32" Value="100" />
  <ConfigurableTypeField FieldName="UseDiffDisks" ValueType="System.Boolean" Value="false" />
</ConfigurableType>
  • 기본적으로 PCS는 제공된 게스트 OS VHD의 복사본을 만들어 기본적으로 동적 가상 디스크가 있는 VM을 만듭니다. 대신 차이점 보관용 디스크가 있는 VM을 만들려면 UseDiffDisks 값을 true로 설정합니다.

예제 3: 노드당 만들어지는 VM 수 변경

<ConfigurableType Type="Microsoft.PrivateCloudSimulator.VM.Actions.HyperV.VmCreationBase, Microsoft.PrivateCloudSimulator.VM.Actions.HyperV">
  <!-- MaxVmCount is Max Number of VMs on any one node -->
  <ConfigurableTypeField FieldName="MaxVmCount" ValueType="System.Int32" Value="20" />
</ConfigurableType>
  • PCS는 기본적으로 클러스터 노드당 20개의 VM을 만듭니다. 평균 VM 크기는 40GB일 수 있습니다. 4노드 클러스터 환경에서는 20 * 4 * 40 = 3,200GB의 디스크 공간이 필요할 수 있습니다. 하드웨어를 인증하려는 경우 기본값을 변경하지 마세요. 디스크 수를 줄이는 대신 디스크를 더 추가하는 것이 좋습니다.

작업 로그 사용자 지정

PCS 실행에는 RunId가 있습니다. PCS 작업에는 작업 ID가 있습니다. PCS 작업이 실패하면 PCS는 오류 메시지에서 변형(즉, VM 이름)을 제거하고 고유한 해시 값을 생성합니다. 비슷한 실패에는 동일한 고유 해시 값이 있습니다. 그러면 PCS는 SQL 보고서 사이트에서 이러한 실패를 모두 그룹화합니다.

PCS는 .NET 추적 수신기를 사용하여 테스트 결과를 수집합니다. 이러한 수신기는 Microsoft.PrivateCloudSimulator.exe.config에 정의됩니다.

  • SQLOnline: 이 수신기는 결과를 SQL 데이터베이스에 기록합니다.
  • AnalyticalLogGather: 이 수신기는 작업이 실패할 때 추가 정보를 수집합니다.

특정 작업이 실패하거나 특정 해시 값이 표시되면 이벤트 로그, 클러스터 로그를 수집하거나 스크립트를 호출하도록 AnalyticalLogGather 수신기를 구성할 수 있습니다. 이는 ActionFailureReactionPolicy.xml에 정의됩니다.

ActionFailureReactionPolicy.xml에서 PCS는 두 가지 유형의 트리거와 세 가지 유형의 반응을 지원합니다. 이 XML을 사용하면 “X 트리거가 표시되면 Y 및 Z 반응을 수행합니다”와 같은 규칙을 정의할 수 있습니다. 대부분의 작업에서는 NodeScope가 ReservedOnly로 설정되고 MaxLevel이 3(Critical, Error 및 Warning 이벤트)으로 설정됩니다.

트리거:

Type 데이터
ActionFail ActionFullName
KnownFailure FailureHash

반응:

Type 데이터
ETWCollection Channel, NodeScope, StorageLocation, MaxLevel
ClusterLogCollection UseLocalTime, NodeScope, StorageLocation, MaxTimeDuration(선택 사항)
CustomPS ScriptFullPath, NodeScope, Argument

유효한 NodeScope 값은 다음과 같습니다.

  • AllNodes
  • ComputeOnly
  • StorageOnly
  • EdgeOnly
  • NCOnly
  • ReservedOnly

유효한 MaxLevel 값은 다음과 같습니다.

  • 0(모든 수준의 로그)
  • 1(위험)
  • 2(오류)
  • 3(경고)
  • 4(정보)
  • 5(자세한 정보 표시)

:

<Trigger>
  <Type>ActionFail</Type>
  <Data Name="ActionFullName" Value="Microsoft.HyperV.Test.Stress.PrivateCloud.ComputeNode.Action.StorageNodeRestartAction">
  </Data>
  <ReactionMatchList>
    <!-- Details of Reaction are Defined Below and are referenced using the ID attribute-->
    <MatchingReaction ID ="1"></MatchingReaction>
    <MatchingReaction ID ="2"></MatchingReaction>
  </ReactionMatchList>
</Trigger>49
<Reaction ID="1">
  <Type>ETWCollection</Type>
  <Data Name="Channel" Value="Microsoft-Windows-Hyper-V-VMMS-Analytic"></Data>
  <Data Name="NodeScope" Value="ReservedOnly"></Data>
  <Data Name="StorageLocation" Value="C:\PCS\PCSEventData\%NODE%\%ActionId%\EventLogs"></Data>
  <Data Name="MaxLevel" Value="3"></Data>
</Reaction>

작업 로그 파일은 PCS 컨트롤러의 ‘FORENSICLOGLOCATION’ 폴더에 저장됩니다. 기본적으로 C:\PCS\PCSEventData입니다.

실패한 각 작업에 대해 예약된 노드에서 수집되는 정보는 다음과 같습니다. 이 로그 위치는 작업의 SQL 보고서 페이지에서 볼 수 있습니다.

  • %MachineName%\%RunId%\ClusterLogs\%ActionId%
  • %MachineName%\%RunId%\EventLogs\%ActionId%
  • %MachineName%\%RunId%\CustomResponse\%ActionId%

FAQ

프라이빗 클라우드 시뮬레이터 FAQ를 참조하세요.

부록: SDDC(소프트웨어 정의 데이터 센터) AQ(추가 한정자)

Windows Server 2019 WSSD 제안에 사용되는 모든 서버 시스템 및 구성 요소는 Windows Server 2019 로고에 대한 인증을 받아야 하며 Windows Server 2019 SDDC(소프트웨어 정의 데이터 센터) AQ(추가 한정자)를 충족해야 합니다. 필수 HLK 기능 이름은 아래 표에 나와 있습니다.

구성 요소 유형: NIC

필수 HLK 기능 SDDC Standard AQ SDDC Premium 및 AzureStack AQ
Device.Network.LAN.10GbOrGreater X X
Device.Network.LAN.VMQ X X
Device.Network.LAN.RSS X X
Device.Network.LAN.LargeSendOffload X X
Device.Network.LAN.ChecksumOffload X X
Device.Network.LAN.Base X X
Device.Network.LAN.VXLAN X
Device.Network.LAN.VMMQ X
Device.Network.LAN.MTUSize Encap 오프로드를 사용하는 경우 필수 X
Device.Network.LAN.KRDMA X
Device.Network.LAN.GRE X
Device.Network.LAN.DCB Encap 오프로드를 사용하는 경우 필수 X
Device.Network.LAN.AzureStack X

구성 요소 유형: SAS HBA

필수 HLK 기능 SDDC Standard AQ SDDC Premium 및 AzureStack AQ
Device.Storage.Controller X X
Device.Storage.Controller.Flush X X
Device.Storage.Controller.PassThroughSupport X X
Device.Storage.Controller.Sas X X
Device.Storage.Controller.AzureStack X X

구성 요소 유형: NVMe 스토리지 디바이스

필수 HLK 기능 SDDC Standard AQ SDDC Premium 및 AzureStack AQ
Device.Storage.ControllerDrive.NVMe X X
Device.Storage.Hd.AzureStack X X

구성 요소 유형: HDD(SAS)

필수 HLK 기능 SDDC Standard AQ SDDC Premium 및 AzureStack AQ
Device.Storage.Hd X X
Device.Storage.Hd.DataVerification X X
Device.Storage.Hd.Flush X X
Device.Storage.Hd.PortAssociation X X
Device.Storage.Hd.Sas X X
Device.Storage.Hd.Scsi.ReliabilityCounters X X
Device.Storage.Hd.AzureStack X X
Device.Storage.Hd.FirmwareUpgrade X X

구성 요소 유형: HDD(SATA)

필수 HLK 기능 SDDC Standard AQ SDDC Premium 및 AzureStack AQ
Device.Storage.Hd.Sata X X
Device.Storage.Hd X X
Device.Storage.Hd.DataVerification X X
Device.Storage.Hd.Flush X X
Device.Storage.Hd.PortAssociation X X
Device.Storage.Hd.AzureStack X X
Device.Storage.Hd.FirmwareUpgrade X X

구성 요소 유형: SSD(SAS)

필수 HLK 기능 SDDC Standard AQ SDDC Premium 및 AzureStack AQ
Device.Storage.Hd X X
Device.Storage.Hd.DataVerification X X
Device.Storage.Hd.PortAssociation X X
Device.Storage.Hd.Sas X X
Device.Storage.Hd.AzureStack X X
Device.Storage.Hd.FirmwareUpgrade X X

구성 요소 유형: 서버

필수 HLK 기능 SDDC Standard AQ SDDC Premium 및 AzureStack AQ
System.Fundamentals.Firmware X X
System.Server.Virtualization X X
System.Server.AzureStack.Security X X
System.Server.Assurance X
System.Server.AzureStack.BMC X