Versions Compared

Key

  • This line was added.
  • This line was removed.
  • Formatting was changed.
스카시예약 에이전트는 공유 디스크를 하드웨어적으로 관리하고 보호하는 에이전트입니다.
스카시예약 에이전트를 사용하면 OS의 Hang과 같은 외부 요소에 의해 발생되는 Split-Brain 상황에서도 데이터 디스크를 안전하게 보호할 수 있습니다.
공유 스토리지가
Section
Column
Section
Column

SCSI reservation agent can manage and protect the shared disks from the H/W perspectives.
If you use a SCSI reservation agent, you can safely protect the data disk against the split brain situations caused by external elements such as OS hanging.
If the shared storage supports SCSI3-PR (Persistent Reservation)
를 지원한다면, 스카시예약 에이전트와 공유 디스크 에이전트를 함께 사용함으로써 공유된 데이터에 대해 한층 더 높은 안전성을 확보할 수 있습니다.
시스템(다수 또는 단일)에서 SCSI3-PR를 통하여 스토리지로 접근하려면 시스템은 스토리지에 대한 예약키(Reserved-Key)를 가지고 있어야 하며, 예약 키가 없는 시스템은 스토리지 접근이 차단됩니다.

* 참고 -

, you can use it together with SCSI reservation agent to improve the level of security for the shared data.
If you want to access the storage from systems (many or one) through SCSI3-PR, the system must have a storage reserved key. If not, storage access will not be granted.

* Note - If the storage does not support SCSI3-PR (Persistent Reservation)를 지원하지 않는 스토리지는 스카시예약 에이전트를 사용할 수 없습니다, it cannot use a SCSI-reservation agent.

Column
width350px
Panel

이 페이지의 주요 내용Table of Contents

Table of Contents
maxLevel4

How to work

스카시예약 에이전트에 의해 생성된 리소스는 각 노드 별로 등록 키(Registered-keys)가 만들어지고, 이를 속성으로 확인할 수 있습니다.
온라인 노드는 자신의 등록 키를 예약 키로 설정합니다.
스카시예약 에이전트는 설정된 예약 키로 디스크의 접근할 수 있는 노드를 구별하여 디스크의 접근 허용 여부를 결정합니다.
Split-Brain 상황에서도 시스템간 공유된 데이터를 보다 안전하게 관리할 수 있도록 스카시예약 리소스와 공유 디스크 리소스 간에 의존성을 설정합니다The resource created by a SCSI reservation agent will have a registered key for each node. You can check it in the attributes.
For an online node, set its own registration key as the reservation key.
SCSI reservation agent uses the reservation keys to differentiate nodes that can be accessed and determine whether disk access should be granted.
To be able to safely protect the systems shared data against the Split-Brain situations, you should define the dependency between the SCSI reservation resource and the shared disk resource.


 

Requirement

External storage must support SCSI-3 PR.
Volume should be configured by LUN(Logical Unit Number) unit. Partitioned volume in a LUN is not supported.
If use PrType 3, at least 1GByte LUN is needed for key reservation.

 

 

Types of Shared disk resource

To configure HA with shared storage environment, MCCS provides shared disk agent and SCSI Lock agent.
You can use only shared disk resource, or use with SCSI Lock resource. Shared disk resource depends on SCSI Lock resource and multiple shared disk resource can depends on a SCSI Lock resource.

Info

An environment where only shared disk agent is used

  • The disk volume is partitioned in a LUN.
  • External storage does not support SCSI-3 PR.


Difference between shared disk agent and SCSI Lock agent
1. Shared disk agent manage disk access in local node, but SCSI Lock agent manage node access in storage.

Info

Disk management function in software perspective (shared disk agent)

  • Shared disk agent manage access control of shared disk through Mantech Volume Lock (MVL) kernel driver. 
  • Data will be corrupted if writing access is done from multiple nodes in shared disk. MVL locks access to the shared disk resource. You cannot access the volume of shared disk before it unlocks access. Only a node allow to access to the shared disk resource by this.
  • MVL can be managed both in LUN unit and partition unit.

Disk management function in hardware perspective (SCSI Lock agent)

  • SCSI Lock agent manage Write control and access control of LUN by using SAN protocol.
  • Only the node that has imported the disk with this key can access to the disk.



 2. 공유 디스크 에이전트, 스카시예약 에이전트 모두 데이터를 읽고 쓰기가 가능합니다.
그러나 스카시예약 에이전트는 공유스토리지 리소스의 보호가 목적이기 때문에, 단독 사용하여 데이터를 읽고 쓰는 방법을 권장하지 않습니다. 
그래서 스카시예약 에이전트는 공유스토리지 에이전트와 함께 사용하거나, 공유 스토리지와 별개의 LUN 을 사용하는 옵션(PrType)을 지원합니다2. Both the shared disk agent and the SCSI reservation agent can read and write data.
However, a SCSI reservation agent intends to protect the shared storage resource, so you are not recommended to use it alone to read and write data.
Thus, a SCSI reservation agent can be used together with a shared storage agent or can use a separate LUN from the shared storage (PrType option)

Info

PrType (Persist Type) 1 : Type1 controls 'Write" of LUN. When use this option, shared disk resource can be used as lock disk. (Exclusive Write)

PrType (Persist Type) 3 : Typ3 controls "Access" of LUN. When use this option, exclusive LUN is needed for lock disk디스크는 작은 용량(약 1GB)으로도 가능하며 내용은 보호하지 않습니다. 

Small disk capacity of about 1GB is available. But the content is not protected.

 

 

Configuration

 

스카시예약 에이전트 리소스는 공유디스크 에이전트와 2가지 형태로 구성할 수 있으며, 스카시예약 에이전트 리소스의 속성 값에 따라 구성 방법이 나눠집니다There are two different ways to configure the SCSI reservation agent resource and the shared disk agents resource. It depends on the attribute of the SCSI reservation agent resource.


1.When  When shared disk and SCSI Lock resource is configured with the same LUN (PrType=1)

스카시예약 에이전트의 리소스에서 속성이 PrType이 1 인 옵션을 사용하면, 하나의 LUN을 이용하여 공유디스크 리소스와 스카시예약 리소스를 구성합니다. 
공유디스크 에이전트는 MVL 드라이버를 이용하여 DATA-DISK를 관리하고, 스카시예약 에이전트는 SCSI3-PR 기능을 이용하여 LOCK-DISK를 관리합니다.
스카시예약 리소스와 공유디스크 리소스 간의 의존관계를 설정함으로써, Split-Brain과 같은 상황에서 발생하는 DATA-DISK의 손상을 방지할 수 있습니다. 

 Image RemovedIn the SCSI reservation agent resource, use the option of PrType = 1. In this case, LUN will be used to configure the shared disk resource and the SCSI reservation resource.
A shared disk agent uses the MVL driver to manage DATA-DISK and a SCSI reservation agent uses the SCSI3-PR function to manage LOCK-DISK.
By setting the dependency between the SCSI reservation resource and the shared disk resource, you can prevent damages to DATA-DISK caused by Split-Brains and so on.

 Image Added

[Figure] Shared disk and SCSI Lock resource configured in same LUN (PrType=1)



2. Shared disk and SCSI lock resource is configured with different LUN (PrType=3)

 

공유디스크 에이전트는 단일 드라이브 문자 단위로 DATA-DISK를 관리하고, 스카시예약 에이전트 또한 별도의 독립된 단일 LUN을 LOCK-DISK 전용으로 관리합니다.
이 구성을 위해서는 공유디스크에 최소 2개 이상의 LUN 분할이 존재해야 합니다.
아래 그림과 같이 공유디스크 에이전트와 1:1로 의존시킬 LOCK-DISK 볼륨을 생성합니다.
공유디스크 에이전트 다수와 스카시예약 에이전트 1개를 이용해, 의존성을 구성하여 사용할 수도 있습니다.
이 디스크는 스토리지에 접근할 수 있는 노드 확인에 이용하기 때문에 용량이 작아도 됩니다.
스카시예약 리소스와 공유디스크 리소스 간의 의존관계를 설정함으로써, Split-Brain과 같은 상황에 발생하는 DATA-DISK의 손상을 방지할 수 있습니다. 

Image RemovedA shared disk agent manages DATA-DISK on the single drive character basis, and a SCSI reservation agent manages the standalone LUN exclusively for LOCK-DISK.
For this configuration, there must be at least two LUN segments existing on the shared disk.
As shown below, create the LOCK-DISK volume that will depend on a shared disk agent in a 1:1 relationship.
By using multiple shared disk agents, and one SCSI reservation agent, you can configure the dependency for use.
This disk with small capacity is allowed because it is used to check the node that can access the storage.
By setting the dependency between the SCSI reservation resource and the shared disk resource, you can prevent damages to DATA-DISK caused by Split-Brains and so on.

Image Added   

[Figure] Shared disk and SCSI Lock resource is configured with different LUN( PrType=3)


Info

Meaning of DATA-DISK 의미

  • 공유 디스크 에이전트를 이용하여 생성한 디스크를 나타냅니다. 실제 사용자 데이터가 사용되는 디스크를 나타냅니다.  

LOCK-DISK 의미 

스카시예약 에이전트를 이용하여 생성한 디스크를 나타냅니다. 
공유 디스크 에이전트 연동 시 공유 디스크에서 사용하는 DATA-DISK에 의존성을 설정하여 사용되는 디스크입니다

  • It is a disk created by using a shared disk agent. It represents a disk where the actual user data is used.  

Meaning of LOCK-DISK

  • It is a disk created by using a SCSI reservation agent.
    This is the disk that depends on DATA_DISK used in the shared disk when linking a shared disk agent.

 

 

Configuration Sample

1. Shared disk and SCSI Lock resource is configured in same LUN (PrType=1)

Image RemovedImage Added

[Figure] Shared disk and SCSI Lock resource configured in same LUN

 

First, register shared disk agent agent according to the procedure and after check if it works normally, check disk of SCSI Lock agent. 

Registration Procedures

  1. Install MCCS on both nodes
  2. Set group
  3. Add shared disk resource
  4. Enable shared disk resource and check offline on both nodes
  5. Add SCSI Lock resource (Select drive letter that created shared disk resource)
  6. Enable SCSI Lock resource and check key in resource attribute of MCCS console.
  7. Configure dependency of resources resources (SCSI Lock resource must go online first)
  8. Test failover from node 2 to 1 
  9. Test failover from node 1 to 2
  10. Set application that customer uses



2. 
Shared disk and SCSI Lock resource configured with different LUN  (PrType=3)

Image RemovedImage Added

[Figure] Shared disk and SCSI Lock resource configured with different LUN 


First, register shared disk agent according to the procedure and after check if it works normally, check disk of SCSI Lock agent.    

  1. Install MCCS on both nodes
  2. Set group
  3. Add shared disk resource 
  4. Enable shared disk resource and check offline on both nodes
  5. Add SCSI Lock resource (Select new drive letter, not from the one in shared disk resource)
  6. Enable SCSI Lock resource and check Key in resource attribute in MCCS Console
  7. Change PrType 1 to 3 for attribute of SCSI Lock resource. (When SCSI Lock resource is added, make sure that SCSI Lock Disk Letter are disappeared from Windows Explorer of both servers.)
  8. Configure dependency of resources (SCSI Lock resource must go online first)
  9. Test failover from node2 to 1
  10. Test failover from node1 to 2
  11. Customer applications that use the volume setting

 

 

Adding

There are two way to add a resource which one is select this from a group name and another is select this from a resource type.

Adding in Group

...

Add the SCSI reservation application resource to a group.
Before configuring the SCSI reservation resource, you must configure the volume in advance by using the SCSI3 supporting storage. 

  1. Select a group → right click → 'Add Resource'. 
    Image Removed
    [Figure] Adding Resource in a group

  2. Select 'ServiceSCSILock' from Resource Type lists and click 'Next' button. 
    Image Removed
    [Figure] Select Resource Wizard View
  3. Next steps are same as adding in resource type.

Adding in Resource Type


  1. ResourceType - Right Click - Click Add Resource
    Image Removed
    [Figure] Adding Resource in a resource type
    Getting disk information.
    Image Removed
    [Figure] Screen of Getting disk information.
    DriveLetter to be used for SCSILock can be selected.
    Image Removed
    [Figure] Selecting driver letter View
    When there is no disk for SCSI Lock resource, "Disk Not Found" message appears. 
    Image Removed
    [Figure] Disk Not Found
    Enter resource name. If you skip enter resource name, this will be given 'SLock_value' which value is selected driver letter.
    Image RemovedImage Added
    [Figure]
    Selecting driver letter ViewSCSI Reservation Resource Added

  2. Click the 'Finish' and SCSI Lock resource is added.
    Image Removed
    [Figure] Adding SCSI Lock resource is completed
    button to add the SCSI reservation resource. 
    You can immediately check the result in the management web console.

Deleting

Select resource type - right click - delete resource              Select "Delete Resource". 
              Image Removed
              [Figure] Delete SCSI Lock resource view

State

다음 테이블은 상태와 사용자 명령에 의해 발생되는 MCCS 리소스의 상태 이동에 대해 설명합니다.
명령은 사용자에 의해 발생되는 것을 전제로 합니다.
스카시예약 에이전트: 스카시 예약 디스크를 관리합니다. 

...

온라인

온라인 된 노드에서 디스크의 키가 베타적으로 예약된 상태입니다.
다른 노드에서는 키를 등록할 수 없습니다.

...

예약을 유지한 상태로 오프라인으로 전환합니다.

...

디스크에 예약이 걸려있는지 확인합니다.

...

오프라인

1. 디스크 예약은 되어 있지만 리소스 상태는 오프라인 상태입니다.
2. 상대 노드가 예약을 가져간 실질적인 오프라인 상태입니다.

...

디스크에 예약이 걸려있는지 확인합니다.

...

장애

온라인 중 예약을 빼앗긴 경우에 발생합니다.

...


The deleted resource will immediately disappear from the management web console.

Status

The following table explains the status switching of the MCCS resource caused by a user's command and the status.
The command assumes that it is generated by a user.

SCSI reservation agent: Manages the SCSI reservation disk.  

StatusAgent commandDescriptionNote

Online

Disk key is exclusively reserved at an online node.
You cannot register a key at another node. 

Offline

It switches to offline while maintaining the reservation.

 
Monitoring

Check if there is a reservation made on the disk.

 

Offline

1. Disk is reserved but the resource is still offline.
2. The actual offline state where the other node acquired a reservation. 

OnlineRegister a key for a disk reservation and wait for a response from the other node.  
Monitoring

Check if there is a reservation made on the disk.

 

Trouble

It occurs when a reservation is stolen while going online.

OnlineRegister a key for a disk reservation and wait for a response from the other node.  
OfflineIt switches to offline while maintaining the reservation. 

 

 

Attribute

Image Removed

[Figure] SCSI Lock Resource Attribute view

SCSI Lock resource provides the following detailed attributes as well.
Setting are available in "Resource Unique Attribute" in resource's attribute tab.
Each attribute value has the following meanings:

 

...

Attribute

Display the unique attribute of SCSI reservation resource.

Attribute

Description

Type

DefaultEditNote
DiskDUID

DUID(Device Unique ID, 16 byte as Hex value) of disk is used as identifier. Specify DUID of reserve disk.
This value is secure when DriveLetter atribute us specified. Try not to insert this value yourself.
DUID information can be checked through scsicmd.cmd command and both nodes need to have the same value.

STRING X 
DriveLetter

Disk to be used for reservation is specified by drive letter.
When register drive letter, DUID of connected disk will automatically obtain in drive letter.

STRING X 
KeyMAC address is used as Reserved-Key. This key is automatically set by agent.STRING   
PreemptWaitCount

Time waiting for permission of other node before reservation
Waiting time is (PreemptWaitCount * MonitorInterval) seconds.

INTEGER2 timesO 
PrType

This attribute decides on how to give the permission of reserve disk access as Persist Type specified in SCSI3-PR spec.
There are 6 types bur MCCS uses 1 (Write Exclusive) or 3 (Exclusive Access).
1 (Write Exclusive) is used when same LUN is used with shared disk, and Disk Letter can be checked in explorer.
3 (Exclusive Access) is used when only Lock_Disk is used.
In this case, SCSI Lock agent LUN is required. 'Mount' state of disk changes to 'un-mount' state.Therefore, Disk Letter will disappear from explorer.

INTEGER

Prtype=1O 

 

 

scsicmd.cmd Command

Syntax

Code Block
 scsicmd [option] [diskID]

Option

This is the utility to use SCSI 3 PR command more easily. Following is the provided options

Option

Description

-c diskId

It deletes Reserved-Key and Registered-Key of local node of disk.

-cf diskId

It forcely deletes Reserved-Key and Registered-Key of local node of disk.
This is mostly used when access to disk is inavailable.

-r diskIdRegisters diskld-specified disk.

-l diskId

If node is yet to reserve, close the specified disk and reserve.   

-lf diskId

It forcelu closes specified disk and reserve, even node has been reserved.
Meaning, it takes over other reservation.

-hIt shows help of scsicmd.

no option

It shows the state information regarding disk reservation when there is no other option.

Print Sample

Panel

The output of 'scsicmd' command from source node (C29043F13 is MAC Address of NIC from source node.)

Disk DUID(DeviceUniqueID)LetterPRReserved-KeyRegistered-Keys
0 CNononenone
1 DNononenone
200c0ffd796550000f38be34f01000000EYesnonenone
300c0ffd796550000138ce34f01000000FYesC29043F13*C29043F13*
400c0ffd7965500002e8ce34f01000000GYesnonenone

 

The output of 'scsicmd' command from target node (C29043F13 is MAC Address of NIC from source node.)

Disk DUID(DeviceUniqueID)LetterPRReserved-KeyRegistered-Keys
0 CNononenone
1 DNononenone
200c0ffd796550000f38be34f01000000EYesnonenone
300c0ffd796550000138ce34f01000000FYesC29043F13C29043F13
400c0ffd7965500002e8ce34f01000000GYesnonenone

Disk 0번0 (C:)은 PR이 's PR is set to "No" 로 설정되었기 때문에 SCSI3-PR을 지원하는 디스크가 아닌 것을 확인할 수 있습니다. (보통 드라이브 문자가 "C"인 디스크는 시스템의 Booting 디스크이고, SCSI를 지원하지 않습니다.)
또한 Disk 1번(D:)은 PR이 "No"로 설정되어 있습니다. SCSI3-PR을 지원하는 디스크가 아닌 것을 확인할 수 있습니다.(Internal Disk는 SCSI3-PR을 지원하지 않습니다.)
Disk 2번(E:)과 Disk 4번(G:)은 SCSI3-PR이 "Yes"로 설정되어 있어 SCSI3- PR을 지원하는 Storage 장치를 이용하고 있으며, Reserved-Key와 Registered-Keys가 "none"으로 되어 있어 아직 등록되지 않는 상태를 의미합니다.
Disk 3번(F:)은 Reserved-Key와 Registered-Keys가 소스 노드에서는 C29043F13*, C29043F13*로 타겟노드에서는 C29043F13, C29043F13로 등록되어 있고 이것은 스카시예약 에이전트를 이용해 리소스를 생성한 상태입니다.
두 노드 중 (*)표시가 포함된 Reserved-Key와 Registered-Keys가 디스크 예약을 하고 있음을 나타냅니다. 또 Reserved-Key에 값을 가지고 있고 (*)표시가 되어있는 (예: C29043F13*) 노드만 디스크에 접근할 수 있습니다.. So, you can see that the disk does not support SCSI3-PR.  (In general, the "C" drive is the system booting disk and it does not support SCSI.)
Besides, Disk 1 (D:)'s PR is set to "No". You can see that the disk does not support SCSI3-PR.(Internal Disk does not support SCSI3-PR.)
Disk 2 (E:) and Disk 4 (G:)'s SCSI3-PR is set to "Yes". So, it means that the storage used supports SCSI3- PR. Their Reserved-Key and Registered-Keys are set to "none". It means that they are not yet to be registered.
Disk 3 (F:)'s Reserved-Key and Registered-Keys at the source node are set to C29043F13* and C29043F13* and at the target node to C29043F13 and C29043F13. This means that a SCSI reservation agent was used to create the resource.
The (*) marked node with the Reserved-Key and Registered-Keys indicates that a disk is reserved. In addition, only the * marked node with the Reserved-Key value (ex: C29043F13*) can access the disk.