VMM에서 스토리지 복제본 관리
스토리지 복제본은 Windows Server 2016에서 도입되었습니다. 재해 대비 및 복구 및 고가용성을 위해 사이트 간 장애 조치(failover) 클러스터의 확장 및 재해 대비를 위해 클러스터 또는 서버 간에 스토리지에 구애받지 않고 블록 수준의 동기 복제를 수행할 수 있습니다. 동기 복제를 사용하면 파일 시스템 수준에서 데이터가 손실되지 않고 크래시 일관성이 있는 볼륨을 사용하여 실제 사이트의 데이터를 미러링할 수 있습니다. 비동기 복제는 대도시 범위를 넘어 사이트를 확장합니다(데이터가 손실될 수도 있음).
스토리지 복제본을 사용하면 재해 대비 및 복구를 위해 클러스터 또는 서버 간에 스토리지에 구애받지 않고 블록 수준 동기 복제를 수행하고 고가용성을 위해 사이트 간에 장애 조치(failover) 클러스터를 확장할 수 있습니다. 동기 복제를 사용하면 파일 시스템 수준에서 데이터가 손실되지 않고 크래시 일관성이 있는 볼륨을 사용하여 실제 사이트의 데이터를 미러링할 수 있습니다. 비동기 복제는 대도시 범위를 넘어 사이트를 확장합니다(데이터가 손실될 수도 있음).
이 문서에서는 스토리지 복제본이 System Center VMM(Virtual Machine Manager)과 통합되는 방법을 설명하고 PowerShell을 사용하여 VMM 패브릭에서 스토리지를 복제하도록 스토리지 복제본을 설정하는 방법을 설명합니다.
VMM의 스토리지 복제본
스토리지 복제본을 사용하여 Hyper-V 클러스터 데이터 또는 파일 데이터를 복제할 수 있습니다. VMM에서 스토리지 복제본을 사용하면 다음과 같은 여러 비즈니스 이점이 제공됩니다.
- SAN과 같은 동기 복제 솔루션과 관련된 비용과 복잡성을 제거합니다.
- 동기 복제는 가동 중지 시간 및 데이터 손실을 최소화합니다. RPO는 0(데이터 손실 0)을 제공합니다. RTO(데이터 사용 불가)는 기본 사이트가 실패하고 보조 사이트가 시작되는 시간 동안에만 발생합니다.
- 원본 및 대상 스토리지 하드웨어는 동일할 필요가 없습니다.
시작하기 전에
- VMM은 Windows Server 2016 이상 Datacenter Edition에서 실행되어야 합니다.
- Hyper-V는 Windows Server 2016 이상 데이터 센터, Server Core 또는 Nano에서 실행되어야 합니다.
- VMM은 Windows Server 2025 이상 Datacenter Edition에서 실행되어야 합니다.
- Hyper-V는 Windows Server 2019 이상 데이터 센터, Server Core 또는 Nano에서 실행되어야 합니다.
- 동기 복제만 지원됩니다. 비동기 기능은 지원되지 않습니다.
- 볼륨 또는 파일 스토리지의 두 가지 스토리지 집합이 필요합니다. 원본 위치와 대상 위치는 모두 동일한 유형의 스토리지(파일 또는 볼륨)를 가져야 하지만 실제 스토리지는 혼합될 수 있습니다. 예를 들어 한쪽 끝에는 파이버 채널 SAN을, 다른 쪽에는 공간 다이렉트(하이퍼 수렴 또는 분리 모드)를 사용할 수 있습니다.
- 각 스토리지 집합은 각 클러스터에서 사용할 수 있어야 합니다. 클러스터 스토리지는 공유해서는 안 됩니다.
- 원본 및 대상 볼륨(로그 볼륨 포함)은 크기와 블록 크기가 동일해야 합니다. 스토리지 복제본이 블록 복제를 사용하기 때문입니다.
- 각 스토리지 서버( 10GbE, iWARP 또는 InfiniBand)에 하나 이상의 1GbE 연결이 필요합니다.
- 각 파일 서버 또는 클러스터 노드에는 모든 노드 간에 ICMP, SMB(포트 445 및 SMB Direct의 경우 5445) 및 WS-MAN(포트 5985) 양방향 트래픽을 허용하는 방화벽 규칙이 필요합니다.
- 각 클러스터 노드에서 관리자 그룹의 구성원이어야 합니다.
- 스토리지 복제본은 현재 Windows PowerShell을 사용하여 설정할 수 있습니다.
- 원본 및 대상 스토리지는 동일한 VMM 서버에서 관리해야 합니다.
- VMM을 Azure Site Recovery와 통합하는 것은 지원되지 않습니다.
- 쓰기 순서 및 일관성 그룹 설정은 지원되지 않습니다.
배포 단계
스토리지 식별: 사용하려는 원본 및 대상 스토리지를 식별합니다.
검색 및 분류: 스토리지가 현재 VMM 패브릭에 없는 경우 VMM을 사용하여 검색해야 합니다. 원본 및 대상 스토리지는 모두 동일한 VMM 서버에서 관리해야 합니다. 검색 후 스토리지 풀 및 스토리지 분류를 만듭니다. 자세히 알아보기.
쌍: 원본 및 대상 스토리지 배열을 페어링합니다.
프로비전: 스토리지를 페어링한 후에는 해당 스토리지 배열에서 만든 원본 및 대상 스토리지 풀에서 동일한 데이터와 로그 볼륨을 프로비전해야 합니다. 복제될 데이터에 대한 볼륨을 프로비전하는 것 외에도 복제 트랜잭션 로그에 대한 볼륨을 프로비전해야 합니다. 원본 스토리지에서 데이터가 업데이트되면 트랜잭션 로그가 추가되고 델타 변경 내용이 대상 스토리지와 동기화됩니다(동기 복제 사용).
복제 그룹 만들기: 볼륨이 배치된 후 복제 그룹을 만듭니다. 복제 그룹은 여러 볼륨을 포함하는 논리 그룹입니다. 복제 그룹은 원본 및 대상 사이트에 대한 데이터 및 로그 볼륨을 각각 포함하는 동일해야 합니다.
복제 사용: 이제 원본 및 대상 복제 그룹 간에 복제를 사용하도록 설정할 수 있습니다.
새로 고침: 복제 그룹 만들기를 완료하고 초기 데이터 복제를 트리거하려면 기본 및 보조 스토리지 공급자를 새로 고쳐야 합니다. 데이터는 대상 스토리지에 복제됩니다.
상태 확인: 이제 기본 복제 그룹의 상태를 확인할 수 있습니다. 복제 상태여야 합니다.
VM 추가: 델타 복제가 실행 중일 때 복제 그룹에 포함된 스토리지를 사용하는 VM을 추가할 수 있습니다. VM을 추가하면 VM이 검색되고 자동으로 복제가 시작됩니다.
장애 조치(failover) 실행: 복제가 동기화 상태에 있으면 장애 조치(failover)를 실행하여 예상대로 작동하는지 확인할 수 있습니다. 테스트 장애 조치(failover) 메커니즘이 없으므로 계획되거나 계획되지 않은 중단에 대한 응답으로 수동 장애 조치(failover)를 실행합니다. 장애 조치(failover) 후 원본 사이트에서 VM을 삭제하고(있는 경우) 복제된 데이터를 사용하여 대상 사이트에 VM을 만들 수 있습니다.
장애 복구 실행: 장애 조치(failover)가 완료되고 복제본 VM이 실행되고 나면 필요에 따라 장애 복구(failback)할 수 있습니다. 다음 사항을 확인합니다.
- un계획된 장애조치를 실행하고 원본 위치를 사용할 수 없는 경우 장애 조치(failover)를 실행하여 보조 위치에서 기본 위치로 장애 복구한 다음, 기본 위치에 VM을 만듭니다.
- 계획된 장애조치 실행하고 원본 VM을 계속 사용할 수 있는 경우 복제를 중지하고, 원본 VM을 제거하고, 보조 위치에 VM을 만든 다음, 복제를 다시 시작해야 합니다. 그런 다음 기본 사이트에서 원래 VM과 동일한 설정을 사용하여 VM을 만들 수 있습니다.
PowerShell 개체 검색
시작하기 전에 사용하려는 PowerShell 개체의 이름을 검색합니다.
기본 스토리지 배열의 이름을 가져와 변수에 할당합니다.
$PriArray = Get-SCStorageArray -Name $PriArrayName
보조 스토리지 배열의 이름을 가져와 변수에 할당합니다.
RecArray = Get-SCStorageArray -Name $RecArrayName
기본 스토리지 풀의 이름을 가져와 변수에 할당합니다.
$ $ PriPoolName $RecPool = Get-SCStoragePool -Name $
보조 스토리지 풀의 이름을 가져와 변수에 할당합니다.
$ $PriPoolName $RecPool = Get-SCStoragePool -Name $
스토리지 배열 페어링
스토리지 배열 이름에 대한 변수를 사용하여 기본 및 보조 스토리지 배열을 페어링합니다.
참고 항목
배열 이름은 클러스터 이름과 동일해야 합니다.
Set-SCStorageArray -StorageArray $PriArray -PeerStorageArrayName $RecArray.name
VMM 외부에서 클러스터를 만들었으며 클러스터 이름과 일치하도록 배열 이름의 이름을 바꿔야 하는 경우 다음을 사용합니다.
Get-SCStorageArray -Name "existing-name" | Set-SCStorageArray -Name "new-name"
LUN 프로비전 및 스토리지 그룹 만들기
스토리지 풀에서 데이터 및 로그에 대한 LUN을 프로비전합니다. 그런 다음 복제 그룹을 만듭니다.
원본에서 프로비전 및 만들기
Set-SCStorageArray -StorageArray $PriArray -PeerStorageArrayName $RecArray.name $PrimaryVol = New-SCStorageVolume -StorageArray $PriArray -StoragePool $PriPool -Name PrimaryVol -SizeInBytes $VolSize -RunAsynchronously -PhysicalDiskRedundancy "1" -FileSystem "CSVFS_NTFS" -DedupMode "Disabled" $PrimaryLogVol = New-SCStorageVolume -StorageArray $PriArray -StoragePool $PriPool -Name PrimaryLogVol -SizeInBytes $LogVolSize -GuidPartitionTable -RunAsynchronously -FileSystem "NTFS" $PriRG = New-SCReplicationGroup -Name PriRG -StorageVolume $PrimaryVol -LogStorageVolume $PrimaryLogVol
대상에서 프로비전 및 만들기
$RecoveryVol = New-SCStorageVolume -StorageArray $RecArray -StoragePool $RecPool -Name RecoveryVol -SizeInBytes $VolSize -RunAsynchronously -PhysicalDiskRedundancy "1" -FileSystem "CSVFS_NTFS" -DedupMode "Disabled" $RecoveryLogVol = New-SCStorageVolume -StorageArray $RecArray -StoragePool $RecPool -Name RecoveryLogVol -SizeInBytes $LogVolSize -GuidPartitionTable -RunAsynchronously -FileSystem "NTFS" $RecRG = New-SCReplicationGroup -Name RecRG -CreateOnArray -ProtectionMode Synchronous -StorageVolume $RecoveryVol -LogStorageVolume $RecoveryLogVol
복제 사용
원본 및 대상 복제 그룹 간에 동기 복제를 사용하도록 설정합니다.
Set-SCReplicationGroup -ReplicationGroup $PriRG -Operation EnableProtection -TargetReplicationGroup $RecRG -EnableProtectionMode Synchronous
스토리지 공급자 새로 고침
- VMM 콘솔을 엽니다.
- 패브릭 리소스 공급자를> 선택합니다. 공급자를 마우스 오른쪽 단추로 클릭하고 새로 고침을 선택합니다.
복제 상태 확인
원본 복제 그룹의 복제 상태를 검색하여 복제가 예상대로 작동하는지 확인합니다.
Get replication status Get-SCReplicationGroup | where {($_.Name.EndsWith("PriRG")) -or ($_.Name.EndsWith("RecRG"))} | fl Name, IsPrimary, ReplicationState, ReplicationHealth
VM 만들기
원본 복제 그룹에서 LUN을 사용하여 VM을 만듭니다. 또는 VMM 콘솔에서 VM을 만들 수 있습니다.
New-SCVirtualMachine -Name "DemoVM" -VMHost <HostName> -Path $PrimaryVol -VMTemplate <VMTemplate>
장애 조치(Failover) 실행
장애 조치(failover)를 실행합니다.
Set-SCReplicationGroup -ReplicationGroup $PriRG -Operation PrepareForFailover
Set-SCReplicationGroup -ReplicationGroup SRecRG -Operation Failover
장애 복구(failback) 실행
장애 복구하기 전에 VMM 콘솔에서 원본 VM을 계속 사용할 수 있는 경우 제거합니다. 동일한 VM으로 장애 복구할 수 없습니다.
장애 복구 실행:
Set-SCReplicationGroup -ReplicationGroup $PriRG -Operation ReverseRoles -EnableProtectionMode Synchronous -TargetReplicationGroup $RecRG
장애 복구(failback)를 실행한 후 장애 복구(failback) VHD/구성 파일을 사용하여 원본 사이트에서 VM을 만들 수 있습니다.
복제 중지
복제를 중지하려면 원본 및 대상에서 이 cmdlet을 실행해야 합니다.
Set-SCReplicationGroup -ReplicationGroup $RecRG -Operation TearDown Tear down need to be done on both RGs
다음 단계
- 스토리지 복제본에 대한 자세한 내용을 알아봅니다.
- Hyper-V 호스트 및 클러스터에 스토리지를 할당하는 방법에 대해 알아봅니다.
- 스토리지 마이그레이션에 대해 자세히 알아봅니다.