Section | |||||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|---|---|
|
How to work
Disk resource added through SCSI Lock agent has registration key for each node and it can be checked by it's attribute.
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
|
Difference between shared disk agent and SCSI Lock agent
1. Shared 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)
Disk management function in hardware perspective (SCSI Lock agent)
|
2. Both 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) Small disk capacity of about 1GB is available. But the content is not protected. |
Configuration
SCSI-Lock resource can be configured in 2 ways with shared disk resource. Configuration process changes according to the attribute value of SCSI Lock resource.
1. When shared disk and SCSI Lock resource is configured with the same LUN (PrType=1)
When you define an attribute of SCSI Lock resource as PrType=1, you can configure shared disk and SCSI Lock resource with the same LUN.
SCSI Lock agent manages DATA-DISK(shared disk resource) using by MOUNT/UMOUNT command and manages LOCK-DISK(SCSI Lock resource) using by SCSI-3 PR as shown below.
By setting up the dependency between SCSI Lock resources and shared disk resources, any damage of data-disk can be prevented which may occur in such case like Split-Brain.
[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)
At this type, shared disk agent manages DATA-DISK where user data is stored and SCSI lock agent uses exclusive LUN for key reservation. Therefore, two LUNs is required at least.
Lock-disk volume is created for 1:1 dependency with shared disk agent like a figure below.
By using multiple shared disk agents, and one SCSI reservation agent, you can configure the dependency relationship for use.
The storage capacity of this disk can be small 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.
[Figure] Shared disk and SCSI Lock resource is configured with different LUN( PrType=3)
Info |
---|
DATA-DISK
LOCK-DISK
|
Configuration Sample
1. Shared disk and SCSI Lock resource is configured in same LUN (PrType = 1)
[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
- Install MCCS on both nodes
- Set group
- Add shared disk resource
- Enable shared disk resource and check offline on both nodes
- Add SCSI Lock resource (Select device path that created shared disk resource)
- Enable SCSI Lock resource and check key in resource attribute of MCCS web console.
- Configure dependency of resources resources (SCSI Lock resource must go online first)
- Test failover from node 2 to 1
- Test failover from node 1 to 2
- Set application that customer uses
2.Shared disk and SCSI Lock resource configured with different LUN (PrType = 3)
[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.
- Install MCCS on both nodes
- Set group
- Add shared disk resource
- Enable shared disk resource and check offline on both nodes
- Add SCSI Lock resource (Select new device path which is not assigned for shared disk resource.)
- Enable SCSI Lock resource and check Key in resource attribute in MCCS Console
- Change PrType 1 to 3 for attribute of SCSI Lock resource
- Configure dependency of resources (SCSI Lock resource must go online first)
- Test failover from node2 to 1
- Test failover from node1 to 2
- 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
- When add a resource from a group name, select a group → right click → 'Add Resource'.
[Figure] Adding Resource in a group - Select 'SCSILOCK' from Resource Type lists and click 'Next' button.
[Figure] Select Resource Wizard View - Next steps are same as adding in resource type.
Adding in Resource Type
- ResourceType → Right Click → Click Add Resource
[Figure] Adding Resource in a resource type - If all the information is retrieved, you can select a device path used as the SCSI reservation resource.
[Figure] Selecting driver letter View - When there is no disk for SCSI Lock resource, "Disk Not Found" message appears.
[Figure] Disk Not Found - If you select a device path used for the SCSI reservation resource, a name will be automatically recommended.
[Figure] Select device path - Click 'Finish' and SCSI Lock resource is added.
[Figure] Adding SCSI Lock resource is completed
Deleting
Select resource type → right click → delete resource.
- Select "Delete Resource".
[Figure] Delete SCSI Lock resource view
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.
Status | Agent command | Description | Note |
---|---|---|---|
Online Disk key is exclusively reserved at an online node. | Offline | It ignores the reservation key stored. It first creates a new reservation key and switches to offline while maintaining the reservation. | |
Monitoring | Compares the key reserved in the disk and check if there is a reservation made on the disk. | ||
Offline 1. Disk is reserved but the resource is still offline. | Online | Register a key for a disk reservation and wait for a response from the other node. After After going online once, the other node reservation is stolen. This is called preempt. | |
Monitoring | Compares the key reserved in the disk and check if there is a reservation made on the disk. | ||
Trouble It occurs when a reservation is stolen while going online. | Online | Register a key for a disk reservation and wait for a response from the other node. After going online once, the other node reservation is stolen. This is called preempt. | |
Offline | It ignores the reservation key stored. It first creates a new reservation key and switches to offline while maintaining the reservation. |
Attribute
[Figure] SCSI Lock Attribute view
...
Since '/dev/sda' is set as "No"in PR, it shows this does not support SCSI-3 PR. (Normally '/dev/sda' is Booting disk in local node and may dose not support this in many case.)
Also, '/dev/sdb' is set as "No" in PR. It shows this also does not support SCSI-3 PR. (Normally, Internal Disk does not SCSI3-PR.)
'/dev/sdc' and 'dev/sde' are set as "Yes" in PR, they uses storage device that supports SCSI3-PR, but Reserved-Key and Registered-Keys are "none" which means these LUN have never used as SCSI Lock resource in MCCS.
For the "dev/sdd" device, Reserved-Key and Registered-Key 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 Reserved-Key and Registered-Keys with (*) marked in the both node indicate that a disk is reserved. In addition, only the * marked node with the Reserved-Key value (ex: C29043F13*) can access the disk.