FlashCopy 맵핑

FlashCopy 맵핑은 소스 볼륨과 대상 볼륨 간의 데이터를 복사하는 관계를 정의합니다.

FlashCopy® 기능은 시작 시에 볼륨의 즉석 사본을 작성합니다. 볼륨의 즉석 사본을 작성하려면, 먼저 소스 볼륨(복사되는 디스크) 및 대상 볼륨(사본을 받는 디스크) 간의 맵핑을 작성해야 합니다. 소스 및 대상 볼륨은 크기가 같아야 합니다.

시스템의 두 볼륨 간에 맵핑을 작성할 수 있습니다. 볼륨이 동일한 I/O 그룹이나 풀에 있을 필요는 없습니다. FlashCopy 조작이 시작되면 소스 볼륨의 체크포인트가 작성됩니다. 시작 조작이 발생할 때 데이터가 복사되지 않습니다. 대신 체크포인트는 소스 볼륨의 일부가 복사되지 않았음을 나타내는 비트맵을 작성합니다. 비트맵의 각 비트는 소스 볼륨의 한 영역을 표시합니다. 각 영역은 입자라고 합니다.

FlashCopy 조작이 시작된 후 소스 볼륨에 대한 읽기 및 쓰기 조작이 계속 발생합니다. 새 데이터가 소스 또는 대상 볼륨에 기록되는 경우에는 새 데이터가 소스 또는 대상 볼륨에 기록되기 전에 소스의 기존 데이터가 대상 볼륨으로 복사됩니다. 나중에 동일한 입자에 대한 쓰기 조작이 데이터를 다시 복사하지 못하도록 비트맵을 업데이트하여 소스 볼륨의 입자가 복사된 것으로 표시합니다.

대상 볼륨에 대한 읽기 조작 중에 비트맵을 사용하여 입자가 복사되었는지 여부를 판별합니다. 입자가 복사된 경우 대상 볼륨에서 데이터를 읽습니다. 입자가 복사되지 않은 경우 소스 볼륨에서 데이터를 읽습니다.

증분 FlashCopy 맵핑

증분 FlashCopy에서 초기 맵핑은 소스 볼륨에서 대상 볼륨으로 모든 데이터를 복사합니다. 후속 FlashCopy 맵핑은 그림 1에 나타낸 것처럼 초기 FlashCopy 맵핑 이후에 수정된 데이터만 복사합니다. 이 프로세스는 독립적인 FlashCopy 이미지를 다시 작성하는 데 필요한 시간의 양을 줄여줍니다. FlashCopy 맵핑을 작성할 때에만 FlashCopy 맵핑을 증분으로 정의할 수 있습니다.

그림 1. 차이의 증분 FlashCopy
차이의 증분 FlashCopy

FlashCopy 파트너 맵핑

기존 증분 FlashCopy 맵핑을 미러링하는 맵핑을 작성할 수 있습니다. 쌍을 이루는 맵핑을 파트너라고 합니다. 맵핑에는 하나의 파트너만 있을 수 있습니다. 예를 들어, 두 개의 맵핑(A 볼륨에서 B 볼륨으로 맵핑 0 및 B 볼륨에서 A 볼륨으로 맵핑 1)을 사용하는 A 볼륨과 B 볼륨이 있는 경우 맵핑 0과 맵핑 1은 파트너입니다.

증분 FlashCopy 맵핑은 변경사항을 레코드하기 위해 메타데이터를 공유합니다. 따라서 미러된 쌍(파트너십)에 있는 하나의 맵핑이 증분 맵핑인 경우 다른 맵핑은 자동으로 증분 맵핑이 되고 삭제되기 전까지 계속 증분 맵핑이 됩니다.

계단식 FlashCopy 맵핑

계단식 FlashCopy 기능을 사용하면 그림 2에서 보여주는 것처럼 FlashCopy 대상 볼륨이 다른 FlashCopy 맵핑의 소스 볼륨이 될 수 있습니다.

그림 2. 계단식 FlashCopy 볼륨
계단식
FlashCopy 볼륨

최대 256개의 맵핑이 계단식으로 존재할 수 있습니다. 계단식 맵핑 및 여러 개의 대상 맵핑이 사용되는 경우 최대 256개의 맵핑으로 구성된 트리를 작성할 수 있습니다.

다중 대상 FlashCopy 맵핑

단일 소스 볼륨에서 최대 256개의 대상 볼륨을 복사할 수 있습니다. 소스와 대상 볼륨 간 관계는 각각 단일 볼륨이 최대 256개의 맵핑에서 소스 볼륨이 되는 방식으로 고유 맵핑에서 관리합니다.

단일 소스의 각 맵핑을 독립적으로 시작하고 중지할 수 있습니다. 동일한 소스에서 여러 개의 맵핑이 활성화되면(복사 중 또는 중지 중 상태임) 이러한 맵핑 간에 종속성이 존재합니다.

예를 들어, 다음 조건이 참인 경우 A 맵핑은 B 맵핑에 종속됩니다.
  • A 맵핑과 B 맵핑에 동일한 소스 볼륨이 있습니다.
  • A 맵핑과 B 맵핑이 모두 복사 중 또는 중지 중 상태입니다.
  • B 맵핑이 A 맵핑보다 최근에 시작되었습니다.
    참고: 두 개의 맵핑이 모두 동일한 일관성 그룹에 있고 동시에 시작된 경우, 일관성 그룹이 시작될 때 종속성의 순서가 내부적으로 결정됩니다.
  • 맵핑의 복사 진행 상태가 100보다 낮으므로 A 맵핑에는 소스의 전체 사본이 없습니다.
  • 맵핑의 복사 진행 상태가 100보다 낮으므로 A보다 최근에 시작되고 소스의 전체 사본이 있는 B보다 나중에 시작된 동일한 소스에서 맵핑이 존재하지 않습니다.

다른 예로, 볼륨 A가 속한 맵핑이 대상 볼륨 B가 속한 맵핑에 종속되는 경우, 대상 볼륨 A는 대상 볼륨 B에 종속됩니다. 소스 볼륨에서 최근에 시작된 맵핑의 대상 볼륨은 소스의 전체 사본이 작성될 때까지(진행 상태 100%) 소스 볼륨에 종속됩니다.

정리 비율, 복사 비율 및 autodelete

맵핑을 작성할 때 정리 비율을 지정하십시오. 정리 비율을 사용하여 맵핑의 대상 볼륨에서, 대상 볼륨의 최근 사본이거나 소스 볼륨의 다음으로 오래된 사본인 맵핑의 대상 볼륨으로 데이터를 복사하는 비율을 제어합니다. 정리 비율은 다음과 같은 경우에 사용됩니다.
  • 맵핑이 중지 중 상태입니다.
  • 맵핑이 복사 중 상태이며 복사 비율이 0입니다.
  • 맵핑이 복사 중 상태이며 백그라운드 복사가 완료되었습니다.

정리 비율을 사용하면 맵핑이 중지 중 상태로 유지되는 시간을 최소화할 수 있습니다. 맵핑이 완료되지 않은 경우 맵핑이 중지되는 동안 대상 볼륨은 오프라인입니다. 맵핑이 다시 시작될 때까지 대상 볼륨은 오프라인을 유지합니다.

맵핑을 작성할 때 복사 비율도 지정하십시오. 맵핑이 복사 중 상태인 경우 복사 비율은 백그라운드 복사 프로세스에 부여되는 우선순위를 결정합니다. 맵핑을 삭제하고 대상 볼륨에서 계속 액세스할 수 있도록 전체 소스 볼륨의 사본을 원하는 경우 소스 볼륨에 있는 모든 데이터를 대상 볼륨으로 복사해야 합니다.

정리 비율과 복사 비율의 기본값은 50입니다.

맵핑이 시작되고 복사 비율이 0보다 큰 경우 변경되지 않은 데이터가 대상 볼륨으로 복사됩니다. 비트맵이 업데이트되어 데이터가 복사되었음을 표시합니다. 볼륨의 복사 비율 및 크기로 판별된 우선순위에 따라 다른 일정 시간이 지난 후에 전체 볼륨이 대상으로 복사됩니다. 맵핑이 idle_or_copied 상태로 돌아가고 이제 언제든지 맵핑을 다시 시작하여 대상에서 새 사본을 작성할 수 있습니다.

맵핑이 복사 중 상태인 동안 복사 비율을 0으로 설정하고 정리 비율을 0이 아닌 값으로 설정하여 맵핑이 중지 중 상태로 유지되는 시간을 최소화할 수 있습니다.

여러 개의 대상 맵핑을 사용하는 경우 모든 소스 데이터가 대상으로 복사된 후(진행 상태가 100%임) 맵핑은 계속 복사 중 상태를 유지할 수 있습니다. 이전에 시작되었으며 동일한 소스 디스크를 사용하는 맵핑이 아직 100%를 복사하지 않은 경우 이러한 상태가 발생할 수 있습니다.

복사 비율이 0인 경우 소스에서 변경된 데이터만 대상으로 복사됩니다. 소스에서 모든 익스텐트를 겹쳐쓰지 않았으면 대상에는 전체 소스의 사본이 없습니다. 소스의 임시 사본이 필요한 경우 이 복사 비율을 사용할 수 있습니다.

언제든지 맵핑을 중지할 수 있습니다. 그러나 대상 볼륨에 아직 소스 볼륨의 사본이 포함되지 않은 경우에 맵핑이 중지되면 대상은 불일치가 되고 대상 볼륨은 오프라인이 됩니다. 맵핑이 다시 시작될 때까지 대상 볼륨은 오프라인을 유지합니다.

autodelete 속성을 설정할 수도 있습니다. 이 속성이 on으로 설정된 경우 맵핑이 idle_or_copied 상태가 되고 진행 상태가 100%이면 맵핑이 자동으로 삭제됩니다.

FlashCopy 맵핑 상태

특정 시점에 맵핑은 다음 중 한 상태입니다.
유휴 또는 복사됨
소스와 대상 볼륨 사이에 맵핑이 존재하는 경우에도 소스 및 대상 볼륨은 독립 볼륨으로 작동됩니다. 소스 및 대상 볼륨에 읽기 및 쓰기 캐싱을 사용합니다.

맵핑이 증분 맵핑이고 백그라운드 복사가 완료되면 맵핑은 소스와 대상 볼륨의 차이만 기록합니다. 맵핑이 지정되는 I/O 그룹의 두 노드에 대한 연결이 끊어지면 소스 및 대상 볼륨은 오프라인이 됩니다.

복사 중
복사를 진행하는 중입니다. 소스 및 대상 볼륨에서 읽기 및 쓰기 캐싱을 사용합니다.
준비됨
맵핑을 시작할 준비가 되었습니다. 대상 볼륨은 온라인이지만 액세스할 수 없습니다. 대상 볼륨은 캐싱 읽기 또는 쓰기를 수행할 수 없습니다. 하드웨어 오류로 읽기 및 쓰기 캐싱이 SCSI 프론트엔드에 의해 실패합니다. 맵핑이 증분 맵핑이고 이전 맵핑이 완료된 경우 맵핑은 소스와 대상 볼륨의 차이점만 레코드합니다. 맵핑이 지정된 I/O 그룹의 두 노드 모두에 대한 연결이 끊어지면 소스 및 대상 볼륨이 오프라인 상태가 됩니다.
준비 중
대상 볼륨이 온라인이지만 액세스할 수 없습니다. 대상 볼륨은 캐싱 읽기 또는 쓰기를 수행할 수 없습니다. 하드웨어 오류로 읽기 및 쓰기 캐싱이 SCSI 프론트엔드에 의해 실패합니다. 소스 볼륨에 대한 변경된 쓰기 데이터를 캐시에서 비웁니다. 대상 볼륨에 대한 읽기 또는 쓰기 데이터를 캐시에서 버립니다. 맵핑이 증분 맵핑이고 이전 맵핑이 완료된 경우 맵핑은 소스와 대상 볼륨의 차이점만 레코드합니다. 맵핑이 지정된 I/O 그룹의 두 노드 모두에 대한 연결이 끊어지면 소스 및 대상 볼륨이 오프라인 상태가 됩니다.
중지됨
stop 명령을 실행했거나 I/O 오류가 발생했으므로 맵핑이 중지됩니다. 대상 볼륨이 오프라인이며 해당 데이터가 유실됩니다. 대상 볼륨에 액세스하려면 맵핑을 다시 시작하거나 삭제해야 합니다. 소스 볼륨에 액세스할 수 있으며 읽기 및 쓰기 캐시를 사용합니다. 맵핑이 증분 맵핑인 경우 맵핑은 소스 볼륨에 쓰기 조작을 레코드합니다. 맵핑이 지정된 I/O 그룹의 두 노드 모두에 대한 연결이 끊어지면 소스 및 대상 볼륨이 오프라인 상태가 됩니다.
중지 중
맵핑이 다른 맵핑으로 데이터를 복사 중입니다.
  • 백그라운드 복사 프로세스가 완료된 경우 중지 복사 프로세스가 완료되는 동안 대상 볼륨은 온라인입니다.
  • 백그라운드 복사 프로세스가 완료되지 않은 경우 대상 볼륨 캐시에서 데이터를 버립니다. 중지 복사 프로세스가 실행되는 동안 대상 볼륨은 오프라인입니다.
I/O 조작을 위해 소스 볼륨에 액세스할 수 있습니다.
일시중단됨
맵핑이 시작되었지만 완료되지 않았습니다. 메타데이터에 대한 액세스 권한이 상실되므로 소스 및 대상 볼륨이 모두 오프라인이 됩니다. 메타데이터에 대한 액세스 권한이 복원되면 맵핑은 복사 중 또는 중지 중 상태로 돌아가고 소스 및 대상 볼륨은 온라인으로 돌아갑니다. 백그라운드 복사 프로세스가 재개됩니다. 일시중단하기 전에 데이터가 비워지지 않고 소스 또는 대상 볼륨에 쓰여진 경우, 해당 데이터는 맵핑이 일시중단 상태를 벗어날 때까지 캐시에 있습니다.
참고:
  1. FlashCopy 소스 볼륨이 오프라인이 되면 이 볼륨에 종속된 FlashCopy 대상 볼륨도 오프라인이 됩니다.
  2. FlashCopy 대상 볼륨이 오프라인이 되면 이 볼륨에 종속된 FlashCopy 대상 볼륨도 오프라인이 됩니다. 소스 볼륨은 계속 온라인입니다.
맵핑을 시작하기 전에 준비해야 합니다. 맵핑을 준비하면 캐시의 데이터가 디스크로 스테이징 해제되고 소스의 일관적인 사본이 디스크에 존재합니다. 캐시는 write-through 모드가 됩니다. 소스에 쓴 데이터는 IBM Spectrum Virtualize™ 노드에 캐싱되지 않으며 MDisk로 직접 전달됩니다. 맵핑의 준비 조작은 완료하는 데 시간이 소요될 수 있습니다. 실제 시간은 소스 볼륨의 크기에 따라 다릅니다. 운영 체제와 준비 조작을 조정해야 합니다. 소스 볼륨에 있는 데이터의 유형에 따라 운영 체제 또는 애플리케이션 소프트웨어가 데이터 쓰기 조작을 캐싱할 수도 있습니다. 맵핑을 준비 및 시작하기 전에 파일 시스템 및 애플리케이션 프로그램을 비우거나 동기화해야 합니다.
참고: startfcmapstartfcconsistgrp 명령은 처리하는 데 시간이 소요될 수 있습니다.

일관성 그룹을 사용하지 않을 경우, 시스템은 맵핑이 독립 엔티티로 처리되도록 허용합니다. 이 경우 맵핑을 독립형 맵핑이라고 합니다. 이와 같은 방식으로 구성된 맵핑의 경우 prestartfcconsistgrpstartfcconsistgrp 명령 대신 prestartfcmapstartfcmap 명령을 사용하십시오.

FlashCopy 맵핑 복원

idle_copied, stopped 또는 copying 상태인 다른 활성 맵핑의 소스 볼륨인 대상 볼륨을 사용하여 맵핑을 시작할 수 있습니다. 맵핑이 copying 상태인 경우, startfcmapprestartfcmap 명령에 restore 매개변수가 필요합니다. 맵핑이 유휴 상태가 될 때까지 기다리지 않고, 다른 FlashCopy 대상 볼륨의 내용을 유실하지 않으면서 동일한 FlashCopy 맵핑 또는 다른 FlashCopy 맵핑의 대상을 사용하여 FlashCopy 소스 볼륨의 내용을 복원할 수 있습니다.

Veritas Volume Manager

FlashCopy 대상 volumes에 대해 시스템은 대상 볼륨이 소스 볼륨의 정확한 이미지가 될 수 있는 맵핑 상태의 조회 데이터에 하나의 비트를 설정합니다. 이 비트를 설정하면 Veritas Volume Manager가 소스와 대상 볼륨을 구별하고 두 볼륨에 모두 독립 액세스 권한을 제공합니다.