Connecting remote iSCSI devices to cluster nodes
Virtuozzo Hybrid Infrastructure allows you to connect remote iSCSI devices to nodes and perceives their LUNs as storage disks. You can connect iSCSI devices to nodes at any time.
After the iSCSI device is connected to a cluster node, you need to assign the Storage disk role to all its LUNs. Even though you can assign the Metadata or Cache roles to such disks, it is only supported for single-node installations of backup storage with SAN-provided redundancy.
Limitations
- Remote iSCSI devices that are connected to cluster nodes as storage disks can only be used for backup storage. Do not use such disks for other services, including the compute service. To learn how to connect external iSCSI devices to the compute cluster, refer to Attaching external iSCSI storage.
- iSCSI targets can only be used for storage if they have synchronous writes enabled.
- Remote iSCSI devices cannot be attached to hosts that belong to iSCSI target groups.
- Only one IQN can be used per node. You can connect multiple iSCSI targets by using other cluster nodes.
- An iSCSI IQN name may contain only lowercase letters, numbers, periods, colons, and dashes. Allowed characters for iSCSI names are described in String Profile for iSCSI Names.
Prerequisites
- If you have restricted outbound traffic in your cluster, you need to manually add a rule that will allow outbound traffic on the specified port, as described in Configuring outbound firewall rules.
To connect a remote iSCSI device to a node
Admin panel
-
On the Infrastructure > Nodes screen, click the required node name. On the Disks tab, click iSCSI target.
-
In the Remote iSCSI Target window:
- Specify the IQN of the target.
- In the Portal and Port fields, specify the target’s IP address and, optionally, specify a port number.
-
To enable CHAP authentication for the target, select CHAP authentication and specify the credentials.
- Click Connect.
The target will be connected and all of its LUNs will be initiated. Devices of the iSCSI type will appear in the node’s Disks list.
If you add another LUN to a connected target, rescan it by running iscsiadm -m node -R
in the host’s console.
Command-line interface
Use the following command:
vinfra node iscsi target add [--auth-username <auth-username>] [--auth-password <auth-password>] --portal <portal> --node <node> <target-name>
--auth-username <auth-username>
- User name
--auth-password <auth-password>
- User password
--portal <portal>
- Portal IP address in the format
IP:port
(this option can be specified multiple times) --node <node>
- Node ID or hostname
<target-name>
- Target name
For example, to connect the iSCSI target iqn.2014-06.com.vstorage:target1
with the IP address 172.16.24.244
and port 3260
to the node node003
, run:
# vinfra node iscsi target add iqn.2014-06.com.vstorage:target1 --portal 172.16.24.244:3260 --node node003
To assign disk roles to iSCSI LUNs
Admin panel
- Select a disk with the iSCSI type, and then click Assign.
- In the Choose role window, select Storage, and then click Done.
- Repeat the above steps for every disk with the iSCSI type.
Command-line interface
Use the following command:
vinfra node disk assign --disk <disk>:<role>[:<key=value,…>] [--node <node>]
--disk <disk>:<role> [:<key=value,…>]
-
Disk configuration in the format:
<disk>
: disk device ID or name<role>
: disk role (cs
,mds
,journal
,mds-journal
,mds-system
,cs-system
,system
)- comma-separated
key=value
pairs with keys (optional):tier
: disk tier (0, 1, 2 or 3)journal-tier
: journal (cache) disk tier (0, 1, 2 or 3)journal-type
: journal (cache) disk type (no_cache
,inner_cache
orexternal_cache
)journal-disk
: journal (cache) disk ID or device namebind-address
: bind IP address for the metadata service
Example:
sda:cs:tier=0,journal-type=inner_cache
.
This option can be used multiple times. --node <node>
- Node ID or hostname (default:
node001.vstoragedomain
)
For example, to assign the storage role to the iSCSI disk sde
, run:
# vinfra node disk assign --disk sde:cs:tier=0 --node node003
To remove an iSCSI target
Admin panel
Command-line interface
Use the following command:
vinfra node iscsi target delete --node <node> <target-name>
--node <node>
- Node ID or hostname
<target-name>
- Target name
For example, to disconnect the iSCSI target iqn.2014-06.com.vstorage:target1
from the node node003
, run:
# vinfra node iscsi target delete iqn.2014-06.com.vstorage:target1 --node node003